Hui Wang b08221c40f ACPI: PNP: compare the string length in the matching_id()
Recently we met a touchscreen problem on some Thinkpad machines, the
touchscreen driver (i2c-hid) is not loaded and the touchscreen can't
work.

An i2c ACPI device with the name WACF2200 is defined in the BIOS, with
the current rule in matching_id(), this device will be regarded as
a PNP device since there is WACFXXX in the acpi_pnp_device_ids[] and
this PNP device is attached to the acpi device as the 1st
physical_node, this will make the i2c bus match fail when i2c bus
calls acpi_companion_match() to match the acpi_id_table in the i2c-hid
driver.

WACF2200 is an i2c device instead of a PNP device, after adding the
string length comparing, the matching_id() will return false when
matching WACF2200 and WACFXXX, and it is reasonable to compare the
string length when matching two IDs.

Suggested-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Hui Wang <hui.wang@canonical.com>
Cc: All applicable <stable@vger.kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-12-15 19:30:49 +01:00
..
2020-11-10 18:52:51 +01:00
2020-11-09 19:08:06 +01:00
2020-10-14 11:42:04 -07:00
2019-06-23 09:23:33 +02:00
2020-10-15 10:46:16 -07:00
2020-11-09 19:08:06 +01:00
2020-10-27 19:30:27 +01:00
2020-11-09 19:08:06 +01:00
2020-11-09 19:25:20 +01:00
2019-11-13 11:12:08 +01:00
2020-11-09 19:08:06 +01:00
2020-11-09 19:08:06 +01:00
2020-08-05 10:51:40 -07:00
2020-11-09 19:08:06 +01:00
2020-11-09 19:08:06 +01:00
2020-11-09 19:08:06 +01:00
2020-06-02 13:25:52 -07:00
2020-07-09 14:09:28 +02:00
2020-10-22 18:58:26 +02:00
2020-11-09 19:08:06 +01:00