summaryrefslogtreecommitdiff
path: root/include/acpi/acpi_bus.h
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2021-12-30 15:17:21 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2021-12-30 19:01:42 +0100
commita6e1445c445678f211f0aac79713e8c2fcab0c13 (patch)
treee1c7ed24602e37766cbae9dae876a75a69596014 /include/acpi/acpi_bus.h
parent35f9e773bb883a1be87410570f92c8c438e0478b (diff)
downloadlwn-a6e1445c445678f211f0aac79713e8c2fcab0c13.tar.gz
lwn-a6e1445c445678f211f0aac79713e8c2fcab0c13.zip
i2c: acpi: Do not instantiate I2C-clients on boards with known bogus DSDT entries
x86 ACPI devices which ship with only Android as their factory image usually declare a whole bunch of bogus I2C devices in their ACPI tables. Instantiating I2C clients for these bogus devices causes various issues, e.g. GPIO/IRQ resource conflicts because sometimes drivers do bind to them. The Android x86 kernel fork shipped on these devices has some special code to remove these bogus devices, instead of just fixing the DSDT <sigh>. Use the new acpi_quirk_skip_i2c_client_enumeration() helper to identify known boards / acpi devices with this issue, and skip enumerating these. Note these boards typically do actually have I2C devices, just different ones then the ones described in their DSDT. The devices which are actually present are manually instantiated by the drivers/platform/x86/x86-android-tablets.c kernel module. Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Wolfram Sang <wsa@kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'include/acpi/acpi_bus.h')
0 files changed, 0 insertions, 0 deletions