mirror_ubuntu-kernels/drivers/platform/x86
Hans de Goede a4327979a1 platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on some HP x360 models
Some HP x360 models have an ACPI VGBS method which sets bit 4 instead of
bit 6 when NOT in tablet mode at boot. Inspecting all the DSDTs in my DSDT
collection shows only one other model, the Medion E1239T ever setting bit 4
and it always sets this together with bit 6.

So lets treat bit 4 as a second bit which when set indicates the device not
being in tablet-mode, as we already do for bit 6.

While at it also prefix all VGBS constant defines with "VGBS_".

Note this wrokaround was first added to the kernel as
commit d823346876 ("platform/x86: intel-vbtn: Fix SW_TABLET_MODE always
reporting 1 on the HP Pavilion 11 x360").
After commit 8169bd3e6e ("platform/x86: intel-vbtn: Switch to an
allow-list for SW_TABLET_MODE reporting") got added to the kernel this
was reverted, because with the new allow-list approach the workaround
was no longer necessary for the model on which the issue was first
reported.

But it turns out that the workaround is still necessary because some
affected models report a chassis-type of 31 which is on the allow-list.

BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1894017
Fixes: 21d64817c7 ("platform/x86: intel-vbtn: Revert "Fix SW_TABLET_MODE always reporting 1 on the HP Pavilion 11 x360"")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2020-12-07 16:10:12 +01:00
..
dell-wmi-sysman platform/x86: dell-wmi-sysman: work around for BIOS bug 2020-12-07 16:09:28 +01:00
intel_speed_select_if platform/x86: ISST: Change PCI device macros 2020-12-07 16:10:12 +01:00
acer-wireless.c acer-wireless: send an EV_SYN/SYN_REPORT between state changes 2020-12-07 16:10:11 +01:00
acer-wmi.c platform/x86: acer-wmi: Add ACER_CAP_KBD_DOCK quirk for the Aspire Switch 10E SW3-016 2020-11-24 13:08:03 +01:00
acerhdf.c - Add support to enable/disable the thermal zones resulting on core code and 2020-08-06 18:10:55 -07:00
alienware-wmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
amd-pmc.c platform/x86: amd-pmc: Add AMD platform support for S2Idle 2020-11-09 14:39:36 +01:00
amilo-rfkill.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
apple-gmux.c platform/x86: apple-gmux: Replace HTTP links with HTTPS ones 2020-07-15 13:01:20 +03:00
asus-laptop.c platform/x86: asus-laptop: Drop duplicate check for led_classdev_unregister() 2020-05-07 19:37:23 +03:00
asus-nb-wmi.c platform/x86: asus-wmi: Add support for SW_TABLET_MODE on UX360 2020-10-28 12:47:37 +01:00
asus-wireless.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
asus-wmi.c platform/x86: asus-wmi: Add userspace notification for performance mode change 2020-11-24 14:39:13 +01:00
asus-wmi.h platform/x86: asus-wmi: Add support for SW_TABLET_MODE on UX360 2020-10-28 12:47:37 +01:00
classmate-laptop.c platform/x86: classmate-laptop: remove unused variable 2019-10-15 10:55:10 +03:00
compal-laptop.c platform/x86: compal-laptop: Initialize "value" in ec_read_u8() 2019-09-07 21:16:09 +03:00
dcdbas.c platform/x86: dcdbas: Check SMBIOS for protected buffer address 2020-06-01 12:27:25 +03:00
dcdbas.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 287 2019-06-05 17:36:37 +02:00
dell_rbu.c platform/x86: dell_rbu: Unify format of the printed messages 2020-02-10 17:47:38 +02:00
dell-laptop.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
dell-rbtn.c change email address for Pali Rohár 2020-04-10 15:36:22 -07:00
dell-rbtn.h change email address for Pali Rohár 2020-04-10 15:36:22 -07:00
dell-smbios-base.c platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init 2020-12-02 13:11:03 +01:00
dell-smbios-smm.c change email address for Pali Rohár 2020-04-10 15:36:22 -07:00
dell-smbios-wmi.c platform-drivers-x86 for v5.3-1 2019-07-14 16:51:47 -07:00
dell-smbios.h change email address for Pali Rohár 2020-04-10 15:36:22 -07:00
dell-smo8800.c change email address for Pali Rohár 2020-04-10 15:36:22 -07:00
dell-wmi-aio.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
dell-wmi-descriptor.c platform-drivers-x86 for v5.3-1 2019-07-14 16:51:47 -07:00
dell-wmi-descriptor.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
dell-wmi-led.c
dell-wmi.c platform/x86: dell-wmi: add new dmi mapping for keycode 0xffff 2020-07-09 22:47:27 +03:00
eeepc-laptop.c platform/x86: eeepc-laptop: Drop duplicate check for led_classdev_unregister() 2020-05-07 19:39:32 +03:00
eeepc-wmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
fujitsu-laptop.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
fujitsu-tablet.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 414 2019-06-05 17:37:14 +02:00
gpd-pocket-fan.c platform/x86: GPD pocket fan: Fix error message when temp-limits are out of range 2020-03-20 14:44:47 +02:00
hdaps.c treewide: Remove uninitialized_var() usage 2020-07-16 12:35:15 -07:00
hp_accel.c platform/x86: hp_accel: Add support for HP ZBook 17 G5 2019-07-29 18:31:48 +03:00
hp-wireless.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
hp-wmi.c platform/x86: hp-wmi: add support for thermal policy 2020-10-07 16:03:23 +02:00
huawei-wmi.c platform/x86: huawei-wmi: Remove unnecessary battery mutex 2019-10-21 12:17:30 +03:00
i2c-multi-instantiate.c platform/x86: i2c-multi-instantiate: Use device_get_match_data() to get driver data 2020-11-24 11:33:22 +01:00
ibm_rtl.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
ideapad-laptop.c platform-drivers-x86 for v5.3-1 2019-07-14 16:51:47 -07:00
intel_atomisp2_led.c platform/x86: Add new intel_atomisp2_led driver 2020-07-09 22:47:27 +03:00
intel_atomisp2_pm.c platform/x86: intel_atomisp2_pm: Spelling fixes 2020-01-10 11:57:22 +02:00
intel_bxtwc_tmu.c platform/x86: intel_bxtwc_tmu: Remove dev_err() usage after platform_get_irq() 2019-08-01 18:03:02 +03:00
intel_cht_int33fe_common.c platform/x86: intel_cht_int33fe: Drop double check for ACPI companion device 2020-07-09 22:40:36 +03:00
intel_cht_int33fe_common.h platform/x86: intel_cht_int33fe: Split code to Micro-B and Type-C 2019-10-15 10:55:10 +03:00
intel_cht_int33fe_microb.c platform/x86: intel_cht_int33fe: Split code to Micro-B and Type-C 2019-10-15 10:55:10 +03:00
intel_cht_int33fe_typec.c platform/x86: intel_cht_int33fe: Fix spelling issues 2020-04-20 14:47:45 +03:00
intel_chtdc_ti_pwrbtn.c
intel_int0002_vgpio.c Additional power management updates for 5.7-rc1 2020-04-06 10:14:39 -07:00
intel_ips.c
intel_ips.h platform/x86: intel-ips: Use the correct style for SPDX License Identifier 2020-01-10 11:57:21 +02:00
intel_menlow.c platform/x86: intel_menlow: switch to use <linux/units.h> helpers 2020-01-31 10:30:40 -08:00
intel_mid_powerbtn.c platform/x86: intel_mid_powerbtn: Convert to use new SCU IPC API 2020-04-24 11:17:32 +01:00
intel_mid_thermal.c thermal: Explicitly enable non-changing thermal zone devices 2020-06-29 20:26:37 +02:00
intel_mrfld_pwrbtn.c platform/x86: Add support for Basin Cove power button 2019-05-09 00:33:03 +03:00
intel_oaktrail.c platform/x86: intel_oaktrail: Use pr_warn instead of pr_warning 2019-10-18 15:01:35 +02:00
intel_pmc_core_pltdrv.c platform/x86: intel_pmc_core: do not create a static struct device 2020-09-24 14:05:21 +03:00
intel_pmc_core.c platform/x86: intel_pmc_core: Assign boolean values to a bool variable 2020-11-09 15:02:40 +01:00
intel_pmc_core.h platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value 2020-10-07 23:06:29 +02:00
intel_pmt_class.c platform/x86: pmt: Fix a potential Oops on error in probe 2020-11-24 12:43:40 +01:00
intel_pmt_class.h platform/x86: Intel PMT class driver 2020-11-04 11:14:12 +00:00
intel_pmt_crashlog.c platform/x86: Intel PMT Crashlog capability driver 2020-11-04 11:14:38 +00:00
intel_pmt_telemetry.c platform/x86: Intel PMT Telemetry capability driver 2020-11-04 11:14:27 +00:00
intel_punit_ipc.c platform/x86: intel_punit_ipc: Drop useless label 2019-10-27 02:10:57 +03:00
intel_scu_ipc.c platform/x86: intel_scu_ipc: Add managed function to register SCU IPC 2020-04-24 11:17:44 +01:00
intel_scu_ipcutil.c platform/x86: intel_scu_ipcutil: Convert to use new SCU IPC API 2020-04-24 11:17:41 +01:00
intel_scu_pcidrv.c platform/x86: intel_pmc_ipc: Move PCI IDs to intel_scu_pcidrv.c 2020-04-24 11:18:25 +01:00
intel_scu_pltdrv.c platform/x86: Add Elkhart Lake SCU/PMC support 2020-05-05 20:26:16 +03:00
intel_telemetry_core.c platform/x86: intel_telemetry: Add telemetry_get_pltdata() 2020-04-24 11:18:30 +01:00
intel_telemetry_debugfs.c platform/x86: intel_pmc_ipc: Convert to MFD 2020-04-24 11:18:44 +01:00
intel_telemetry_pltdrv.c platform/x86: intel_pmc_ipc: Convert to MFD 2020-04-24 11:18:44 +01:00
intel_turbo_max_3.c platform/x86: Convert to new CPU match macros 2020-03-24 21:33:00 +01:00
intel-hid.c platform/x86: intel-hid: fix _DSM function index handling 2020-11-09 15:16:30 +01:00
intel-rst.c
intel-smartconnect.c
intel-uncore-frequency.c platform/x86/intel-uncore-freq: make uncore_root_kobj static 2020-04-17 16:48:06 +03:00
intel-vbtn.c platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on some HP x360 models 2020-12-07 16:10:12 +01:00
intel-wmi-sbl-fw-update.c platform/x86: Add Slim Bootloader firmware update signaling driver 2020-05-05 20:27:44 +03:00
intel-wmi-thunderbolt.c platform/x86: wmi: add context argument to the probe function 2019-06-17 15:22:47 +03:00
Kconfig platform/x86: amd-pmc: Add AMD platform support for S2Idle 2020-11-09 14:39:36 +01:00
lg-laptop.c platform/x86: lg-laptop: Drop duplicate check for led_classdev_unregister() 2020-05-07 20:14:17 +03:00
Makefile platform/x86: amd-pmc: Add AMD platform support for S2Idle 2020-11-09 14:39:36 +01:00
mlx-platform.c platform/x86: mlx-platform: remove an unused variable 2020-12-07 14:49:42 +01:00
msi-laptop.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
msi-wmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
mxm-wmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
panasonic-laptop.c platform/x86: panasonic-laptop: Add sysfs attributes for firmware brightness registers 2020-11-10 14:49:50 +01:00
pcengines-apuv2.c platform/x86: pcengines-apuv2: Fix typo on define of AMD_FCH_GPIO_REG_GPIO55_DEVSLP0 2020-09-24 14:04:53 +03:00
peaq-wmi.c platform/x86: peaq-wmi: switch to using polled mode of input devices 2019-10-15 10:55:09 +03:00
pmc_atom.c platform/x86: pmc_atom: Add Lex 2I385SW to critclk_systems DMI table 2020-02-10 17:47:38 +02:00
samsung-laptop.c platform/x86: samsung-laptop: Drop duplicate check for led_classdev_unregister() 2020-05-07 20:14:24 +03:00
samsung-q10.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
sony-laptop.c platform/x86: remove unneeded break 2020-10-28 12:32:06 +01:00
system76_acpi.c platform/x86: system76-acpi: Fix brightness_set schedule while atomic 2020-07-09 22:40:36 +03:00
tc1100-wmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
thinkpad_acpi.c platform/x86: thinkpad_acpi: remove trailing semicolon in macro definition 2020-12-02 13:13:03 +01:00
topstar-laptop.c
toshiba_acpi.c platform/x86: toshiba_acpi: Fix the wrong variable assignment 2020-11-24 13:07:01 +01:00
toshiba_bluetooth.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
toshiba_haps.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
toshiba-wmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
touchscreen_dmi.c platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet 2020-11-24 13:12:38 +01:00
wmi-bmof.c platform-drivers-x86 for v5.3-1 2019-07-14 16:51:47 -07:00
wmi.c platform/x86: remove unneeded break 2020-10-28 12:32:06 +01:00
xiaomi-wmi.c platform/x86: wmi: Make two functions static 2020-04-17 16:47:26 +03:00
xo1-rfkill.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
xo15-ebook.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00