Re: [PATCH 5/7] gpio: ppc44x: Convert GPIO to generic MMIO

From: Rosen Penev

Date: Wed Jul 29 2026 - 15:31:50 EST


On Wed, Jul 29, 2026 at 3:55 AM Madhavan Srinivasan <maddy@xxxxxxxxxxxxx> wrote:
>
>
> On 6/2/26 2:56 PM, Rosen Penev wrote:
> > On Tue Jun 2, 2026 at 12:51 AM PDT, Bartosz Golaszewski wrote:
> >> On Tue, 2 Jun 2026 07:01:29 +0200, Rosen Penev <rosenp@xxxxxxxxx> 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 <rosenp@xxxxxxxxx>
> >>> ---
> >> ...
> >>
> >>> @@ -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?
> > Sure. btw, I avoided placing
>
> Do you have plan to address this comment in v2
Yeah I have it fixed locally.

I'm not sure if this has to do through the PPC or GPIO tree.
>
> Maddy
> >
> > https://lore.kernel.org/all/20260517063754.21819-1-rosenp@xxxxxxxxx/
> >
> > in the beginning of the series. My thinking is that's for older kernels.
> > I believe either the generic API or devm_gpiochip_add_data fixes this.
> >> Bart
> >