• Hans de Goede's avatar
    platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow-list · bbffaa98
    Hans de Goede authored
    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: 8169bd3e ("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.comSigned-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    bbffaa98
intel-vbtn.c 10.2 KB