video: rockchip: rk fb: add disp mode for VR
authorHuang Jiachai <hjc@rock-chips.com>
Thu, 8 Sep 2016 08:31:10 +0000 (16:31 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Fri, 9 Sep 2016 07:55:22 +0000 (15:55 +0800)
DEFAULT_MODE: default mode
ONE_VOP_DUAL_MIPI_HOR_SCAN: one vop to dual mipi screen hor scan
ONE_VOP_DUAL_MIPI_VER_SCAN: one vop to dual mipi screen ver scan
TWO_VOP_DUAL_MIPI: two vop to dual mipi screen

Change-Id: I48a96369059afd5615ebf41b4b6178d7206c4f72
Signed-off-by: Huang Jiachai <hjc@rock-chips.com>
drivers/video/rockchip/rkfb_sysfs.c
include/dt-bindings/display/rk_fb.h
include/linux/rk_fb.h

index e66f0ddfc1efd31d3b0081f5ac93c7248089b547..d40d98a1fa8571882eab7ac45cb5e2afc6b7c834 100644 (file)
@@ -1194,6 +1194,17 @@ static ssize_t show_lcdc_id(struct device *dev,
        return snprintf(buf, PAGE_SIZE, "%d\n", dev_drv->id);
 }
 
        return snprintf(buf, PAGE_SIZE, "%d\n", dev_drv->id);
 }
 
+static ssize_t show_dsp_mode(struct device *dev,
+                           struct device_attribute *attr,
+                           char *buf)
+{
+       struct fb_info *fbi = dev_get_drvdata(dev);
+       struct rk_fb_par *fb_par = (struct rk_fb_par *)fbi->par;
+       struct rk_lcdc_driver *dev_drv = fb_par->lcdc_drv;
+
+       return snprintf(buf, PAGE_SIZE, "%d\n", dev_drv->dsp_mode);
+}
+
 static ssize_t show_win_property(struct device *dev,
                            struct device_attribute *attr,
                            char *buf)
 static ssize_t show_win_property(struct device *dev,
                            struct device_attribute *attr,
                            char *buf)
@@ -1250,6 +1261,7 @@ static struct device_attribute rkfb_attrs[] = {
        __ATTR(lcdcid, S_IRUGO, show_lcdc_id, NULL),
        __ATTR(win_property, S_IRUGO, show_win_property, NULL),
        __ATTR(car_reverse, S_IWUSR, NULL, set_car_reverse),
        __ATTR(lcdcid, S_IRUGO, show_lcdc_id, NULL),
        __ATTR(win_property, S_IRUGO, show_win_property, NULL),
        __ATTR(car_reverse, S_IWUSR, NULL, set_car_reverse),
+       __ATTR(dsp_mode, S_IRUGO, show_dsp_mode, NULL),
 };
 
 int rkfb_create_sysfs(struct fb_info *fbi)
 };
 
 int rkfb_create_sysfs(struct fb_info *fbi)
index 0e7e80531079081fe5aa544be335d0c412246450..36a82cfc54bf176c98bbe2b7e89b65fa25fd7ead 100755 (executable)
 #define ONE_DUAL       1
 #define DUAL           2
 #define DUAL_LCD       3
 #define ONE_DUAL       1
 #define DUAL           2
 #define DUAL_LCD       3
+
+#define DEFAULT_MODE                   0
+#define ONE_VOP_DUAL_MIPI_HOR_SCAN     1
+#define ONE_VOP_DUAL_MIPI_VER_SCAN     2
+#define TWO_VOP_TWO_SCREEN             3
+
 /********************************************************************
 **          display output interface supported by rockchip        **
 ********************************************************************/
 /********************************************************************
 **          display output interface supported by rockchip        **
 ********************************************************************/
index 6fbcae14ea9484b7f5197a753bbb296d7f580784..902b978d81cd7cbc881b0c3f73efb3d00e1100f5 100755 (executable)
@@ -701,6 +701,7 @@ struct rk_lcdc_driver {
        char mmu_dts_name[40];
        struct device *mmu_dev;
        int iommu_enabled;
        char mmu_dts_name[40];
        struct device *mmu_dev;
        int iommu_enabled;
+       int dsp_mode;
 
        struct rk_fb_reg_area_data reg_area_data;
        /*
 
        struct rk_fb_reg_area_data reg_area_data;
        /*