From: Huang Jiachai Date: Thu, 8 Sep 2016 08:31:10 +0000 (+0800) Subject: video: rockchip: rk fb: add disp mode for VR X-Git-Tag: firefly_0821_release~1574 X-Git-Url: http://plrg.eecs.uci.edu/git/?p=firefly-linux-kernel-4.4.55.git;a=commitdiff_plain;h=e7f31e2b52e79b259095ad28196c96a3d94eaf39 video: rockchip: rk fb: add disp mode for VR 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 --- diff --git a/drivers/video/rockchip/rkfb_sysfs.c b/drivers/video/rockchip/rkfb_sysfs.c index e66f0ddfc1ef..d40d98a1fa85 100644 --- a/drivers/video/rockchip/rkfb_sysfs.c +++ b/drivers/video/rockchip/rkfb_sysfs.c @@ -1194,6 +1194,17 @@ static ssize_t show_lcdc_id(struct device *dev, 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) @@ -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(dsp_mode, S_IRUGO, show_dsp_mode, NULL), }; int rkfb_create_sysfs(struct fb_info *fbi) diff --git a/include/dt-bindings/display/rk_fb.h b/include/dt-bindings/display/rk_fb.h index 0e7e80531079..36a82cfc54bf 100755 --- a/include/dt-bindings/display/rk_fb.h +++ b/include/dt-bindings/display/rk_fb.h @@ -13,6 +13,12 @@ #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 ** ********************************************************************/ diff --git a/include/linux/rk_fb.h b/include/linux/rk_fb.h index 6fbcae14ea94..902b978d81cd 100755 --- a/include/linux/rk_fb.h +++ b/include/linux/rk_fb.h @@ -701,6 +701,7 @@ struct rk_lcdc_driver { char mmu_dts_name[40]; struct device *mmu_dev; int iommu_enabled; + int dsp_mode; struct rk_fb_reg_area_data reg_area_data; /*