On Tue, 2 Jun 2026 07:01:29 +0200, Rosen Penev <[email protected]> said:
> Use gpio_generic_chip_init() to set up the PPC44x GPIO chip
> instead of open-coding the basic get, set, locking and state handling.
>
> Keep the PPC44x-specific direction callbacks because they still need to
> program ODR and the OSR/TSR registers around the generic data and
> direction registers.
>
> Assisted-by: Codex:GPT-5.5
> Signed-off-by: Rosen Penev <[email protected]>
> ---
...
> @@ -124,10 +102,11 @@ static int
> ppc4xx_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
> {
> struct ppc4xx_gpio_chip *chip = gpiochip_get_data(gc);
> + struct gpio_generic_chip *gen_gc = &chip->chip;
> struct ppc4xx_gpio __iomem *regs = chip->regs;
> unsigned long flags;
>
> - spin_lock_irqsave(&chip->lock, flags);
> + gpio_generic_chip_lock_irqsave(gen_gc, flags);
If you're already doing it, can you use lock guards too?
Bart