modify lcd driver
authorhhb <hhb@rock-chips.com>
Wed, 23 Mar 2011 09:02:31 +0000 (17:02 +0800)
committerhhb <hhb@rock-chips.com>
Wed, 23 Mar 2011 09:02:31 +0000 (17:02 +0800)
arch/arm/mach-rk29/board-rk29-phonesdk.c
arch/arm/mach-rk29/include/mach/board.h
drivers/input/touchscreen/Kconfig
drivers/input/touchscreen/Makefile
drivers/video/display/screen/Kconfig
drivers/video/display/screen/Makefile
drivers/video/display/screen/screen.h

index 3e4a2b858546454c525309516fee46ac3d79ce00..135d03201a01fa553dddc226b0b910d4ab147cf6 100755 (executable)
@@ -322,7 +322,7 @@ static struct platform_device rk29_v4l2_output_devce = {
        .name           = "rk29_vout",
 };
 
-/*HANNSTAR_P1003 touch*/
+/* HANNSTAR_P1003 touch I2C */
 #if defined (CONFIG_HANNSTAR_P1003)
 #define TOUCH_RESET_PIN RK29_PIN6_PC3
 #define TOUCH_INT_PIN   RK29_PIN4_PD5
@@ -379,6 +379,8 @@ static struct gt801_platform_data gt801_info = {
 };
 #endif
 
+/* EETI_EGALAX touch I2C */
+
 #if defined (CONFIG_EETI_EGALAX)
 #define TOUCH_RESET_PIN RK29_PIN6_PC3
 #define TOUCH_INT_PIN   RK29_PIN4_PD5
@@ -413,6 +415,31 @@ static struct eeti_egalax_platform_data eeti_egalax_info = {
 
 };
 #endif
+
+/* GT801 touch I2C */
+#if defined (CONFIG_GT801)
+#include <drivers/input/touchscreen/gt801.h> 
+#define TOUCH_RESET_PIN RK29_PIN6_PC3
+#define TOUCH_INT_PIN   RK29_PIN4_PD5
+
+static struct gt801_platform_data gt801_info = {
+  .model = 801,
+  .swap_xy = 0,
+  .x_min = 0,
+  .x_max = 480,
+  .y_min = 0,
+  .y_max = 800,
+  .gpio_reset = TOUCH_RESET_PIN,
+  .gpio_reset_active_low = 1,
+  .gpio_pendown = TOUCH_INT_PIN,
+  .pendown_iomux_name = GPIO4D5_CPUTRACECTL_NAME,
+  .resetpin_iomux_name = "FFF",
+  .pendown_iomux_mode = GPIO4H_GPIO4D5,
+  .resetpin_iomux_mode = 0,
+  .get_pendown_state = NULL,
+};
+#endif
+
 /*MMA8452 gsensor*/
 #if defined (CONFIG_GS_MMA8452)
 #define MMA8452_INT_PIN   RK29_PIN6_PC4
@@ -1434,6 +1461,15 @@ static struct i2c_board_info __initdata board_i2c2_devices[] = {
        .platform_data = &gt801_info,
 },     
 #endif
