Re: [PATCH] input: ads7846: fix gpio_pendown configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/03/11 19:18, Dmitry Torokhov wrote:

> On Tue, May 03, 2011 at 07:02:53PM +0300, Igor Grinberg wrote:
>> The pendown gpio was requested but not configured for input.
>> Request and configure it in one shot.
>>
>> Signed-off-by: Igor Grinberg <grinberg@xxxxxxxxxxxxxx>
> There is no significant change from the previos version of the patch by
> Sourav Poddar that I tried to apply and had to revert. Does it compile
> if !CONFIG_GENERIC_GPIO?

shout!?!? It has been just several month we had this discussion,
but I've completely forgot it took place... shame on me...

Back to business, either way, the gpio direction must be configured
before accessing the gpio.
I can propose two solutions to this:
1) ads7846 relies on gpio subsystem, so add depend on
   CONFIG_GENERIC_GPIO to Kconfig ads7846 entry.
2) just don't use gpio_request_one(),
   but gpio_request() and then gpio_direction_input().

Logic behind 1 is that platforms that don't use CONFIG_GENERIC_GPIO
most likely don't use ads7846. Anybody know of such platform?
The second one is less intrusive and more local, but will do the job.

What do you think is more preferable?

>> ---
>>  drivers/input/touchscreen/ads7846.c |    3 ++-
>>  1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c
>> index c24946f..bf067aa 100644
>> --- a/drivers/input/touchscreen/ads7846.c
>> +++ b/drivers/input/touchscreen/ads7846.c
>> @@ -956,7 +956,8 @@ static int __devinit ads7846_setup_pendown(struct spi_device *spi, struct ads784
>>  		ts->get_pendown_state = pdata->get_pendown_state;
>>  	} else if (gpio_is_valid(pdata->gpio_pendown)) {
>>  
>> -		err = gpio_request(pdata->gpio_pendown, "ads7846_pendown");
>> +		err = gpio_request_one(pdata->gpio_pendown, GPIOF_IN,
>> +				       "ads7846_pendown");
>>  		if (err) {
>>  			dev_err(&spi->dev, "failed to request pendown GPIO%d\n",
>>  				pdata->gpio_pendown);
>> -- 
>> 1.7.3.4
>>

-- 
Regards,
Igor.

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux