• Hans de Goede's avatar
    platform/x86: intel-vbtn: Only blacklist SW_TABLET_MODE on the 9 / "Laptop" chasis-type · cfae58ed
    Hans de Goede authored
    The HP Stream x360 11-p000nd no longer report SW_TABLET_MODE state / events
    with recent kernels. This model reports a chassis-type of 10 / "Notebook"
    which is not on the recently introduced chassis-type whitelist
    
    Commit de9647ef ("platform/x86: intel-vbtn: Only activate tablet mode
    switch on 2-in-1's") added a chassis-type whitelist and only listed 31 /
    "Convertible" as being capable of generating valid SW_TABLET_MOD events.
    
    Commit 1fac39fd ("platform/x86: intel-vbtn: Also handle tablet-mode
    switch on "Detachable" and "Portable" chassis-types") extended the
    whitelist with chassis-types 8 / "Portable" and 32 / "Detachable".
    
    And now we need to exten the whitelist again with 10 / "Notebook"...
    
    The issue original fixed by the whitelist is really a ACPI DSDT bug on
    the Dell XPS 9360 where it has a VGBS which reports it is in tablet mode
    even though it is not a 2-in-1 at all, but a regular laptop.
    
    So since this is a workaround for a DSDT issue on that specific model,
    instead of extending the whitelist over and over again, lets switch to
    a blacklist and only blacklist the chassis-type of the model for which
    the chassis-type check was added.
    
    Note this also fixes the current version of the code no longer checking
    if dmi_get_system_info(DMI_CHASSIS_TYPE) returns NULL.
    
    Fixes: 1fac39fd ("platform/x86: intel-vbtn: Also handle tablet-mode switch on "Detachable" and "Portable" chassis-types")
    Cc: Mario Limonciello <mario.limonciello@dell.com>
    Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    Reviewed-by: default avatarMario Limonciello <Mario.limonciello@dell.com>
    Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
    cfae58ed
intel-vbtn.c 8.78 KB