+#if defined (CONFIG_GT801)
+    {
+      .type           = "gt801_touch",
+      .addr           = 0x55,
+      .flags          = 0,
+      .irq            = RK29_PIN4_PD5,
+      .platform_data  = &gt801_info,
+    },
+#endif
 #if defined (CONFIG_MFD_WM831X_I2C)
 {
        .type           = "wm8310",
index 1470268b9887c197e10ff773b4af1922984b5c3a..abe5778cf62aa1ca15a569a766744a23ce26bd19 100755 (executable)
@@ -194,7 +194,6 @@ struct it7260_platform_data {
     void    (*exit_platform_hw)(void);
 };
 
-
 struct akm8975_platform_data {
        char layouts[3][3];
        char project_name[64];
index 425f28ba19dc71cf1fc82c3da0c2a992cee53f22..8bb1b247b4ad08b2a42d62424de8884bb90c9785 100755 (executable)
@@ -13,7 +13,7 @@ if INPUT_TOUCHSCREEN
 
 config TOUCHSCREEN_XPT2046_SPI
        tristate "XPT2046 based touchscreens:SPI Interface"
-       depends on SPIM_RK29
+       depends on SPIM_RK2818 || SPIM_RK29
        
        config TOUCHSCREEN_XPT2046_NORMAL_SPI
        tristate "normal mode"
@@ -63,31 +63,6 @@ config TOUCHSCREEN_XPT2046_SPI
                tristate "320X480 resolution"
                depends on TOUCHSCREEN_XPT2046_CBN_SPI
 
-#choice 
-#  prompt "XPT2046 based touchscreens: SPI Interface"
-#  default TOUCHSCREEN_XPT2046_CBN_SPI
-         
-#  config TOUCHSCREEN_XPT2046_SPI_NOCHOOSE
-#    bool "DO NOT CHOOSE TOUCHSCREEN_XPT2046"
-  
-#  config TOUCHSCREEN_XPT2046_SPI
-#    bool "800X480 TOUCHSCREEN"
-#   depends on SPIM_RK2818 || SPIM_RK29
-
-#  config TOUCHSCREEN_XPT2046_CBN_SPI
-#    bool "800X480 CALIBRATION TOUCHSCREEN"
-#    depends on SPIM_RK2818 || SPIM_RK29
-  
-#  config TOUCHSCREEN_XPT2046_320X480_SPI
-#    bool "320X480 TOUCHSCREEN"
-#    depends on SPIM_RK2818 || SPIM_RK29
-  
-#  config TOUCHSCREEN_XPT2046_320X480_CBN_SPI
-#      bool "320X480 CALIBRATION TOUCHSCREEN"
-#      depends on SPIM_RK2818 || SPIM_RK29     
-#endchoice
-
-
 config TOUCHSCREEN_ADS7846
        tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
        depends on SPI_MASTER
@@ -119,8 +94,6 @@ config TOUCHSCREEN_AD7877
          To compile this driver as a module, choose M here: the
          module will be called ad7877.
          
-
-
 config RK28_I2C_TS_NTP070
        tristate "NTP070 based touchscreens: NTP070 Interface"
        depends on I2C_RK2818
@@ -745,4 +718,5 @@ config TOUCHSCREEN_IT7260
 config TOUCHSCREEN_GT801_IIC
        tristate "GT801_IIC based touchscreens"
        depends on I2C2_RK29
+
 endif
index 71076518e8e99d4821e5dfc9e79fc90b207409a7..1681c0ead5b3aa7c7fca729594aa7b3b80dfa770 100644 (file)
@@ -54,3 +54,4 @@ obj-$(CONFIG_SINTEK_3FA16)    +=  sintek_3FA16.o
 obj-$(CONFIG_EETI_EGALAX)              += eeti_egalax_i2c.o
 obj-$(CONFIG_ATMEL_MXT224)               += atmel_mxt224.o
 obj-$(CONFIG_TOUCHSCREEN_GT801_IIC)      += gt801_ts.o
+
index 36b9c2f54b08bcaaf32323b53399dc58bf21cf62..e72253a93fe92827e7694c13539de7c38bbe91fc 100755 (executable)
@@ -13,6 +13,8 @@ config LCD_HL070VM4AU
     bool "RGB_HL070VM4AU"
 config LCD_HSD070IDW1
     bool "RGB Hannstar800x480"
+config LCD_RGB_TFT480800_25_E
+    bool "RGB TFT480800_25_E"
 config LCD_HSD100PXN
          bool "RGB Hannstar HSD100PXN(1024X768)"
 config LCD_B101AW06
@@ -35,6 +37,10 @@ config LCD_MCU_TFT480800_25_E
        bool "MCU TFT480800_25_E"
 config LCD_ILI9803_CPT4_3
        bool "RGB lcd_ILI9803_CPT4_3"   
+config LCD_IPS1P5680_V1_E
+    bool "MCU IPS1P5680_V1_E"
+config LCD_MCU_TFT480800_25_E
+    bool "MCU TFT480800_25_E"
 config LCD_ANX7150_720P
        bool "anx7150 720p for default panel"
        ---help---
index 6040ec96142c634f2b0d32c7705604b4d6fd903a..5c91e5ab98960a47706341bf158697d44d11150a 100755 (executable)
@@ -3,6 +3,7 @@ obj-$(CONFIG_TV_NULL) += tv_null.o
 obj-$(CONFIG_HDMI_NULL) += hdmi_null.o
 
 
+
 obj-$(CONFIG_LCD_TD043MGEA1) += lcd_td043mgea1.o
 obj-$(CONFIG_LCD_HSD070IDW1) += lcd_hsd800x480.o
 obj-$(CONFIG_LCD_HL070VM4AU) += lcd_hl070vm4.o
@@ -13,6 +14,10 @@ obj-$(CONFIG_LCD_A060SE02) += lcd_a060se02.o
 obj-$(CONFIG_LCD_S1D13521) += lcd_s1d13521.o
 obj-$(CONFIG_LCD_NT35582) += lcd_nt35582.o
 obj-$(CONFIG_LCD_NT35580) += lcd_nt35580.o
+obj-$(CONFIG_LCD_IPS1P5680_V1_E) += lcd_ips1p5680_v1_e.o
+obj-$(CONFIG_LCD_RGB_TFT480800_25_E) += lcd_rgb_tft480800_25_e.o
+obj-$(CONFIG_LCD_MCU_TFT480800_25_E) += lcd_mcu_tft480800_25_e.o
+obj-$(CONFIG_LCD_LS035Y8DX02A) += lcd_ls035y8dx02a.o
 
 obj-$(CONFIG_HDMI_ANX7150) += hdmi_anx7150.o
 
index fb9c3f08e5674d6a81c3fe72c53e60ac26e8fb48..c5682c3d56e6743d574c04fc0bf5e8013a96f4d7 100755 (executable)
@@ -34,7 +34,7 @@ typedef enum _MCU_STATUS {
 } MCU_STATUS;
 
 
-/* Sceen description */
+/* Screen description */
 struct rk29fb_screen {
     /* screen type & out face */
     u16 type;
@@ -77,10 +77,10 @@ struct rk29fb_screen {
 
     /* Operation function*/
     int (*init)(void);
-    int (*standby)(u8 enable);
-    int (*refresh)(u8 arg);
-    int (*scandir)(u16 dir);
-    int (*disparea)(u8 area);
+    int (*standby)(u32 enable);
+    int (*refresh)(u32 arg);
+    int (*scandir)(u32 dir);
+    int (*disparea)(u32 area);
 
 };