]> git.sur5r.net Git - u-boot/blobdiff - drivers/video/s6e8ax0.c
i2c:soft:multi: Enable soft I2C multibus at Trats development board
[u-boot] / drivers / video / s6e8ax0.c
index 02c5ccff5f7e454bcefb021212b22c9ea116e542..176c5187af8588d4296f52eb8cc30bb0c658a83b 100644 (file)
@@ -28,6 +28,7 @@
 static void s6e8ax0_panel_cond(struct mipi_dsim_device *dsim_dev)
 {
        struct mipi_dsim_master_ops *ops = dsim_dev->master_ops;
+       int reverse = dsim_dev->dsim_lcd_dev->reverse_panel;
        const unsigned char data_to_send[] = {
                0xf8, 0x3d, 0x35, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x4c,
                0x6e, 0x10, 0x27, 0x7d, 0x3f, 0x10, 0x00, 0x00, 0x20,
@@ -36,8 +37,22 @@ static void s6e8ax0_panel_cond(struct mipi_dsim_device *dsim_dev)
                0xff, 0xff, 0xc8
        };
 
-       ops->cmd_write(dsim_dev, MIPI_DSI_DCS_LONG_WRITE,
+       const unsigned char data_to_send_reverse[] = {
+               0xf8, 0x19, 0x35, 0x00, 0x00, 0x00, 0x93, 0x00, 0x3c,
+               0x7d, 0x08, 0x27, 0x7d, 0x3f, 0x00, 0x00, 0x00, 0x20,
+               0x04, 0x08, 0x6e, 0x00, 0x00, 0x00, 0x02, 0x08, 0x08,
+               0x23, 0x23, 0xc0, 0xc1, 0x01, 0x41, 0xc1, 0x00, 0xc1,
+               0xf6, 0xf6, 0xc1
+       };
+
+       if (reverse) {
+               ops->cmd_write(dsim_dev, MIPI_DSI_DCS_LONG_WRITE,
+                       (unsigned int)data_to_send_reverse,
+                       ARRAY_SIZE(data_to_send_reverse));
+       } else {
+               ops->cmd_write(dsim_dev, MIPI_DSI_DCS_LONG_WRITE,
                        (unsigned int)data_to_send, ARRAY_SIZE(data_to_send));
+       }
 }
 
 static void s6e8ax0_display_cond(struct mipi_dsim_device *dsim_dev)