Re: [PATCH] platform/x86: yogabook: use assign_bit()/change_bit() where applicable

From: Mark Pearson

Date: Tue Sep 22 2026 - 14:18:09 EST


On Sat, Sep 19, 2026, at 9:08 AM, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@xxxxxxx>
>
> Convert open-coded if/else with set_bit/clear_bit to the assign_bit and
> change_bit APIs.
>
> Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
> ---
> drivers/platform/x86/lenovo/yogabook.c | 11 +++--------
> 1 file changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/platform/x86/lenovo/yogabook.c
> b/drivers/platform/x86/lenovo/yogabook.c
> index 1a4b2ab1f35d..f4c99508c6e7 100644
> --- a/drivers/platform/x86/lenovo/yogabook.c
> +++ b/drivers/platform/x86/lenovo/yogabook.c
> @@ -120,10 +120,7 @@ static void yogabook_toggle_digitizer_mode(struct
> yogabook_data *data)
> if (test_bit(YB_SUSPENDED, &data->flags))
> return;
>
> - if (test_bit(YB_DIGITIZER_MODE, &data->flags))
> - clear_bit(YB_DIGITIZER_MODE, &data->flags);
> - else
> - set_bit(YB_DIGITIZER_MODE, &data->flags);
> + change_bit(YB_DIGITIZER_MODE, &data->flags);
>
> /*
> * We are called from the ACPI core and the driver [un]binding which
> is
> @@ -136,10 +133,8 @@ static irqreturn_t yogabook_backside_hall_irq(int
> irq, void *_data)
> {
> struct yogabook_data *data = _data;
>
> - if (gpiod_get_value(data->backside_hall_gpio))
> - set_bit(YB_TABLET_MODE, &data->flags);
> - else
> - clear_bit(YB_TABLET_MODE, &data->flags);
> + assign_bit(YB_TABLET_MODE, &data->flags,
> + gpiod_get_value(data->backside_hall_gpio));
>
> schedule_work(&data->work);
>
> --
> 2.51.0

Looks good to me.
Reviewed-by: Mark Pearson <mpearson-lenovo@xxxxxxxxx>

Mark