aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/devicetree')
-rw-r--r--Documentation/devicetree/bindings/arm/armada-370-xp-mpic.txt23
-rw-r--r--Documentation/devicetree/bindings/arm/armada-370-xp-timer.txt11
-rw-r--r--Documentation/devicetree/bindings/arm/armada-370-xp.txt24
-rw-r--r--Documentation/devicetree/bindings/arm/atmel-aic.txt9
-rw-r--r--Documentation/devicetree/bindings/arm/calxeda/l2ecc.txt15
-rw-r--r--Documentation/devicetree/bindings/arm/calxeda/mem-ctrlr.txt14
-rw-r--r--Documentation/devicetree/bindings/arm/davinci/cp-intc.txt27
-rw-r--r--Documentation/devicetree/bindings/arm/mvebu-system-controller.txt17
-rw-r--r--Documentation/devicetree/bindings/arm/olimex.txt6
-rw-r--r--Documentation/devicetree/bindings/arm/omap/omap.txt6
-rw-r--r--Documentation/devicetree/bindings/arm/primecell.txt6
-rw-r--r--Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-emc.txt (renamed from Documentation/devicetree/bindings/arm/tegra/emc.txt)2
-rw-r--r--Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-mc.txt2
-rw-r--r--Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-mc.txt2
-rw-r--r--Documentation/devicetree/bindings/clock/calxeda.txt17
-rw-r--r--Documentation/devicetree/bindings/clock/clock-bindings.txt117
-rw-r--r--Documentation/devicetree/bindings/clock/fixed-clock.txt21
-rw-r--r--Documentation/devicetree/bindings/fb/mxsfb.txt19
-rw-r--r--Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt16
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio-mxs.txt5
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio-nmk.txt2
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio-samsung.txt9
-rw-r--r--Documentation/devicetree/bindings/gpio/led.txt2
-rw-r--r--Documentation/devicetree/bindings/gpio/nvidia,tegra20-gpio.txt (renamed from Documentation/devicetree/bindings/gpio/gpio_nvidia.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/gpio-i2c.txt (renamed from Documentation/devicetree/bindings/gpio/gpio_i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-mux-pinctrl.txt93
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-mxs.txt3
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-ocores.txt33
-rw-r--r--Documentation/devicetree/bindings/i2c/mrvl-i2c.txt19
-rw-r--r--Documentation/devicetree/bindings/input/fsl-mma8450.txt1
-rw-r--r--Documentation/devicetree/bindings/input/lpc32xx-key.txt28
-rw-r--r--Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt (renamed from Documentation/devicetree/bindings/input/tegra-kbc.txt)0
-rw-r--r--Documentation/devicetree/bindings/input/omap-keypad.txt31
-rw-r--r--Documentation/devicetree/bindings/input/twl6040-vibra.txt37
-rw-r--r--Documentation/devicetree/bindings/iommu/nvidia,tegra30-smmu.txt21
-rw-r--r--Documentation/devicetree/bindings/mfd/mc13xxx.txt4
-rw-r--r--Documentation/devicetree/bindings/mfd/tps65910.txt90
-rw-r--r--Documentation/devicetree/bindings/misc/at25.txt21
-rw-r--r--Documentation/devicetree/bindings/mmc/fsl-esdhc.txt25
-rw-r--r--Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt12
-rw-r--r--Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt8
-rw-r--r--Documentation/devicetree/bindings/mmc/mmc.txt10
-rw-r--r--Documentation/devicetree/bindings/mmc/mmci.txt12
-rw-r--r--Documentation/devicetree/bindings/mmc/mxs-mmc.txt8
-rw-r--r--Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt (renamed from Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt)8
-rw-r--r--Documentation/devicetree/bindings/mmc/sdhci-pxa.txt21
-rw-r--r--Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt7
-rw-r--r--Documentation/devicetree/bindings/mtd/orion-nand.txt4
-rw-r--r--Documentation/devicetree/bindings/mtd/partition.txt2
-rw-r--r--Documentation/devicetree/bindings/net/broadcom-bcm87xx.txt29
-rw-r--r--Documentation/devicetree/bindings/net/can/fsl-flexcan.txt3
-rw-r--r--Documentation/devicetree/bindings/net/davinci_emac.txt41
-rw-r--r--Documentation/devicetree/bindings/net/fsl-fec.txt8
-rw-r--r--Documentation/devicetree/bindings/net/phy.txt12
-rw-r--r--Documentation/devicetree/bindings/net/stmmac.txt3
-rw-r--r--Documentation/devicetree/bindings/nvec/nvidia,nvec.txt (renamed from Documentation/devicetree/bindings/nvec/nvec_nvidia.txt)0
-rw-r--r--Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt2
-rw-r--r--Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt93
-rw-r--r--Documentation/devicetree/bindings/pwm/lpc32xx-pwm.txt12
-rw-r--r--Documentation/devicetree/bindings/pwm/mxs-pwm.txt17
-rw-r--r--Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt18
-rw-r--r--Documentation/devicetree/bindings/pwm/pwm.txt57
-rw-r--r--Documentation/devicetree/bindings/regulator/fixed-regulator.txt2
-rw-r--r--Documentation/devicetree/bindings/regulator/regulator.txt5
-rw-r--r--Documentation/devicetree/bindings/regulator/tps65217.txt91
-rw-r--r--Documentation/devicetree/bindings/regulator/tps6586x.txt77
-rw-r--r--Documentation/devicetree/bindings/regulator/twl-regulator.txt1
-rw-r--r--Documentation/devicetree/bindings/rtc/dw-apb.txt25
-rw-r--r--Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt16
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt (renamed from Documentation/devicetree/bindings/sound/tegra-audio-alc5632.txt)0
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra-audio-trimslice.txt (renamed from Documentation/devicetree/bindings/sound/tegra-audio-trimslice.txt)0
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt (renamed from Documentation/devicetree/bindings/sound/tegra-audio-wm8753.txt)0
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt (renamed from Documentation/devicetree/bindings/sound/tegra-audio-wm8903.txt)0
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra20-das.txt (renamed from Documentation/devicetree/bindings/sound/tegra20-das.txt)0
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra20-i2s.txt (renamed from Documentation/devicetree/bindings/sound/tegra20-i2s.txt)0
-rw-r--r--Documentation/devicetree/bindings/spi/fsl-imx-cspi.txt4
-rw-r--r--Documentation/devicetree/bindings/spi/nvidia,tegra20-spi.txt (renamed from Documentation/devicetree/bindings/spi/spi_nvidia.txt)0
-rw-r--r--Documentation/devicetree/bindings/spi/spi-orion.txt19
-rw-r--r--Documentation/devicetree/bindings/spi/spi-samsung.txt116
-rw-r--r--Documentation/devicetree/bindings/thermal/spear-thermal.txt14
-rw-r--r--Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt27
-rw-r--r--Documentation/devicetree/bindings/tty/serial/of-serial.txt1
-rw-r--r--Documentation/devicetree/bindings/usb/ci13xxx-imx.txt18
-rw-r--r--Documentation/devicetree/bindings/usb/mxs-phy.txt13
-rw-r--r--Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt (renamed from Documentation/devicetree/bindings/usb/tegra-usb.txt)0
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt1
-rw-r--r--Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt28
-rw-r--r--Documentation/devicetree/bindings/watchdog/omap-wdt.txt14
-rw-r--r--Documentation/devicetree/usage-model.txt2
89 files changed, 1495 insertions, 144 deletions
diff --git a/Documentation/devicetree/bindings/arm/armada-370-xp-mpic.txt b/Documentation/devicetree/bindings/arm/armada-370-xp-mpic.txt
new file mode 100644
index 00000000000..70c0dc5f00e
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/armada-370-xp-mpic.txt
@@ -0,0 +1,23 @@
1Marvell Armada 370 and Armada XP Interrupt Controller
2-----------------------------------------------------
3
4Required properties:
5- compatible: Should be "marvell,mpic"
6- interrupt-controller: Identifies the node as an interrupt controller.
7- #interrupt-cells: The number of cells to define the interrupts. Should be 1.
8 The cell is the IRQ number
9- reg: Should contain PMIC registers location and length. First pair
10 for the main interrupt registers, second pair for the per-CPU
11 interrupt registers
12
13Example:
14
15 mpic: interrupt-controller@d0020000 {
16 compatible = "marvell,mpic";
17 #interrupt-cells = <1>;
18 #address-cells = <1>;
19 #size-cells = <1>;
20 interrupt-controller;
21 reg = <0xd0020000 0x1000>,
22 <0xd0021000 0x1000>;
23 };
diff --git a/Documentation/devicetree/bindings/arm/armada-370-xp-timer.txt b/Documentation/devicetree/bindings/arm/armada-370-xp-timer.txt
new file mode 100644
index 00000000000..8b6ea2267c9
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/armada-370-xp-timer.txt
@@ -0,0 +1,11 @@
1Marvell Armada 370 and Armada XP Global Timers
2----------------------------------------------
3
4Required properties:
5- compatible: Should be "marvell,armada-370-xp-timer"
6- interrupts: Should contain the list of Global Timer interrupts
7- reg: Should contain the base address of the Global Timer registers
8
9Optional properties:
10- marvell,timer-25Mhz: Tells whether the Global timer supports the 25
11 Mhz fixed mode (available on Armada XP and not on Armada 370)
diff --git a/Documentation/devicetree/bindings/arm/armada-370-xp.txt b/Documentation/devicetree/bindings/arm/armada-370-xp.txt
new file mode 100644
index 00000000000..c6ed90ea6e1
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/armada-370-xp.txt
@@ -0,0 +1,24 @@
1Marvell Armada 370 and Armada XP Platforms Device Tree Bindings
2---------------------------------------------------------------
3
4Boards with a SoC of the Marvell Armada 370 and Armada XP families
5shall have the following property:
6
7Required root node property:
8
9compatible: must contain "marvell,armada-370-xp"
10
11In addition, boards using the Marvell Armada 370 SoC shall have the
12following property:
13
14Required root node property:
15
16compatible: must contain "marvell,armada370"
17
18In addition, boards using the Marvell Armada XP SoC shall have the
19following property:
20
21Required root node property:
22
23compatible: must contain "marvell,armadaxp"
24
diff --git a/Documentation/devicetree/bindings/arm/atmel-aic.txt b/Documentation/devicetree/bindings/arm/atmel-aic.txt
index aabca4f8340..19078bf5cca 100644
--- a/Documentation/devicetree/bindings/arm/atmel-aic.txt
+++ b/Documentation/devicetree/bindings/arm/atmel-aic.txt
@@ -4,7 +4,7 @@ Required properties:
4- compatible: Should be "atmel,<chip>-aic" 4- compatible: Should be "atmel,<chip>-aic"
5- interrupt-controller: Identifies the node as an interrupt controller. 5- interrupt-controller: Identifies the node as an interrupt controller.
6- interrupt-parent: For single AIC system, it is an empty property. 6- interrupt-parent: For single AIC system, it is an empty property.
7- #interrupt-cells: The number of cells to define the interrupts. It sould be 2. 7- #interrupt-cells: The number of cells to define the interrupts. It sould be 3.
8 The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet). 8 The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet).
9 The second cell is used to specify flags: 9 The second cell is used to specify flags:
10 bits[3:0] trigger type and level flags: 10 bits[3:0] trigger type and level flags:
@@ -14,7 +14,10 @@ Required properties:
14 8 = active low level-sensitive. 14 8 = active low level-sensitive.
15 Valid combinations are 1, 2, 3, 4, 8. 15 Valid combinations are 1, 2, 3, 4, 8.
16 Default flag for internal sources should be set to 4 (active high). 16 Default flag for internal sources should be set to 4 (active high).
17 The third cell is used to specify the irq priority from 0 (lowest) to 7
18 (highest).
17- reg: Should contain AIC registers location and length 19- reg: Should contain AIC registers location and length
20- atmel,external-irqs: u32 array of external irqs.
18 21
19Examples: 22Examples:
20 /* 23 /*
@@ -24,7 +27,7 @@ Examples:
24 compatible = "atmel,at91rm9200-aic"; 27 compatible = "atmel,at91rm9200-aic";
25 interrupt-controller; 28 interrupt-controller;
26 interrupt-parent; 29 interrupt-parent;
27 #interrupt-cells = <2>; 30 #interrupt-cells = <3>;
28 reg = <0xfffff000 0x200>; 31 reg = <0xfffff000 0x200>;
29 }; 32 };
30 33
@@ -34,5 +37,5 @@ Examples:
34 dma: dma-controller@ffffec00 { 37 dma: dma-controller@ffffec00 {
35 compatible = "atmel,at91sam9g45-dma"; 38 compatible = "atmel,at91sam9g45-dma";
36 reg = <0xffffec00 0x200>; 39 reg = <0xffffec00 0x200>;
37 interrupts = <21 4>; 40 interrupts = <21 4 5>;
38 }; 41 };
diff --git a/Documentation/devicetree/bindings/arm/calxeda/l2ecc.txt b/Documentation/devicetree/bindings/arm/calxeda/l2ecc.txt
new file mode 100644
index 00000000000..94e642a33db
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/calxeda/l2ecc.txt
@@ -0,0 +1,15 @@
1Calxeda Highbank L2 cache ECC
2
3Properties:
4- compatible : Should be "calxeda,hb-sregs-l2-ecc"
5- reg : Address and size for ECC error interrupt clear registers.
6- interrupts : Should be single bit error interrupt, then double bit error
7 interrupt.
8
9Example:
10
11 sregs@fff3c200 {
12 compatible = "calxeda,hb-sregs-l2-ecc";
13 reg = <0xfff3c200 0x100>;
14 interrupts = <0 71 4 0 72 4>;
15 };
diff --git a/Documentation/devicetree/bindings/arm/calxeda/mem-ctrlr.txt b/Documentation/devicetree/bindings/arm/calxeda/mem-ctrlr.txt
new file mode 100644
index 00000000000..f770ac0893d
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/calxeda/mem-ctrlr.txt
@@ -0,0 +1,14 @@
1Calxeda DDR memory controller
2
3Properties:
4- compatible : Should be "calxeda,hb-ddr-ctrl"
5- reg : Address and size for DDR controller registers.
6- interrupts : Interrupt for DDR controller.
7
8Example:
9
10 memory-controller@fff00000 {
11 compatible = "calxeda,hb-ddr-ctrl";
12 reg = <0xfff00000 0x1000>;
13 interrupts = <0 91 4>;
14 };
diff --git a/Documentation/devicetree/bindings/arm/davinci/cp-intc.txt b/Documentation/devicetree/bindings/arm/davinci/cp-intc.txt
new file mode 100644
index 00000000000..597e8a089fe
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/davinci/cp-intc.txt
@@ -0,0 +1,27 @@
1* TI Common Platform Interrupt Controller
2
3Common Platform Interrupt Controller (cp_intc) is used on
4OMAP-L1x SoCs and can support several configurable number
5of interrupts.
6
7Main node required properties:
8
9- compatible : should be:
10 "ti,cp-intc"
11- interrupt-controller : Identifies the node as an interrupt controller
12- #interrupt-cells : Specifies the number of cells needed to encode an
13 interrupt source. The type shall be a <u32> and the value shall be 1.
14
15 The cell contains the interrupt number in the range [0-128].
16- ti,intc-size: Number of interrupts handled by the interrupt controller.
17- reg: physical base address and size of the intc registers map.
18
19Example:
20
21 intc: interrupt-controller@1 {
22 compatible = "ti,cp-intc";
23 interrupt-controller;
24 #interrupt-cells = <1>;
25 ti,intc-size = <101>;
26 reg = <0xfffee000 0x2000>;
27 };
diff --git a/Documentation/devicetree/bindings/arm/mvebu-system-controller.txt b/Documentation/devicetree/bindings/arm/mvebu-system-controller.txt
new file mode 100644
index 00000000000..081c6a786c8
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/mvebu-system-controller.txt
@@ -0,0 +1,17 @@
1MVEBU System Controller
2-----------------------
3MVEBU (Marvell SOCs: Armada 370/XP, Dove, mv78xx0, Kirkwood, Orion5x)
4
5Required properties:
6
7- compatible: one of:
8 - "marvell,orion-system-controller"
9 - "marvell,armada-370-xp-system-controller"
10- reg: Should contain system controller registers location and length.
11
12Example:
13
14 system-controller@d0018200 {
15 compatible = "marvell,armada-370-xp-system-controller";
16 reg = <0xd0018200 0x500>;
17 };
diff --git a/Documentation/devicetree/bindings/arm/olimex.txt b/Documentation/devicetree/bindings/arm/olimex.txt
new file mode 100644
index 00000000000..007fb5c685a
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/olimex.txt
@@ -0,0 +1,6 @@
1Olimex i.MX Platforms Device Tree Bindings
2------------------------------------------
3
4i.MX23 Olinuxino Low Cost Board
5Required root node properties:
6 - compatible = "olimex,imx23-olinuxino", "fsl,imx23";
diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
index e78e8bccac3..ccdd0e53451 100644
--- a/Documentation/devicetree/bindings/arm/omap/omap.txt
+++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
@@ -47,3 +47,9 @@ Boards:
47 47
48- AM335X EVM : Software Developement Board for AM335x 48- AM335X EVM : Software Developement Board for AM335x
49 compatible = "ti,am335x-evm", "ti,am33xx", "ti,omap3" 49 compatible = "ti,am335x-evm", "ti,am33xx", "ti,omap3"
50
51- AM335X Bone : Low cost community board
52 compatible = "ti,am335x-bone", "ti,am33xx", "ti,omap3"
53
54- OMAP5 EVM : Evaluation Module
55 compatible = "ti,omap5-evm", "ti,omap5"
diff --git a/Documentation/devicetree/bindings/arm/primecell.txt b/Documentation/devicetree/bindings/arm/primecell.txt
index 951ca46789d..64fc82bc892 100644
--- a/Documentation/devicetree/bindings/arm/primecell.txt
+++ b/Documentation/devicetree/bindings/arm/primecell.txt
@@ -13,11 +13,17 @@ Required properties:
13Optional properties: 13Optional properties:
14 14
15- arm,primecell-periphid : Value to override the h/w value with 15- arm,primecell-periphid : Value to override the h/w value with
16- clocks : From common clock binding. First clock is phandle to clock for apb
17 pclk. Additional clocks are optional and specific to those peripherals.
18- clock-names : From common clock binding. Shall be "apb_pclk" for first clock.
16 19
17Example: 20Example:
18 21
19serial@fff36000 { 22serial@fff36000 {
20 compatible = "arm,pl011", "arm,primecell"; 23 compatible = "arm,pl011", "arm,primecell";
21 arm,primecell-periphid = <0x00341011>; 24 arm,primecell-periphid = <0x00341011>;
25 clocks = <&pclk>;
26 clock-names = "apb_pclk";
27
22}; 28};
23 29
diff --git a/Documentation/devicetree/bindings/arm/tegra/emc.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-emc.txt
index 09335f8eee0..4c33b29dc66 100644
--- a/Documentation/devicetree/bindings/arm/tegra/emc.txt
+++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-emc.txt
@@ -15,7 +15,7 @@ Child device nodes describe the memory settings for different configurations and
15 15
16Example: 16Example:
17 17
18 emc@7000f400 { 18 memory-controller@7000f400 {
19 #address-cells = < 1 >; 19 #address-cells = < 1 >;
20 #size-cells = < 0 >; 20 #size-cells = < 0 >;
21 compatible = "nvidia,tegra20-emc"; 21 compatible = "nvidia,tegra20-emc";
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-mc.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-mc.txt
index c25a0a55151..866d93421eb 100644
--- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-mc.txt
+++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-mc.txt
@@ -8,7 +8,7 @@ Required properties:
8- interrupts : Should contain MC General interrupt. 8- interrupts : Should contain MC General interrupt.
9 9
10Example: 10Example:
11 mc { 11 memory-controller@0x7000f000 {
12 compatible = "nvidia,tegra20-mc"; 12 compatible = "nvidia,tegra20-mc";
13 reg = <0x7000f000 0x024 13 reg = <0x7000f000 0x024
14 0x7000f03c 0x3c4>; 14 0x7000f03c 0x3c4>;
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-mc.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-mc.txt
index e47e73f612f..bdf1a612422 100644
--- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-mc.txt
+++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-mc.txt
@@ -8,7 +8,7 @@ Required properties:
8- interrupts : Should contain MC General interrupt. 8- interrupts : Should contain MC General interrupt.
9 9
10Example: 10Example:
11 mc { 11 memory-controller {
12 compatible = "nvidia,tegra30-mc"; 12 compatible = "nvidia,tegra30-mc";
13 reg = <0x7000f000 0x010 13 reg = <0x7000f000 0x010
14 0x7000f03c 0x1b4 14 0x7000f03c 0x1b4
diff --git a/Documentation/devicetree/bindings/clock/calxeda.txt b/Documentation/devicetree/bindings/clock/calxeda.txt
new file mode 100644
index 00000000000..0a6ac1bdcda
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/calxeda.txt
@@ -0,0 +1,17 @@
1Device Tree Clock bindings for Calxeda highbank platform
2
3This binding uses the common clock binding[1].
4
5[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
6
7Required properties:
8- compatible : shall be one of the following:
9 "calxeda,hb-pll-clock" - for a PLL clock
10 "calxeda,hb-a9periph-clock" - The A9 peripheral clock divided from the
11 A9 clock.
12 "calxeda,hb-a9bus-clock" - The A9 bus clock divided from the A9 clock.
13 "calxeda,hb-emmc-clock" - Divided clock for MMC/SD controller.
14- reg : shall be the control register offset from SYSREGs base for the clock.
15- clocks : shall be the input parent clock phandle for the clock. This is
16 either an oscillator or a pll output.
17- #clock-cells : from common clock binding; shall be set to 0.
diff --git a/Documentation/devicetree/bindings/clock/clock-bindings.txt b/Documentation/devicetree/bindings/clock/clock-bindings.txt
new file mode 100644
index 00000000000..eb65d417f8c
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/clock-bindings.txt
@@ -0,0 +1,117 @@
1This binding is a work-in-progress, and are based on some experimental
2work by benh[1].
3
4Sources of clock signal can be represented by any node in the device
5tree. Those nodes are designated as clock providers. Clock consumer
6nodes use a phandle and clock specifier pair to connect clock provider
7outputs to clock inputs. Similar to the gpio specifiers, a clock
8specifier is an array of one more more cells identifying the clock
9output on a device. The length of a clock specifier is defined by the
10value of a #clock-cells property in the clock provider node.
11
12[1] http://patchwork.ozlabs.org/patch/31551/
13
14==Clock providers==
15
16Required properties:
17#clock-cells: Number of cells in a clock specifier; Typically 0 for nodes
18 with a single clock output and 1 for nodes with multiple
19 clock outputs.
20
21Optional properties:
22clock-output-names: Recommended to be a list of strings of clock output signal
23 names indexed by the first cell in the clock specifier.
24 However, the meaning of clock-output-names is domain
25 specific to the clock provider, and is only provided to
26 encourage using the same meaning for the majority of clock
27 providers. This format may not work for clock providers
28 using a complex clock specifier format. In those cases it
29 is recommended to omit this property and create a binding
30 specific names property.
31
32 Clock consumer nodes must never directly reference
33 the provider's clock-output-names property.
34
35For example:
36
37 oscillator {
38 #clock-cells = <1>;
39 clock-output-names = "ckil", "ckih";
40 };
41
42- this node defines a device with two clock outputs, the first named
43 "ckil" and the second named "ckih". Consumer nodes always reference
44 clocks by index. The names should reflect the clock output signal
45 names for the device.
46
47==Clock consumers==
48
49Required properties:
50clocks: List of phandle and clock specifier pairs, one pair
51 for each clock input to the device. Note: if the
52 clock provider specifies '0' for #clock-cells, then
53 only the phandle portion of the pair will appear.
54
55Optional properties:
56clock-names: List of clock input name strings sorted in the same
57 order as the clocks property. Consumers drivers
58 will use clock-names to match clock input names
59 with clocks specifiers.
60clock-ranges: Empty property indicating that child nodes can inherit named
61 clocks from this node. Useful for bus nodes to provide a
62 clock to their children.
63
64For example:
65
66 device {
67 clocks = <&osc 1>, <&ref 0>;
68 clock-names = "baud", "register";
69 };
70
71
72This represents a device with two clock inputs, named "baud" and "register".
73The baud clock is connected to output 1 of the &osc device, and the register
74clock is connected to output 0 of the &ref.
75
76==Example==
77
78 /* external oscillator */
79 osc: oscillator {
80 compatible = "fixed-clock";
81 #clock-cells = <1>;
82 clock-frequency = <32678>;
83 clock-output-names = "osc";
84 };
85
86 /* phase-locked-loop device, generates a higher frequency clock
87 * from the external oscillator reference */
88 pll: pll@4c000 {
89 compatible = "vendor,some-pll-interface"
90 #clock-cells = <1>;
91 clocks = <&osc 0>;
92 clock-names = "ref";
93 reg = <0x4c000 0x1000>;
94 clock-output-names = "pll", "pll-switched";
95 };
96
97 /* UART, using the low frequency oscillator for the baud clock,
98 * and the high frequency switched PLL output for register
99 * clocking */
100 uart@a000 {
101 compatible = "fsl,imx-uart";
102 reg = <0xa000 0x1000>;
103 interrupts = <33>;
104 clocks = <&osc 0>, <&pll 1>;
105 clock-names = "baud", "register";
106 };
107
108This DT fragment defines three devices: an external oscillator to provide a
109low-frequency reference clock, a PLL device to generate a higher frequency
110clock signal, and a UART.
111
112* The oscillator is fixed-frequency, and provides one clock output, named "osc".
113* The PLL is both a clock provider and a clock consumer. It uses the clock
114 signal generated by the external oscillator, and provides two output signals
115 ("pll" and "pll-switched").
116* The UART has its baud clock connected the external oscillator and its
117 register clock connected to the PLL clock (the "pll-switched" signal)
diff --git a/Documentation/devicetree/bindings/clock/fixed-clock.txt b/Documentation/devicetree/bindings/clock/fixed-clock.txt
new file mode 100644
index 00000000000..0b1fe782409
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/fixed-clock.txt
@@ -0,0 +1,21 @@
1Binding for simple fixed-rate clock sources.
2
3This binding uses the common clock binding[1].
4
5[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
6
7Required properties:
8- compatible : shall be "fixed-clock".
9- #clock-cells : from common clock binding; shall be set to 0.
10- clock-frequency : frequency of clock in Hz. Should be a single cell.
11
12Optional properties:
13- gpios : From common gpio binding; gpio connection to clock enable pin.
14- clock-output-names : From common clock binding.
15
16Example:
17 clock {
18 compatible = "fixed-clock";
19 #clock-cells = <0>;
20 clock-frequency = <1000000000>;
21 };
diff --git a/Documentation/devicetree/bindings/fb/mxsfb.txt b/Documentation/devicetree/bindings/fb/mxsfb.txt
new file mode 100644
index 00000000000..b41e5e52a67
--- /dev/null
+++ b/Documentation/devicetree/bindings/fb/mxsfb.txt
@@ -0,0 +1,19 @@
1* Freescale MXS LCD Interface (LCDIF)
2
3Required properties:
4- compatible: Should be "fsl,<chip>-lcdif". Supported chips include
5 imx23 and imx28.
6- reg: Address and length of the register set for lcdif
7- interrupts: Should contain lcdif interrupts
8
9Optional properties:
10- panel-enable-gpios : Should specify the gpio for panel enable
11
12Examples:
13
14lcdif@80030000 {
15 compatible = "fsl,imx28-lcdif";
16 reg = <0x80030000 2000>;
17 interrupts = <38 86>;
18 panel-enable-gpios = <&gpio3 30 0>;
19};
diff --git a/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt b/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt
index 4363ae4b3c1..dbd22e0df21 100644
--- a/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt
+++ b/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt
@@ -8,15 +8,25 @@ Required properties:
8 by low 16 pins and the second one is for high 16 pins. 8 by low 16 pins and the second one is for high 16 pins.
9- gpio-controller : Marks the device node as a gpio controller. 9- gpio-controller : Marks the device node as a gpio controller.
10- #gpio-cells : Should be two. The first cell is the pin number and 10- #gpio-cells : Should be two. The first cell is the pin number and
11 the second cell is used to specify optional parameters (currently 11 the second cell is used to specify the gpio polarity:
12 unused). 12 0 = active high
13 1 = active low
14- interrupt-controller: Marks the device node as an interrupt controller.
15- #interrupt-cells : Should be 2. The first cell is the GPIO number.
16 The second cell bits[3:0] is used to specify trigger type and level flags:
17 1 = low-to-high edge triggered.
18 2 = high-to-low edge triggered.
19 4 = active high level-sensitive.
20 8 = active low level-sensitive.
13 21
14Example: 22Example:
15 23
16gpio0: gpio@73f84000 { 24gpio0: gpio@73f84000 {
17 compatible = "fsl,imx51-gpio", "fsl,imx31-gpio"; 25 compatible = "fsl,imx51-gpio", "fsl,imx35-gpio";
18 reg = <0x73f84000 0x4000>; 26 reg = <0x73f84000 0x4000>;
19 interrupts = <50 51>; 27 interrupts = <50 51>;
20 gpio-controller; 28 gpio-controller;
21 #gpio-cells = <2>; 29 #gpio-cells = <2>;
30 interrupt-controller;
31 #interrupt-cells = <2>;
22}; 32};
diff --git a/Documentation/devicetree/bindings/gpio/gpio-mxs.txt b/Documentation/devicetree/bindings/gpio/gpio-mxs.txt
index 0c35673f7a3..1e677a47b83 100644
--- a/Documentation/devicetree/bindings/gpio/gpio-mxs.txt
+++ b/Documentation/devicetree/bindings/gpio/gpio-mxs.txt
@@ -13,8 +13,9 @@ Required properties for GPIO node:
13- interrupts : Should be the port interrupt shared by all 32 pins. 13- interrupts : Should be the port interrupt shared by all 32 pins.
14- gpio-controller : Marks the device node as a gpio controller. 14- gpio-controller : Marks the device node as a gpio controller.
15- #gpio-cells : Should be two. The first cell is the pin number and 15- #gpio-cells : Should be two. The first cell is the pin number and
16 the second cell is used to specify optional parameters (currently 16 the second cell is used to specify the gpio polarity:
17 unused). 17 0 = active high
18 1 = active low
18- interrupt-controller: Marks the device node as an interrupt controller. 19- interrupt-controller: Marks the device node as an interrupt controller.
19- #interrupt-cells : Should be 2. The first cell is the GPIO number. 20- #interrupt-cells : Should be 2. The first cell is the GPIO number.
20 The second cell bits[3:0] is used to specify trigger type and level flags: 21 The second cell bits[3:0] is used to specify trigger type and level flags:
diff --git a/Documentation/devicetree/bindings/gpio/gpio-nmk.txt b/Documentation/devicetree/bindings/gpio/gpio-nmk.txt
index ee87467ad8d..8315ac7780e 100644
--- a/Documentation/devicetree/bindings/gpio/gpio-nmk.txt
+++ b/Documentation/devicetree/bindings/gpio/gpio-nmk.txt
@@ -26,6 +26,6 @@ Example:
26 #gpio-cells = <2>; 26 #gpio-cells = <2>;
27 gpio-controller; 27 gpio-controller;
28 interrupt-controller; 28 interrupt-controller;
29 supports-sleepmode; 29 st,supports-sleepmode;
30 gpio-bank = <1>; 30 gpio-bank = <1>;
31 }; 31 };
diff --git a/Documentation/devicetree/bindings/gpio/gpio-samsung.txt b/Documentation/devicetree/bindings/gpio/gpio-samsung.txt
index 8f50fe5e6c4..5375625e8cd 100644
--- a/Documentation/devicetree/bindings/gpio/gpio-samsung.txt
+++ b/Documentation/devicetree/bindings/gpio/gpio-samsung.txt
@@ -11,14 +11,15 @@ Required properties:
11 <[phandle of the gpio controller node] 11 <[phandle of the gpio controller node]
12 [pin number within the gpio controller] 12 [pin number within the gpio controller]
13 [mux function] 13 [mux function]
14 [pull up/down] 14 [flags and pull up/down]
15 [drive strength]> 15 [drive strength]>
16 16
17 Values for gpio specifier: 17 Values for gpio specifier:
18 - Pin number: is a value between 0 to 7. 18 - Pin number: is a value between 0 to 7.
19 - Pull Up/Down: 0 - Pull Up/Down Disabled. 19 - Flags and Pull Up/Down: 0 - Pull Up/Down Disabled.
20 1 - Pull Down Enabled. 20 1 - Pull Down Enabled.
21 3 - Pull Up Enabled. 21 3 - Pull Up Enabled.
22 Bit 16 (0x00010000) - Input is active low.
22 - Drive Strength: 0 - 1x, 23 - Drive Strength: 0 - 1x,
23 1 - 3x, 24 1 - 3x,
24 2 - 2x, 25 2 - 2x,
diff --git a/Documentation/devicetree/bindings/gpio/led.txt b/Documentation/devicetree/bindings/gpio/led.txt
index fd2bd56e719..9bb308abd22 100644
--- a/Documentation/devicetree/bindings/gpio/led.txt
+++ b/Documentation/devicetree/bindings/gpio/led.txt
@@ -55,4 +55,4 @@ run-control {
55 gpios = <&mpc8572 7 0>; 55 gpios = <&mpc8572 7 0>;
56 default-state = "on"; 56 default-state = "on";
57 }; 57 };
58} 58};
diff --git a/Documentation/devicetree/bindings/gpio/gpio_nvidia.txt b/Documentation/devicetree/bindings/gpio/nvidia,tegra20-gpio.txt
index 023c9526e5f..023c9526e5f 100644
--- a/Documentation/devicetree/bindings/gpio/gpio_nvidia.txt
+++ b/Documentation/devicetree/bindings/gpio/nvidia,tegra20-gpio.txt
diff --git a/Documentation/devicetree/bindings/gpio/gpio_i2c.txt b/Documentation/devicetree/bindings/i2c/gpio-i2c.txt
index 4f8ec947c6b..4f8ec947c6b 100644
--- a/Documentation/devicetree/bindings/gpio/gpio_i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/gpio-i2c.txt
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pinctrl.txt b/Documentation/devicetree/bindings/i2c/i2c-mux-pinctrl.txt
new file mode 100644
index 00000000000..ae8af1694e9
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pinctrl.txt
@@ -0,0 +1,93 @@
1Pinctrl-based I2C Bus Mux
2
3This binding describes an I2C bus multiplexer that uses pin multiplexing to
4route the I2C signals, and represents the pin multiplexing configuration
5using the pinctrl device tree bindings.
6
7 +-----+ +-----+
8 | dev | | dev |
9 +------------------------+ +-----+ +-----+
10 | SoC | | |
11 | /----|------+--------+
12 | +---+ +------+ | child bus A, on first set of pins
13 | |I2C|---|Pinmux| |
14 | +---+ +------+ | child bus B, on second set of pins
15 | \----|------+--------+--------+
16 | | | | |
17 +------------------------+ +-----+ +-----+ +-----+
18 | dev | | dev | | dev |
19 +-----+ +-----+ +-----+
20
21Required properties:
22- compatible: i2c-mux-pinctrl
23- i2c-parent: The phandle of the I2C bus that this multiplexer's master-side
24 port is connected to.
25
26Also required are:
27
28* Standard pinctrl properties that specify the pin mux state for each child
29 bus. See ../pinctrl/pinctrl-bindings.txt.
30
31* Standard I2C mux properties. See mux.txt in this directory.
32
33* I2C child bus nodes. See mux.txt in this directory.
34
35For each named state defined in the pinctrl-names property, an I2C child bus
36will be created. I2C child bus numbers are assigned based on the index into
37the pinctrl-names property.
38
39The only exception is that no bus will be created for a state named "idle". If
40such a state is defined, it must be the last entry in pinctrl-names. For
41example:
42
43 pinctrl-names = "ddc", "pta", "idle" -> ddc = bus 0, pta = bus 1
44 pinctrl-names = "ddc", "idle", "pta" -> Invalid ("idle" not last)
45 pinctrl-names = "idle", "ddc", "pta" -> Invalid ("idle" not last)
46
47Whenever an access is made to a device on a child bus, the relevant pinctrl
48state will be programmed into hardware.
49
50If an idle state is defined, whenever an access is not being made to a device
51on a child bus, the idle pinctrl state will be programmed into hardware.
52
53If an idle state is not defined, the most recently used pinctrl state will be
54left programmed into hardware whenever no access is being made of a device on
55a child bus.
56
57Example:
58
59 i2cmux {
60 compatible = "i2c-mux-pinctrl";
61 #address-cells = <1>;
62 #size-cells = <0>;
63
64 i2c-parent = <&i2c1>;
65
66 pinctrl-names = "ddc", "pta", "idle";
67 pinctrl-0 = <&state_i2cmux_ddc>;
68 pinctrl-1 = <&state_i2cmux_pta>;
69 pinctrl-2 = <&state_i2cmux_idle>;
70
71 i2c@0 {
72 reg = <0>;
73 #address-cells = <1>;
74 #size-cells = <0>;
75
76 eeprom {
77 compatible = "eeprom";
78 reg = <0x50>;
79 };
80 };
81
82 i2c@1 {
83 reg = <1>;
84 #address-cells = <1>;
85 #size-cells = <0>;
86
87 eeprom {
88 compatible = "eeprom";
89 reg = <0x50>;
90 };
91 };
92 };
93
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mxs.txt b/Documentation/devicetree/bindings/i2c/i2c-mxs.txt
index 1bfc02de1b0..30ac3a0557f 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-mxs.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-mxs.txt
@@ -4,6 +4,8 @@ Required properties:
4- compatible: Should be "fsl,<chip>-i2c" 4- compatible: Should be "fsl,<chip>-i2c"
5- reg: Should contain registers location and length 5- reg: Should contain registers location and length
6- interrupts: Should contain ERROR and DMA interrupts 6- interrupts: Should contain ERROR and DMA interrupts
7- clock-frequency: Desired I2C bus clock frequency in Hz.
8 Only 100000Hz and 400000Hz modes are supported.
7 9
8Examples: 10Examples:
9 11
@@ -13,4 +15,5 @@ i2c0: i2c@80058000 {
13 compatible = "fsl,imx28-i2c"; 15 compatible = "fsl,imx28-i2c";
14 reg = <0x80058000 2000>; 16 reg = <0x80058000 2000>;
15 interrupts = <111 68>; 17 interrupts = <111 68>;
18 clock-frequency = <100000>;
16}; 19};
diff --git a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt b/Documentation/devicetree/bindings/i2c/i2c-ocores.txt
new file mode 100644
index 00000000000..c15781f4dc8
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/i2c-ocores.txt
@@ -0,0 +1,33 @@
1Device tree configuration for i2c-ocores
2
3Required properties:
4- compatible : "opencores,i2c-ocores"
5- reg : bus address start and address range size of device
6- interrupts : interrupt number
7- clock-frequency : frequency of bus clock in Hz
8- #address-cells : should be <1>
9- #size-cells : should be <0>
10
11Optional properties:
12- reg-shift : device register offsets are shifted by this value
13- reg-io-width : io register width in bytes (1, 2 or 4)
14- regstep : deprecated, use reg-shift above
15
16Example:
17
18 i2c0: ocores@a0000000 {
19 #address-cells = <1>;
20 #size-cells = <0>;
21 compatible = "opencores,i2c-ocores";
22 reg = <0xa0000000 0x8>;
23 interrupts = <10>;
24 clock-frequency = <20000000>;
25
26 reg-shift = <0>; /* 8 bit registers */
27 reg-io-width = <1>; /* 8 bit read/write */
28
29 dummy@60 {
30 compatible = "dummy";
31 reg = <0x60>;
32 };
33 };
diff --git a/Documentation/devicetree/bindings/i2c/mrvl-i2c.txt b/Documentation/devicetree/bindings/i2c/mrvl-i2c.txt
index b891ee21835..0f7945019f6 100644
--- a/Documentation/devicetree/bindings/i2c/mrvl-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/mrvl-i2c.txt
@@ -1,4 +1,4 @@
1* I2C 1* Marvell MMP I2C controller
2 2
3Required properties : 3Required properties :
4 4
@@ -32,3 +32,20 @@ Examples:
32 interrupts = <58>; 32 interrupts = <58>;
33 }; 33 };
34 34
35* Marvell MV64XXX I2C controller
36
37Required properties :
38
39 - reg : Offset and length of the register set for the device
40 - compatible : Should be "marvell,mv64xxx-i2c"
41 - interrupts : The interrupt number
42 - clock-frequency : Desired I2C bus clock frequency in Hz.
43
44Examples:
45
46 i2c@11000 {
47 compatible = "marvell,mv64xxx-i2c";
48 reg = <0x11000 0x20>;
49 interrupts = <29>;
50 clock-frequency = <100000>;
51 };
diff --git a/Documentation/devicetree/bindings/input/fsl-mma8450.txt b/Documentation/devicetree/bindings/input/fsl-mma8450.txt
index a00c94ccbde..0b96e5737d3 100644
--- a/Documentation/devicetree/bindings/input/fsl-mma8450.txt
+++ b/Documentation/devicetree/bindings/input/fsl-mma8450.txt
@@ -2,6 +2,7 @@
2 2
3Required properties: 3Required properties:
4- compatible : "fsl,mma8450". 4- compatible : "fsl,mma8450".
5- reg: the I2C address of MMA8450
5 6
6Example: 7Example:
7 8
diff --git a/Documentation/devicetree/bindings/input/lpc32xx-key.txt b/Documentation/devicetree/bindings/input/lpc32xx-key.txt
new file mode 100644
index 00000000000..31afd5014c4
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/lpc32xx-key.txt
@@ -0,0 +1,28 @@
1NXP LPC32xx Key Scan Interface
2
3Required Properties:
4- compatible: Should be "nxp,lpc3220-key"
5- reg: Physical base address of the controller and length of memory mapped
6 region.
7- interrupts: The interrupt number to the cpu.
8- keypad,num-rows: Number of rows and columns, e.g. 1: 1x1, 6: 6x6
9- keypad,num-columns: Must be equal to keypad,num-rows since LPC32xx only
10 supports square matrices
11- nxp,debounce-delay-ms: Debounce delay in ms
12- nxp,scan-delay-ms: Repeated scan period in ms
13- linux,keymap: the key-code to be reported when the key is pressed
14 and released, see also
15 Documentation/devicetree/bindings/input/matrix-keymap.txt
16
17Example:
18
19 key@40050000 {
20 compatible = "nxp,lpc3220-key";
21 reg = <0x40050000 0x1000>;
22 interrupts = <54 0>;
23 keypad,num-rows = <1>;
24 keypad,num-columns = <1>;
25 nxp,debounce-delay-ms = <3>;
26 nxp,scan-delay-ms = <34>;
27 linux,keymap = <0x00000002>;
28 };
diff --git a/Documentation/devicetree/bindings/input/tegra-kbc.txt b/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt
index 72683be6de3..72683be6de3 100644
--- a/Documentation/devicetree/bindings/input/tegra-kbc.txt
+++ b/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt
diff --git a/Documentation/devicetree/bindings/input/omap-keypad.txt b/Documentation/devicetree/bindings/input/omap-keypad.txt
new file mode 100644
index 00000000000..f2fa5e10493
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/omap-keypad.txt
@@ -0,0 +1,31 @@
1* TI's Keypad Controller device tree bindings
2
3TI's Keypad controller is used to interface a SoC with a matrix-type
4keypad device. The keypad controller supports multiple row and column lines.
5A key can be placed at each intersection of a unique row and a unique column.
6The keypad controller can sense a key-press and key-release and report the
7event using a interrupt to the cpu.
8
9Required SoC Specific Properties:
10- compatible: should be one of the following
11 - "ti,omap4-keypad": For controllers compatible with omap4 keypad
12 controller.
13
14Required Board Specific Properties, in addition to those specified by
15the shared matrix-keyboard bindings:
16- keypad,num-rows: Number of row lines connected to the keypad
17 controller.
18
19- keypad,num-columns: Number of column lines connected to the
20 keypad controller.
21
22Optional Properties specific to linux:
23- linux,keypad-no-autorepeat: do no enable autorepeat feature.
24
25Example:
26 keypad@4ae1c000{
27 compatible = "ti,omap4-keypad";
28 keypad,num-rows = <2>;
29 keypad,num-columns = <8>;
30 linux,keypad-no-autorepeat;
31 };
diff --git a/Documentation/devicetree/bindings/input/twl6040-vibra.txt b/Documentation/devicetree/bindings/input/twl6040-vibra.txt
deleted file mode 100644
index 5b1918b818f..00000000000
--- a/Documentation/devicetree/bindings/input/twl6040-vibra.txt
+++ /dev/null
@@ -1,37 +0,0 @@
1Vibra driver for the twl6040 family
2
3The vibra driver is a child of the twl6040 MFD dirver.
4Documentation/devicetree/bindings/mfd/twl6040.txt
5
6Required properties:
7- compatible : Must be "ti,twl6040-vibra";
8- interrupts: 4, Vibra overcurrent interrupt
9- vddvibl-supply: Regulator supplying the left vibra motor
10- vddvibr-supply: Regulator supplying the right vibra motor
11- vibldrv_res: Board specific left driver resistance
12- vibrdrv_res: Board specific right driver resistance
13- viblmotor_res: Board specific left motor resistance
14- vibrmotor_res: Board specific right motor resistance
15
16Optional properties:
17- vddvibl_uV: If the vddvibl default voltage need to be changed
18- vddvibr_uV: If the vddvibr default voltage need to be changed
19
20Example:
21/*
22 * 8-channel high quality low-power audio codec
23 * http://www.ti.com/lit/ds/symlink/twl6040.pdf
24 */
25twl6040: twl6040@4b {
26 ...
27 twl6040_vibra: twl6040@1 {
28 compatible = "ti,twl6040-vibra";
29 interrupts = <4>;
30 vddvibl-supply = <&vbat>;
31 vddvibr-supply = <&vbat>;
32 vibldrv_res = <8>;
33 vibrdrv_res = <3>;
34 viblmotor_res = <10>;
35 vibrmotor_res = <10>;
36 };
37};
diff --git a/Documentation/devicetree/bindings/iommu/nvidia,tegra30-smmu.txt b/Documentation/devicetree/bindings/iommu/nvidia,tegra30-smmu.txt
new file mode 100644
index 00000000000..89fb5434b73
--- /dev/null
+++ b/Documentation/devicetree/bindings/iommu/nvidia,tegra30-smmu.txt
@@ -0,0 +1,21 @@
1NVIDIA Tegra 30 IOMMU H/W, SMMU (System Memory Management Unit)
2
3Required properties:
4- compatible : "nvidia,tegra30-smmu"
5- reg : Should contain 3 register banks(address and length) for each
6 of the SMMU register blocks.
7- interrupts : Should contain MC General interrupt.
8- nvidia,#asids : # of ASIDs
9- dma-window : IOVA start address and length.
10- nvidia,ahb : phandle to the ahb bus connected to SMMU.
11
12Example:
13 smmu {
14 compatible = "nvidia,tegra30-smmu";
15 reg = <0x7000f010 0x02c
16 0x7000f1f0 0x010
17 0x7000f228 0x05c>;
18 nvidia,#asids = <4>; /* # of ASIDs */
19 dma-window = <0 0x40000000>; /* IOVA start & length */
20 nvidia,ahb = <&ahb>;
21 };
diff --git a/Documentation/devicetree/bindings/mfd/mc13xxx.txt b/Documentation/devicetree/bindings/mfd/mc13xxx.txt
index 19f6af47a79..baf07987ae6 100644
--- a/Documentation/devicetree/bindings/mfd/mc13xxx.txt
+++ b/Documentation/devicetree/bindings/mfd/mc13xxx.txt
@@ -46,8 +46,8 @@ Examples:
46 46
47ecspi@70010000 { /* ECSPI1 */ 47ecspi@70010000 { /* ECSPI1 */
48 fsl,spi-num-chipselects = <2>; 48 fsl,spi-num-chipselects = <2>;
49 cs-gpios = <&gpio3 24 0>, /* GPIO4_24 */ 49 cs-gpios = <&gpio4 24 0>, /* GPIO4_24 */
50 <&gpio3 25 0>; /* GPIO4_25 */ 50 <&gpio4 25 0>; /* GPIO4_25 */
51 status = "okay"; 51 status = "okay";
52 52
53 pmic: mc13892@0 { 53 pmic: mc13892@0 {
diff --git a/Documentation/devicetree/bindings/mfd/tps65910.txt b/Documentation/devicetree/bindings/mfd/tps65910.txt
index 645f5eaadb3..d2802d4717b 100644
--- a/Documentation/devicetree/bindings/mfd/tps65910.txt
+++ b/Documentation/devicetree/bindings/mfd/tps65910.txt
@@ -17,18 +17,46 @@ Required properties:
17 device need to be present. The definition for each of these nodes is defined 17 device need to be present. The definition for each of these nodes is defined
18 using the standard binding for regulators found at 18 using the standard binding for regulators found at
19 Documentation/devicetree/bindings/regulator/regulator.txt. 19 Documentation/devicetree/bindings/regulator/regulator.txt.
20 The regulator is matched with the regulator-compatible.
20 21
21 The valid names for regulators are: 22 The valid regulator-compatible values are:
22 tps65910: vrtc, vio, vdd1, vdd2, vdd3, vdig1, vdig2, vpll, vdac, vaux1, 23 tps65910: vrtc, vio, vdd1, vdd2, vdd3, vdig1, vdig2, vpll, vdac, vaux1,
23 vaux2, vaux33, vmmc 24 vaux2, vaux33, vmmc
24 tps65911: vrtc, vio, vdd1, vdd3, vddctrl, ldo1, ldo2, ldo3, ldo4, ldo5, 25 tps65911: vrtc, vio, vdd1, vdd3, vddctrl, ldo1, ldo2, ldo3, ldo4, ldo5,
25 ldo6, ldo7, ldo8 26 ldo6, ldo7, ldo8
26 27
28- xxx-supply: Input voltage supply regulator.
29 These entries are require if regulators are enabled for a device. Missing of these
30 properties can cause the regulator registration fails.
31 If some of input supply is powered through battery or always-on supply then
32 also it is require to have these parameters with proper node handle of always
33 on power supply.
34 tps65910:
35 vcc1-supply: VDD1 input.
36 vcc2-supply: VDD2 input.
37 vcc3-supply: VAUX33 and VMMC input.
38 vcc4-supply: VAUX1 and VAUX2 input.
39 vcc5-supply: VPLL and VDAC input.
40 vcc6-supply: VDIG1 and VDIG2 input.
41 vcc7-supply: VRTC input.
42 vccio-supply: VIO input.
43 tps65911:
44 vcc1-supply: VDD1 input.
45 vcc2-supply: VDD2 input.
46 vcc3-supply: LDO6, LDO7 and LDO8 input.
47 vcc4-supply: LDO5 input.
48 vcc5-supply: LDO3 and LDO4 input.
49 vcc6-supply: LDO1 and LDO2 input.
50 vcc7-supply: VRTC input.
51 vccio-supply: VIO input.
52
27Optional properties: 53Optional properties:
28- ti,vmbch-threshold: (tps65911) main battery charged threshold 54- ti,vmbch-threshold: (tps65911) main battery charged threshold
29 comparator. (see VMBCH_VSEL in TPS65910 datasheet) 55 comparator. (see VMBCH_VSEL in TPS65910 datasheet)
30- ti,vmbch2-threshold: (tps65911) main battery discharged threshold 56- ti,vmbch2-threshold: (tps65911) main battery discharged threshold
31 comparator. (see VMBCH_VSEL in TPS65910 datasheet) 57 comparator. (see VMBCH_VSEL in TPS65910 datasheet)
58- ti,en-ck32k-xtal: enable external 32-kHz crystal oscillator (see CK32K_CTRL
59 in TPS6591X datasheet)
32- ti,en-gpio-sleep: enable sleep control for gpios 60- ti,en-gpio-sleep: enable sleep control for gpios
33 There should be 9 entries here, one for each gpio. 61 There should be 9 entries here, one for each gpio.
34 62
@@ -56,74 +84,110 @@ Example:
56 84
57 ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>; 85 ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>;
58 86
87 vcc1-supply = <&reg_parent>;
88 vcc2-supply = <&some_reg>;
89 vcc3-supply = <...>;
90 vcc4-supply = <...>;
91 vcc5-supply = <...>;
92 vcc6-supply = <...>;
93 vcc7-supply = <...>;
94 vccio-supply = <...>;
95
59 regulators { 96 regulators {
60 vdd1_reg: vdd1 { 97 #address-cells = <1>;
98 #size-cells = <0>;
99
100 vdd1_reg: regulator@0 {
101 regulator-compatible = "vdd1";
102 reg = <0>;
61 regulator-min-microvolt = < 600000>; 103 regulator-min-microvolt = < 600000>;
62 regulator-max-microvolt = <1500000>; 104 regulator-max-microvolt = <1500000>;
63 regulator-always-on; 105 regulator-always-on;
64 regulator-boot-on; 106 regulator-boot-on;
65 ti,regulator-ext-sleep-control = <0>; 107 ti,regulator-ext-sleep-control = <0>;
66 }; 108 };
67 vdd2_reg: vdd2 { 109 vdd2_reg: regulator@1 {
110 regulator-compatible = "vdd2";
111 reg = <1>;
68 regulator-min-microvolt = < 600000>; 112 regulator-min-microvolt = < 600000>;
69 regulator-max-microvolt = <1500000>; 113 regulator-max-microvolt = <1500000>;
70 regulator-always-on; 114 regulator-always-on;
71 regulator-boot-on; 115 regulator-boot-on;
72 ti,regulator-ext-sleep-control = <4>; 116 ti,regulator-ext-sleep-control = <4>;
73 }; 117 };
74 vddctrl_reg: vddctrl { 118 vddctrl_reg: regulator@2 {
119 regulator-compatible = "vddctrl";
120 reg = <2>;
75 regulator-min-microvolt = < 600000>; 121 regulator-min-microvolt = < 600000>;
76 regulator-max-microvolt = <1400000>; 122 regulator-max-microvolt = <1400000>;
77 regulator-always-on; 123 regulator-always-on;
78 regulator-boot-on; 124 regulator-boot-on;
79 ti,regulator-ext-sleep-control = <0>; 125 ti,regulator-ext-sleep-control = <0>;
80 }; 126 };
81 vio_reg: vio { 127 vio_reg: regulator@3 {
128 regulator-compatible = "vio";
129 reg = <3>;
82 regulator-min-microvolt = <1500000>; 130 regulator-min-microvolt = <1500000>;
83 regulator-max-microvolt = <1800000>; 131 regulator-max-microvolt = <1800000>;
84 regulator-always-on; 132 regulator-always-on;
85 regulator-boot-on; 133 regulator-boot-on;
86 ti,regulator-ext-sleep-control = <1>; 134 ti,regulator-ext-sleep-control = <1>;
87 }; 135 };
88 ldo1_reg: ldo1 { 136 ldo1_reg: regulator@4 {
137 regulator-compatible = "ldo1";
138 reg = <4>;
89 regulator-min-microvolt = <1000000>; 139 regulator-min-microvolt = <1000000>;
90 regulator-max-microvolt = <3300000>; 140 regulator-max-microvolt = <3300000>;
91 ti,regulator-ext-sleep-control = <0>; 141 ti,regulator-ext-sleep-control = <0>;
92 }; 142 };
93 ldo2_reg: ldo2 { 143 ldo2_reg: regulator@5 {
144 regulator-compatible = "ldo2";
145 reg = <5>;
94 regulator-min-microvolt = <1050000>; 146 regulator-min-microvolt = <1050000>;
95 regulator-max-microvolt = <1050000>; 147 regulator-max-microvolt = <1050000>;
96 ti,regulator-ext-sleep-control = <0>; 148 ti,regulator-ext-sleep-control = <0>;
97 }; 149 };
98 ldo3_reg: ldo3 { 150 ldo3_reg: regulator@6 {
151 regulator-compatible = "ldo3";
152 reg = <6>;
99 regulator-min-microvolt = <1000000>; 153 regulator-min-microvolt = <1000000>;
100 regulator-max-microvolt = <3300000>; 154 regulator-max-microvolt = <3300000>;
101 ti,regulator-ext-sleep-control = <0>; 155 ti,regulator-ext-sleep-control = <0>;
102 }; 156 };
103 ldo4_reg: ldo4 { 157 ldo4_reg: regulator@7 {
158 regulator-compatible = "ldo4";
159 reg = <7>;
104 regulator-min-microvolt = <1000000>; 160 regulator-min-microvolt = <1000000>;
105 regulator-max-microvolt = <3300000>; 161 regulator-max-microvolt = <3300000>;
106 regulator-always-on; 162 regulator-always-on;
107 ti,regulator-ext-sleep-control = <0>; 163 ti,regulator-ext-sleep-control = <0>;
108 }; 164 };
109 ldo5_reg: ldo5 { 165 ldo5_reg: regulator@8 {
166 regulator-compatible = "ldo5";
167 reg = <8>;
110 regulator-min-microvolt = <1000000>; 168 regulator-min-microvolt = <1000000>;
111 regulator-max-microvolt = <3300000>; 169 regulator-max-microvolt = <3300000>;
112 ti,regulator-ext-sleep-control = <0>; 170 ti,regulator-ext-sleep-control = <0>;
113 }; 171 };
114 ldo6_reg: ldo6 { 172 ldo6_reg: regulator@9 {
173 regulator-compatible = "ldo6";
174 reg = <9>;
115 regulator-min-microvolt = <1200000>; 175 regulator-min-microvolt = <1200000>;
116 regulator-max-microvolt = <1200000>; 176 regulator-max-microvolt = <1200000>;
117 ti,regulator-ext-sleep-control = <0>; 177 ti,regulator-ext-sleep-control = <0>;
118 }; 178 };
119 ldo7_reg: ldo7 { 179 ldo7_reg: regulator@10 {
180 regulator-compatible = "ldo7";
181 reg = <10>;
120 regulator-min-microvolt = <1200000>; 182 regulator-min-microvolt = <1200000>;
121 regulator-max-microvolt = <1200000>; 183 regulator-max-microvolt = <1200000>;
122 regulator-always-on; 184 regulator-always-on;
123 regulator-boot-on; 185 regulator-boot-on;
124 ti,regulator-ext-sleep-control = <1>; 186 ti,regulator-ext-sleep-control = <1>;
125 }; 187 };
126 ldo8_reg: ldo8 { 188 ldo8_reg: regulator@11 {
189 regulator-compatible = "ldo8";
190 reg = <11>;
127 regulator-min-microvolt = <1000000>; 191 regulator-min-microvolt = <1000000>;
128 regulator-max-microvolt = <3300000>; 192 regulator-max-microvolt = <3300000>;
129 regulator-always-on; 193 regulator-always-on;
diff --git a/Documentation/devicetree/bindings/misc/at25.txt b/Documentation/devicetree/bindings/misc/at25.txt
new file mode 100644
index 00000000000..ab3c327929d
--- /dev/null
+++ b/Documentation/devicetree/bindings/misc/at25.txt
@@ -0,0 +1,21 @@
1Atmel AT25 eeprom
2
3Required properties:
4- compatible : "atmel,at25".
5- reg : chip select number
6- spi-max-frequency : max spi frequency to use
7
8- at25,byte-len : total eeprom size in bytes
9- at25,addr-mode : addr-mode flags, as defined in include/linux/spi/eeprom.h
10- at25,page-size : size of the eeprom page
11
12Examples:
13at25@0 {
14 compatible = "atmel,at25";
15 reg = <0>
16 spi-max-frequency = <5000000>;
17
18 at25,byte-len = <0x8000>;
19 at25,addr-mode = <2>;
20 at25,page-size = <64>;
21};
diff --git a/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt b/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt
index 0d93b4b0e0e..bd9be0b5bc2 100644
--- a/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt
+++ b/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt
@@ -3,21 +3,22 @@
3The Enhanced Secure Digital Host Controller provides an interface 3The Enhanced Secure Digital Host Controller provides an interface
4for MMC, SD, and SDIO types of memory cards. 4for MMC, SD, and SDIO types of memory cards.
5 5
6This file documents differences between the core properties described
7by mmc.txt and the properties used by the sdhci-esdhc driver.
8
6Required properties: 9Required properties:
7 - compatible : should be
8 "fsl,<chip>-esdhc", "fsl,esdhc"
9 - reg : should contain eSDHC registers location and length.
10 - interrupts : should contain eSDHC interrupt.
11 - interrupt-parent : interrupt source phandle. 10 - interrupt-parent : interrupt source phandle.
12 - clock-frequency : specifies eSDHC base clock frequency. 11 - clock-frequency : specifies eSDHC base clock frequency.
13 - sdhci,wp-inverted : (optional) specifies that eSDHC controller 12
14 reports inverted write-protect state; New devices should use 13Optional properties:
15 the generic "wp-inverted" property. 14 - sdhci,wp-inverted : specifies that eSDHC controller reports
16 - sdhci,1-bit-only : (optional) specifies that a controller can 15 inverted write-protect state; New devices should use the generic
17 only handle 1-bit data transfers. New devices should use the 16 "wp-inverted" property.
18 generic "bus-width = <1>" property. 17 - sdhci,1-bit-only : specifies that a controller can only handle
19 - sdhci,auto-cmd12: (optional) specifies that a controller can 18 1-bit data transfers. New devices should use the generic
20 only handle auto CMD12. 19 "bus-width = <1>" property.
20 - sdhci,auto-cmd12: specifies that a controller can only handle auto
21 CMD12.
21 22
22Example: 23Example:
23 24
diff --git a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt
index c7e404b3ef0..70cd49b1caa 100644
--- a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt
+++ b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt
@@ -3,17 +3,15 @@
3The Enhanced Secure Digital Host Controller on Freescale i.MX family 3The Enhanced Secure Digital Host Controller on Freescale i.MX family
4provides an interface for MMC, SD, and SDIO types of memory cards. 4provides an interface for MMC, SD, and SDIO types of memory cards.
5 5
6This file documents differences between the core properties described
7by mmc.txt and the properties used by the sdhci-esdhc-imx driver.
8
6Required properties: 9Required properties:
7- compatible : Should be "fsl,<chip>-esdhc" 10- compatible : Should be "fsl,<chip>-esdhc"
8- reg : Should contain eSDHC registers location and length
9- interrupts : Should contain eSDHC interrupt
10 11
11Optional properties: 12Optional properties:
12- non-removable : Indicate the card is wired to host permanently
13- fsl,cd-internal : Indicate to use controller internal card detection 13- fsl,cd-internal : Indicate to use controller internal card detection
14- fsl,wp-internal : Indicate to use controller internal write protection 14- fsl,wp-internal : Indicate to use controller internal write protection
15- cd-gpios : Specify GPIOs for card detection
16- wp-gpios : Specify GPIOs for write protection
17 15
18Examples: 16Examples:
19 17
@@ -29,6 +27,6 @@ esdhc@70008000 {
29 compatible = "fsl,imx51-esdhc"; 27 compatible = "fsl,imx51-esdhc";
30 reg = <0x70008000 0x4000>; 28 reg = <0x70008000 0x4000>;
31 interrupts = <2>; 29 interrupts = <2>;
32 cd-gpios = <&gpio0 6 0>; /* GPIO1_6 */ 30 cd-gpios = <&gpio1 6 0>; /* GPIO1_6 */
33 wp-gpios = <&gpio0 5 0>; /* GPIO1_5 */ 31 wp-gpios = <&gpio1 5 0>; /* GPIO1_5 */
34}; 32};
diff --git a/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt b/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt
index d64aea5a420..0e5e2ec4001 100644
--- a/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt
+++ b/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt
@@ -1,8 +1,9 @@
1MMC/SD/SDIO slot directly connected to a SPI bus 1MMC/SD/SDIO slot directly connected to a SPI bus
2 2
3This file documents differences between the core properties described
4by mmc.txt and the properties used by the mmc_spi driver.
5
3Required properties: 6Required properties:
4- compatible : should be "mmc-spi-slot".
5- reg : should specify SPI address (chip-select number).
6- spi-max-frequency : maximum frequency for this device (Hz). 7- spi-max-frequency : maximum frequency for this device (Hz).
7- voltage-ranges : two cells are required, first cell specifies minimum 8- voltage-ranges : two cells are required, first cell specifies minimum
8 slot voltage (mV), second cell specifies maximum slot voltage (mV). 9 slot voltage (mV), second cell specifies maximum slot voltage (mV).
@@ -11,8 +12,7 @@ Required properties:
11Optional properties: 12Optional properties:
12- gpios : may specify GPIOs in this order: Card-Detect GPIO, 13- gpios : may specify GPIOs in this order: Card-Detect GPIO,
13 Write-Protect GPIO. Note that this does not follow the 14 Write-Protect GPIO. Note that this does not follow the
14 binding from mmc.txt, for historic reasons. 15 binding from mmc.txt, for historical reasons.
15- interrupts : the interrupt of a card detect interrupt.
16- interrupt-parent : the phandle for the interrupt controller that 16- interrupt-parent : the phandle for the interrupt controller that
17 services interrupts for this device. 17 services interrupts for this device.
18 18
diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt
index 6e70dcde0a7..8a6811f4a02 100644
--- a/Documentation/devicetree/bindings/mmc/mmc.txt
+++ b/Documentation/devicetree/bindings/mmc/mmc.txt
@@ -2,13 +2,17 @@ These properties are common to multiple MMC host controllers. Any host
2that requires the respective functionality should implement them using 2that requires the respective functionality should implement them using
3these definitions. 3these definitions.
4 4
5Interpreted by the OF core:
6- reg: Registers location and length.
7- interrupts: Interrupts used by the MMC controller.
8
5Required properties: 9Required properties:
6- bus-width: Number of data lines, can be <1>, <4>, or <8> 10- bus-width: Number of data lines, can be <1>, <4>, or <8>
7 11
8Optional properties: 12Optional properties:
9- cd-gpios : Specify GPIOs for card detection, see gpio binding 13- cd-gpios: Specify GPIOs for card detection, see gpio binding
10- wp-gpios : Specify GPIOs for write protection, see gpio binding 14- wp-gpios: Specify GPIOs for write protection, see gpio binding
11- cd-inverted: when present, polarity on the wp gpio line is inverted 15- cd-inverted: when present, polarity on the cd gpio line is inverted
12- wp-inverted: when present, polarity on the wp gpio line is inverted 16- wp-inverted: when present, polarity on the wp gpio line is inverted
13- non-removable: non-removable slot (like eMMC) 17- non-removable: non-removable slot (like eMMC)
14- max-frequency: maximum operating clock frequency 18- max-frequency: maximum operating clock frequency
diff --git a/Documentation/devicetree/bindings/mmc/mmci.txt b/Documentation/devicetree/bindings/mmc/mmci.txt
index 14a81d52611..2b584cae352 100644
--- a/Documentation/devicetree/bindings/mmc/mmci.txt
+++ b/Documentation/devicetree/bindings/mmc/mmci.txt
@@ -1,19 +1,15 @@
1* ARM PrimeCell MultiMedia Card Interface (MMCI) PL180/1 1* ARM PrimeCell MultiMedia Card Interface (MMCI) PL180/1
2 2
3The ARM PrimeCell MMCI PL180 and PL181 provides and interface for 3The ARM PrimeCell MMCI PL180 and PL181 provides an interface for
4reading and writing to MultiMedia and SD cards alike. 4reading and writing to MultiMedia and SD cards alike.
5 5
6This file documents differences between the core properties described
7by mmc.txt and the properties used by the mmci driver.
8
6Required properties: 9Required properties:
7- compatible : contains "arm,pl18x", "arm,primecell". 10- compatible : contains "arm,pl18x", "arm,primecell".
8- reg : contains pl18x registers and length.
9- interrupts : contains the device IRQ(s).
10- arm,primecell-periphid : contains the PrimeCell Peripheral ID. 11- arm,primecell-periphid : contains the PrimeCell Peripheral ID.
11 12
12Optional properties: 13Optional properties:
13- wp-gpios : contains any write protect (ro) gpios
14- cd-gpios : contains any card detection gpios
15- cd-inverted : indicates whether the cd gpio is inverted
16- max-frequency : contains the maximum operating frequency
17- bus-width : number of data lines, can be <1>, <4>, or <8>
18- mmc-cap-mmc-highspeed : indicates whether MMC is high speed capable 14- mmc-cap-mmc-highspeed : indicates whether MMC is high speed capable
19- mmc-cap-sd-highspeed : indicates whether SD is high speed capable 15- mmc-cap-sd-highspeed : indicates whether SD is high speed capable
diff --git a/Documentation/devicetree/bindings/mmc/mxs-mmc.txt b/Documentation/devicetree/bindings/mmc/mxs-mmc.txt
index 14d870a9e3d..54949f6faed 100644
--- a/Documentation/devicetree/bindings/mmc/mxs-mmc.txt
+++ b/Documentation/devicetree/bindings/mmc/mxs-mmc.txt
@@ -3,16 +3,14 @@
3The Freescale MXS Synchronous Serial Ports (SSP) can act as a MMC controller 3The Freescale MXS Synchronous Serial Ports (SSP) can act as a MMC controller
4to support MMC, SD, and SDIO types of memory cards. 4to support MMC, SD, and SDIO types of memory cards.
5 5
6This file documents differences between the core properties in mmc.txt
7and the properties used by the mxsmmc driver.
8
6Required properties: 9Required properties:
7- compatible: Should be "fsl,<chip>-mmc". The supported chips include 10- compatible: Should be "fsl,<chip>-mmc". The supported chips include
8 imx23 and imx28. 11 imx23 and imx28.
9- reg: Should contain registers location and length
10- interrupts: Should contain ERROR and DMA interrupts 12- interrupts: Should contain ERROR and DMA interrupts
11- fsl,ssp-dma-channel: APBH DMA channel for the SSP 13- fsl,ssp-dma-channel: APBH DMA channel for the SSP
12- bus-width: Number of data lines, can be <1>, <4>, or <8>
13
14Optional properties:
15- wp-gpios: Specify GPIOs for write protection
16 14
17Examples: 15Examples:
18 16
diff --git a/Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
index f77c3031607..c6d7b11db9e 100644
--- a/Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt
+++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
@@ -3,15 +3,13 @@
3This controller on Tegra family SoCs provides an interface for MMC, SD, 3This controller on Tegra family SoCs provides an interface for MMC, SD,
4and SDIO types of memory cards. 4and SDIO types of memory cards.
5 5
6This file documents differences between the core properties described
7by mmc.txt and the properties used by the sdhci-tegra driver.
8
6Required properties: 9Required properties:
7- compatible : Should be "nvidia,<chip>-sdhci" 10- compatible : Should be "nvidia,<chip>-sdhci"
8- reg : Should contain SD/MMC registers location and length
9- interrupts : Should contain SD/MMC interrupt
10- bus-width : Number of data lines, can be <1>, <4>, or <8>
11 11
12Optional properties: 12Optional properties:
13- cd-gpios : Specify GPIOs for card detection
14- wp-gpios : Specify GPIOs for write protection
15- power-gpios : Specify GPIOs for power control 13- power-gpios : Specify GPIOs for power control
16 14
17Example: 15Example:
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt b/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt
new file mode 100644
index 00000000000..dbe98a3c183
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt
@@ -0,0 +1,21 @@
1* Marvell sdhci-pxa v2/v3 controller
2
3This file documents differences between the core properties in mmc.txt
4and the properties used by the sdhci-pxav2 and sdhci-pxav3 drivers.
5
6Required properties:
7- compatible: Should be "mrvl,pxav2-mmc" or "mrvl,pxav3-mmc".
8
9Optional properties:
10- mrvl,clk-delay-cycles: Specify a number of cycles to delay for tuning.
11
12Example:
13
14sdhci@d4280800 {
15 compatible = "mrvl,pxav3-mmc";
16 reg = <0xd4280800 0x800>;
17 bus-width = <8>;
18 interrupts = <27>;
19 non-removable;
20 mrvl,clk-delay-cycles = <31>;
21};
diff --git a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
index 8a53958c9a9..be76a23b34c 100644
--- a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
+++ b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
@@ -3,21 +3,20 @@
3The Highspeed MMC Host Controller on TI OMAP family 3The Highspeed MMC Host Controller on TI OMAP family
4provides an interface for MMC, SD, and SDIO types of memory cards. 4provides an interface for MMC, SD, and SDIO types of memory cards.
5 5
6This file documents differences between the core properties described
7by mmc.txt and the properties used by the omap_hsmmc driver.
8
6Required properties: 9Required properties:
7- compatible: 10- compatible:
8 Should be "ti,omap2-hsmmc", for OMAP2 controllers 11 Should be "ti,omap2-hsmmc", for OMAP2 controllers
9 Should be "ti,omap3-hsmmc", for OMAP3 controllers 12 Should be "ti,omap3-hsmmc", for OMAP3 controllers
10 Should be "ti,omap4-hsmmc", for OMAP4 controllers 13 Should be "ti,omap4-hsmmc", for OMAP4 controllers
11- ti,hwmods: Must be "mmc<n>", n is controller instance starting 1 14- ti,hwmods: Must be "mmc<n>", n is controller instance starting 1
12- reg : should contain hsmmc registers location and length
13 15
14Optional properties: 16Optional properties:
15ti,dual-volt: boolean, supports dual voltage cards 17ti,dual-volt: boolean, supports dual voltage cards
16<supply-name>-supply: phandle to the regulator device tree node 18<supply-name>-supply: phandle to the regulator device tree node
17"supply-name" examples are "vmmc", "vmmc_aux" etc 19"supply-name" examples are "vmmc", "vmmc_aux" etc
18bus-width: Number of data lines, default assumed is 1 if the property is missing.
19cd-gpios: GPIOs for card detection
20wp-gpios: GPIOs for write protection
21ti,non-removable: non-removable slot (like eMMC) 20ti,non-removable: non-removable slot (like eMMC)
22ti,needs-special-reset: Requires a special softreset sequence 21ti,needs-special-reset: Requires a special softreset sequence
23 22
diff --git a/Documentation/devicetree/bindings/mtd/orion-nand.txt b/Documentation/devicetree/bindings/mtd/orion-nand.txt
index b2356b7d2fa..2d6ab660e60 100644
--- a/Documentation/devicetree/bindings/mtd/orion-nand.txt
+++ b/Documentation/devicetree/bindings/mtd/orion-nand.txt
@@ -1,7 +1,7 @@
1NAND support for Marvell Orion SoC platforms 1NAND support for Marvell Orion SoC platforms
2 2
3Required properties: 3Required properties:
4- compatible : "mrvl,orion-nand". 4- compatible : "marvell,orion-nand".
5- reg : Base physical address of the NAND and length of memory mapped 5- reg : Base physical address of the NAND and length of memory mapped
6 region 6 region
7 7
@@ -24,7 +24,7 @@ nand@f4000000 {
24 ale = <1>; 24 ale = <1>;
25 bank-width = <1>; 25 bank-width = <1>;
26 chip-delay = <25>; 26 chip-delay = <25>;
27 compatible = "mrvl,orion-nand"; 27 compatible = "marvell,orion-nand";
28 reg = <0xf4000000 0x400>; 28 reg = <0xf4000000 0x400>;
29 29
30 partition@0 { 30 partition@0 {
diff --git a/Documentation/devicetree/bindings/mtd/partition.txt b/Documentation/devicetree/bindings/mtd/partition.txt
index f114ce1657c..6e1f61f1e78 100644
--- a/Documentation/devicetree/bindings/mtd/partition.txt
+++ b/Documentation/devicetree/bindings/mtd/partition.txt
@@ -35,4 +35,4 @@ flash@0 {
35 uimage@100000 { 35 uimage@100000 {
36 reg = <0x0100000 0x200000>; 36 reg = <0x0100000 0x200000>;
37 }; 37 };
38]; 38};
diff --git a/Documentation/devicetree/bindings/net/broadcom-bcm87xx.txt b/Documentation/devicetree/bindings/net/broadcom-bcm87xx.txt
new file mode 100644
index 00000000000..7c86d5e28a0
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/broadcom-bcm87xx.txt
@@ -0,0 +1,29 @@
1The Broadcom BCM87XX devices are a family of 10G Ethernet PHYs. They
2have these bindings in addition to the standard PHY bindings.
3
4Compatible: Should contain "broadcom,bcm8706" or "broadcom,bcm8727" and
5 "ethernet-phy-ieee802.3-c45"
6
7Optional Properties:
8
9- broadcom,c45-reg-init : one of more sets of 4 cells. The first cell
10 is the MDIO Manageable Device (MMD) address, the second a register
11 address within the MMD, the third cell contains a mask to be ANDed
12 with the existing register value, and the fourth cell is ORed with
13 he result to yield the new register value. If the third cell has a
14 value of zero, no read of the existing value is performed.
15
16Example:
17
18 ethernet-phy@5 {
19 reg = <5>;
20 compatible = "broadcom,bcm8706", "ethernet-phy-ieee802.3-c45";
21 interrupt-parent = <&gpio>;
22 interrupts = <12 8>; /* Pin 12, active low */
23 /*
24 * Set PMD Digital Control Register for
25 * GPIO[1] Tx/Rx
26 * GPIO[0] R64 Sync Acquired
27 */
28 broadcom,c45-reg-init = <1 0xc808 0xff8f 0x70>;
29 };
diff --git a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
index f31b686d455..8ff324eaa88 100644
--- a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
+++ b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
@@ -11,6 +11,9 @@ Required properties:
11 11
12- reg : Offset and length of the register set for this device 12- reg : Offset and length of the register set for this device
13- interrupts : Interrupt tuple for this device 13- interrupts : Interrupt tuple for this device
14
15Optional properties:
16
14- clock-frequency : The oscillator frequency driving the flexcan device 17- clock-frequency : The oscillator frequency driving the flexcan device
15 18
16Example: 19Example:
diff --git a/Documentation/devicetree/bindings/net/davinci_emac.txt b/Documentation/devicetree/bindings/net/davinci_emac.txt
new file mode 100644
index 00000000000..48b259e29e8
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/davinci_emac.txt
@@ -0,0 +1,41 @@
1* Texas Instruments Davinci EMAC
2
3This file provides information, what the device node
4for the davinci_emac interface contains.
5
6Required properties:
7- compatible: "ti,davinci-dm6467-emac";
8- reg: Offset and length of the register set for the device
9- ti,davinci-ctrl-reg-offset: offset to control register
10- ti,davinci-ctrl-mod-reg-offset: offset to control module register
11- ti,davinci-ctrl-ram-offset: offset to control module ram
12- ti,davinci-ctrl-ram-size: size of control module ram
13- ti,davinci-rmii-en: use RMII
14- ti,davinci-no-bd-ram: has the emac controller BD RAM
15- phy-handle: Contains a phandle to an Ethernet PHY.
16 if not, davinci_emac driver defaults to 100/FULL
17- interrupts: interrupt mapping for the davinci emac interrupts sources:
18 4 sources: <Receive Threshold Interrupt
19 Receive Interrupt
20 Transmit Interrupt
21 Miscellaneous Interrupt>
22
23Optional properties:
24- local-mac-address : 6 bytes, mac address
25
26Example (enbw_cmc board):
27 eth0: emac@1e20000 {
28 compatible = "ti,davinci-dm6467-emac";
29 reg = <0x220000 0x4000>;
30 ti,davinci-ctrl-reg-offset = <0x3000>;
31 ti,davinci-ctrl-mod-reg-offset = <0x2000>;
32 ti,davinci-ctrl-ram-offset = <0>;
33 ti,davinci-ctrl-ram-size = <0x2000>;
34 local-mac-address = [ 00 00 00 00 00 00 ];
35 interrupts = <33
36 34
37 35
38 36
39 >;
40 interrupt-parent = <&intc>;
41 };
diff --git a/Documentation/devicetree/bindings/net/fsl-fec.txt b/Documentation/devicetree/bindings/net/fsl-fec.txt
index 7ab9e1a2d8b..d5363922140 100644
--- a/Documentation/devicetree/bindings/net/fsl-fec.txt
+++ b/Documentation/devicetree/bindings/net/fsl-fec.txt
@@ -7,10 +7,14 @@ Required properties:
7- phy-mode : String, operation mode of the PHY interface. 7- phy-mode : String, operation mode of the PHY interface.
8 Supported values are: "mii", "gmii", "sgmii", "tbi", "rmii", 8 Supported values are: "mii", "gmii", "sgmii", "tbi", "rmii",
9 "rgmii", "rgmii-id", "rgmii-rxid", "rgmii-txid", "rtbi", "smii". 9 "rgmii", "rgmii-id", "rgmii-rxid", "rgmii-txid", "rtbi", "smii".
10- phy-reset-gpios : Should specify the gpio for phy reset
11 10
12Optional properties: 11Optional properties:
13- local-mac-address : 6 bytes, mac address 12- local-mac-address : 6 bytes, mac address
13- phy-reset-gpios : Should specify the gpio for phy reset
14- phy-reset-duration : Reset duration in milliseconds. Should present
15 only if property "phy-reset-gpios" is available. Missing the property
16 will have the duration be 1 millisecond. Numbers greater than 1000 are
17 invalid and 1 millisecond will be used instead.
14 18
15Example: 19Example:
16 20
@@ -19,6 +23,6 @@ ethernet@83fec000 {
19 reg = <0x83fec000 0x4000>; 23 reg = <0x83fec000 0x4000>;
20 interrupts = <87>; 24 interrupts = <87>;
21 phy-mode = "mii"; 25 phy-mode = "mii";
22 phy-reset-gpios = <&gpio1 14 0>; /* GPIO2_14 */ 26 phy-reset-gpios = <&gpio2 14 0>; /* GPIO2_14 */
23 local-mac-address = [00 04 9F 01 1B B9]; 27 local-mac-address = [00 04 9F 01 1B B9];
24}; 28};
diff --git a/Documentation/devicetree/bindings/net/phy.txt b/Documentation/devicetree/bindings/net/phy.txt
index bb8c742eb8c..7cd18fbfcf7 100644
--- a/Documentation/devicetree/bindings/net/phy.txt
+++ b/Documentation/devicetree/bindings/net/phy.txt
@@ -14,10 +14,20 @@ Required properties:
14 - linux,phandle : phandle for this node; likely referenced by an 14 - linux,phandle : phandle for this node; likely referenced by an
15 ethernet controller node. 15 ethernet controller node.
16 16
17Optional Properties:
18
19- compatible: Compatible list, may contain
20 "ethernet-phy-ieee802.3-c22" or "ethernet-phy-ieee802.3-c45" for
21 PHYs that implement IEEE802.3 clause 22 or IEEE802.3 clause 45
22 specifications. If neither of these are specified, the default is to
23 assume clause 22. The compatible list may also contain other
24 elements.
25
17Example: 26Example:
18 27
19ethernet-phy@0 { 28ethernet-phy@0 {
20 linux,phandle = <2452000> 29 compatible = "ethernet-phy-ieee802.3-c22";
30 linux,phandle = <2452000>;
21 interrupt-parent = <40000>; 31 interrupt-parent = <40000>;
22 interrupts = <35 1>; 32 interrupts = <35 1>;
23 reg = <0>; 33 reg = <0>;
diff --git a/Documentation/devicetree/bindings/net/stmmac.txt b/Documentation/devicetree/bindings/net/stmmac.txt
index 1f62623f8c3..060bbf098ef 100644
--- a/Documentation/devicetree/bindings/net/stmmac.txt
+++ b/Documentation/devicetree/bindings/net/stmmac.txt
@@ -1,7 +1,8 @@
1* STMicroelectronics 10/100/1000 Ethernet driver (GMAC) 1* STMicroelectronics 10/100/1000 Ethernet driver (GMAC)
2 2
3Required properties: 3Required properties:
4- compatible: Should be "st,spear600-gmac" 4- compatible: Should be "snps,dwmac-<ip_version>" "snps,dwmac"
5 For backwards compatibility: "st,spear600-gmac" is also supported.
5- reg: Address and length of the register set for the device 6- reg: Address and length of the register set for the device
6- interrupt-parent: Should be the phandle for the interrupt controller 7- interrupt-parent: Should be the phandle for the interrupt controller
7 that services interrupts for this device 8 that services interrupts for this device
diff --git a/Documentation/devicetree/bindings/nvec/nvec_nvidia.txt b/Documentation/devicetree/bindings/nvec/nvidia,nvec.txt
index 5aeee53ff9f..5aeee53ff9f 100644
--- a/Documentation/devicetree/bindings/nvec/nvec_nvidia.txt
+++ b/Documentation/devicetree/bindings/nvec/nvidia,nvec.txt
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
index 82b43f91585..a4119f6422d 100644
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
+++ b/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
@@ -1626,3 +1626,5 @@ MX6Q_PAD_SD2_DAT3__PCIE_CTRL_MUX_11 1587
1626MX6Q_PAD_SD2_DAT3__GPIO_1_12 1588 1626MX6Q_PAD_SD2_DAT3__GPIO_1_12 1588
1627MX6Q_PAD_SD2_DAT3__SJC_DONE 1589 1627MX6Q_PAD_SD2_DAT3__SJC_DONE 1589
1628MX6Q_PAD_SD2_DAT3__ANATOP_TESTO_3 1590 1628MX6Q_PAD_SD2_DAT3__ANATOP_TESTO_3 1590
1629MX6Q_PAD_ENET_RX_ER__ANATOP_USBOTG_ID 1591
1630MX6Q_PAD_GPIO_1__ANATOP_USBOTG_ID 1592
diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt b/Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt
new file mode 100644
index 00000000000..5187f0dd8b2
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt
@@ -0,0 +1,93 @@
1One-register-per-pin type device tree based pinctrl driver
2
3Required properties:
4- compatible : "pinctrl-single"
5
6- reg : offset and length of the register set for the mux registers
7
8- pinctrl-single,register-width : pinmux register access width in bits
9
10- pinctrl-single,function-mask : mask of allowed pinmux function bits
11 in the pinmux register
12
13Optional properties:
14- pinctrl-single,function-off : function off mode for disabled state if
15 available and same for all registers; if not specified, disabling of
16 pin functions is ignored
17
18This driver assumes that there is only one register for each pin,
19and uses the common pinctrl bindings as specified in the pinctrl-bindings.txt
20document in this directory.
21
22The pin configuration nodes for pinctrl-single are specified as pinctrl
23register offset and value pairs using pinctrl-single,pins. Only the bits
24specified in pinctrl-single,function-mask are updated. For example, setting
25a pin for a device could be done with:
26
27 pinctrl-single,pins = <0xdc 0x118>;
28
29Where 0xdc is the offset from the pinctrl register base address for the
30device pinctrl register, and 0x118 contains the desired value of the
31pinctrl register. See the device example and static board pins example
32below for more information.
33
34Example:
35
36/* SoC common file */
37
38/* first controller instance for pins in core domain */
39pmx_core: pinmux@4a100040 {
40 compatible = "pinctrl-single";
41 reg = <0x4a100040 0x0196>;
42 #address-cells = <1>;
43 #size-cells = <0>;
44 pinctrl-single,register-width = <16>;
45 pinctrl-single,function-mask = <0xffff>;
46};
47
48/* second controller instance for pins in wkup domain */
49pmx_wkup: pinmux@4a31e040 {
50 compatible = "pinctrl-single;
51 reg = <0x4a31e040 0x0038>;
52 #address-cells = <1>;
53 #size-cells = <0>;
54 pinctrl-single,register-width = <16>;
55 pinctrl-single,function-mask = <0xffff>;
56};
57
58
59/* board specific .dts file */
60
61&pmx_core {
62
63 /*
64 * map all board specific static pins enabled by the pinctrl driver
65 * itself during the boot (or just set them up in the bootloader)
66 */
67 pinctrl-names = "default";
68 pinctrl-0 = <&board_pins>;
69
70 board_pins: pinmux_board_pins {
71 pinctrl-single,pins = <
72 0x6c 0xf
73 0x6e 0xf
74 0x70 0xf
75 0x72 0xf
76 >;
77 };
78
79 /* map uart2 pins */
80 uart2_pins: pinmux_uart2_pins {
81 pinctrl-single,pins = <
82 0xd8 0x118
83 0xda 0
84 0xdc 0x118
85 0xde 0
86 >;
87 };
88};
89
90&uart2 {
91 pinctrl-names = "default";
92 pinctrl-0 = <&uart2_pins>;
93};
diff --git a/Documentation/devicetree/bindings/pwm/lpc32xx-pwm.txt b/Documentation/devicetree/bindings/pwm/lpc32xx-pwm.txt
new file mode 100644
index 00000000000..cfe1db3bb6e
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/lpc32xx-pwm.txt
@@ -0,0 +1,12 @@
1LPC32XX PWM controller
2
3Required properties:
4- compatible: should be "nxp,lpc3220-pwm"
5- reg: physical base address and length of the controller's registers
6
7Examples:
8
9pwm@0x4005C000 {
10 compatible = "nxp,lpc3220-pwm";
11 reg = <0x4005C000 0x8>;
12};
diff --git a/Documentation/devicetree/bindings/pwm/mxs-pwm.txt b/Documentation/devicetree/bindings/pwm/mxs-pwm.txt
new file mode 100644
index 00000000000..b16f4a57d11
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/mxs-pwm.txt
@@ -0,0 +1,17 @@
1Freescale MXS PWM controller
2
3Required properties:
4- compatible: should be "fsl,imx23-pwm"
5- reg: physical base address and length of the controller's registers
6- #pwm-cells: should be 2. The first cell specifies the per-chip index
7 of the PWM to use and the second cell is the duty cycle in nanoseconds.
8- fsl,pwm-number: the number of PWM devices
9
10Example:
11
12pwm: pwm@80064000 {
13 compatible = "fsl,imx28-pwm", "fsl,imx23-pwm";
14 reg = <0x80064000 2000>;
15 #pwm-cells = <2>;
16 fsl,pwm-number = <8>;
17};
diff --git a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
new file mode 100644
index 00000000000..bbbeedb4ec0
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
@@ -0,0 +1,18 @@
1Tegra SoC PWFM controller
2
3Required properties:
4- compatible: should be one of:
5 - "nvidia,tegra20-pwm"
6 - "nvidia,tegra30-pwm"
7- reg: physical base address and length of the controller's registers
8- #pwm-cells: On Tegra the number of cells used to specify a PWM is 2. The
9 first cell specifies the per-chip index of the PWM to use and the second
10 cell is the duty cycle in nanoseconds.
11
12Example:
13
14 pwm: pwm@7000a000 {
15 compatible = "nvidia,tegra20-pwm";
16 reg = <0x7000a000 0x100>;
17 #pwm-cells = <2>;
18 };
diff --git a/Documentation/devicetree/bindings/pwm/pwm.txt b/Documentation/devicetree/bindings/pwm/pwm.txt
new file mode 100644
index 00000000000..73ec962bfe8
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/pwm.txt
@@ -0,0 +1,57 @@
1Specifying PWM information for devices
2======================================
3
41) PWM user nodes
5-----------------
6
7PWM users should specify a list of PWM devices that they want to use
8with a property containing a 'pwm-list':
9
10 pwm-list ::= <single-pwm> [pwm-list]
11 single-pwm ::= <pwm-phandle> <pwm-specifier>
12 pwm-phandle : phandle to PWM controller node
13 pwm-specifier : array of #pwm-cells specifying the given PWM
14 (controller specific)
15
16PWM properties should be named "pwms". The exact meaning of each pwms
17property must be documented in the device tree binding for each device.
18An optional property "pwm-names" may contain a list of strings to label
19each of the PWM devices listed in the "pwms" property. If no "pwm-names"
20property is given, the name of the user node will be used as fallback.
21
22Drivers for devices that use more than a single PWM device can use the
23"pwm-names" property to map the name of the PWM device requested by the
24pwm_get() call to an index into the list given by the "pwms" property.
25
26The following example could be used to describe a PWM-based backlight
27device:
28
29 pwm: pwm {
30 #pwm-cells = <2>;
31 };
32
33 [...]
34
35 bl: backlight {
36 pwms = <&pwm 0 5000000>;
37 pwm-names = "backlight";
38 };
39
40pwm-specifier typically encodes the chip-relative PWM number and the PWM
41period in nanoseconds. Note that in the example above, specifying the
42"pwm-names" is redundant because the name "backlight" would be used as
43fallback anyway.
44
452) PWM controller nodes
46-----------------------
47
48PWM controller nodes must specify the number of cells used for the
49specifier using the '#pwm-cells' property.
50
51An example PWM controller might look like this:
52
53 pwm: pwm@7000a000 {
54 compatible = "nvidia,tegra20-pwm";
55 reg = <0x7000a000 0x100>;
56 #pwm-cells = <2>;
57 };
diff --git a/Documentation/devicetree/bindings/regulator/fixed-regulator.txt b/Documentation/devicetree/bindings/regulator/fixed-regulator.txt
index 2f5b6b1ba15..4fae41d5479 100644
--- a/Documentation/devicetree/bindings/regulator/fixed-regulator.txt
+++ b/Documentation/devicetree/bindings/regulator/fixed-regulator.txt
@@ -10,6 +10,7 @@ Optional properties:
10If this property is missing, the default assumed is Active low. 10If this property is missing, the default assumed is Active low.
11- gpio-open-drain: GPIO is open drain type. 11- gpio-open-drain: GPIO is open drain type.
12 If this property is missing then default assumption is false. 12 If this property is missing then default assumption is false.
13-vin-supply: Input supply name.
13 14
14Any property defined as part of the core regulator 15Any property defined as part of the core regulator
15binding, defined in regulator.txt, can also be used. 16binding, defined in regulator.txt, can also be used.
@@ -29,4 +30,5 @@ Example:
29 enable-active-high; 30 enable-active-high;
30 regulator-boot-on; 31 regulator-boot-on;
31 gpio-open-drain; 32 gpio-open-drain;
33 vin-supply = <&parent_reg>;
32 }; 34 };
diff --git a/Documentation/devicetree/bindings/regulator/regulator.txt b/Documentation/devicetree/bindings/regulator/regulator.txt
index 5b7a408acda..66ece3f87bb 100644
--- a/Documentation/devicetree/bindings/regulator/regulator.txt
+++ b/Documentation/devicetree/bindings/regulator/regulator.txt
@@ -10,6 +10,11 @@ Optional properties:
10- regulator-always-on: boolean, regulator should never be disabled 10- regulator-always-on: boolean, regulator should never be disabled
11- regulator-boot-on: bootloader/firmware enabled regulator 11- regulator-boot-on: bootloader/firmware enabled regulator
12- <name>-supply: phandle to the parent supply/regulator node 12- <name>-supply: phandle to the parent supply/regulator node
13- regulator-ramp-delay: ramp delay for regulator(in uV/uS)
14- regulator-compatible: If a regulator chip contains multiple
15 regulators, and if the chip's binding contains a child node that
16 describes each regulator, then this property indicates which regulator
17 this child node is intended to configure.
13 18
14Example: 19Example:
15 20
diff --git a/Documentation/devicetree/bindings/regulator/tps65217.txt b/Documentation/devicetree/bindings/regulator/tps65217.txt
new file mode 100644
index 00000000000..0487e9675ba
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/tps65217.txt
@@ -0,0 +1,91 @@
1TPS65217 family of regulators
2
3Required properties:
4- compatible: "ti,tps65217"
5- reg: I2C slave address
6- regulators: list of regulators provided by this controller, must be named
7 after their hardware counterparts: dcdc[1-3] and ldo[1-4]
8- regulators: This is the list of child nodes that specify the regulator
9 initialization data for defined regulators. Not all regulators for the given
10 device need to be present. The definition for each of these nodes is defined
11 using the standard binding for regulators found at
12 Documentation/devicetree/bindings/regulator/regulator.txt.
13
14 The valid names for regulators are:
15 tps65217: dcdc1, dcdc2, dcdc3, ldo1, ldo2, ldo3 and ldo4
16
17Each regulator is defined using the standard binding for regulators.
18
19Example:
20
21 tps: tps@24 {
22 compatible = "ti,tps65217";
23
24 regulators {
25 #address-cells = <1>;
26 #size-cells = <0>;
27
28 dcdc1_reg: regulator@0 {
29 reg = <0>;
30 regulator-compatible = "dcdc1";
31 regulator-min-microvolt = <900000>;
32 regulator-max-microvolt = <1800000>;
33 regulator-boot-on;
34 regulator-always-on;
35 };
36
37 dcdc2_reg: regulator@1 {
38 reg = <1>;
39 regulator-compatible = "dcdc2";
40 regulator-min-microvolt = <900000>;
41 regulator-max-microvolt = <3300000>;
42 regulator-boot-on;
43 regulator-always-on;
44 };
45
46 dcdc3_reg: regulator@2 {
47 reg = <2>;
48 regulator-compatible = "dcdc3";
49 regulator-min-microvolt = <900000>;
50 regulator-max-microvolt = <1500000>;
51 regulator-boot-on;
52 regulator-always-on;
53 };
54
55 ldo1_reg: regulator@3 {
56 reg = <3>;
57 regulator-compatible = "ldo1";
58 regulator-min-microvolt = <1000000>;
59 regulator-max-microvolt = <3300000>;
60 regulator-boot-on;
61 regulator-always-on;
62 };
63
64 ldo2_reg: regulator@4 {
65 reg = <4>;
66 regulator-compatible = "ldo2";
67 regulator-min-microvolt = <900000>;
68 regulator-max-microvolt = <3300000>;
69 regulator-boot-on;
70 regulator-always-on;
71 };
72
73 ldo3_reg: regulator@5 {
74 reg = <5>;
75 regulator-compatible = "ldo3";
76 regulator-min-microvolt = <1800000>;
77 regulator-max-microvolt = <3300000>;
78 regulator-boot-on;
79 regulator-always-on;
80 };
81
82 ldo4_reg: regulator@6 {
83 reg = <6>;
84 regulator-compatible = "ldo4";
85 regulator-min-microvolt = <1800000>;
86 regulator-max-microvolt = <3300000>;
87 regulator-boot-on;
88 regulator-always-on;
89 };
90 };
91 };
diff --git a/Documentation/devicetree/bindings/regulator/tps6586x.txt b/Documentation/devicetree/bindings/regulator/tps6586x.txt
index 0fcabaa3baa..d156e1b5db1 100644
--- a/Documentation/devicetree/bindings/regulator/tps6586x.txt
+++ b/Documentation/devicetree/bindings/regulator/tps6586x.txt
@@ -6,8 +6,17 @@ Required properties:
6- interrupts: the interrupt outputs of the controller 6- interrupts: the interrupt outputs of the controller
7- #gpio-cells: number of cells to describe a GPIO 7- #gpio-cells: number of cells to describe a GPIO
8- gpio-controller: mark the device as a GPIO controller 8- gpio-controller: mark the device as a GPIO controller
9- regulators: list of regulators provided by this controller, must be named 9- regulators: list of regulators provided by this controller, must have
10 after their hardware counterparts: sm[0-2], ldo[0-9] and ldo_rtc 10 property "regulator-compatible" to match their hardware counterparts:
11 sm[0-2], ldo[0-9] and ldo_rtc
12- sm0-supply: The input supply for the SM0.
13- sm1-supply: The input supply for the SM1.
14- sm2-supply: The input supply for the SM2.
15- vinldo01-supply: The input supply for the LDO1 and LDO2
16- vinldo23-supply: The input supply for the LDO2 and LDO3
17- vinldo4-supply: The input supply for the LDO4
18- vinldo678-supply: The input supply for the LDO6, LDO7 and LDO8
19- vinldo9-supply: The input supply for the LDO9
11 20
12Each regulator is defined using the standard binding for regulators. 21Each regulator is defined using the standard binding for regulators.
13 22
@@ -21,75 +30,113 @@ Example:
21 #gpio-cells = <2>; 30 #gpio-cells = <2>;
22 gpio-controller; 31 gpio-controller;
23 32
33 sm0-supply = <&some_reg>;
34 sm1-supply = <&some_reg>;
35 sm2-supply = <&some_reg>;
36 vinldo01-supply = <...>;
37 vinldo23-supply = <...>;
38 vinldo4-supply = <...>;
39 vinldo678-supply = <...>;
40 vinldo9-supply = <...>;
41
24 regulators { 42 regulators {
25 sm0_reg: sm0 { 43 #address-cells = <1>;
44 #size-cells = <0>;
45
46 sm0_reg: regulator@0 {
47 reg = <0>;
48 regulator-compatible = "sm0";
26 regulator-min-microvolt = < 725000>; 49 regulator-min-microvolt = < 725000>;
27 regulator-max-microvolt = <1500000>; 50 regulator-max-microvolt = <1500000>;
28 regulator-boot-on; 51 regulator-boot-on;
29 regulator-always-on; 52 regulator-always-on;
30 }; 53 };
31 54
32 sm1_reg: sm1 { 55 sm1_reg: regulator@1 {
56 reg = <1>;
57 regulator-compatible = "sm1";
33 regulator-min-microvolt = < 725000>; 58 regulator-min-microvolt = < 725000>;
34 regulator-max-microvolt = <1500000>; 59 regulator-max-microvolt = <1500000>;
35 regulator-boot-on; 60 regulator-boot-on;
36 regulator-always-on; 61 regulator-always-on;
37 }; 62 };
38 63
39 sm2_reg: sm2 { 64 sm2_reg: regulator@2 {
65 reg = <2>;
66 regulator-compatible = "sm2";
40 regulator-min-microvolt = <3000000>; 67 regulator-min-microvolt = <3000000>;
41 regulator-max-microvolt = <4550000>; 68 regulator-max-microvolt = <4550000>;
42 regulator-boot-on; 69 regulator-boot-on;
43 regulator-always-on; 70 regulator-always-on;
44 }; 71 };
45 72
46 ldo0_reg: ldo0 { 73 ldo0_reg: regulator@3 {
74 reg = <3>;
75 regulator-compatible = "ldo0";
47 regulator-name = "PCIE CLK"; 76 regulator-name = "PCIE CLK";
48 regulator-min-microvolt = <3300000>; 77 regulator-min-microvolt = <3300000>;
49 regulator-max-microvolt = <3300000>; 78 regulator-max-microvolt = <3300000>;
50 }; 79 };
51 80
52 ldo1_reg: ldo1 { 81 ldo1_reg: regulator@4 {
82 reg = <4>;
83 regulator-compatible = "ldo1";
53 regulator-min-microvolt = < 725000>; 84 regulator-min-microvolt = < 725000>;
54 regulator-max-microvolt = <1500000>; 85 regulator-max-microvolt = <1500000>;
55 }; 86 };
56 87
57 ldo2_reg: ldo2 { 88 ldo2_reg: regulator@5 {
89 reg = <5>;
90 regulator-compatible = "ldo2";
58 regulator-min-microvolt = < 725000>; 91 regulator-min-microvolt = < 725000>;
59 regulator-max-microvolt = <1500000>; 92 regulator-max-microvolt = <1500000>;
60 }; 93 };
61 94
62 ldo3_reg: ldo3 { 95 ldo3_reg: regulator@6 {
96 reg = <6>;
97 regulator-compatible = "ldo3";
63 regulator-min-microvolt = <1250000>; 98 regulator-min-microvolt = <1250000>;
64 regulator-max-microvolt = <3300000>; 99 regulator-max-microvolt = <3300000>;
65 }; 100 };
66 101
67 ldo4_reg: ldo4 { 102 ldo4_reg: regulator@7 {
103 reg = <7>;
104 regulator-compatible = "ldo4";
68 regulator-min-microvolt = <1700000>; 105 regulator-min-microvolt = <1700000>;
69 regulator-max-microvolt = <2475000>; 106 regulator-max-microvolt = <2475000>;
70 }; 107 };
71 108
72 ldo5_reg: ldo5 { 109 ldo5_reg: regulator@8 {
110 reg = <8>;
111 regulator-compatible = "ldo5";
73 regulator-min-microvolt = <1250000>; 112 regulator-min-microvolt = <1250000>;
74 regulator-max-microvolt = <3300000>; 113 regulator-max-microvolt = <3300000>;
75 }; 114 };
76 115
77 ldo6_reg: ldo6 { 116 ldo6_reg: regulator@9 {
117 reg = <9>;
118 regulator-compatible = "ldo6";
78 regulator-min-microvolt = <1250000>; 119 regulator-min-microvolt = <1250000>;
79 regulator-max-microvolt = <3300000>; 120 regulator-max-microvolt = <3300000>;
80 }; 121 };
81 122
82 ldo7_reg: ldo7 { 123 ldo7_reg: regulator@10 {
124 reg = <10>;
125 regulator-compatible = "ldo7";
83 regulator-min-microvolt = <1250000>; 126 regulator-min-microvolt = <1250000>;
84 regulator-max-microvolt = <3300000>; 127 regulator-max-microvolt = <3300000>;
85 }; 128 };
86 129
87 ldo8_reg: ldo8 { 130 ldo8_reg: regulator@11 {
131 reg = <11>;
132 regulator-compatible = "ldo8";
88 regulator-min-microvolt = <1250000>; 133 regulator-min-microvolt = <1250000>;
89 regulator-max-microvolt = <3300000>; 134 regulator-max-microvolt = <3300000>;
90 }; 135 };
91 136
92 ldo9_reg: ldo9 { 137 ldo9_reg: regulator@12 {
138 reg = <12>;
139 regulator-compatible = "ldo9";
93 regulator-min-microvolt = <1250000>; 140 regulator-min-microvolt = <1250000>;
94 regulator-max-microvolt = <3300000>; 141 regulator-max-microvolt = <3300000>;
95 }; 142 };
diff --git a/Documentation/devicetree/bindings/regulator/twl-regulator.txt b/Documentation/devicetree/bindings/regulator/twl-regulator.txt
index 0c3395d55ac..658749b90b9 100644
--- a/Documentation/devicetree/bindings/regulator/twl-regulator.txt
+++ b/Documentation/devicetree/bindings/regulator/twl-regulator.txt
@@ -15,7 +15,6 @@ For twl6030 regulators/LDOs
15 - "ti,twl6030-vusb" for VUSB LDO 15 - "ti,twl6030-vusb" for VUSB LDO
16 - "ti,twl6030-v1v8" for V1V8 LDO 16 - "ti,twl6030-v1v8" for V1V8 LDO
17 - "ti,twl6030-v2v1" for V2V1 LDO 17 - "ti,twl6030-v2v1" for V2V1 LDO
18 - "ti,twl6030-clk32kg" for CLK32KG RESOURCE
19 - "ti,twl6030-vdd1" for VDD1 SMPS 18 - "ti,twl6030-vdd1" for VDD1 SMPS
20 - "ti,twl6030-vdd2" for VDD2 SMPS 19 - "ti,twl6030-vdd2" for VDD2 SMPS
21 - "ti,twl6030-vdd3" for VDD3 SMPS 20 - "ti,twl6030-vdd3" for VDD3 SMPS
diff --git a/Documentation/devicetree/bindings/rtc/dw-apb.txt b/Documentation/devicetree/bindings/rtc/dw-apb.txt
new file mode 100644
index 00000000000..93e2b0f048e
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/dw-apb.txt
@@ -0,0 +1,25 @@
1* Designware APB timer
2
3Required properties:
4- compatible: "snps,dw-apb-timer-sp" or "snps,dw-apb-timer-osc"
5- reg: physical base address of the controller and length of memory mapped
6 region.
7- interrupts: IRQ line for the timer.
8- clock-frequency: The frequency in HZ of the timer.
9- clock-freq: For backwards compatibility with picoxcell
10
11Example:
12
13 timer1: timer@ffc09000 {
14 compatible = "snps,dw-apb-timer-sp";
15 interrupts = <0 168 4>;
16 clock-frequency = <200000000>;
17 reg = <0xffc09000 0x1000>;
18 };
19
20 timer2: timer@ffd00000 {
21 compatible = "snps,dw-apb-timer-osc";
22 interrupts = <0 169 4>;
23 clock-frequency = <200000000>;
24 reg = <0xffd00000 0x1000>;
25 };
diff --git a/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt b/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt
new file mode 100644
index 00000000000..b800070fe6e
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt
@@ -0,0 +1,16 @@
1* STMP3xxx/i.MX28 Time Clock controller
2
3Required properties:
4- compatible: should be one of the following.
5 * "fsl,stmp3xxx-rtc"
6- reg: physical base address of the controller and length of memory mapped
7 region.
8- interrupts: rtc alarm interrupt
9
10Example:
11
12rtc@80056000 {
13 compatible = "fsl,imx28-rtc", "fsl,stmp3xxx-rtc";
14 reg = <0x80056000 2000>;
15 interrupts = <29>;
16};
diff --git a/Documentation/devicetree/bindings/sound/tegra-audio-alc5632.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt
index b77a97c9101..b77a97c9101 100644
--- a/Documentation/devicetree/bindings/sound/tegra-audio-alc5632.txt
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt
diff --git a/Documentation/devicetree/bindings/sound/tegra-audio-trimslice.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-trimslice.txt
index 04b14cfb1f1..04b14cfb1f1 100644
--- a/Documentation/devicetree/bindings/sound/tegra-audio-trimslice.txt
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-trimslice.txt
diff --git a/Documentation/devicetree/bindings/sound/tegra-audio-wm8753.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt
index c4dd39ce616..c4dd39ce616 100644
--- a/Documentation/devicetree/bindings/sound/tegra-audio-wm8753.txt
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt
diff --git a/Documentation/devicetree/bindings/sound/tegra-audio-wm8903.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt
index d5b0da8bf1d..d5b0da8bf1d 100644
--- a/Documentation/devicetree/bindings/sound/tegra-audio-wm8903.txt
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt
diff --git a/Documentation/devicetree/bindings/sound/tegra20-das.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra20-das.txt
index 6de3a7ee4ef..6de3a7ee4ef 100644
--- a/Documentation/devicetree/bindings/sound/tegra20-das.txt
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra20-das.txt
diff --git a/Documentation/devicetree/bindings/sound/tegra20-i2s.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra20-i2s.txt
index 0df2b5c816e..0df2b5c816e 100644
--- a/Documentation/devicetree/bindings/sound/tegra20-i2s.txt
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra20-i2s.txt
diff --git a/Documentation/devicetree/bindings/spi/fsl-imx-cspi.txt b/Documentation/devicetree/bindings/spi/fsl-imx-cspi.txt
index 9841057d112..4256a6df9b7 100644
--- a/Documentation/devicetree/bindings/spi/fsl-imx-cspi.txt
+++ b/Documentation/devicetree/bindings/spi/fsl-imx-cspi.txt
@@ -17,6 +17,6 @@ ecspi@70010000 {
17 reg = <0x70010000 0x4000>; 17 reg = <0x70010000 0x4000>;
18 interrupts = <36>; 18 interrupts = <36>;
19 fsl,spi-num-chipselects = <2>; 19 fsl,spi-num-chipselects = <2>;
20 cs-gpios = <&gpio3 24 0>, /* GPIO4_24 */ 20 cs-gpios = <&gpio3 24 0>, /* GPIO3_24 */
21 <&gpio3 25 0>; /* GPIO4_25 */ 21 <&gpio3 25 0>; /* GPIO3_25 */
22}; 22};
diff --git a/Documentation/devicetree/bindings/spi/spi_nvidia.txt b/Documentation/devicetree/bindings/spi/nvidia,tegra20-spi.txt
index 6b9e5189669..6b9e5189669 100644
--- a/Documentation/devicetree/bindings/spi/spi_nvidia.txt
+++ b/Documentation/devicetree/bindings/spi/nvidia,tegra20-spi.txt
diff --git a/Documentation/devicetree/bindings/spi/spi-orion.txt b/Documentation/devicetree/bindings/spi/spi-orion.txt
new file mode 100644
index 00000000000..a3ff50fc76f
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/spi-orion.txt
@@ -0,0 +1,19 @@
1Marvell Orion SPI device
2
3Required properties:
4- compatible : should be "marvell,orion-spi".
5- reg : offset and length of the register set for the device
6- cell-index : Which of multiple SPI controllers is this.
7Optional properties:
8- interrupts : Is currently not used.
9
10Example:
11 spi@10600 {
12 compatible = "marvell,orion-spi";
13 #address-cells = <1>;
14 #size-cells = <0>;
15 cell-index = <0>;
16 reg = <0x10600 0x28>;
17 interrupts = <23>;
18 status = "disabled";
19 };
diff --git a/Documentation/devicetree/bindings/spi/spi-samsung.txt b/Documentation/devicetree/bindings/spi/spi-samsung.txt
new file mode 100644
index 00000000000..a15ffeddfba
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/spi-samsung.txt
@@ -0,0 +1,116 @@
1* Samsung SPI Controller
2
3The Samsung SPI controller is used to interface with various devices such as flash
4and display controllers using the SPI communication interface.
5
6Required SoC Specific Properties:
7
8- compatible: should be one of the following.
9 - samsung,s3c2443-spi: for s3c2443, s3c2416 and s3c2450 platforms
10 - samsung,s3c6410-spi: for s3c6410 platforms
11 - samsung,s5p6440-spi: for s5p6440 and s5p6450 platforms
12 - samsung,s5pv210-spi: for s5pv210 and s5pc110 platforms
13 - samsung,exynos4210-spi: for exynos4 and exynos5 platforms
14
15- reg: physical base address of the controller and length of memory mapped
16 region.
17
18- interrupts: The interrupt number to the cpu. The interrupt specifier format
19 depends on the interrupt controller.
20
21[PRELIMINARY: the dma channel allocation will change once there are
22official DMA bindings]
23
24- tx-dma-channel: The dma channel specifier for tx operations. The format of
25 the dma specifier depends on the dma controller.
26
27- rx-dma-channel: The dma channel specifier for rx operations. The format of
28 the dma specifier depends on the dma controller.
29
30Required Board Specific Properties:
31
32- #address-cells: should be 1.
33- #size-cells: should be 0.
34- gpios: The gpio specifier for clock, mosi and miso interface lines (in the
35 order specified). The format of the gpio specifier depends on the gpio
36 controller.
37
38Optional Board Specific Properties:
39
40- samsung,spi-src-clk: If the spi controller includes a internal clock mux to
41 select the clock source for the spi bus clock, this property can be used to
42 indicate the clock to be used for driving the spi bus clock. If not specified,
43 the clock number 0 is used as default.
44
45- num-cs: Specifies the number of chip select lines supported. If
46 not specified, the default number of chip select lines is set to 1.
47
48SPI Controller specific data in SPI slave nodes:
49
50- The spi slave nodes should provide the following information which is required
51 by the spi controller.
52
53 - cs-gpio: A gpio specifier that specifies the gpio line used as
54 the slave select line by the spi controller. The format of the gpio
55 specifier depends on the gpio controller.
56
57 - samsung,spi-feedback-delay: The sampling phase shift to be applied on the
58 miso line (to account for any lag in the miso line). The following are the
59 valid values.
60
61 - 0: No phase shift.
62 - 1: 90 degree phase shift sampling.
63 - 2: 180 degree phase shift sampling.
64 - 3: 270 degree phase shift sampling.
65
66Aliases:
67
68- All the SPI controller nodes should be represented in the aliases node using
69 the following format 'spi{n}' where n is a unique number for the alias.
70
71
72Example:
73
74- SoC Specific Portion:
75
76 spi_0: spi@12d20000 {
77 compatible = "samsung,exynos4210-spi";
78 reg = <0x12d20000 0x100>;
79 interrupts = <0 66 0>;
80 tx-dma-channel = <&pdma0 5>;
81 rx-dma-channel = <&pdma0 4>;
82 };
83
84- Board Specific Portion:
85
86 spi_0: spi@12d20000 {
87 #address-cells = <1>;
88 #size-cells = <0>;
89 gpios = <&gpa2 4 2 3 0>,
90 <&gpa2 6 2 3 0>,
91 <&gpa2 7 2 3 0>;
92
93 w25q80bw@0 {
94 #address-cells = <1>;
95 #size-cells = <1>;
96 compatible = "w25x80";
97 reg = <0>;
98 spi-max-frequency = <10000>;
99
100 controller-data {
101 cs-gpio = <&gpa2 5 1 0 3>;
102 samsung,spi-feedback-delay = <0>;
103 };
104
105 partition@0 {
106 label = "U-Boot";
107 reg = <0x0 0x40000>;
108 read-only;
109 };
110
111 partition@40000 {
112 label = "Kernel";
113 reg = <0x40000 0xc0000>;
114 };
115 };
116 };
diff --git a/Documentation/devicetree/bindings/thermal/spear-thermal.txt b/Documentation/devicetree/bindings/thermal/spear-thermal.txt
new file mode 100644
index 00000000000..93e3b67c102
--- /dev/null
+++ b/Documentation/devicetree/bindings/thermal/spear-thermal.txt
@@ -0,0 +1,14 @@
1* SPEAr Thermal
2
3Required properties:
4- compatible : "st,thermal-spear1340"
5- reg : Address range of the thermal registers
6- st,thermal-flags: flags used to enable thermal sensor
7
8Example:
9
10 thermal@fc000000 {
11 compatible = "st,thermal-spear1340";
12 reg = <0xfc000000 0x1000>;
13 st,thermal-flags = <0x7000>;
14 };
diff --git a/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt b/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt
new file mode 100644
index 00000000000..2ee903fad25
--- /dev/null
+++ b/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt
@@ -0,0 +1,27 @@
1* Freescale MXS Application UART (AUART)
2
3Required properties:
4- compatible : Should be "fsl,<soc>-auart". The supported SoCs include
5 imx23 and imx28.
6- reg : Address and length of the register set for the device
7- interrupts : Should contain the auart interrupt numbers
8
9Example:
10auart0: serial@8006a000 {
11 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
12 reg = <0x8006a000 0x2000>;
13 interrupts = <112 70 71>;
14};
15
16Note: Each auart port should have an alias correctly numbered in "aliases"
17node.
18
19Example:
20
21aliases {
22 serial0 = &auart0;
23 serial1 = &auart1;
24 serial2 = &auart2;
25 serial3 = &auart3;
26 serial4 = &auart4;
27};
diff --git a/Documentation/devicetree/bindings/tty/serial/of-serial.txt b/Documentation/devicetree/bindings/tty/serial/of-serial.txt
index b8b27b0aca1..0847fdeee11 100644
--- a/Documentation/devicetree/bindings/tty/serial/of-serial.txt
+++ b/Documentation/devicetree/bindings/tty/serial/of-serial.txt
@@ -9,6 +9,7 @@ Required properties:
9 - "ns16750" 9 - "ns16750"
10 - "ns16850" 10 - "ns16850"
11 - "nvidia,tegra20-uart" 11 - "nvidia,tegra20-uart"
12 - "nxp,lpc3220-uart"
12 - "ibm,qpace-nwp-serial" 13 - "ibm,qpace-nwp-serial"
13 - "serial" if the port type is unknown. 14 - "serial" if the port type is unknown.
14- reg : offset and length of the register set for the device. 15- reg : offset and length of the register set for the device.
diff --git a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt
new file mode 100644
index 00000000000..2c290418bb2
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt
@@ -0,0 +1,18 @@
1* Freescale i.MX ci13xxx usb controllers
2
3Required properties:
4- compatible: Should be "fsl,imx27-usb"
5- reg: Should contain registers location and length
6- interrupts: Should contain controller interrupt
7
8Optional properties:
9- fsl,usbphy: phandler of usb phy that connects to the only one port
10- vbus-supply: regulator for vbus
11
12Examples:
13usb@02184000 { /* USB OTG */
14 compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
15 reg = <0x02184000 0x200>;
16 interrupts = <0 43 0x04>;
17 fsl,usbphy = <&usbphy1>;
18};
diff --git a/Documentation/devicetree/bindings/usb/mxs-phy.txt b/Documentation/devicetree/bindings/usb/mxs-phy.txt
new file mode 100644
index 00000000000..5835b27146e
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/mxs-phy.txt
@@ -0,0 +1,13 @@
1* Freescale MXS USB Phy Device
2
3Required properties:
4- compatible: Should be "fsl,imx23-usbphy"
5- reg: Should contain registers location and length
6- interrupts: Should contain phy interrupt
7
8Example:
9usbphy1: usbphy@020c9000 {
10 compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
11 reg = <0x020c9000 0x1000>;
12 interrupts = <0 44 0x04>;
13};
diff --git a/Documentation/devicetree/bindings/usb/tegra-usb.txt b/Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt
index e9b005dc762..e9b005dc762 100644
--- a/Documentation/devicetree/bindings/usb/tegra-usb.txt
+++ b/Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 6eab91747a8..db4d3af3643 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -3,6 +3,7 @@ Device tree binding vendor prefix registry. Keep list in alphabetical order.
3This isn't an exhaustive list, but you should add new prefixes to it before 3This isn't an exhaustive list, but you should add new prefixes to it before
4using them to avoid name-space collisions. 4using them to avoid name-space collisions.
5 5
6ad Avionic Design GmbH
6adi Analog Devices, Inc. 7adi Analog Devices, Inc.
7amcc Applied Micro Circuits Corporation (APM, formally AMCC) 8amcc Applied Micro Circuits Corporation (APM, formally AMCC)
8apm Applied Micro Circuits Corporation (APM) 9apm Applied Micro Circuits Corporation (APM)
diff --git a/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt b/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt
new file mode 100644
index 00000000000..1e4fc727f3b
--- /dev/null
+++ b/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt
@@ -0,0 +1,28 @@
1pwm-backlight bindings
2
3Required properties:
4 - compatible: "pwm-backlight"
5 - pwms: OF device-tree PWM specification (see PWM binding[0])
6 - brightness-levels: Array of distinct brightness levels. Typically these
7 are in the range from 0 to 255, but any range starting at 0 will do.
8 The actual brightness level (PWM duty cycle) will be interpolated
9 from these values. 0 means a 0% duty cycle (darkest/off), while the
10 last value in the array represents a 100% duty cycle (brightest).
11 - default-brightness-level: the default brightness level (index into the
12 array defined by the "brightness-levels" property)
13
14Optional properties:
15 - pwm-names: a list of names for the PWM devices specified in the
16 "pwms" property (see PWM binding[0])
17
18[0]: Documentation/devicetree/bindings/pwm/pwm.txt
19
20Example:
21
22 backlight {
23 compatible = "pwm-backlight";
24 pwms = <&pwm 0 5000000>;
25
26 brightness-levels = <0 4 8 16 32 64 128 255>;
27 default-brightness-level = <6>;
28 };
diff --git a/Documentation/devicetree/bindings/watchdog/omap-wdt.txt b/Documentation/devicetree/bindings/watchdog/omap-wdt.txt
new file mode 100644
index 00000000000..c227970671e
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/omap-wdt.txt
@@ -0,0 +1,14 @@
1TI Watchdog Timer (WDT) Controller for OMAP
2
3Required properties:
4compatible:
5- "ti,omap3-wdt" for OMAP3
6- "ti,omap4-wdt" for OMAP4
7- ti,hwmods: Name of the hwmod associated to the WDT
8
9Examples:
10
11wdt2: wdt@4a314000 {
12 compatible = "ti,omap4-wdt", "ti,omap3-wdt";
13 ti,hwmods = "wd_timer2";
14};
diff --git a/Documentation/devicetree/usage-model.txt b/Documentation/devicetree/usage-model.txt
index c5a80099b71..dca90fe22a9 100644
--- a/Documentation/devicetree/usage-model.txt
+++ b/Documentation/devicetree/usage-model.txt
@@ -312,7 +312,7 @@ device tree for the NVIDIA Tegra board.
312 }; 312 };
313}; 313};
314 314
315At .machine_init() time, Tegra board support code will need to look at 315At .init_machine() time, Tegra board support code will need to look at
316this DT and decide which nodes to create platform_devices for. 316this DT and decide which nodes to create platform_devices for.
317However, looking at the tree, it is not immediately obvious what kind 317However, looking at the tree, it is not immediately obvious what kind
318of device each node represents, or even if a node represents a device 318of device each node represents, or even if a node represents a device