jadard
if (jadard->desc->vcioo_to_lp11_delay_ms)
msleep(jadard->desc->vcioo_to_lp11_delay_ms);
if (jadard->desc->lp11_before_reset) {
ret = mipi_dsi_dcs_nop(jadard->dsi);
if (jadard->desc->lp11_to_reset_delay_ms)
msleep(jadard->desc->lp11_to_reset_delay_ms);
static int anbernic_rgds_init_cmds(struct jadard *jadard)
struct mipi_dsi_multi_context dsi_ctx = { .dsi = jadard->dsi };
struct drm_panel *panel = &jadard->panel;
gpiod_set_value_cansleep(jadard->reset, 0);
gpiod_set_value_cansleep(jadard->reset, 1);
gpiod_set_value_cansleep(jadard->reset, 0);
ret = jadard->desc->init(jadard);
struct jadard *jadard = panel_to_jadard(panel);
gpiod_set_value_cansleep(jadard->reset, 0);
if (jadard->desc->reset_before_power_off_vcioo) {
gpiod_set_value_cansleep(jadard->reset, 1);
struct jadard *jadard;
jadard = devm_drm_panel_alloc(dev, struct jadard, panel, &jadard_funcs,
if (IS_ERR(jadard))
return PTR_ERR(jadard);
jadard->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
if (IS_ERR(jadard->reset))
return dev_err_probe(&dsi->dev, PTR_ERR(jadard->reset),
jadard->vdd = devm_regulator_get(dev, "vdd");
if (IS_ERR(jadard->vdd))
return dev_err_probe(&dsi->dev, PTR_ERR(jadard->vdd),
jadard->vccio = devm_regulator_get(dev, "vccio");
if (IS_ERR(jadard->vccio))
return dev_err_probe(&dsi->dev, PTR_ERR(jadard->vccio),
ret = of_drm_get_panel_orientation(dev->of_node, &jadard->orientation);
ret = drm_panel_of_backlight(&jadard->panel);
drm_panel_add(&jadard->panel);
mipi_dsi_set_drvdata(dsi, jadard);
jadard->dsi = dsi;
regulator_disable(jadard->vdd);
jadard->desc = desc;
drm_panel_remove(&jadard->panel);
regulator_disable(jadard->vccio);
struct jadard *jadard = mipi_dsi_get_drvdata(dsi);
drm_panel_remove(&jadard->panel);
struct jadard *jadard = panel_to_jadard(panel);
const struct drm_display_mode *desc_mode = &jadard->desc->mode;
DRM_DEV_ERROR(&jadard->dsi->dev, "failed to add mode %ux%ux@%u\n",
struct jadard *jadard = panel_to_jadard(panel);
return jadard->orientation;
static int radxa_display_8hd_ad002_init_cmds(struct jadard *jadard)
struct mipi_dsi_multi_context dsi_ctx = { .dsi = jadard->dsi };
struct jadard;
int (*init)(struct jadard *jadard);
static int cz101b4001_init_cmds(struct jadard *jadard)
struct mipi_dsi_multi_context dsi_ctx = { .dsi = jadard->dsi };
static inline struct jadard *panel_to_jadard(struct drm_panel *panel)
static int kingdisplay_kd101ne3_init_cmds(struct jadard *jadard)
struct mipi_dsi_multi_context dsi_ctx = { .dsi = jadard->dsi };
return container_of(panel, struct jadard, panel);
struct jadard *jadard = panel_to_jadard(panel);
struct mipi_dsi_multi_context dsi_ctx = { .dsi = jadard->dsi };
if (jadard->desc->backlight_off_to_display_off_delay_ms)
mipi_dsi_msleep(&dsi_ctx, jadard->desc->backlight_off_to_display_off_delay_ms);
if (jadard->desc->display_off_to_enter_sleep_delay_ms)
mipi_dsi_msleep(&dsi_ctx, jadard->desc->display_off_to_enter_sleep_delay_ms);
if (jadard->desc->enter_sleep_to_reset_down_delay_ms)
mipi_dsi_msleep(&dsi_ctx, jadard->desc->enter_sleep_to_reset_down_delay_ms);
static int melfas_lmfbx101117480_init_cmds(struct jadard *jadard)
struct mipi_dsi_multi_context dsi_ctx = { .dsi = jadard->dsi };
struct jadard *jadard = panel_to_jadard(panel);
ret = regulator_enable(jadard->vccio);
ret = regulator_enable(jadard->vdd);