aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2024-06-26 16:40:39 +0200
committerNeil Armstrong <neil.armstrong@linaro.org>2024-10-09 09:48:45 +0200
commit655b92ca60a2d3fac83e8974fd786da6aea7fca2 (patch)
treedf5f2a72d78c19f981f5e3ba7e14f16970c317dd
parentdrm/panel: ilitek-ili9881c: Explicitly set address mode, allow 180° rotation (diff)
downloadwireguard-linux-655b92ca60a2d3fac83e8974fd786da6aea7fca2.tar.xz
wireguard-linux-655b92ca60a2d3fac83e8974fd786da6aea7fca2.zip
drm/panel: ilitek-ili9881c: Report subpixel order according to rotation
Assume a default RGB subpixel order and flip it around if 180° rotation is configured via address mode. Report subpixel order to userspace. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20240626-drm-panel-ili9881c-rotation-v1-2-e0ff54173e32@pengutronix.de Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20240626-drm-panel-ili9881c-rotation-v1-2-e0ff54173e32@pengutronix.de
-rw-r--r--drivers/gpu/drm/panel/panel-ilitek-ili9881c.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
index b4565ff1a0de..28cd7560e5db 100644
--- a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
+++ b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
@@ -1471,6 +1471,10 @@ static int ili9881c_get_modes(struct drm_panel *panel,
connector->display_info.width_mm = mode->width_mm;
connector->display_info.height_mm = mode->height_mm;
+ if (ctx->address_mode == 0x3)
+ connector->display_info.subpixel_order = SubPixelHorizontalBGR;
+ else
+ connector->display_info.subpixel_order = SubPixelHorizontalRGB;
/*
* TODO: Remove once all drm drivers call