From mboxrd@z Thu Jan 1 00:00:00 1970 From: jgq516@gmail.com (Xiao Jiang) Date: Thu, 17 May 2012 15:49:00 +0800 Subject: Compile err with raumfeld_defconfig In-Reply-To: <201205161951.12200.arnd@arndb.de> References: <1337066754-20520-1-git-send-email-jgq516@gmail.com> <4FB26380.9050502@gmail.com> <201205161951.12200.arnd@arndb.de> Message-ID: <4FB4AD6C.3000904@gmail.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Arnd Bergmann wrote: > On Tuesday 15 May 2012, Daniel Mack wrote: > >> On 15.05.2012 09:25, jgq516 at gmail.com wrote: >> >>> Hi, >>> >>> Does somebody notice this compile err with raumfeld_defconfig as follows? >>> >>> drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_irq_active': >>> drivers/input/touchscreen/eeti_ts.c:65:2: error: implicit declaration of function 'irq_to_gpio' >>> >> Yes, this is being worked on. Thanks for noticing, though :) >> > > Does this work for you? > 8<--- > input/eeti_ts: pass gpio line in platform data > > irq_to_gpio() was removed, so we have to pass the gpio number separately. > > Without this patch, building raumfeld_defconfig results in: > > /home/arnd/linux-arm/drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_irq_active': > /home/arnd/linux-arm/drivers/input/touchscreen/eeti_ts.c:65:2: error: implicit declaration of function 'irq_to_gpio' [-Werror=implicit-function-declaration] > cc1: some warnings being treated as errors > make[4]: *** [drivers/input/touchscreen/eeti_ts.o] Error 1 > make[3]: *** [drivers/input/touchscreen] Error 2 > make[2]: *** [drivers/input] Error 2 > make[1]: *** [drivers] Error 2 > make[1]: *** Waiting for unfinished jobs.... > make: *** [sub-make] Error 2 > > Generated by script, please check manually > Compile with raumfeld_defconfig ok after apply this patch manually. Tested-by: Xiao Jiang Regards, Xiao > Signed-off-by: Arnd Bergmann > --- > arch/arm/mach-pxa/raumfeld.c | 1 + > drivers/input/touchscreen/eeti_ts.c | 8 +++++--- > include/linux/input/eeti_ts.h | 1 + > 3 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/arch/arm/mach-pxa/raumfeld.c b/arch/arm/mach-pxa/raumfeld.c > index 5905ed1..9e1c4ea 100644 > --- a/arch/arm/mach-pxa/raumfeld.c > +++ b/arch/arm/mach-pxa/raumfeld.c > @@ -953,6 +953,7 @@ static struct i2c_board_info raumfeld_connector_i2c_board_info __initdata = { > > static struct eeti_ts_platform_data eeti_ts_pdata = { > .irq_active_high = 1, > + .gpio = GPIO_TOUCH_IRQ, > }; > > static struct i2c_board_info raumfeld_controller_i2c_board_info __initdata = { > diff --git a/drivers/input/touchscreen/eeti_ts.c b/drivers/input/touchscreen/eeti_ts.c > index 503c709..45dab18 100644 > --- a/drivers/input/touchscreen/eeti_ts.c > +++ b/drivers/input/touchscreen/eeti_ts.c > @@ -48,7 +48,7 @@ struct eeti_ts_priv { > struct input_dev *input; > struct work_struct work; > struct mutex mutex; > - int irq, irq_active_high; > + int irq, gpio, irq_active_high; > }; > > #define EETI_TS_BITDEPTH (11) > @@ -62,7 +62,7 @@ struct eeti_ts_priv { > > static inline int eeti_ts_irq_active(struct eeti_ts_priv *priv) > { > - return gpio_get_value(irq_to_gpio(priv->irq)) == priv->irq_active_high; > + return gpio_get_value(priv->gpio) == priv->irq_active_high; > } > > static void eeti_ts_read(struct work_struct *work) > @@ -203,8 +203,10 @@ static int __devinit eeti_ts_probe(struct i2c_client *client, > > pdata = client->dev.platform_data; > > - if (pdata) > + if (pdata) { > + priv->gpio = pdata->gpio; > priv->irq_active_high = pdata->irq_active_high; > + } > > irq_flags = priv->irq_active_high ? > IRQF_TRIGGER_RISING : IRQF_TRIGGER_FALLING; > diff --git a/include/linux/input/eeti_ts.h b/include/linux/input/eeti_ts.h > index f875b31..3404504 100644 > --- a/include/linux/input/eeti_ts.h > +++ b/include/linux/input/eeti_ts.h > @@ -3,6 +3,7 @@ > > struct eeti_ts_platform_data { > unsigned int irq_active_high; > + unsigned int gpio; > }; > > #endif /* LINUX_INPUT_EETI_TS_H */ >