Ads properly initialization to GPIO4 ( alt. fn. #1, nCS3; because GPIO4 and GPIO4_2 cannot be <br>configured as GPIO simultaneously ) so GPIO4_2 which used as irq line from UCB1400 may be <br>detected while irq autoprobing routine.<br>
<br>Signed-off by: Yuri Ludkevich &lt;<a href="mailto:urx.forever@gmail.com">urx.forever@gmail.com</a>&gt;<br>---<br><br>--- linux-next/arch/arm/mach-pxa/colibri-pxa320.c.orig  2010-08-11 16:01:46.000000000 +0400<br>+++ linux-next/arch/arm/mach-pxa/colibri-pxa320.c       2010-08-11 16:23:30.000000000 +0400<br>
@@ -236,6 +236,19 @@ static void __init colibri_pxa320_init_u<br>        pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa320_uart_pin_config));<br> }<br><br>+<br>+static mfp_cfg_t colibri_pxa320_cpld_pin_config[] __initdata = {<br>
+       /* init GPIO4 as nCS3 (AF1). If GPIO4 stay as GPIO<br>+          touchscreen irq (GPIO4_2 pin) autoprobing will not work.<br>+          See Marvell PXA320 datasheet for more details */<br>+       GPIO4_nCS3,<br>+};<br>
+<br>+static void __init colibri_pxa320_init_cpld(void)<br>+{      <br>+       pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa320_cpld_pin_config));<br>+}<br>+<br> void __init colibri_pxa320_init(void)<br> {<br>        pxa_set_ffuart_info(NULL);<br>
@@ -252,6 +265,7 @@ void __init colibri_pxa320_init(void)<br>                                mfp_to_gpio(MFP_PIN_GPIO28));<br>        colibri_pxa320_init_uart();<br>        colibri_pxa320_init_udc();<br>+       colibri_pxa320_init_cpld();<br>
 }<br><br> MACHINE_START(COLIBRI320, &quot;Toradex Colibri PXA320&quot;)<br><br>