Re: [RFC PATCH v2 4/4] mmc: sdhci-esdhc-imx: using pinmux subsystem

From: Shawn Guo
Date: Thu Dec 15 2011 - 06:13:21 EST


On Thu, Dec 15, 2011 at 10:33:19AM +0100, Sascha Hauer wrote:
> On Thu, Dec 15, 2011 at 08:59:28AM +0000, Dong Aisheng-B29396 wrote:
> > > -----Original Message-----
> > > From: Linus Walleij [mailto:linus.walleij@xxxxxxxxxx]
> > > Sent: Thursday, December 15, 2011 4:27 PM
> > > To: Guo Shawn-R65073
> > > Cc: Sascha Hauer; Dong Aisheng-B29396; linus.walleij@xxxxxxxxxxxxxx;
> > > linux-kernel@xxxxxxxxxxxxxxx; rob.herring@xxxxxxxxxxx;
> > > grant.likely@xxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> > > kernel@xxxxxxxxxxxxxx
> > > Subject: Re: [RFC PATCH v2 4/4] mmc: sdhci-esdhc-imx: using pinmux
> > > subsystem
> > > Importance: High
> > >
> > > On Thu, Dec 15, 2011 at 8:05 AM, Shawn Guo <shawn.guo@xxxxxxxxxxxxx>
> > > wrote:
> > > >[Me]
> > > >> So if you want to do this for i.MX you need something like selectable
> > > >> dummy pinmuxes, i.e. pinmux_get() to return something that just say
> > > >> "OK" to everything like the dummy regulators.
> > > >>
> > > >> Shall I try to create something like that?
> > > >>
> > > > Isn't the empty functions defined in include/linux/pinctrl/pinmux.h
> > > > for this purpose?
> > >
> > > No, these are for compiling it *out*, dummy pinmuxes would be if you
> > > compile it *in*, but don't find an apropriate pinmux, you still get
> > > something that does nothing and still works.
> > >
> > > Dummy regulators work exactly this way.
> > >
> >
> > I did not read the dummy regulator code too much.
> > But does it mean that the dummy regulator or dummy pinmux will also hide the
> > Real errors since it will always get a available one?

What do you mean 'real error'? When driver calls pimnux api on a
platform with real pinmux support, the error is error. When driver
calls pinmux api on a platform support with dummy pinmux, it's totally
error free, as the pinmux core will ensure all the pinmux_* calls
always return success.

> > How do we distinguish between the two case(real error and fake error)?
>
What do we need to distinguish between two cases? The real success for
real pinmux from the fake success for the dummy pinmux? It does not
really matter.

> We don't :(
>
> That's the problem with the dummy regulator.
>
What is the problem exactly? I do not quite understand.

--
Regards,
Shawn

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/