HID: i2c-hid: Do not set the ACPI companion field in the HID device
authorAndrew Duggan <aduggan@synaptics.com>
Tue, 2 Jun 2015 21:46:20 +0000 (14:46 -0700)
committerJiri Kosina <jkosina@suse.cz>
Wed, 3 Jun 2015 08:43:55 +0000 (10:43 +0200)
The HID device does not need to know about the ACPI device associated with
the underlying i2c device. Setting the ACPI companion field in the HID device
also has the side effect of causing HID to be set as wake capable, since
acpi_bind_one uses's the companion ACPI device's wakeup flags to set the
device as wake capable. Which results in power/wakeup files in sysfs for
the HID device which do not do anything.

Signed-off-by: Andrew Duggan <aduggan@synaptics.com>
Reviewed-by: Benson Leung <bleung@chromium.org>
Tested-by: Benson Leung <bleung@chromium.org>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/i2c-hid/i2c-hid.c

index 92d6cdf024607d848249e011d14f19e88d7c4a39..0dfb5d170af26c3b3de4e0a5c9a28f4cfee3b56c 100644 (file)
@@ -1019,7 +1019,6 @@ static int i2c_hid_probe(struct i2c_client *client,
        hid->driver_data = client;
        hid->ll_driver = &i2c_hid_ll_driver;
        hid->dev.parent = &client->dev;
-       ACPI_COMPANION_SET(&hid->dev, ACPI_COMPANION(&client->dev));
        hid->bus = BUS_I2C;
        hid->version = le16_to_cpu(ihid->hdesc.bcdVersion);
        hid->vendor = le16_to_cpu(ihid->hdesc.wVendorID);