MLK-14703-2 video: mipi_dsi_northwest: record traffic-mode.
authorFancy Fang <chen.fang@nxp.com>
Mon, 17 Apr 2017 10:35:55 +0000 (18:35 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 20:21:59 +0000 (15:21 -0500)
Add a new field 'traffic_mode' to struct 'mipi_dsi_info" to
record the traffic mode read from dts or set to default for
mipi dsi panel display.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
(cherry picked from commit e5ffea789dc1cb00f291383b9d5927ab1bba501f)

drivers/video/fbdev/mxc/mipi_dsi.h
drivers/video/fbdev/mxc/mipi_dsi_northwest.c

index c3514d9..04008b3 100644 (file)
@@ -72,6 +72,7 @@ struct mipi_dsi_info {
        int                             dsi_power_on;
        int                             lcd_inited;
        int                             encoder;
+       int                             traffic_mode;
        u32                             dphy_pll_config;
        int                             dev_id;
        int                             disp_id;
index 9ce0480..6d2c483 100644 (file)
@@ -917,6 +917,13 @@ static int mipi_dsi_probe(struct platform_device *pdev)
                memcpy(mipi_dsi->mode, &mxc_cea_mode[vmode_index],
                       sizeof(struct fb_videomode));
 
+               ret = of_property_read_u32(remote, "dsi-traffic-mode",
+                                          &mipi_dsi->traffic_mode);
+               if (ret < 0 || mipi_dsi->traffic_mode > 2) {
+                       devm_kfree(&pdev->dev, mipi_dsi->mode);
+                       return -EINVAL;
+               }
+
                mipi_dsi->lcd_config = devm_kzalloc(&pdev->dev,
                                                sizeof(struct mipi_lcd_config),
                                                GFP_KERNEL);
@@ -926,7 +933,9 @@ static int mipi_dsi_probe(struct platform_device *pdev)
                }
 
                mipi_dsi->encoder = 1;
-       }
+       } else
+               /* Default, using 'BURST-MODE' for mipi panel */
+               mipi_dsi->traffic_mode = 2;
 
        ret = of_property_read_string(np, "lcd_panel", &lcd_panel);
        if (ret) {