Add support for the LCD panels with a serial 8-bit bus, where the color
components of each 24-bit pixel are sent sequentially.

Signed-off-by: Paul Cercueil <p...@crapouillou.net>
---
 drivers/gpu/drm/ingenic/ingenic-drm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/ingenic/ingenic-drm.c 
b/drivers/gpu/drm/ingenic/ingenic-drm.c
index da966f3dc1f7..ce1fae3a78a9 100644
--- a/drivers/gpu/drm/ingenic/ingenic-drm.c
+++ b/drivers/gpu/drm/ingenic/ingenic-drm.c
@@ -426,6 +426,9 @@ static void ingenic_drm_encoder_atomic_mode_set(struct 
drm_encoder *encoder,
                        case MEDIA_BUS_FMT_RGB888_1X24:
                                cfg |= JZ_LCD_CFG_MODE_GENERIC_24BIT;
                                break;
+                       case MEDIA_BUS_FMT_RGB888_3X8:
+                               cfg |= JZ_LCD_CFG_MODE_8BIT_SERIAL;
+                               break;
                        default:
                                break;
                        }
@@ -451,6 +454,7 @@ static int ingenic_drm_encoder_atomic_check(struct 
drm_encoder *encoder,
        case MEDIA_BUS_FMT_RGB565_1X16:
        case MEDIA_BUS_FMT_RGB666_1X18:
        case MEDIA_BUS_FMT_RGB888_1X24:
+       case MEDIA_BUS_FMT_RGB888_3X8:
                return 0;
        default:
                return -EINVAL;
-- 
2.21.0.593.g511ec345e18

Reply via email to