Re: [PATCH] Input: elan_i2c - enable ELAN0600 acpi panels

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

 



Hi Dmitry,

Sorry later for reply. If touchpad is designed for Window OS, 
the firmware will support standard HID mouse format (non-driver) and elan raw data format (with driver).

So, if user change OS from Window to Linux, touchpad will work fine under HID format.

----------------------------------------------
Thanks,
ELAN Duson
✉ Email: dusonlin@xxxxxxxxxx
----------------------------------------------





> Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> 於 2015年4月4日 上午5:05 寫道:
> 
> On Tue, Mar 31, 2015 at 05:34:58PM -0400, 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
>> 
>> Found on a Lenovo Yoga 3 11".
>> 
>> Reported-and-tested-by: Alessio Treglia <alessio@xxxxxxxxxx>
>> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
>> ---
>> 
>> Hi,
>> 
>> Alessio reported this touchpad on the Lenovo Yoga 3. I must say that I am
>> rather surprised that we need a cross tree support to enable this panel
>> and I would expect that the driver would be in the HID subtree, not a direct
>> input device.
>> 
>> I understand the driver needs to access to the raw I2C commands, but still,
>> we could have worked around in the HID tree directly.
>> Not to mention that the DT binding would have required only i2c-hid, not a
>> custom vendor.
>> 
>> Anyway, Jiri, Dmitry, who wants to take this one?
> 
> Hmm, so elan_i2c.ko (and elants_i2c) is intended to be used with devices
> that are not compatible with HID protocol, as far as I know. I guess
> there are firmwares that can do both, but then we should default to HID.
> 
> Duson, any comments?
> 
> Thanks!
> 
>> 
>> 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 722a925..33a22f4 100644
>> --- a/drivers/hid/hid-core.c
>> +++ b/drivers/hid/hid-core.c
>> @@ -2259,6 +2259,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 375d98f..ced9a9c 100644
>> --- a/drivers/input/mouse/elan_i2c_core.c
>> +++ b/drivers/input/mouse/elan_i2c_core.c
>> @@ -1110,6 +1110,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.3.4
>> 
> 
> -- 
> Dmitry
> 

--
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