Skip to content

Commit

Permalink
Input: adp5589 - fix row 5 handling for adp5589
Browse files Browse the repository at this point in the history
The adp5589 has row 5, don't skip it when creating the GPIO mapping.
Otherwise the pin gets reserved as used and it is not possible to use it as
a GPIO.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
  • Loading branch information
Lars-Peter Clausen authored and Dmitry Torokhov committed Feb 9, 2016
1 parent dc262df commit 7008daf
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions drivers/input/keyboard/adp5589-keys.c
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ struct adp5589_kpad {
unsigned short gpimapsize;
unsigned extend_cfg;
bool is_adp5585;
bool adp5585_support_row5;
bool support_row5;
#ifdef CONFIG_GPIOLIB
unsigned char gpiomap[ADP5589_MAXGPIO];
bool export_gpio;
Expand Down Expand Up @@ -485,7 +485,7 @@ static int adp5589_build_gpiomap(struct adp5589_kpad *kpad,
if (kpad->extend_cfg & C4_EXTEND_CFG)
pin_used[kpad->var->c4_extend_cfg] = true;

if (!kpad->adp5585_support_row5)
if (!kpad->support_row5)
pin_used[5] = true;

for (i = 0; i < kpad->var->maxgpio; i++)
Expand Down Expand Up @@ -884,12 +884,13 @@ static int adp5589_probe(struct i2c_client *client,

switch (id->driver_data) {
case ADP5585_02:
kpad->adp5585_support_row5 = true;
kpad->support_row5 = true;
case ADP5585_01:
kpad->is_adp5585 = true;
kpad->var = &const_adp5585;
break;
case ADP5589:
kpad->support_row5 = true;
kpad->var = &const_adp5589;
break;
}
Expand Down

0 comments on commit 7008daf

Please sign in to comment.