linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Agner <stefan@agner.ch>
To: Shawn Guo <shawn.guo@freescale.com>
Cc: linus.walleij@linaro.org, gnurou@gmail.com,
	kernel@pengutronix.de, linux-gpio@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, bpringlemeir@nbsps.com,
	l.stach@pengutronix.de
Subject: Re: [PATCH v3 4/5] ARM: dts: vf610: use new GPIO support
Date: Fri, 26 Sep 2014 09:40:34 +0200	[thread overview]
Message-ID: <f3bba83ea15d680c852eb7d6e45de08a@agner.ch> (raw)
In-Reply-To: <20140926012126.GC21077@dragon>

Am 2014-09-26 03:21, schrieb Shawn Guo:
> On Thu, Sep 25, 2014 at 06:37:08PM +0200, Stefan Agner wrote:
>> Use GPIO support by adding SD card detection configuration and
>> GPIO pinmux for Colibri's standard GPIO pins. Attach the GPIO
>> pins to the iomuxc node to get the GPIO pin settings applied.
>>
>> Signed-off-by: Stefan Agner <stefan@agner.ch>
>> ---
>>  arch/arm/boot/dts/vf610-colibri.dtsi | 9 +++++++++
>>  arch/arm/boot/dts/vf610-twr.dts      | 1 +
>>  arch/arm/boot/dts/vf610.dtsi         | 1 +
>>  3 files changed, 11 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/vf610-colibri.dtsi b/arch/arm/boot/dts/vf610-colibri.dtsi
>> index 0cd8343..efd4322 100644
>> --- a/arch/arm/boot/dts/vf610-colibri.dtsi
>> +++ b/arch/arm/boot/dts/vf610-colibri.dtsi
>> @@ -31,6 +31,7 @@
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&pinctrl_esdhc1>;
>>  	bus-width = <4>;
>> +	cd-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
>>  };
>>
>>  &fec1 {
>> @@ -71,6 +72,14 @@
>>
>>  &iomuxc {
>>  	vf610-colibri {
>> +		pinctrl_gpio_ext: gpio_ext {
>> +			fsl,pins = <
>> +				VF610_PAD_PTD10__GPIO_89	0x22ed /* EXT_IO_0 */
>> +				VF610_PAD_PTD9__GPIO_88		0x22ed /* EXT_IO_1 */
>> +				VF610_PAD_PTD26__GPIO_68	0x22ed /* EXT_IO_2 */
>> +			>;
>> +		};
>> +
> 
> I'm not sure these GPIOs will be set up at anywhere.  To set them up,
> you need to either have pinctrl_gpio_ext referenced by some client
> device in its pinctrl-* property or put these pins into hog group (see
> example in arch/arm/boot/dts/vf610-twr.dts).
> 
> Shawn
> 

This GPIO's are meant to be used from user space by default. The latest
implementation of imx_pmx_gpio_request_enable not only takes care of the
muxing, but also applies the whole pad settings. Hence we do not need
the pinctrl subsystem to apply it (through pinctrl-* dt properties).

I changed this now in v3, in v2 I had still to use the pinctrl-*
properties. I like that 3rd version much more, this way the pin only
really gets muxed when the user uses it (e.g. we save power because the
pad is disabled when the GPIO is not in use). If the pin needs to be in
a defined state, then we would have to explicitly configure/enable it
through a pinctrl-* properties, but this is not the case for these
external GPIO's.

--
Stefan

>>  		pinctrl_esdhc1: esdhc1grp {
>>  			fsl,pins = <
>>  				VF610_PAD_PTA24__ESDHC1_CLK	0x31ef
>> diff --git a/arch/arm/boot/dts/vf610-twr.dts b/arch/arm/boot/dts/vf610-twr.dts
>> index 189b697..3fe8a8f 100644
>> --- a/arch/arm/boot/dts/vf610-twr.dts
>> +++ b/arch/arm/boot/dts/vf610-twr.dts
>> @@ -116,6 +116,7 @@
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&pinctrl_esdhc1>;
>>  	bus-width = <4>;
>> +	cd-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
>>  	status = "okay";
>>  };
>>
>> diff --git a/arch/arm/boot/dts/vf610.dtsi b/arch/arm/boot/dts/vf610.dtsi
>> index 4d2ec32..467c97e 100644
>> --- a/arch/arm/boot/dts/vf610.dtsi
>> +++ b/arch/arm/boot/dts/vf610.dtsi
>> @@ -11,6 +11,7 @@
>>  #include "vf610-pinfunc.h"
>>  #include <dt-bindings/clock/vf610-clock.h>
>>  #include <dt-bindings/interrupt-controller/irq.h>
>> +#include <dt-bindings/gpio/gpio.h>
>>
>>  / {
>>  	aliases {
>> --
>> 2.1.0
>>

  reply	other threads:[~2014-09-26  7:41 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-25 16:37 [PATCH v3 0/5] vf610: Add GPIO support Stefan Agner
2014-09-25 16:37 ` [PATCH v3 1/5] pinctrl: imx: detect uninitialized pins Stefan Agner
2014-09-25 16:37 ` [PATCH v3 2/5] pinctrl: imx: add gpio pinmux support for vf610 Stefan Agner
2014-09-25 16:37 ` [PATCH v3 3/5] gpio: vf610: add gpiolib/IRQ chip driver for Vybrid Stefan Agner
2014-09-25 16:37 ` [PATCH v3 4/5] ARM: dts: vf610: use new GPIO support Stefan Agner
2014-09-26  1:21   ` Shawn Guo
2014-09-26  7:40     ` Stefan Agner [this message]
2014-09-26 14:51       ` Shawn Guo
2014-09-25 16:37 ` [PATCH v3 5/5] Documentation: dts: add bindings for Vybrid GPIO/PORT module Stefan Agner
2014-09-26  1:16 ` [PATCH v3 0/5] vf610: Add GPIO support Shawn Guo
2014-09-26  8:52 ` Linus Walleij

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=f3bba83ea15d680c852eb7d6e45de08a@agner.ch \
    --to=stefan@agner.ch \
    --cc=bpringlemeir@nbsps.com \
    --cc=gnurou@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=l.stach@pengutronix.de \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=shawn.guo@freescale.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).