Re: [PATCH v2] mfd: syscon: allow to register syscon with a device

From: Philipp Zabel
Date: Wed Feb 24 2016 - 10:02:45 EST


Am Mittwoch, den 24.02.2016, 16:00 +0100 schrieb Arnd Bergmann:
> On Wednesday 24 February 2016 13:44:24 Philipp Zabel wrote:
> > Am Mittwoch, den 24.02.2016, 13:18 +0100 schrieb Arnd Bergmann:
> > > On Wednesday 24 February 2016 12:19:01 Philipp Zabel wrote:
> > > > Commit bdb0066df96e ("mfd: syscon: Decouple syscon interface from platform
> > > > devices") added the possibility to register syscon devices without
> > > > associated platform device. This also removed regmap debugfs facilities,
> > > > which don't work without a device. Since there is no replacement, this
> > > > patch allows again to register syscon regions with an associated device
> > > > where that this device exists anyway.
> > > >
> > > > Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
> > >
> > > Can you elaborate how you want to use the new interface?
> >
> > I use this patch to attach the regmap to the IOMUXC device, which the
> > GPR (syscon) region on i.MX6 is a part of:
> >
> > diff --git a/drivers/pinctrl/freescale/pinctrl-imx6q.c b/drivers/pinctrl/freescale/pinctrl-imx6q.c
> > index 4d1fcb8..74a68ec 100644
> > --- a/drivers/pinctrl/freescale/pinctrl-imx6q.c
> > +++ b/drivers/pinctrl/freescale/pinctrl-imx6q.c
> > @@ -15,6 +15,7 @@
> > #include <linux/err.h>
> > #include <linux/init.h>
> > #include <linux/io.h>
> > +#include <linux/mfd/syscon.h>
> > #include <linux/module.h>
> > #include <linux/of.h>
> > #include <linux/of_device.h>
> > @@ -473,6 +474,12 @@ static const struct of_device_id imx6q_pinctrl_of_match[] = {
> >
> > static int imx6q_pinctrl_probe(struct platform_device *pdev)
> > {
> > + struct device_node *syscon_np;
> > +
> > + syscon_np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-iomuxc-gpr");
> > + if (syscon_np)
> > + syscon_register(&pdev->dev, syscon_np);
> > +
> > return imx_pinctrl_probe(pdev, &imx6q_pinctrl_info);
> > }
> >
> > The pinctrl driver is probed at arch_initcall time.
>
> I still don't see it where you are getting with this. Is this just for
> the debugfs interface or is there something else this does on top of
> that?

Sorry, yes, this is about the missing debugfs functionality.

regards
Philipp