Hi, On 10/29/22 14:03, Eray Orçunus wrote: > Last 8 bit of _CFG started being used in later IdeaPads, thus 30th bit > doesn't always show whether device supports touchpad or touchpad switch. > Remove checking bit 30 of _CFG, so older IdeaPads like S10-3 can switch > touchpad again via touchpad attribute. > > This reverts commit b3ed1b7fe3786c8fe795c16ca07cf3bda67b652f. > > Signed-off-by: Eray Orçunus <erayorcunus@xxxxxxxxx> Thank you for your patch, I've applied this patch to my review-hans branch: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans Note it will show up in my review-hans branch once I've pushed my local branch there, which might take a while. Once I've run some tests on this branch the patches there will be added to the platform-drivers-x86/for-next branch and eventually will be included in the pdx86 pull-request to Linus for the next merge-window. Regards, Hans > --- > drivers/platform/x86/ideapad-laptop.c | 14 +++++--------- > 1 file changed, 5 insertions(+), 9 deletions(-) > > diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c > index e7a1299e3776..b67bac457a7a 100644 > --- a/drivers/platform/x86/ideapad-laptop.c > +++ b/drivers/platform/x86/ideapad-laptop.c > @@ -46,11 +46,10 @@ static const char *const ideapad_wmi_fnesc_events[] = { > #endif > > enum { > - CFG_CAP_BT_BIT = 16, > - CFG_CAP_3G_BIT = 17, > - CFG_CAP_WIFI_BIT = 18, > - CFG_CAP_CAM_BIT = 19, > - CFG_CAP_TOUCHPAD_BIT = 30, > + CFG_CAP_BT_BIT = 16, > + CFG_CAP_3G_BIT = 17, > + CFG_CAP_WIFI_BIT = 18, > + CFG_CAP_CAM_BIT = 19, > }; > > enum { > @@ -367,8 +366,6 @@ static int debugfs_cfg_show(struct seq_file *s, void *data) > seq_puts(s, " wifi"); > if (test_bit(CFG_CAP_CAM_BIT, &priv->cfg)) > seq_puts(s, " camera"); > - if (test_bit(CFG_CAP_TOUCHPAD_BIT, &priv->cfg)) > - seq_puts(s, " touchpad"); > seq_puts(s, "\n"); > > seq_puts(s, "Graphics: "); > @@ -661,8 +658,7 @@ static umode_t ideapad_is_visible(struct kobject *kobj, > else if (attr == &dev_attr_fn_lock.attr) > supported = priv->features.fn_lock; > else if (attr == &dev_attr_touchpad.attr) > - supported = priv->features.touchpad_ctrl_via_ec && > - test_bit(CFG_CAP_TOUCHPAD_BIT, &priv->cfg); > + supported = priv->features.touchpad_ctrl_via_ec; > else if (attr == &dev_attr_usb_charging.attr) > supported = priv->features.usb_charging; >