All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christian Ruppert <christian.ruppert@abilis.com>
To: Haojian Zhuang <haojian.zhuang@linaro.org>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	Stephen Warren <swarren@wwwdotorg.org>,
	Shiraz HASHIM <shiraz.hashim@st.com>,
	Patrice CHOTARD <patrice.chotard@st.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Grant Likely <grant.likely@secretlab.ca>,
	Rob Herring <rob.herring@calxeda.com>,
	Rob Landley <rob@landley.net>,
	Sascha Leuenberger <sascha.leuenberger@abilis.com>,
	Pierrick Hascoet <pierrick.hascoet@abilis.com>,
	"devicetree-discuss@lists.ozlabs.org" 
	<devicetree-discuss@lists.ozlabs.org>,
	"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>
Subject: Re: [PATCH 1/2] pinmux: Add TB10x pinmux driver
Date: Thu, 6 Jun 2013 17:30:31 +0200	[thread overview]
Message-ID: <20130606153030.GA19876@ab42.lan> (raw)
In-Reply-To: <CAD6h2NRNMQP-ZQ0Cc613tGThVEo7AzRExBmWsbtr1DXgiPwz7w@mail.gmail.com>

On Thu, Jun 06, 2013 at 10:32:21PM +0800, Haojian Zhuang wrote:
> On 6 June 2013 22:11, Christian Ruppert <christian.ruppert@abilis.com> wrote:
> > On Wed, Jun 05, 2013 at 09:44:27AM +0800, Haojian Zhuang wrote:
> >> On 3 June 2013 20:30, Christian Ruppert <christian.ruppert@abilis.com> wrote:
> >> > OK, here's a simplified example of what we would like to do (this seems
> >> > pretty common so I suppose there is a way I haven't understood). Our
> >> > situation is slightly more complex but for the purpose of discussion
> >> > let's assume a chip with 8 pins which can be configured for the
> >> > following functions:
> >> >
> >> > Pin   GPIO-A    I2C    SPI0     SPI1
> >> > ------------------------------------
> >> >  1    GPIOA0    SDA             MISO1
> >> >  2    GPIOA1    SCL             MOSI1
> >> >  3    GPIOA2                    SS1_B
> >> >  4    GPIOA3                    SCLK1
> >> >  5    GPIOA4           MISO0
> >> >  6    GPIOA5           MOSI0
> >> >  7    GPIOA6           SS0_B
> >> >  8    GPIOA7           SCLK0
> >> >
> >> > We can now define the following pinctrl-single:
> >> >
> >> > pinmux: pinmux@0xFFEE0000 {
> >> >         compatible = "pinctrl-single";
> >> >         reg = <0xFFEE0000 0x8>;
> >> >         #address-cells = <1>;
> >> >         #size-cells = <0>;
> >> >         #gpio-range-cells = <3>;
> >> >         pinctrl-single,register-width = <32>;
> >> >         pinctrl-single,function-mask = <0xffffffff>;
> >> >         pinctrl-single,gpio-range = <&range 1 8 0>;
> >> >         gpioa_pins: pinmux_gpioa_pins {
> >> >                 pinctrl-single,pins = <0x0 0 0x4 0>
> >> >         };
> >> >         i2c_pins: pinmux_i2c_pins {
> >> >                 pinctrl-single,pins = <0x0 1>
> >> >         };
> >> >         spi0_pins: pinmux_spi0_pins {
> >> >                 pinctrl-single,pins = <0x1 1>
> >> <0x1 1>?
> >>
> >> If each pinmux register is only for one pin in your SoC.
> >> I think that your definitions are wrong above. We use
> >> register offset as the first argument, not pin number.
> >> And the second argument should be pin function number.
> >
> > In our case each pinmux register (bit field) actually controls an entire
> > group of pins.
> >
> >> If multiple pins are sharing one register with different bits,
> >> you need to enable "pinctrl-single,bit-per-mux".
> >
> > Multiple pins are sharing the same bits in the same register. Do you
> > think this prevents us from using pinctrl-single?
> >
> Could you give me your register definition? Then I can understand you
> better.

In our example, the register map would look a bit like the following.
Note that every register configures four pins at a time.

Register 0x0:
 Mode  GPIO-A    I2C    SPI1
 Value 0x0       0x1    0x2
 ---------------------------
 Pin1  GPIOA0    SDA    MISO1
 Pin2  GPIOA1    SCL    MOSI1
 Pin3  GPIOA2           SS1_B
 Pin4  GPIOA3           SCLK1

Register 0x4:
 Mode  GPIO-A    SPI0
 Value 0x0       0x1
 ---------------------
 Pin5  GPIOA4    MISO0
 Pin6  GPIOA5    MOSI0
 Pin7  GPIOA6    SS0_B
 Pin8  GPIOA7    SCLK0

Greetings,
  Christian

-- 
  Christian Ruppert              ,          <christian.ruppert@abilis.com>
                                /|
  Tel: +41/(0)22 816 19-42     //|                 3, Chemin du Pré-Fleuri
                             _// | bilis Systems   CH-1228 Plan-les-Ouates

  reply	other threads:[~2013-06-06 15:30 UTC|newest]

Thread overview: 200+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-10 15:45 [PATCH 1/2] pinmux: Add TB10x pinmux driver Christian Ruppert
2013-04-10 15:45 ` [PATCH 2/2] GPIO: Add TB10x GPIO driver Christian Ruppert
2013-04-17 15:13   ` Linus Walleij
2013-04-17 15:13     ` Linus Walleij
2013-04-17 18:37   ` Stephen Warren
2013-04-17 14:48 ` [PATCH 1/2] pinmux: Add TB10x pinmux driver Linus Walleij
2013-04-17 14:48   ` Linus Walleij
2013-04-17 18:32 ` Stephen Warren
2013-04-18  9:03   ` Christian Ruppert
2013-04-26  7:47     ` Linus Walleij
2013-04-26  7:47       ` Linus Walleij
2013-04-29 16:17       ` Christian Ruppert
2013-04-29 16:17         ` Christian Ruppert
2013-05-02 18:49         ` Stephen Warren
2013-05-02 18:49           ` Stephen Warren
2013-05-03 18:03           ` Linus Walleij
2013-05-03 18:03             ` Linus Walleij
2013-05-08 16:41             ` Christian Ruppert
2013-05-08 16:41               ` Christian Ruppert
2013-05-08 20:01               ` Stephen Warren
2013-05-08 20:01                 ` Stephen Warren
2013-05-10  8:25                 ` Christian Ruppert
2013-05-10  8:25                   ` Christian Ruppert
2013-05-14 12:29                   ` Linus Walleij
2013-05-14 12:29                     ` Linus Walleij
2013-05-15  9:41                     ` Christian Ruppert
2013-05-15  9:41                       ` Christian Ruppert
2013-05-20  8:03                       ` Linus Walleij
2013-05-20  8:03                         ` Linus Walleij
2013-05-22  9:49                         ` Christian Ruppert
2013-05-22  9:49                           ` Christian Ruppert
2013-06-12 16:44                           ` [RFC] Allow GPIO ranges based on pinctl pin groups Christian Ruppert
2013-06-13  9:00                             ` Linus Walleij
2013-06-13  9:00                               ` Linus Walleij
2013-06-13 12:55                               ` [PATCH 1/2] Add pin list based GPIO ranges Christian Ruppert
2013-06-13 18:30                                 ` Linus Walleij
2013-06-13 18:30                                   ` Linus Walleij
2013-06-14  7:17                                 ` Patrice CHOTARD
2013-06-14  7:17                                   ` Patrice CHOTARD
2013-06-14  8:24                                   ` [PATCH] Fix comment on pinctrl_gpio_range.pin_base Christian Ruppert
2013-06-16 10:19                                     ` Linus Walleij
2013-06-16 10:19                                       ` Linus Walleij
2013-06-13 12:55                               ` [PATCH 2/2] Make non-linear GPIO ranges accesible from gpiolib Christian Ruppert
2013-06-13 18:36                                 ` Linus Walleij
2013-06-13 18:36                                   ` Linus Walleij
2013-06-13 21:38                                 ` Stephen Warren
2013-06-14  9:12                                   ` Christian Ruppert
2013-06-19 18:10                                     ` Stephen Warren
2013-06-19 18:27                                       ` Stephen Warren
2013-06-20 11:57                                         ` Christian Ruppert
2013-06-21 21:17                                           ` Stephen Warren
2013-06-25 11:59                                             ` Christian Ruppert
2013-06-25 15:59                                               ` Stephen Warren
2013-06-25 14:27                                             ` Linus Walleij
2013-06-25 14:27                                               ` Linus Walleij
2013-06-25 15:19                                               ` Stephen Warren
2013-06-25 15:19                                                 ` Stephen Warren
2013-06-25 14:32                                             ` Linus Walleij
2013-06-25 14:32                                               ` Linus Walleij
2013-06-25 15:22                                               ` Stephen Warren
2013-06-25 15:22                                                 ` Stephen Warren
2013-06-25 14:56                                             ` Linus Walleij
2013-06-25 14:56                                               ` Linus Walleij
2013-06-25 15:31                                               ` Stephen Warren
2013-06-25 15:31                                                 ` Stephen Warren
2013-06-25 15:47                                                 ` Linus Walleij
2013-06-25 15:47                                                   ` Linus Walleij
2013-06-25 15:28                                             ` Linus Walleij
2013-06-25 15:28                                               ` Linus Walleij
2013-06-25 15:39                                               ` Stephen Warren
2013-06-25 15:39                                                 ` Stephen Warren
2013-06-25 15:53                                                 ` Linus Walleij
2013-06-25 15:53                                                   ` Linus Walleij
2013-06-17 16:03                                   ` Christian Ruppert
2013-06-17 16:04                                     ` [PATCH 1/4] " Christian Ruppert
2013-06-18  8:09                                       ` Linus Walleij
2013-06-18  8:09                                         ` Linus Walleij
2013-06-18  9:25                                         ` Christian Ruppert
2013-06-18  9:25                                           ` Christian Ruppert
2013-06-18  9:29                                           ` Christian Ruppert
2013-06-19 12:03                                             ` Linus Walleij
2013-06-19 12:03                                               ` Linus Walleij
2013-06-19 18:15                                               ` Stephen Warren
2013-06-19 18:15                                                 ` Stephen Warren
2013-06-26 11:42                                                 ` Christian Ruppert
2013-06-26 11:42                                                   ` Christian Ruppert
2013-06-26 17:33                                                   ` Stephen Warren
2013-06-26 17:33                                                     ` Stephen Warren
2013-06-19 22:27                                             ` Stephen Warren
2013-06-26 11:46                                               ` Christian Ruppert
2013-06-26 17:34                                                 ` Stephen Warren
2013-06-18  9:29                                           ` [PATCH 2/4] pinmux: Add TB10x pinmux driver Christian Ruppert
2013-06-19 22:35                                             ` Stephen Warren
2013-06-26 11:50                                               ` Christian Ruppert
2013-06-26 17:40                                                 ` Stephen Warren
2013-07-05  9:49                                                   ` Christian Ruppert
2013-07-05 18:40                                                     ` Stephen Warren
2013-07-08 13:02                                                       ` Christian Ruppert
2013-07-10 19:27                                                         ` Stephen Warren
2013-07-16  8:47                                                           ` Christian Ruppert
2013-07-16 16:04                                                             ` Stephen Warren
2013-07-18 16:07                                                               ` Christian Ruppert
2013-07-18 19:54                                                                 ` Stephen Warren
2013-07-26  9:42                                                                   ` Christian Ruppert
2013-07-26 16:05                                                                     ` Stephen Warren
2013-07-29 22:35                                             ` Linus Walleij
2013-08-05 11:51                                               ` Christian Ruppert
2013-08-05 11:51                                                 ` Christian Ruppert
2013-08-14 16:53                                                 ` Linus Walleij
2013-08-21 15:57                                                   ` Christian Ruppert
2013-08-22 20:10                                                     ` Stephen Warren
2013-08-28 14:47                                                       ` Christian Ruppert
2013-10-08 12:21                                                         ` Christian Ruppert
2013-10-08 12:25                                                           ` [PATCH 01/03] Make non-linear GPIO ranges accesible from gpiolib Christian Ruppert
2013-10-09 11:58                                                             ` Linus Walleij
2013-10-09 13:28                                                               ` Christian Ruppert
2013-10-09 14:01                                                                 ` Linus Walleij
2013-10-10 20:49                                                                   ` Stephen Warren
2013-10-11  7:53                                                                     ` Linus Walleij
2013-10-15 13:36                                                                   ` Christian Ruppert
2013-10-15 13:37                                                                     ` [PATCH V2] " Christian Ruppert
2013-10-16 11:19                                                                       ` Linus Walleij
2013-10-16 12:56                                                                         ` [PATCH] Add a short note on pinctrl_get_group_pins to pinctrl.txt Christian Ruppert
2013-10-16 13:36                                                                           ` Linus Walleij
2013-10-10 20:47                                                               ` [PATCH 01/03] Make non-linear GPIO ranges accesible from gpiolib Stephen Warren
2013-10-08 12:25                                                           ` [PATCH 02/03] pinmux: Add TB10x pinmux driver Christian Ruppert
2013-10-09 12:30                                                             ` Linus Walleij
2013-10-15 13:39                                                               ` [PATCH V2] " Christian Ruppert
2013-10-15 13:39                                                                 ` Christian Ruppert
2013-10-16 11:25                                                                 ` Linus Walleij
2013-10-08 12:25                                                           ` [PATCH 03/03] GPIO: Add TB10x GPIO driver Christian Ruppert
2013-10-09 12:19                                                             ` Linus Walleij
2013-10-15 13:45                                                               ` Christian Ruppert
2013-10-16 11:29                                                                 ` Linus Walleij
2013-10-16 12:58                                                                   ` Christian Ruppert
2013-10-24 16:23                                                                     ` Christian Ruppert
2013-10-25 21:44                                                                       ` Linus Walleij
2013-10-25  3:27                                                             ` Kumar Gala
2013-08-28 18:49                                                     ` [PATCH 2/4] pinmux: Add TB10x pinmux driver Linus Walleij
2013-08-29  7:35                                                       ` Christian Ruppert
2013-08-29  8:24                                                         ` Linus Walleij
2013-08-30  8:19                                                           ` Christian Ruppert
2013-06-18  9:29                                           ` [PATCH 3/4] GPIO: Add TB10x GPIO driver Christian Ruppert
2013-06-19 22:37                                             ` Stephen Warren
2013-06-18  9:29                                           ` [PATCH 4/4] Add Abilis Systems Sarl to device tree vendor prefixes Christian Ruppert
2013-06-17 16:04                                     ` [PATCH 2/4] pinmux: Add TB10x pinmux driver Christian Ruppert
2013-06-17 16:04                                     ` [PATCH 3/4] GPIO: Add TB10x GPIO driver Christian Ruppert
2013-06-17 16:04                                     ` [PATCH 4/4] Add Abilis Systems Sarl to device tree vendor prefixes Christian Ruppert
2013-05-16  0:12                   ` [PATCH 1/2] pinmux: Add TB10x pinmux driver Stephen Warren
2013-05-16  0:12                     ` Stephen Warren
2013-05-20  8:10                     ` Linus Walleij
2013-05-20  8:10                       ` Linus Walleij
2013-05-22 14:28                       ` Christian Ruppert
2013-05-22 14:28                         ` Christian Ruppert
2013-05-23  7:43                         ` Haojian Zhuang
2013-05-23  7:43                           ` Haojian Zhuang
2013-05-24 11:50                           ` Christian Ruppert
2013-05-24 11:50                             ` Christian Ruppert
2013-05-26 15:49                             ` Haojian Zhuang
2013-05-26 15:49                               ` Haojian Zhuang
2013-06-03 12:30                               ` Christian Ruppert
2013-06-03 12:30                                 ` Christian Ruppert
2013-06-05  1:44                                 ` Haojian Zhuang
2013-06-05  1:44                                   ` Haojian Zhuang
2013-06-06 14:11                                   ` Christian Ruppert
2013-06-06 14:11                                     ` Christian Ruppert
2013-06-06 14:32                                     ` Haojian Zhuang
2013-06-06 14:32                                       ` Haojian Zhuang
2013-06-06 15:30                                       ` Christian Ruppert [this message]
2013-06-06 15:30                                         ` Christian Ruppert
2013-06-07  0:00                                         ` Haojian Zhuang
2013-06-07  0:00                                           ` Haojian Zhuang
2013-06-07 11:32                                           ` Christian Ruppert
2013-06-07 11:32                                             ` Christian Ruppert
2013-06-07 14:57                                             ` Haojian Zhuang
2013-06-07 14:57                                               ` Haojian Zhuang
2013-06-07 19:18                                         ` Stephen Warren
2013-06-07 19:18                                           ` Stephen Warren
2013-06-08  8:31                                           ` Haojian Zhuang
2013-06-08  8:31                                             ` Haojian Zhuang
2013-06-09  2:47                                             ` Stephen Warren
2013-06-09  2:47                                               ` Stephen Warren
2013-06-11  7:27                                           ` Christian Ruppert
2013-06-11  7:27                                             ` Christian Ruppert
2013-06-16 11:11                                             ` Linus Walleij
2013-06-16 11:11                                               ` Linus Walleij
2013-05-29 12:21                             ` Linus Walleij
2013-05-29 12:21                               ` Linus Walleij
2013-06-03  9:42                               ` Christian Ruppert
2013-06-03  9:42                                 ` Christian Ruppert
2013-06-07 11:36                                 ` Linus Walleij
2013-06-07 11:36                                   ` Linus Walleij
2013-06-07 13:34                                   ` Christian Ruppert
2013-06-07 13:34                                     ` Christian Ruppert
2013-05-24  9:20                         ` Linus Walleij
2013-05-24  9:20                           ` Linus Walleij
2013-05-24 12:03                           ` Christian Ruppert
2013-05-24 12:03                             ` Christian Ruppert
2013-05-02 18:52     ` Stephen Warren
2013-05-02 18:52       ` Stephen Warren

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=20130606153030.GA19876@ab42.lan \
    --to=christian.ruppert@abilis.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=grant.likely@secretlab.ca \
    --cc=haojian.zhuang@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=patrice.chotard@st.com \
    --cc=pierrick.hascoet@abilis.com \
    --cc=rob.herring@calxeda.com \
    --cc=rob@landley.net \
    --cc=sascha.leuenberger@abilis.com \
    --cc=shiraz.hashim@st.com \
    --cc=swarren@wwwdotorg.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.