Skip to content

Commit

Permalink
Merge tag 'input-for-v6.12-rc1' of git://git.kernel.org/pub/scm/linux…
Browse files Browse the repository at this point in the history
…/kernel/git/dtor/input

Pull input fixes from Dmitry Torokhov:

 - a couple fixups for adp5589-keys driver

 - recently added driver for PixArt PS/2 touchpads is dropped
   temporarily because its detection routine is too greedy and
   mis-identifies devices from other vendors as PixArt devices

* tag 'input-for-v6.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: adp5589-keys - fix adp5589_gpio_get_value()
  Input: adp5589-keys - fix NULL pointer dereference
  Revert "Input: Add driver for PixArt PS/2 touchpad"
  • Loading branch information
Linus Torvalds committed Oct 2, 2024
2 parents 359cdf5 + c684771 commit 0d2746a
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 377 deletions.
22 changes: 13 additions & 9 deletions drivers/input/keyboard/adp5589-keys.c
Original file line number Diff line number Diff line change
Expand Up @@ -391,10 +391,17 @@ static int adp5589_gpio_get_value(struct gpio_chip *chip, unsigned off)
struct adp5589_kpad *kpad = gpiochip_get_data(chip);
unsigned int bank = kpad->var->bank(kpad->gpiomap[off]);
unsigned int bit = kpad->var->bit(kpad->gpiomap[off]);
int val;

return !!(adp5589_read(kpad->client,
kpad->var->reg(ADP5589_GPI_STATUS_A) + bank) &
bit);
mutex_lock(&kpad->gpio_lock);
if (kpad->dir[bank] & bit)
val = kpad->dat_out[bank];
else
val = adp5589_read(kpad->client,
kpad->var->reg(ADP5589_GPI_STATUS_A) + bank);
mutex_unlock(&kpad->gpio_lock);

return !!(val & bit);
}

static void adp5589_gpio_set_value(struct gpio_chip *chip,
Expand Down Expand Up @@ -936,10 +943,9 @@ static int adp5589_keypad_add(struct adp5589_kpad *kpad, unsigned int revid)

static void adp5589_clear_config(void *data)
{
struct i2c_client *client = data;
struct adp5589_kpad *kpad = i2c_get_clientdata(client);
struct adp5589_kpad *kpad = data;

adp5589_write(client, kpad->var->reg(ADP5589_GENERAL_CFG), 0);
adp5589_write(kpad->client, kpad->var->reg(ADP5589_GENERAL_CFG), 0);
}

static int adp5589_probe(struct i2c_client *client)
Expand Down Expand Up @@ -983,7 +989,7 @@ static int adp5589_probe(struct i2c_client *client)
}

error = devm_add_action_or_reset(&client->dev, adp5589_clear_config,
client);
kpad);
if (error)
return error;

Expand All @@ -1010,8 +1016,6 @@ static int adp5589_probe(struct i2c_client *client)
if (error)
return error;

i2c_set_clientdata(client, kpad);

dev_info(&client->dev, "Rev.%d keypad, irq %d\n", revid, client->irq);
return 0;
}
Expand Down
12 changes: 0 additions & 12 deletions drivers/input/mouse/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -69,18 +69,6 @@ config MOUSE_PS2_LOGIPS2PP

If unsure, say Y.

config MOUSE_PS2_PIXART
bool "PixArt PS/2 touchpad protocol extension" if EXPERT
default y
depends on MOUSE_PS2
help
This driver supports the PixArt PS/2 touchpad found in some
laptops.
Say Y here if you have a PixArt PS/2 TouchPad connected to
your system.

If unsure, say Y.

config MOUSE_PS2_SYNAPTICS
bool "Synaptics PS/2 mouse protocol extension" if EXPERT
default y
Expand Down
1 change: 0 additions & 1 deletion drivers/input/mouse/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ psmouse-$(CONFIG_MOUSE_PS2_ELANTECH) += elantech.o
psmouse-$(CONFIG_MOUSE_PS2_OLPC) += hgpk.o
psmouse-$(CONFIG_MOUSE_PS2_LOGIPS2PP) += logips2pp.o
psmouse-$(CONFIG_MOUSE_PS2_LIFEBOOK) += lifebook.o
psmouse-$(CONFIG_MOUSE_PS2_PIXART) += pixart_ps2.o
psmouse-$(CONFIG_MOUSE_PS2_SENTELIC) += sentelic.o
psmouse-$(CONFIG_MOUSE_PS2_TRACKPOINT) += trackpoint.o
psmouse-$(CONFIG_MOUSE_PS2_TOUCHKIT) += touchkit_ps2.o
Expand Down
300 changes: 0 additions & 300 deletions drivers/input/mouse/pixart_ps2.c

This file was deleted.

Loading

0 comments on commit 0d2746a

Please sign in to comment.