2015-07-17 18:49:46

by Benjamin Tissoires

[permalink] [raw]
Subject: [PATCH RESENT] Input: elan_i2c - enable ELAN0600 acpi panels

ELAN0600 seems to work just fine in mouse emulation mode through i2c-hid,
but to have full raw touch support we need to register it in elan_i2c.ko

Reported-and-tested-by: Alessio Treglia <[email protected]>
Signed-off-by: Benjamin Tissoires <[email protected]>
---

Hi,

well, last discussion ended up that the patch was the right solution, so
I am resending it now to get Jiri's ACK so Dmitry will be able to take it.

Just for the sake of it, I double checked the Elan 0x0401 (a i2c-hid device
which might be working with elan_i2c with some tweaks), which I have some
debug logs, and I don't think we will be able to communicate and enable
the raw reporting through HID. So sadly, yes, we need to blacklist in HID
and enable in elan_i2c.

Cheers,
Benjamin

drivers/hid/hid-core.c | 1 +
drivers/input/mouse/elan_i2c_core.c | 1 +
2 files changed, 2 insertions(+)

diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index 157c627..279898c 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -2267,6 +2267,7 @@ static const struct hid_device_id hid_ignore_list[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_DELORME, USB_DEVICE_ID_DELORME_EM_LT20) },
{ HID_USB_DEVICE(USB_VENDOR_ID_DREAM_CHEEKY, 0x0004) },
{ HID_USB_DEVICE(USB_VENDOR_ID_DREAM_CHEEKY, 0x000a) },
+ { HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, 0x0400) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ESSENTIAL_REALITY, USB_DEVICE_ID_ESSENTIAL_REALITY_P5) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ETT, USB_DEVICE_ID_TC5UH) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ETT, USB_DEVICE_ID_TC4UM) },
diff --git a/drivers/input/mouse/elan_i2c_core.c b/drivers/input/mouse/elan_i2c_core.c
index 62641f2..c285ff3 100644
--- a/drivers/input/mouse/elan_i2c_core.c
+++ b/drivers/input/mouse/elan_i2c_core.c
@@ -1167,6 +1167,7 @@ MODULE_DEVICE_TABLE(i2c, elan_id);
#ifdef CONFIG_ACPI
static const struct acpi_device_id elan_acpi_id[] = {
{ "ELAN0000", 0 },
+ { "ELAN0600", 0 },
{ }
};
MODULE_DEVICE_TABLE(acpi, elan_acpi_id);
--
2.4.3


2015-07-20 09:30:23

by Jiri Kosina

[permalink] [raw]
Subject: Re: [PATCH RESENT] Input: elan_i2c - enable ELAN0600 acpi panels

On Fri, 17 Jul 2015, Benjamin Tissoires wrote:

> ELAN0600 seems to work just fine in mouse emulation mode through i2c-hid,
> but to have full raw touch support we need to register it in elan_i2c.ko
>
> Reported-and-tested-by: Alessio Treglia <[email protected]>
> Signed-off-by: Benjamin Tissoires <[email protected]>

Acked-by: Jiri Kosina <[email protected]>

--
Jiri Kosina
SUSE Labs

2015-07-20 16:57:06

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH RESENT] Input: elan_i2c - enable ELAN0600 acpi panels

On Mon, Jul 20, 2015 at 11:30:02AM +0200, Jiri Kosina wrote:
> On Fri, 17 Jul 2015, Benjamin Tissoires wrote:
>
> > ELAN0600 seems to work just fine in mouse emulation mode through i2c-hid,
> > but to have full raw touch support we need to register it in elan_i2c.ko
> >
> > Reported-and-tested-by: Alessio Treglia <[email protected]>
> > Signed-off-by: Benjamin Tissoires <[email protected]>
>
> Acked-by: Jiri Kosina <[email protected]>

Applied, thank you.

--
Dmitry