Commit 90fbc510 authored by Sam Ravnborg's avatar Sam Ravnborg

drm/imx: fix opencoded use of drm_panel_*

Use the drm_panel_get_modes() function to get the modes.

This patch leave one test for the function pointer:
    panel->funcs->get_modes

This is used to check if the panel may have any modes.
There is no direct replacement.
We may be able to just check that drm_panel_get_modes() return > 0,
but as this is not the same functionality it is left for later.
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Acked-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: default avatarEmil Velikov <emil.velikov@collabora.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: linux-arm-kernel@lists.infradead.org
Link: https://patchwork.freedesktop.org/patch/msgid/20190804201637.1240-5-sam@ravnborg.org
parent 7bb0a60a
...@@ -124,14 +124,11 @@ static void imx_ldb_ch_set_bus_format(struct imx_ldb_channel *imx_ldb_ch, ...@@ -124,14 +124,11 @@ static void imx_ldb_ch_set_bus_format(struct imx_ldb_channel *imx_ldb_ch,
static int imx_ldb_connector_get_modes(struct drm_connector *connector) static int imx_ldb_connector_get_modes(struct drm_connector *connector)
{ {
struct imx_ldb_channel *imx_ldb_ch = con_to_imx_ldb_ch(connector); struct imx_ldb_channel *imx_ldb_ch = con_to_imx_ldb_ch(connector);
int num_modes = 0; int num_modes;
if (imx_ldb_ch->panel && imx_ldb_ch->panel->funcs && num_modes = drm_panel_get_modes(imx_ldb_ch->panel);
imx_ldb_ch->panel->funcs->get_modes) {
num_modes = imx_ldb_ch->panel->funcs->get_modes(imx_ldb_ch->panel);
if (num_modes > 0) if (num_modes > 0)
return num_modes; return num_modes;
}
if (!imx_ldb_ch->edid && imx_ldb_ch->ddc) if (!imx_ldb_ch->edid && imx_ldb_ch->ddc)
imx_ldb_ch->edid = drm_get_edid(connector, imx_ldb_ch->ddc); imx_ldb_ch->edid = drm_get_edid(connector, imx_ldb_ch->ddc);
......
...@@ -47,14 +47,11 @@ static int imx_pd_connector_get_modes(struct drm_connector *connector) ...@@ -47,14 +47,11 @@ static int imx_pd_connector_get_modes(struct drm_connector *connector)
{ {
struct imx_parallel_display *imxpd = con_to_imxpd(connector); struct imx_parallel_display *imxpd = con_to_imxpd(connector);
struct device_node *np = imxpd->dev->of_node; struct device_node *np = imxpd->dev->of_node;
int num_modes = 0; int num_modes;
if (imxpd->panel && imxpd->panel->funcs && num_modes = drm_panel_get_modes(imxpd->panel);
imxpd->panel->funcs->get_modes) {
num_modes = imxpd->panel->funcs->get_modes(imxpd->panel);
if (num_modes > 0) if (num_modes > 0)
return num_modes; return num_modes;
}
if (imxpd->edid) { if (imxpd->edid) {
drm_connector_update_edid_property(connector, imxpd->edid); drm_connector_update_edid_property(connector, imxpd->edid);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment