linux/drivers/platform/x86
Hans de Goede 55fa3c9665 platform/x86: x86-android-tablets: New driver for x86 Android tablets
x86 tablets which ship with Android as (part of) the factory image
typically have various problems with their DSDTs. The factory kernels
shipped on these devices typically have device addresses and GPIOs
hardcoded in the kernel, rather then specified in their DSDT.

With the DSDT containing a random collection of devices which may or
may not actually be present as well as missing devices which are
actually present.

This driver, which loads only on affected models based on DMI matching,
adds DMI based instantiating of kernel devices for devices which are
missing from the DSDT, fixing e.g. battery monitoring, touchpads and/or
accelerometers not working.

Note the Kconfig help text also refers to "various fixes" ATM there are
no such fixes, but there are also known cases where entries are present
in the DSDT but they contain bugs, such as missing/wrong GPIOs. The plan
is to also add fixes for things like this here in the future.

This is the least ugly option to get these devices to fully work and to
do so without adding any extra code to the main kernel image (vmlinuz)
when built as a module.

Link: https://lore.kernel.org/platform-driver-x86/20211031162428.22368-1-hdegoede@redhat.com/
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20211223190750.397487-1-hdegoede@redhat.com
2021-12-25 12:41:06 +01:00
..
dell platform/x86: dell-wmi-descriptor: disable by default 2021-11-16 10:56:53 +01:00
intel platform/x86: intel_pmc_core: fix memleak on registration failure 2021-12-23 19:29:18 +01:00
acer-wireless.c
acer-wmi.c platform/x86: acer-wmi: use __packed instead of __attribute__((packed)) 2021-09-14 12:27:15 +02:00
acerhdf.c
adv_swbutton.c
amd-pmc.c platform/x86: amd-pmc: only use callbacks for suspend 2021-12-21 18:52:36 +01:00
amilo-rfkill.c
apple-gmux.c platform/x86: apple-gmux: use resource_size() with res 2021-12-21 18:53:03 +01:00
asus-laptop.c
asus-nb-wmi.c platform/x86: asus-nb-wmi: Add tablet_mode_sw=lid-flip quirk for the TP200s 2021-08-12 17:18:28 +02:00
asus-wireless.c
asus-wmi.c platform/x86: asus-wmi: Reshuffle headers for better maintenance 2021-12-21 19:40:56 +01:00
asus-wmi.h
barco-p50-gpio.c platform/x86: barco-p50-gpio: use KEY_VENDOR for button instead of KEY_RESTART 2021-10-24 10:17:46 +02:00
classmate-laptop.c
compal-laptop.c
dual_accel_detect.h platform/x86: dual_accel_detect: Use the new i2c_acpi_client_count() helper 2021-08-12 17:26:36 +02:00
eeepc-laptop.c
eeepc-wmi.c
firmware_attributes_class.c platform/x86: dell-wmi-sysman: fw_attr_inuse can be static 2021-06-16 17:47:52 +02:00
firmware_attributes_class.h platform/x86: firmware_attributes_class: Create helper file for handling firmware-attributes class registration events 2021-06-16 17:47:51 +02:00
fujitsu-laptop.c
fujitsu-tablet.c
gigabyte-wmi.c platform/x86: gigabyte-wmi: add support for B550 AORUS ELITE AX V2 2021-10-11 15:54:38 +02:00
gpd-pocket-fan.c
hdaps.c platform/x86: hdaps: Constify static attribute_group struct 2021-06-16 17:47:54 +02:00
hp-wmi.c platform/x86: hp-wmi: rename platform_profile_* function symbols 2021-10-27 16:07:31 +02:00
hp_accel.c platform/x86: hp_accel: Use SIMPLE_DEV_PM_OPS() for PM ops 2021-12-07 12:21:01 +01:00
huawei-wmi.c
i2c-multi-instantiate.c Revert "platform/x86: i2c-multi-instantiate: Don't create platform device for INT3515 ACPI nodes" 2021-10-20 19:31:13 +02:00
ibm_rtl.c
ideapad-laptop.c platform: x86: ideapad-laptop: Use ACPI_COMPANION() directly 2021-10-19 16:55:56 +02:00
intel_ips.c platform/x86: intel_ips: fix set but unused warning in read_mgtv 2021-06-16 17:47:55 +02:00
intel_ips.h
intel_scu_ipc.c platform/x86: intel_scu_ipc: Update timeout value in comment 2021-10-11 15:34:51 +02:00
intel_scu_ipcutil.c
intel_scu_pcidrv.c
intel_scu_pltdrv.c
intel_scu_wdt.c
Kconfig platform/x86: x86-android-tablets: New driver for x86 Android tablets 2021-12-25 12:41:06 +01:00
lenovo-yogabook-wmi.c platform/x86: lenovo-yogabook-wmi: Add support for hall sensor on the back 2021-12-07 12:21:01 +01:00
lg-laptop.c platform/x86: lg-laptop: Recognize more models 2021-12-02 12:58:26 +01:00
Makefile platform/x86: x86-android-tablets: New driver for x86 Android tablets 2021-12-25 12:41:06 +01:00
meraki-mx100.c platform/x86: add meraki-mx100 platform driver 2021-08-12 09:26:28 +02:00
mlx-platform.c platform/x86: mlx-platform: Add support for new system SGN2410 2021-10-27 16:29:03 +02:00
msi-laptop.c
msi-wmi.c
mxm-wmi.c
nvidia-wmi-ec-backlight.c platform/x86: Rename wmaa-backlight-wmi to nvidia-wmi-ec-backlight 2021-10-11 14:59:45 +02:00
panasonic-laptop.c platform/x86: panasonic-laptop: Replace snprintf in show functions with sysfs_emit 2021-10-19 16:59:44 +02:00
pcengines-apuv2.c platform/x86: pcengines-apuv2: Add missing terminating entries to gpio-lookup tables 2021-08-06 14:04:43 +02:00
peaq-wmi.c
pmc_atom.c platform/x86: pmc_atom: improve critclk_systems matching for Siemens PCs 2021-12-23 18:09:41 +01:00
samsung-laptop.c platform/x86: samsung-laptop: Fix typo in a comment 2021-11-16 10:56:53 +01:00
samsung-q10.c
simatic-ipc.c platform/x86: simatic-ipc: add main driver for Siemens devices 2021-12-23 18:09:06 +01:00
sony-laptop.c platform/x86: sony-laptop: replace snprintf in show functions with sysfs_emit 2021-10-22 11:13:25 +02:00
system76_acpi.c platform/x86: system76_acpi: Guard System76 EC specific functionality 2021-12-23 17:21:47 +01:00
tc1100-wmi.c platform/x86: tc1100-wmi: Constify static attribute_group struct 2021-06-16 17:47:54 +02:00
think-lmi.c platform/x86: think-lmi: Prevent underflow in index_store() 2021-12-21 18:57:14 +01:00
think-lmi.h platform/x86: think-lmi: Opcode support 2021-11-18 12:29:30 +01:00
thinkpad_acpi.c platform/x86: thinkpad_acpi: support inhibit-charge 2021-12-21 16:28:02 +01:00
topstar-laptop.c
toshiba-wmi.c
toshiba_acpi.c platform/x86: toshiba_acpi: Fix missing error code in toshiba_acpi_setup_keyboard() 2021-06-16 17:47:51 +02:00
toshiba_bluetooth.c
toshiba_haps.c platform/x86: toshiba_haps: Fix missing newline in pr_debug call in toshiba_haps_notify 2021-06-16 17:47:49 +02:00
touchscreen_dmi.c platform/x86: touchscreen_dmi: Add TrekStor SurfTab duo W1 touchscreen info 2021-12-02 12:58:26 +01:00
uv_sysfs.c x86/platform/uv: Constify static attribute_group struct 2021-06-16 17:47:55 +02:00
wireless-hotkey.c platform/x86: wireless-hotkey: remove hardcoded "hp" from the error message 2021-07-14 22:32:26 +02:00
wmi-bmof.c
wmi.c platform/x86: wmi: Add no_notify_data flag to struct wmi_driver 2021-12-06 22:33:39 +01:00
x86-android-tablets.c platform/x86: x86-android-tablets: New driver for x86 Android tablets 2021-12-25 12:41:06 +01:00
xiaomi-wmi.c
xo1-rfkill.c
xo15-ebook.c