Lines Matching +full:vsp +full:- +full:supply
1 // SPDX-License-Identifier: GPL-2.0+
24 struct regulator *supply;
52 /* VSP setting */
185 err = mipi_dsi_dcs_set_display_off(kingdisplay->link);
187 dev_err(panel->dev, "failed to set display off: %d\n", err);
197 err = mipi_dsi_dcs_enter_sleep_mode(kingdisplay->link);
199 dev_err(panel->dev, "failed to enter sleep mode: %d\n", err);
206 gpiod_set_value_cansleep(kingdisplay->enable_gpio, 0);
208 err = regulator_disable(kingdisplay->supply);
221 gpiod_set_value_cansleep(kingdisplay->enable_gpio, 0);
223 err = regulator_enable(kingdisplay->supply);
230 gpiod_set_value_cansleep(kingdisplay->enable_gpio, 1);
236 err = mipi_dsi_generic_write(kingdisplay->link, &init_code[i],
239 dev_err(panel->dev, "failed write init cmds: %d\n", err);
244 err = mipi_dsi_dcs_exit_sleep_mode(kingdisplay->link);
246 dev_err(panel->dev, "failed to exit sleep mode: %d\n", err);
253 err = mipi_dsi_dcs_set_display_on(kingdisplay->link);
255 dev_err(panel->dev, "failed to set display on: %d\n", err);
265 gpiod_set_value_cansleep(kingdisplay->enable_gpio, 0);
267 regulator_err = regulator_disable(kingdisplay->supply);
269 dev_err(panel->dev, "failed to disable regulator: %d\n", regulator_err);
291 mode = drm_mode_duplicate(connector->dev, &default_mode);
293 dev_err(panel->dev, "failed to add mode %ux%u@%u\n",
296 return -ENOMEM;
303 connector->display_info.width_mm = 147;
304 connector->display_info.height_mm = 196;
305 connector->display_info.bpc = 8;
325 struct device *dev = &kingdisplay->link->dev;
328 kingdisplay->supply = devm_regulator_get(dev, "power");
329 if (IS_ERR(kingdisplay->supply))
330 return PTR_ERR(kingdisplay->supply);
332 kingdisplay->enable_gpio = devm_gpiod_get_optional(dev, "enable",
334 if (IS_ERR(kingdisplay->enable_gpio)) {
335 err = PTR_ERR(kingdisplay->enable_gpio);
337 kingdisplay->enable_gpio = NULL;
340 err = drm_panel_of_backlight(&kingdisplay->base);
344 drm_panel_add(&kingdisplay->base);
351 drm_panel_remove(&kingdisplay->base);
359 dsi->lanes = 4;
360 dsi->format = MIPI_DSI_FMT_RGB888;
361 dsi->mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
364 kingdisplay = devm_drm_panel_alloc(&dsi->dev, __typeof(*kingdisplay), base,
372 kingdisplay->link = dsi;
394 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", err);
401 .name = "panel-kingdisplay-kd097d04",
409 MODULE_AUTHOR("Chris Zhong <zyw@rock-chips.com>");
410 MODULE_AUTHOR("Nickey Yang <nickey.yang@rock-chips.com>");