mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 12:17:12 +09:00
modify config for rkfb dual display
This commit is contained in:
@@ -7,18 +7,32 @@ config FB_ROCKCHIP
|
||||
---help---
|
||||
Framebuffer driver for rockchip based platform
|
||||
|
||||
config DUAL_DISP_IN_KERNEL
|
||||
bool "implement dual display in kernel"
|
||||
choice
|
||||
bool "Dual display ploy select"
|
||||
depends on FB_ROCKCHIP
|
||||
default NO_DUAL_DISP
|
||||
help
|
||||
If you use dual lcdc for dual display ,select "implement dual display in kernel with dual lcdc"
|
||||
If you use one lcdc like rk2928 or one lcdc with RK Jetta,select "one lcdc dual output display interface support"
|
||||
|
||||
config DUAL_LCDC_DUAL_DISP_IN_KERNEL
|
||||
bool "implement dual display in kernel with dual lcdc"
|
||||
depends on FB_ROCKCHIP
|
||||
default y if HDMI_RK30
|
||||
help
|
||||
select y will implement dual screen display in kernel
|
||||
|
||||
config ONE_LCDC_DUAL_OUTPUT_INF
|
||||
bool "one lcdc dual output display interface support"
|
||||
depends on FB_ROCKCHIP
|
||||
default y if ARCH_RK2928
|
||||
help
|
||||
select y if on platform like rk2928 which have one lcdc but two output interface
|
||||
config NO_DUAL_DISP
|
||||
bool "NO dual display needed"
|
||||
depends on FB_ROCKCHIP
|
||||
help
|
||||
No dual display needed
|
||||
endchoice
|
||||
|
||||
config THREE_FB_BUFFER
|
||||
bool "Three fb buffer support"
|
||||
depends on FB_ROCKCHIP
|
||||
|
||||
@@ -199,7 +199,7 @@ static int rk_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
|
||||
}
|
||||
|
||||
#if defined(CONFIG_HDMI_RK30)
|
||||
#if defined(CONFIG_DUAL_DISP_IN_KERNEL)
|
||||
#if defined(CONFIG_DUAL_LCDC_DUAL_DISP_IN_KERNEL)
|
||||
if(hdmi_get_hotplug() == HDMI_HPD_ACTIVED)
|
||||
{
|
||||
if(inf->num_fb >= 2)
|
||||
@@ -363,7 +363,7 @@ static int rk_fb_set_par(struct fb_info *info)
|
||||
var->pixclock = dev_drv->pixclock;
|
||||
|
||||
#if defined(CONFIG_HDMI_RK30)
|
||||
#if defined(CONFIG_DUAL_DISP_IN_KERNEL)
|
||||
#if defined(CONFIG_DUAL_LCDC_DUAL_DISP_IN_KERNEL)
|
||||
if(hdmi_get_hotplug() == HDMI_HPD_ACTIVED)
|
||||
{
|
||||
if(inf->num_fb >= 2)
|
||||
@@ -488,7 +488,7 @@ static int rk_fb_set_par(struct fb_info *info)
|
||||
par->yvir = var->yres_virtual;
|
||||
|
||||
#if defined(CONFIG_HDMI_RK30)
|
||||
#if defined(CONFIG_DUAL_DISP_IN_KERNEL)
|
||||
#if defined(CONFIG_DUAL_LCDC_DUAL_DISP_IN_KERNEL)
|
||||
if(hdmi_get_hotplug() == HDMI_HPD_ACTIVED)
|
||||
{
|
||||
if(info != info2)
|
||||
@@ -701,7 +701,7 @@ int rk_fb_switch_screen(rk_screen *screen ,int enable ,int lcdc_id)
|
||||
|
||||
hdmi_var = &info->var;
|
||||
hdmi_fix = &info->fix;
|
||||
#if defined(CONFIG_DUAL_DISP_IN_KERNEL)
|
||||
#if defined(CONFIG_DUAL_LCDC_DUAL_DISP_IN_KERNEL)
|
||||
if(likely(inf->num_lcdc == 2))
|
||||
{
|
||||
pmy_var = &inf->fb[0]->var;
|
||||
@@ -731,7 +731,7 @@ int rk_fb_switch_screen(rk_screen *screen ,int enable ,int lcdc_id)
|
||||
ret = info->fbops->fb_open(info,1);
|
||||
ret = dev_drv->load_screen(dev_drv,1);
|
||||
ret = info->fbops->fb_set_par(info);
|
||||
#if defined(CONFIG_DUAL_DISP_IN_KERNEL)
|
||||
#if defined(CONFIG_DUAL_LCDC_DUAL_DISP_IN_KERNEL)
|
||||
if(likely(inf->num_lcdc == 2))
|
||||
{
|
||||
pmy_info = inf->fb[0];
|
||||
@@ -1204,7 +1204,7 @@ static int __devinit rk_fb_probe (struct platform_device *pdev)
|
||||
}
|
||||
platform_set_drvdata(pdev,fb_inf);
|
||||
#if defined(CONFIG_HDMI_RK30)
|
||||
#if defined(CONFIG_DUAL_DISP_IN_KERNEL)
|
||||
#if defined(CONFIG_DUAL_LCDC_DUAL_DISP_IN_KERNEL)
|
||||
fb_inf->workqueue = create_singlethread_workqueue("hdmi_post");
|
||||
INIT_DELAYED_WORK(&(fb_inf->delay_work), hdmi_post_work);
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user