Commit e1c55089 authored by Zhaoxiong Lv's avatar Zhaoxiong Lv Committed by Neil Armstrong
Browse files

drm/panel: jd9365da: Add the function of adjusting orientation

parent 2b976ad7
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ struct jadard {
	struct drm_panel panel;
	struct mipi_dsi_device *dsi;
	const struct jadard_panel_desc *desc;

	enum drm_panel_orientation orientation;
	struct regulator *vdd;
	struct regulator *vccio;
	struct gpio_desc *reset;
@@ -178,12 +178,20 @@ static int jadard_get_modes(struct drm_panel *panel,
	return 1;
}

static enum drm_panel_orientation jadard_panel_get_orientation(struct drm_panel *panel)
{
	struct jadard *jadard = panel_to_jadard(panel);

	return jadard->orientation;
}

static const struct drm_panel_funcs jadard_funcs = {
	.disable = jadard_disable,
	.unprepare = jadard_unprepare,
	.prepare = jadard_prepare,
	.enable = jadard_enable,
	.get_modes = jadard_get_modes,
	.get_orientation = jadard_panel_get_orientation,
};

static int radxa_display_8hd_ad002_init_cmds(struct jadard *jadard)
@@ -880,6 +888,10 @@ static int jadard_dsi_probe(struct mipi_dsi_device *dsi)
	drm_panel_init(&jadard->panel, dev, &jadard_funcs,
		       DRM_MODE_CONNECTOR_DSI);

	ret = of_drm_get_panel_orientation(dev->of_node, &jadard->orientation);
	if (ret < 0)
		return dev_err_probe(dev, ret, "failed to get orientation\n");

	ret = drm_panel_of_backlight(&jadard->panel);
	if (ret)
		return ret;