From: Arnd Bergmann <arnd@arndb.de>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Chris Ball <cjb@laptop.org>,
linux-mmc@vger.kernel.org, linux-sh@vger.kernel.org,
Magnus Damm <magnus.damm@gmail.com>
Subject: Re: [PATCH v2 02/11] mmc: deprecate redundant cd-inverted and wp-inverted DT properties
Date: Thu, 31 Jan 2013 00:09:34 +0000 [thread overview]
Message-ID: <201301310009.34426.arnd@arndb.de> (raw)
In-Reply-To: <Pine.LNX.4.64.1301301743470.3113@axis700.grange>
On Wednesday 30 January 2013, Guennadi Liakhovetski wrote:
> On Wed, 30 Jan 2013, Arnd Bergmann wrote:
>
> > On Wednesday 30 January 2013, Guennadi Liakhovetski wrote:
> > > > This means, that a multi-platform driver like, e.g. SDHCI cannot use the
> > > > gpio "flags" cell and has to fall-back to always use "*-inverted"
> > > > properties. Same holds for any other multi-arch driver, using GPIOs. So,
> > > > we're stuck with this?
> >
> > But the SDHCI driver itself would not interpret the flags anyway, would it?
>
> Currently each driver, including SDHCI, does it on its own, the goal is to
> do this centrally. And yes, in our specific MMC case, if we want to
> support GPIO controllers with 1 cell, no mmc DT node, using GPIOs for WP
> or CD should be using the inversion flag - even where possible.
>
> > From the code, I understand that of_get_named_gpio() would return a gpio
> > line with the polarity already inverted if it's specified that way,
>
> Sorry, don't understand. of_get_named_gpio() just returns a GPIO number,
> not GPIO level. It doesn't even actually request the GPIO for the specific
> user. Or do you mean, that gpio_chip::of_xlate() should request the chip
> to invert the GPIO from now on?
I'm not saying that it should, I just thought that it did that already,
but I may be wrong with that. Where does the polarity of a gpio
line normally get set?
> > and
> > the SDHCI_QUIRK_INVERTED_WRITE_PROTECT flag can be used to invert it
> > independent of it.
>
> Right, not sure about that flag. Isn't it used for SDHCI-native WP?
It's used in the sdhci_check_ro() function, independent of whether
the bit comes from the GPIO or from the SDHCI_PRESENT_STATE
register.
It gets set based on the presence of the wp-inverted or the
older sdhci,wp-inverted property, which both get interpreted
in the same way.
> > So you could actually express the same thing by either
> > putting the inversion into the gpio specifier or into the *-inverted
> > properties.
> >
> > If you actually provide both, that would have the same meaning as not
> > inverting.
>
> Hm, that'd be a weird way to configure the pin, perhaps.
Yes, it's silly and I don't see a reason why you'd do that, but I think
it should still be considered valid.
> > > BTW, just verified in the current "next": all platforms, using cd-inverted
> > > or wp-inverted in the mainline
> > >
> > > arch/arm/boot/dts/ccu9540.dts
> > > arch/arm/boot/dts/ea3250.dts
> > > arch/arm/boot/dts/phy3250.dts
> > > arch/arm/boot/dts/snowball.dts
> > > arch/arm/boot/dts/u9540.dts
> > >
> > > use GPIO controllers with 2 or 3 cells.
> >
> > What about those that don't use a GPIO line at all but instead use a
> > built-in write-protect and card-detect registers of the SDHCI controller?
>
> The mmc.txt document specifies cd-inverted and wp-inverted _explicitly_
> for use with GPIOs. If we want to use them with built-in CD and WP pins,
> we have to modify those definitions too.
Yes, that makes sense. The way that the specific esdhc binding is written
does not refer to gpio and could be interpreted the way that it is used
in the driver (for both gpio and internal wp), but it's certainly a
good idea to clarify it in the common binding.
Arnd
next prev parent reply other threads:[~2013-01-31 0:09 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-23 15:32 [PATCH v2 00/11] mmc: core and driver DT and related development Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 01/11] mmc: sdhi, tmio: only check flags in tmio-mmc driver proper Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 02/11] mmc: deprecate redundant cd-inverted and wp-inverted DT properties Guennadi Liakhovetski
2013-01-28 22:23 ` Chris Ball
2013-01-30 15:47 ` Arnd Bergmann
2013-01-30 16:02 ` Guennadi Liakhovetski
2013-01-30 16:13 ` Guennadi Liakhovetski
2013-01-30 16:29 ` Arnd Bergmann
2013-01-30 17:03 ` Guennadi Liakhovetski
2013-01-31 0:09 ` Arnd Bergmann [this message]
2013-01-31 0:20 ` Chris Ball
2013-01-31 6:47 ` Guennadi Liakhovetski
2013-01-31 9:00 ` Arnd Bergmann
2013-01-23 15:32 ` [PATCH v2 03/11] mmc: provide a standard MMC device-tree binding parser centrally Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 04/11] mmc: (cosmetic) remove "extern" from function declarations Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 05/11] mmc: sh-mmcif: use mmc_of_parse() to parse standard MMC DT bindings Guennadi Liakhovetski
2013-01-28 22:25 ` Chris Ball
2013-01-23 15:32 ` [PATCH/RFC v2 06/11] mmc: tmio-mmc: define device-tree bindings Guennadi Liakhovetski
2013-01-24 15:34 ` Guennadi Liakhovetski
2013-01-24 15:39 ` Chris Ball
2013-01-24 15:58 ` Guennadi Liakhovetski
2013-01-24 16:03 ` Chris Ball
2013-01-30 14:07 ` Guennadi Liakhovetski
2013-01-30 14:09 ` Chris Ball
2013-02-01 4:23 ` Simon Horman
2013-01-23 15:32 ` [PATCH v2 07/11] mmc: tmio-mmc: parse " Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 08/11] mmc: sh_mobile_sdhi: remove unused .pdata field Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 09/11] mmc: sh_mobile_sdhi: use managed resource allocations Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 10/11] mmc: tmio: remove unused and deprecated symbols Guennadi Liakhovetski
2013-01-23 15:32 ` [PATCH v2 11/11] mmc: tmio: add support for the VccQ regulator Guennadi Liakhovetski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201301310009.34426.arnd@arndb.de \
--to=arnd@arndb.de \
--cc=cjb@laptop.org \
--cc=g.liakhovetski@gmx.de \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=magnus.damm@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).