From b5904054fbd1d77468f56d4394b8c9b22dc1d9ff Mon Sep 17 00:00:00 2001 From: Xiangfu Liu Date: Mon, 24 Aug 2009 01:45:19 +0800 Subject: [PATCH] make lcd work in 2.6.31 fix typo in driver/video/Makefile add some option to driver/video/Kconfig update the .config file. Signed-off-by: Xiangfu Liu --- target/linux/xburst/config-2.6.31 | 2 + .../patches-2.6.31/210-qi_lb60_lcd.patch | 60 +++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 target/linux/xburst/patches-2.6.31/210-qi_lb60_lcd.patch diff --git a/target/linux/xburst/config-2.6.31 b/target/linux/xburst/config-2.6.31 index b9f4824b6..f86f4ce4a 100644 --- a/target/linux/xburst/config-2.6.31 +++ b/target/linux/xburst/config-2.6.31 @@ -163,6 +163,8 @@ CONFIG_JZ4740_QI_LB60=y # CONFIG_JZLCD_CSTN_320x240 is not set # CONFIG_JZLCD_CSTN_800x600 is not set CONFIG_JZLCD_FOXCONN_PT035TN01=y +CONFIG_JZLCD_FRAMEBUFFER_MAX=1 +# CONFIG_JZLCD_FRAMEBUFFER_ROTATE_SUPPORT is not set # CONFIG_JZLCD_HYNIX_HT10X21 is not set # CONFIG_JZLCD_INNOLUX_AT080TN42 is not set # CONFIG_JZLCD_INNOLUX_PT035TN01_SERIAL is not set diff --git a/target/linux/xburst/patches-2.6.31/210-qi_lb60_lcd.patch b/target/linux/xburst/patches-2.6.31/210-qi_lb60_lcd.patch new file mode 100644 index 000000000..5e56b001f --- /dev/null +++ b/target/linux/xburst/patches-2.6.31/210-qi_lb60_lcd.patch @@ -0,0 +1,60 @@ +diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig +index 3d5d623..40ad167 100644 +--- a/drivers/video/Kconfig ++++ b/drivers/video/Kconfig +@@ -281,6 +281,42 @@ config FB_JZLCD_4730_4740 + depends on FB_JZSOC && (SOC_JZ4730 || SOC_JZ4740) + help + This is the frame buffer device driver for the JZ4730 and JZ4740 LCD controller. ++config JZLCD_FRAMEBUFFER_MAX ++ int "Default FrameBuffer num" ++ depends on FB_JZLCD_4730_4740 ++ default "1" ++ ---help--- ++ JZ LCD driver support multi-framebuffers for video applications. ++config JZLCD_FRAMEBUFFER_ROTATE_SUPPORT ++ bool "JZLCD FrameBuffer Rotate Support(For TEST)" ++ depends on FB_JZLCD_4730_4740 ++ default n ++ ---help--- ++ JZ LCD driver framebuffer rotate support. Rotate angle can be 0,90,180,270. ++ Note, this fearture is implemented by software, and will cost a lot of cpu capcity. ++ That is to say, if you select this function, you system will become slowly. ++ Rotate cost cpu about: ++ ratate angle 0'C: 0% cpu ++ ratate angle 90'C: 40% cpu ++ ratate angle 180'C: 20% cpu ++ ratate angle 270'C: 40% cpu ++ ++config JZLCD_FRAMEBUFFER_DEFAULT_ROTATE_ANGLE ++ int "FrameBuffer default rotate angle" ++ depends on JZLCD_FRAMEBUFFER_ROTATE_SUPPORT ++ default 0 ++ ---help--- ++ JZ LCD driver framebuffer angle value can be: ++ 0: 0'C ++ 1: 90'C ++ 2: 180'C ++ 3: 270'C ++config JZLCD_FRAMEBUFFER_BPP ++ int "FrameBuffer bit per pixel" ++ depends on JZLCD_FRAMEBUFFER_ROTATE_SUPPORT ++ default 32 ++ ---help--- ++ JZ LCD driver framebuffer support 8bpp, 16bpp, 32bpp + choice + depends on FB_JZLCD_4730_4740 + prompt "LCD Panel" +diff --git a/drivers/video/Makefile b/drivers/video/Makefile +index 289b6e9..ae24d6d 100644 +--- a/drivers/video/Makefile ++++ b/drivers/video/Makefile +@@ -28,7 +28,7 @@ obj-$(CONFIG_FB_DDC) += fb_ddc.o + obj-$(CONFIG_FB_DEFERRED_IO) += fb_defio.o + + # Hardware specific drivers go first +-obj-$(CONFIG_FB_JZLCD_4720_4740) += jzlcd.o ++obj-$(CONFIG_FB_JZLCD_4730_4740) += jzlcd.o + obj-$(CONFIG_FB_JZ4740_SLCD) += jz4740_slcd.o + + obj-$(CONFIG_FB_AMIGA) += amifb.o c2p_planar.o