Hi, This patch has the fix for the Touch Screen issue on OMAP3 ES2.0.The IRQ for the TS has been defined as 3 and 2 for ES1 and ES2 and the IRQ assignment is done at run time.Changed the macro naming conventions for TS and Ethernet. Regards, Teerth Fix for the Touch Screen issue on OMAP3 ES2.0.The IRQ for the TS has been defined as 3 and 2 for ES1 and ES2 and the IRQ assignment is done at run time.Changed the macro naming conventions for TS and Ethernet. Signed-off-by: Teerth Reddy <teerth@xxxxxx> --- arch/arm/mach-omap2/board-3430sdp.c | 21 +++++++++++++++------ include/asm-arm/arch-omap/board-3430sdp.h | 3 ++- 2 files changed, 17 insertions(+), 7 deletions(-) Index: linux-omap-2.6-lat/include/asm-arm/arch-omap/board-3430sdp.h =================================================================== --- linux-omap-2.6-lat.orig/include/asm-arm/arch-omap/board-3430sdp.h 2007-12-05 10:19:30.324869299 +0530 +++ linux-omap-2.6-lat/include/asm-arm/arch-omap/board-3430sdp.h 2007-12-05 10:20:55.988125113 +0530 @@ -34,13 +34,14 @@ /* Placeholder for 3430SDP specific defines */ #define OMAP34XX_ETHR_START DEBUG_BASE -#define OMAP34XX_ETHR_GPIO_IRQ_SDPV1 29 -#define OMAP34XX_ETHR_GPIO_IRQ_SDPV2 6 +#define OMAP34XX_SDPV1_ETHR_GPIO 29 +#define OMAP34XX_SDPV2_ETHR_GPIO 6 /* * GPIO used for TSC2046, TI's Touchscreen controller */ -#define TS_GPIO 3 +#define OMAP34XX_SDPV1_TS_GPIO 3 +#define OMAP34XX_SDPV2_TS_GPIO 2 /* NAND */ /* IMPORTANT NOTE ON MAPPING Index: linux-omap-2.6-lat/arch/arm/mach-omap2/board-3430sdp.c =================================================================== --- linux-omap-2.6-lat.orig/arch/arm/mach-omap2/board-3430sdp.c 2007-12-05 10:19:30.324869299 +0530 +++ linux-omap-2.6-lat/arch/arm/mach-omap2/board-3430sdp.c 2007-12-05 10:21:20.771331333 +0530 @@ -120,6 +120,8 @@ }, }; +static int ts_gpio; + #ifdef CONFIG_RTC_DRV_TWL4030 static int twl4030_rtc_init(void) { @@ -181,20 +183,20 @@ */ static void ads7846_dev_init(void) { - if (omap_request_gpio(TS_GPIO) < 0) { + if (omap_request_gpio(ts_gpio) < 0) { printk(KERN_ERR "can't get ads746 pen down GPIO\n"); return; } - omap_set_gpio_direction(TS_GPIO, 1); + omap_set_gpio_direction(ts_gpio, 1); - omap_set_gpio_debounce(TS_GPIO, 1); - omap_set_gpio_debounce_time(TS_GPIO, 0xa); + omap_set_gpio_debounce(ts_gpio, 1); + omap_set_gpio_debounce_time(ts_gpio, 0xa); } static int ads7846_get_pendown_state(void) { - return !omap_get_gpio_datain(TS_GPIO); + return !omap_get_gpio_datain(ts_gpio); } /* @@ -250,7 +252,7 @@ .chip_select = 0, .max_speed_hz = 1500000, .controller_data = &tsc2046_mcspi_config, - .irq = OMAP_GPIO_IRQ(TS_GPIO), + .irq = 0, .platform_data = &tsc2046_config, }, }; @@ -281,9 +283,9 @@ udelay(100); if (is_sil_rev_greater_than(OMAP3430_REV_ES1_0)) - eth_gpio = OMAP34XX_ETHR_GPIO_IRQ_SDPV2; + eth_gpio = OMAP34XX_SDPV2_ETHR_GPIO; else - eth_gpio = OMAP34XX_ETHR_GPIO_IRQ_SDPV1; + eth_gpio = OMAP34XX_SDPV1_ETHR_GPIO; sdp3430_smc91x_resources[1].start = OMAP_GPIO_IRQ(eth_gpio); @@ -325,6 +327,11 @@ platform_add_devices(sdp3430_devices, ARRAY_SIZE(sdp3430_devices)); omap_board_config = sdp3430_config; omap_board_config_size = ARRAY_SIZE(sdp3430_config); + if (is_sil_rev_greater_than(OMAP3430_REV_ES1_0)) + ts_gpio = OMAP34XX_SDPV2_TS_GPIO; + else + ts_gpio = OMAP34XX_SDPV1_TS_GPIO; + sdp3430_spi_board_info[0].irq = OMAP_GPIO_IRQ(ts_gpio); spi_register_board_info(sdp3430_spi_board_info, ARRAY_SIZE(sdp3430_spi_board_info)); sdp3430_flash_init(); - To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html