From: Stephen Warren <swarren@nvidia.com>
To: Grant Likely <grant.likely@secretlab.ca>,
Colin Cross <ccross@android.com>,
Erik Gilling <konkers@android.com>,
Olof Johansson <olof@lixom.net>
Cc: Russell King <linux@arm.linux.org.uk>,
Arnd Bergmann <arnd@arndb.de>,
devicetree-discuss@lists.ozlabs.org, linux-tegra@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
Belisko Marek <marek.belisko@gmail.com>,
Jamie Iles <jamie@jamieiles.com>,
Shawn Guo <shawn.guo@freescale.com>,
Sergei Shtylyov <sshtylyov@mvista.com>,
Linus Walleij <linus.walleij@linaro.org>,
Stephen Warren <swarren@nvidia.com>
Subject: [PATCH v3 04/13] docs/dt: Document nvidia,tegra20-pinmux binding
Date: Thu, 25 Aug 2011 17:43:35 -0600 [thread overview]
Message-ID: <1314315824-9687-5-git-send-email-swarren@nvidia.com> (raw)
In-Reply-To: <1314315824-9687-1-git-send-email-swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
.../devicetree/bindings/pinmux/pinmux_nvidia.txt | 302 ++++++++++++++++++++
1 files changed, 302 insertions(+), 0 deletions(-)
create mode 100644 Documentation/devicetree/bindings/pinmux/pinmux_nvidia.txt
diff --git a/Documentation/devicetree/bindings/pinmux/pinmux_nvidia.txt b/Documentation/devicetree/bindings/pinmux/pinmux_nvidia.txt
new file mode 100644
index 0000000..4a7e082
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinmux/pinmux_nvidia.txt
@@ -0,0 +1,302 @@
+NVIDIA Tegra 2 pinmux controller
+
+Required properties:
+- compatible : "nvidia,tegra20-pinmux"
+
+Optional sub-nodes:
+- nvidia,mux-groups : Mux group settings; see below.
+- nvidia,drive-groups : Drive group settings; see below.
+
+nvidia,mux-groups sub-node:
+
+Each desired configuration of a pin group, or a set of pin groups, should be
+represented as a sub-node of the nvidia,mux-groups node. The name of the
+sub-node has no meaning.
+
+Required subnode-properties:
+- pins : An array of strings. Each string contains the name of a mux pingroup.
+ Valid values for pingroup names are listed below.
+- function : A string containing the name of the pinmux function to mux to the
+ pingroup. Valid values for function names are listed below. See the Tegra
+ TRM to determine which are valid for each pingroup:
+
+Valid pin group names for muxing are:
+
+ ata
+ atb
+ atc
+ atd
+ ate
+ cdev1
+ cdev2
+ crtp
+ csus
+ dap1
+ dap2
+ dap3
+ dap4
+ ddc
+ dta
+ dtb
+ dtc
+ dtd
+ dte
+ dtf
+ gma
+ gmb
+ gmc
+ gmd
+ gme
+ gpu
+ gpu7
+ gpv
+ hdint
+ i2cp
+ irrx
+ irtx
+ kbca
+ kbcb
+ kbcc
+ kbcd
+ kbce
+ kbcf
+ lcsn
+ ld0
+ ld1
+ ld10
+ ld11
+ ld12
+ ld13
+ ld14
+ ld15
+ ld16
+ ld17
+ ld2
+ ld3
+ ld4
+ ld5
+ ld6
+ ld7
+ ld8
+ ld9
+ ldc
+ ldi
+ lhp0
+ lhp1
+ lhp2
+ lhs
+ lm0
+ lm1
+ lpp
+ lpw0
+ lpw1
+ lpw2
+ lsc0
+ lsc1
+ lsck
+ lsda
+ lsdi
+ lspi
+ lvp0
+ lvp1
+ lvs
+ owc
+ pmc
+ pta
+ rm
+ sdb
+ sdc
+ sdd
+ sdio1
+ slxa
+ slxc
+ slxd
+ slxk
+ spdi
+ spdo
+ spia
+ spib
+ spic
+ spid
+ spie
+ spif
+ spig
+ spih
+ uaa
+ uab
+ uac
+ uad
+ uca
+ ucb
+ uda
+ ck32
+ ddrc
+ pmca
+ pmcb
+ pmcc
+ pmcd
+ pmce
+ xm2c
+ xm2d
+
+Valid function names are:
+
+ none (used for pingroups without muxing functionality)
+ ahb_clk
+ apb_clk
+ audio_sync
+ crt
+ dap1
+ dap2
+ dap3
+ dap4
+ dap5
+ displaya
+ displayb
+ emc_test0_dll
+ emc_test1_dll
+ gmi
+ gmi_int
+ hdmi
+ i2c
+ i2c2
+ i2c3
+ ide
+ irda
+ kbc
+ mio
+ mipi_hs
+ nand
+ osc
+ owr
+ pcie
+ plla_out
+ pllc_out1
+ pllm_out1
+ pllp_out2
+ pllp_out3
+ pllp_out4
+ pwm
+ pwr_intr
+ pwr_on
+ rtck
+ sdio1
+ sdio2
+ sdio3
+ sdio4
+ sflash
+ spdif
+ spi1
+ spi2
+ spi2_alt
+ spi3
+ spi4
+ trace
+ twc
+ uarta
+ uartb
+ uartc
+ uartd
+ uarte
+ ulpi
+ vi
+ vi_sensor_clk
+ xio
+
+Optional subnode-properties:
+- pull-up : Boolean, apply Tegra's internal pull-up to the pin.
+- pull-down : Boolean, apply Tegra's internal pull-down to the pin.
+- tristate : Boolean, tristate the pin. Otherwise, drive it.
+
+If both pull-up and pull-down are specified, pull-up takes precedence.
+
+nvidia,drive-groups sub-node:
+
+Each desired configuration of a pin group, or a set of pin groups, should be
+represented as a sub-node of the nvidia,drive-groups node. The name of the
+sub-node has no meaning.
+
+Required subnode-properties:
+- pins : An array of strings. Each string contains the name of a mux pingroup.
+ Valid values for pingroup names are listed below.
+- nvidia,high-speed-mode : Boolean, enable high speed mode the pins.
+- nvidia,schmitt : Boolean, enables Schmitt Trigger on the input.
+- nvidia,drive-power : Integer, valid values 0-3. 0 is least power, 3 is
+ most power. Controls the drive power or current. See "Low Power Mode"
+ or "LPMD1" and "LPMD0" in the Tegra TRM.
+- nvidia,pull-down-strength : Integer, valid values 0-31. Controls drive
+ strength. See "CAL_DRVDN" in the Tegra TRM.
+- nvidia,pull-up-strength : Integer, valid values 0-31. Controls drive
+ strength. See "CAL_DRVUP" in the Tegra TRM.
+- nvidia,slew_rate-rising : Integer, valid values 0-3. 0 is fastest, 3 is
+ slowest. See "DRVUP_SLWR" in the Tegra TRM.
+- nvidia,slew_rate-falling : Integer, valid values 0-3. 0 is fastest, 3 is
+ slowest. See "DRVDN_SLWR" in the Tegra TRM.
+
+Valid pin group names for drive configuration are:
+
+ ao1
+ ao2
+ at1
+ at2
+ cdev1
+ cdev2
+ csus
+ dap1
+ dap2
+ dap3
+ dap4
+ dbg
+ lcd1
+ lcd2
+ sdmmc2
+ sdmmc3
+ spi
+ uaa
+ uab
+ uart2
+ uart3
+ vi1
+ vi2
+ xm2a
+ xm2c
+ xm2d
+ xm2clk
+ memcomp
+ sdio1
+ crt
+ ddc
+ gma
+ gmb
+ gmc
+ gmd
+ gme
+ owr
+ uad
+
+Example of a pinmux-controller node:
+
+ pinmux: pinmux@70000000 {
+ compatible = "nvidia,tegra20-pinmux";
+ reg = < 0x70000000 0xc00 >;
+ nvidia,mux-groups {
+ lcsn {
+ pins = "lcsn", "ldc", "lm1", "lpw1", "lsc1";
+ function = "displaya";
+ pull-up;
+ tristate;
+ };
+ };
+ nvidia,drive-groups {
+ sdio1 {
+ pins = "sdio1";
+ nvidia,schmitt;
+ nvidia,drive-power = <1>;
+ nvidia,pull-down-strength = <31>;
+ nvidia,pull-up-strength = <31>;
+ nvidia,slew-rate-rising = <3>;
+ nvidia,slew-rate-falling = <3>;
+ };
+ };
+ };
+
--
1.7.0.4
next prev parent reply other threads:[~2011-08-25 23:43 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-25 23:43 [PATCH v3 00/13] arm/tegra: Initialize GPIO & pinmux from DT Stephen Warren
2011-08-25 23:43 ` Stephen Warren [this message]
[not found] ` <1314315824-9687-1-git-send-email-swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-08-25 23:43 ` [PATCH v3 01/13] arm/tegra: Prep boards for gpio/pinmux conversion to pdevs Stephen Warren
2011-08-25 23:43 ` [PATCH v3 02/13] docs/dt: Document nvidia, tegra20-gpio's nvidia, enabled-gpios property Stephen Warren
2011-08-25 23:43 ` [PATCH v3 03/13] arm/dt: Tegra: Add nvidia, enabled-gpios property to GPIO controller Stephen Warren
2011-08-25 23:43 ` [PATCH v3 05/13] arm/dt: Tegra: Add pinmux node Stephen Warren
2011-08-25 23:43 ` [PATCH v3 07/13] gpio/tegra: Convert to a platform device Stephen Warren
2011-08-25 23:43 ` [PATCH v3 09/13] arm/tegra: Convert pinmux driver " Stephen Warren
2011-08-25 23:43 ` [PATCH v3 10/13] of: add a generic pinmux helper Stephen Warren
[not found] ` <1314315824-9687-11-git-send-email-swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-08-26 9:16 ` Jamie Iles
2011-08-29 11:09 ` Linus Walleij
[not found] ` <CACRpkdaTiWEtgjVOhUKeXhpiESvrWyz97p5j_PHe3MvEM4UaCw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-08-29 21:46 ` Stephen Warren
[not found] ` <74CDBE0F657A3D45AFBB94109FB122FF04B3279BEB-C7FfzLzN0UxDw2glCA4ptUEOCMrvLtNR@public.gmane.org>
2011-09-01 11:30 ` Linus Walleij
2011-08-25 23:43 ` [PATCH v3 11/13] of: add property iteration helpers Stephen Warren
[not found] ` <1314315824-9687-12-git-send-email-swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-08-26 9:26 ` Jamie Iles
[not found] ` <20110826092632.GB3926-apL1N+EY0C9YtYNIL7UdTEEOCMrvLtNR@public.gmane.org>
2011-08-26 15:59 ` Stephen Warren
[not found] ` <74CDBE0F657A3D45AFBB94109FB122FF04B24A40C8-C7FfzLzN0UxDw2glCA4ptUEOCMrvLtNR@public.gmane.org>
2011-08-26 16:16 ` Jamie Iles
2011-08-25 23:43 ` [PATCH v3 12/13] arm/tegra: Add device tree support to pinmux driver Stephen Warren
2011-08-25 23:43 ` [PATCH v3 13/13] arm/tegra: board-dt: Remove dependency on non-dt pinmux functions Stephen Warren
2011-08-26 5:04 ` [PATCH v3 00/13] arm/tegra: Initialize GPIO & pinmux from DT Olof Johansson
[not found] ` <CAOesGMiygfaNkPa7uURCiJpC=WDinWhKi07LFgJ+5JoGW_fLKw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-08-26 16:07 ` Stephen Warren
2011-08-25 23:43 ` [PATCH v3 06/13] dt: add empty for_each_child_of_node, of_find_property Stephen Warren
[not found] ` <1314315824-9687-7-git-send-email-swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-08-31 18:25 ` Stephen Warren
2011-08-25 23:43 ` [PATCH v3 08/13] gpio/tegra: Add device tree support 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=1314315824-9687-5-git-send-email-swarren@nvidia.com \
--to=swarren@nvidia.com \
--cc=arnd@arndb.de \
--cc=ccross@android.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=grant.likely@secretlab.ca \
--cc=jamie@jamieiles.com \
--cc=konkers@android.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=marek.belisko@gmail.com \
--cc=olof@lixom.net \
--cc=shawn.guo@freescale.com \
--cc=sshtylyov@mvista.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).