Re: [PATCH 016/171] iommu: Add a Kconfig for SPL_PINCTRL_ARMADA_38X

Pali Rohár
2023-01-30T18:16:38Z

On Monday 30 January 2023 11:29:27 Tom Rini wrote:
> On Mon, Jan 30, 2023 at 05:19:01PM +0100, Mark Kettenis wrote:
> > > From: Simon Glass <sjg@chromium.org>
> > > Date: Mon, 30 Jan 2023 07:40:49 -0700
> > >
> > > This is implicitly used in the source and seems useful, so add it.
> >
> > Not sure how this ended up with an "iommu" tag, but that seems wrong.
> >
> > > Signed-off-by: Simon Glass <sjg@chromium.org>
> > > ---
> > >
> > > drivers/pinctrl/mvebu/Kconfig | 4 ++++
> > > 1 file changed, 4 insertions(+)
> > >
> > > diff --git a/drivers/pinctrl/mvebu/Kconfig b/drivers/pinctrl/mvebu/Kconfig
> > > index 7c51d138c8b..0b2be88e3a1 100644
> > > --- a/drivers/pinctrl/mvebu/Kconfig
> > > +++ b/drivers/pinctrl/mvebu/Kconfig
> > > @@ -7,6 +7,10 @@ config PINCTRL_ARMADA_38X
> > > Support pin multiplexing and pin configuration control on
> > > Marvell's Armada-38x SoC.
> > >
> > > +config SPL_PINCTRL_ARMADA_38X
> > > + def_bool n # Armada 38x pin control driver (SPL)
> > > + depends on SPL && ARMADA_38X && SPL_PINCTRL_FULL
> > > +
> > > config PINCTRL_ARMADA_37XX
> > > depends on ARMADA_3700 && PINCTRL_FULL
> > > bool "Armada 37xx pin control driver"
>
> Looking at the code in question, it's because in
> drivers/gpio/mvebu_gpio.c we conditionally not set request / rfree
> dm_gpio_ops because turris_omnia (only platform in question) does not
> set pinctrl in SPL, but does set SPL_DM_GPIO. So the question I have, is
> all of that intentional and used today, in SPL, on the platform? I guess
> some set/get directions / values, to check board revs or something?
>
> --
> Tom

I think this is because no A38x board use DM pinctrl framework for
configuring pin muxing. All boards set pin muxing in open coded board
function which directly touch HW registers. DM pinctrl driver for A38x
is relatively new and I think nobody converted any board to use it for
initialization.