[PATCH v3 4/7] gpio: tps6594x: add GPIO support for TPS6594x PMIC
Matt Ranostay
mranostay at ti.com
Fri Nov 11 00:58:32 PST 2022
On Thu, Nov 10, 2022 at 11:15:22AM +0100, Linus Walleij wrote:
> On Thu, Nov 10, 2022 at 11:12 AM Matt Ranostay <mranostay at ti.com> wrote:
> > On Wed, Nov 09, 2022 at 10:59:08AM +0100, Linus Walleij wrote:
> > > On Wed, Nov 9, 2022 at 7:56 AM Matt Ranostay <mranostay at ti.com> wrote:
> > >
> > > > Add support for TPS6594X PMICs GPIO interface that has 11 that can be
> > > > configured as input or outputs.
> > > >
> > > > Tested-by: Keerthy <j-keerthy at ti.com>
> > > > Signed-off-by: Matt Ranostay <mranostay at ti.com>
> > >
> > > (...)
> > > > +config GPIO_TPS6594X
> > > > + tristate "TI TPS6594X GPIO driver"
> > > > + depends on MFD_TPS6594X
> > > > + help
> > > > + Select this option to enable GPIO driver for the TPS6954X
> > > > + PMIC chip family. There are 11 GPIOs that can be configured.
> > >
> > > select GPIO_REGMAP
> > >
> > > This driver is an archetypical example of a driver that can make great
> > > use of GPIO_REGMAP helpers, so rewrite it to use them.
> > > Look in drivers/gpio/gpio-sl28cpld.c for an example.
> >
> > Linus,
> >
> > Those helpers look great for this usecase on the surface but however I think there could be some issues.
> > For GPIO direction it isn't configured by a bitmap on a register(s) but by a bit on a range of
> > registers (with a register for each GPIOx).
> >
> > For set/get values the gpio helper would work though.
>
> Isn't is possible to just use parts of the GPIO_REGMAP
> helpers? I thought it's designed like such.
>
> Michael Walle will know what to do with your usecase, and
> whether to use it or not, let's page him!
>
So after looking around a bit and digging into the helper code I found this
drivers/pinctrl/bcm/pinctrl-bcm63xx.c which has a example on how to override
the reg_mask_xlate function which could be used for changing the stride, and mask
based on the base address.
Currently have coded up using the gpio regmap helper. Will run through some testing
first and then submit for review.
- Matt
> Yours,
> Linus Walleij
More information about the linux-arm-kernel
mailing list