Lines Matching full:dsi
3 * Xinpeng xpp055c272 5.5" MIPI-DSI panel driver
8 * Rockteck jh057n00900 5.5" MIPI-DSI panel driver
26 /* Manufacturer specific Commands send via DSI */
63 #define dsi_generic_write_seq(dsi, cmd, seq...) do { \ argument
66 ret = mipi_dsi_dcs_write_buffer(dsi, b, ARRAY_SIZE(b)); \
73 struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev); in xpp055c272_init_sequence() local
80 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETEXTC, 0xf1, 0x12, 0x83); in xpp055c272_init_sequence()
81 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETMIPI, in xpp055c272_init_sequence()
86 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETPOWER_EXT, 0x25); in xpp055c272_init_sequence()
87 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETPCR, 0x02, 0x11, 0x00); in xpp055c272_init_sequence()
88 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETRGBIF, in xpp055c272_init_sequence()
91 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETSCR, in xpp055c272_init_sequence()
94 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETVDC, 0x46); in xpp055c272_init_sequence()
95 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETPANEL, 0x0b); in xpp055c272_init_sequence()
96 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETCYC, 0x80); in xpp055c272_init_sequence()
97 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETDISP, 0xc8, 0x12, 0x30); in xpp055c272_init_sequence()
98 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETEQ, in xpp055c272_init_sequence()
101 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETPOWER, in xpp055c272_init_sequence()
104 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETECO, 0x00, 0x00, 0xff, in xpp055c272_init_sequence()
106 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETBGP, 0x09, 0x09); in xpp055c272_init_sequence()
109 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETVCOM, 0x87, 0x95); in xpp055c272_init_sequence()
110 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETGIP1, in xpp055c272_init_sequence()
119 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETGIP2, in xpp055c272_init_sequence()
128 dsi_generic_write_seq(dsi, XPP055C272_CMD_SETGAMMA, in xpp055c272_init_sequence()
144 struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev); in xpp055c272_unprepare() local
150 ret = mipi_dsi_dcs_set_display_off(dsi); in xpp055c272_unprepare()
154 mipi_dsi_dcs_enter_sleep_mode(dsi); in xpp055c272_unprepare()
171 struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev); in xpp055c272_prepare() local
203 ret = mipi_dsi_dcs_exit_sleep_mode(dsi); in xpp055c272_prepare()
212 ret = mipi_dsi_dcs_set_display_on(dsi); in xpp055c272_prepare()
275 static int xpp055c272_probe(struct mipi_dsi_device *dsi) in xpp055c272_probe() argument
277 struct device *dev = &dsi->dev; in xpp055c272_probe()
307 mipi_dsi_set_drvdata(dsi, ctx); in xpp055c272_probe()
311 dsi->lanes = 4; in xpp055c272_probe()
312 dsi->format = MIPI_DSI_FMT_RGB888; in xpp055c272_probe()
313 dsi->mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | in xpp055c272_probe()
316 drm_panel_init(&ctx->panel, &dsi->dev, &xpp055c272_funcs, in xpp055c272_probe()
325 ret = mipi_dsi_attach(dsi); in xpp055c272_probe()
335 static void xpp055c272_shutdown(struct mipi_dsi_device *dsi) in xpp055c272_shutdown() argument
337 struct xpp055c272 *ctx = mipi_dsi_get_drvdata(dsi); in xpp055c272_shutdown()
342 dev_err(&dsi->dev, "Failed to unprepare panel: %d\n", ret); in xpp055c272_shutdown()
346 dev_err(&dsi->dev, "Failed to disable panel: %d\n", ret); in xpp055c272_shutdown()
349 static int xpp055c272_remove(struct mipi_dsi_device *dsi) in xpp055c272_remove() argument
351 struct xpp055c272 *ctx = mipi_dsi_get_drvdata(dsi); in xpp055c272_remove()
354 xpp055c272_shutdown(dsi); in xpp055c272_remove()
356 ret = mipi_dsi_detach(dsi); in xpp055c272_remove()
358 dev_err(&dsi->dev, "Failed to detach from DSI host: %d\n", ret); in xpp055c272_remove()
383 MODULE_DESCRIPTION("DRM driver for Xinpeng xpp055c272 MIPI DSI panel");