platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow-list
authorHans de Goede <hdegoede@redhat.com>
Thu, 14 Jan 2021 14:34:32 +0000 (15:34 +0100)
committerHans de Goede <hdegoede@redhat.com>
Mon, 18 Jan 2021 18:26:44 +0000 (19:26 +0100)
commitbbffaa981940acdfc15ba7b7621a497cd56fa3a4
tree03ec1f32b87c43620236319253f74834b139acda
parente5da18d3e67dbc326205fb179f0e5085372537dd
platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow-list

THe HP Stream x360 Convertible PC 11 DSDT has the following VGBS function:

            Method (VGBS, 0, Serialized)
            {
                If ((^^PCI0.LPCB.EC0.ROLS == Zero))
                {
                    VBDS = Zero
                }
                Else
                {
                    VBDS = Zero
                }

                Return (VBDS) /* \_SB_.VGBI.VBDS */
            }

Which is obviously wrong, because it always returns 0 independent of the
2-in-1 being in laptop or tablet mode. This causes the intel-vbtn driver
to initially report SW_TABLET_MODE = 1 to userspace, which is known to
cause problems when the 2-in-1 is actually in laptop mode.

During earlier testing this turned out to not be a problem because the
2-in-1 would do a Notify(..., 0xCC) or Notify(..., 0xCD) soon after
the intel-vbtn driver loaded, correcting the SW_TABLET_MODE state.

Further testing however has shown that this Notify() soon after the
intel-vbtn driver loads, does not always happen. When the Notify
does not happen, then intel-vbtn reports SW_TABLET_MODE = 1 resulting in
a non-working touchpad.

IOW the tablet-mode reporting is not reliable on this device, so it
should be dropped from the allow-list, fixing the touchpad sometimes
not working.

Fixes: 8169bd3e6e19 ("platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE reporting")
Link: https://lore.kernel.org/r/20210114143432.31750-1-hdegoede@redhat.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/intel-vbtn.c