aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/devicetree/bindings')
-rw-r--r--Documentation/devicetree/bindings/arm/altera/socfpga-reset.txt11
-rw-r--r--Documentation/devicetree/bindings/arm/altera/socfpga-system.txt11
-rw-r--r--Documentation/devicetree/bindings/arm/arm-boards4
-rw-r--r--Documentation/devicetree/bindings/arm/atmel-at91.txt6
-rw-r--r--Documentation/devicetree/bindings/arm/bcm/bcm11351.txt9
-rw-r--r--Documentation/devicetree/bindings/arm/calxeda.txt13
-rw-r--r--Documentation/devicetree/bindings/arm/cpus.txt77
-rw-r--r--Documentation/devicetree/bindings/arm/davinci.txt17
-rw-r--r--Documentation/devicetree/bindings/arm/davinci/nand.txt37
-rw-r--r--Documentation/devicetree/bindings/arm/exynos/power_domain.txt15
-rw-r--r--Documentation/devicetree/bindings/arm/fsl.txt4
-rw-r--r--Documentation/devicetree/bindings/arm/l2cc.txt2
-rw-r--r--Documentation/devicetree/bindings/arm/omap/counter.txt15
-rw-r--r--Documentation/devicetree/bindings/arm/omap/timer.txt31
-rw-r--r--Documentation/devicetree/bindings/arm/spear/shirq.txt48
-rw-r--r--Documentation/devicetree/bindings/arm/vexpress-sysreg.txt50
-rw-r--r--Documentation/devicetree/bindings/arm/vexpress.txt98
-rw-r--r--Documentation/devicetree/bindings/ata/exynos-sata-phy.txt14
-rw-r--r--Documentation/devicetree/bindings/ata/exynos-sata.txt17
-rw-r--r--Documentation/devicetree/bindings/bus/omap-ocp2scp.txt18
-rw-r--r--Documentation/devicetree/bindings/clock/imx23-clock.txt2
-rw-r--r--Documentation/devicetree/bindings/clock/imx25-clock.txt162
-rw-r--r--Documentation/devicetree/bindings/clock/imx28-clock.txt4
-rw-r--r--Documentation/devicetree/bindings/clock/imx5-clock.txt191
-rw-r--r--Documentation/devicetree/bindings/clock/imx6q-clock.txt9
-rw-r--r--Documentation/devicetree/bindings/clock/zynq-7000.txt55
-rw-r--r--Documentation/devicetree/bindings/cpufreq/cpufreq-spear.txt42
-rw-r--r--Documentation/devicetree/bindings/drm/exynos/hdmi.txt22
-rw-r--r--Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt12
-rw-r--r--Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt12
-rw-r--r--Documentation/devicetree/bindings/drm/exynos/mixer.txt15
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio-poweroff.txt22
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio-stmpe.txt18
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio.txt36
-rw-r--r--Documentation/devicetree/bindings/gpio/gpio_atmel.txt5
-rw-r--r--Documentation/devicetree/bindings/gpio/leds-ns2.txt26
-rw-r--r--Documentation/devicetree/bindings/gpio/spear_spics.txt50
-rw-r--r--Documentation/devicetree/bindings/hwmon/vexpress.txt23
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-at91.txt (renamed from Documentation/devicetree/bindings/i2c/atmel-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-davinci.txt (renamed from Documentation/devicetree/bindings/i2c/davinci.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-gpio.txt (renamed from Documentation/devicetree/bindings/i2c/gpio-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-imx.txt (renamed from Documentation/devicetree/bindings/i2c/fsl-imx-i2c.txt)4
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-mpc.txt (renamed from Documentation/devicetree/bindings/i2c/fsl-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-mux.txt (renamed from Documentation/devicetree/bindings/i2c/mux.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt18
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-nomadik.txt (renamed from Documentation/devicetree/bindings/i2c/nomadik.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-octeon.txt (renamed from Documentation/devicetree/bindings/i2c/cavium-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-omap.txt (renamed from Documentation/devicetree/bindings/i2c/omap-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-pnx.txt (renamed from Documentation/devicetree/bindings/i2c/pnx.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-pxa-pci-ce4100.txt (renamed from Documentation/devicetree/bindings/i2c/ce4100-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-pxa.txt (renamed from Documentation/devicetree/bindings/i2c/mrvl-i2c.txt)18
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-s3c2410.txt (renamed from Documentation/devicetree/bindings/i2c/samsung-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-sirf.txt (renamed from Documentation/devicetree/bindings/i2c/sirf-i2c.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-versatile.txt (renamed from Documentation/devicetree/bindings/i2c/arm-versatile.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-xiic.txt (renamed from Documentation/devicetree/bindings/i2c/xiic.txt)0
-rw-r--r--Documentation/devicetree/bindings/i2c/trivial-devices.txt2
-rw-r--r--Documentation/devicetree/bindings/input/touchscreen/bu21013.txt28
-rw-r--r--Documentation/devicetree/bindings/interrupt-controller/allwinner,sunxi-ic.txt104
-rw-r--r--Documentation/devicetree/bindings/leds/common.txt23
-rw-r--r--Documentation/devicetree/bindings/leds/leds-gpio.txt (renamed from Documentation/devicetree/bindings/gpio/led.txt)14
-rw-r--r--Documentation/devicetree/bindings/media/s5p-mfc.txt23
-rw-r--r--Documentation/devicetree/bindings/mfd/ab8500.txt27
-rw-r--r--Documentation/devicetree/bindings/misc/atmel-ssc.txt15
-rw-r--r--Documentation/devicetree/bindings/mmc/mmc.txt8
-rw-r--r--Documentation/devicetree/bindings/mmc/samsung-sdhci.txt20
-rw-r--r--Documentation/devicetree/bindings/mmc/synopsis-dw-mshc.txt (renamed from Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt)0
-rw-r--r--Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt1
-rw-r--r--Documentation/devicetree/bindings/mmc/vt8500-sdmmc.txt23
-rw-r--r--Documentation/devicetree/bindings/net/can/grcan.txt28
-rw-r--r--Documentation/devicetree/bindings/net/cdns-emac.txt23
-rw-r--r--Documentation/devicetree/bindings/net/cpsw.txt48
-rw-r--r--Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt141
-rw-r--r--Documentation/devicetree/bindings/pinctrl/marvell,kirkwood-pinctrl.txt39
-rw-r--r--Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt119
-rw-r--r--Documentation/devicetree/bindings/power_supply/ab8500/btemp.txt16
-rw-r--r--Documentation/devicetree/bindings/power_supply/ab8500/chargalg.txt16
-rw-r--r--Documentation/devicetree/bindings/power_supply/ab8500/charger.txt25
-rw-r--r--Documentation/devicetree/bindings/power_supply/ab8500/fg.txt58
-rw-r--r--Documentation/devicetree/bindings/regulator/gpio-regulator.txt37
-rw-r--r--Documentation/devicetree/bindings/regulator/max8925-regulator.txt40
-rw-r--r--Documentation/devicetree/bindings/regulator/max8997-regulator.txt146
-rw-r--r--Documentation/devicetree/bindings/regulator/vexpress.txt32
-rw-r--r--Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt19
-rw-r--r--Documentation/devicetree/bindings/rtc/orion-rtc.txt18
-rw-r--r--Documentation/devicetree/bindings/sound/ak4104.txt22
-rw-r--r--Documentation/devicetree/bindings/sound/atmel-at91sam9g20ek-wm8731-audio.txt26
-rw-r--r--Documentation/devicetree/bindings/sound/cs4271.txt2
-rw-r--r--Documentation/devicetree/bindings/sound/omap-abe-twl6040.txt4
-rw-r--r--Documentation/devicetree/bindings/spi/nvidia,tegra20-sflash.txt26
-rw-r--r--Documentation/devicetree/bindings/spi/nvidia,tegra20-slink.txt26
-rw-r--r--Documentation/devicetree/bindings/spi/omap-spi.txt4
-rw-r--r--Documentation/devicetree/bindings/spi/spi-bus.txt22
-rw-r--r--Documentation/devicetree/bindings/thermal/db8500-thermal.txt44
-rw-r--r--Documentation/devicetree/bindings/timer/allwinner,sunxi-timer.txt17
-rw-r--r--Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt21
-rw-r--r--Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt23
-rw-r--r--Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt8
-rw-r--r--Documentation/devicetree/bindings/tty/serial/of-serial.txt5
-rw-r--r--Documentation/devicetree/bindings/usb/am33xx-usb.txt29
-rw-r--r--Documentation/devicetree/bindings/usb/ehci-orion.txt15
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt7
-rw-r--r--Documentation/devicetree/bindings/watchdog/atmel-wdt.txt15
-rw-r--r--Documentation/devicetree/bindings/watchdog/brcm,bcm2835-pm-wdog.txt13
-rw-r--r--Documentation/devicetree/bindings/watchdog/sunxi-wdt.txt13
104 files changed, 2523 insertions, 155 deletions
diff --git a/Documentation/devicetree/bindings/arm/altera/socfpga-reset.txt b/Documentation/devicetree/bindings/arm/altera/socfpga-reset.txt
new file mode 100644
index 000000000000..ecdb57d69dbf
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/altera/socfpga-reset.txt
@@ -0,0 +1,11 @@
1Altera SOCFPGA Reset Manager
2
3Required properties:
4- compatible : "altr,rst-mgr"
5- reg : Should contain 1 register ranges(address and length)
6
7Example:
8 rstmgr@ffd05000 {
9 compatible = "altr,rst-mgr";
10 reg = <0xffd05000 0x1000>;
11 };
diff --git a/Documentation/devicetree/bindings/arm/altera/socfpga-system.txt b/Documentation/devicetree/bindings/arm/altera/socfpga-system.txt
new file mode 100644
index 000000000000..07c65e3cdcbe
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/altera/socfpga-system.txt
@@ -0,0 +1,11 @@
1Altera SOCFPGA System Manager
2
3Required properties:
4- compatible : "altr,sys-mgr"
5- reg : Should contain 1 register ranges(address and length)
6
7Example:
8 sysmgr@ffd08000 {
9 compatible = "altr,sys-mgr";
10 reg = <0xffd08000 0x1000>;
11 };
diff --git a/Documentation/devicetree/bindings/arm/arm-boards b/Documentation/devicetree/bindings/arm/arm-boards
index fc81a7d6b0f1..db5858e32d3f 100644
--- a/Documentation/devicetree/bindings/arm/arm-boards
+++ b/Documentation/devicetree/bindings/arm/arm-boards
@@ -9,6 +9,10 @@ Required properties (in root node):
9 9
10FPGA type interrupt controllers, see the versatile-fpga-irq binding doc. 10FPGA type interrupt controllers, see the versatile-fpga-irq binding doc.
11 11
12In the root node the Integrator/CP must have a /cpcon node pointing
13to the CP control registers, and the Integrator/AP must have a
14/syscon node pointing to the Integrator/AP system controller.
15
12 16
13ARM Versatile Application and Platform Baseboards 17ARM Versatile Application and Platform Baseboards
14------------------------------------------------- 18-------------------------------------------------
diff --git a/Documentation/devicetree/bindings/arm/atmel-at91.txt b/Documentation/devicetree/bindings/arm/atmel-at91.txt
index d187e9f7cf1c..1196290082d1 100644
--- a/Documentation/devicetree/bindings/arm/atmel-at91.txt
+++ b/Documentation/devicetree/bindings/arm/atmel-at91.txt
@@ -7,6 +7,12 @@ PIT Timer required properties:
7- interrupts: Should contain interrupt for the PIT which is the IRQ line 7- interrupts: Should contain interrupt for the PIT which is the IRQ line
8 shared across all System Controller members. 8 shared across all System Controller members.
9 9
10System Timer (ST) required properties:
11- compatible: Should be "atmel,at91rm9200-st"
12- reg: Should contain registers location and length
13- interrupts: Should contain interrupt for the ST which is the IRQ line
14 shared across all System Controller members.
15
10TC/TCLIB Timer required properties: 16TC/TCLIB Timer required properties:
11- compatible: Should be "atmel,<chip>-tcb". 17- compatible: Should be "atmel,<chip>-tcb".
12 <chip> can be "at91rm9200" or "at91sam9x5" 18 <chip> can be "at91rm9200" or "at91sam9x5"
diff --git a/Documentation/devicetree/bindings/arm/bcm/bcm11351.txt b/Documentation/devicetree/bindings/arm/bcm/bcm11351.txt
new file mode 100644
index 000000000000..fb7b5cd2652f
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/bcm/bcm11351.txt
@@ -0,0 +1,9 @@
1Broadcom BCM11351 device tree bindings
2-------------------------------------------
3
4Boards with the bcm281xx SoC family (which includes bcm11130, bcm11140,
5bcm11351, bcm28145, bcm28155 SoCs) shall have the following properties:
6
7Required root node property:
8
9compatible = "bcm,bcm11351";
diff --git a/Documentation/devicetree/bindings/arm/calxeda.txt b/Documentation/devicetree/bindings/arm/calxeda.txt
index 4755caaccba6..25fcf96795ca 100644
--- a/Documentation/devicetree/bindings/arm/calxeda.txt
+++ b/Documentation/devicetree/bindings/arm/calxeda.txt
@@ -1,8 +1,15 @@
1Calxeda Highbank Platforms Device Tree Bindings 1Calxeda Platforms Device Tree Bindings
2----------------------------------------------- 2-----------------------------------------------
3 3
4Boards with Calxeda Cortex-A9 based Highbank SOC shall have the following 4Boards with Calxeda Cortex-A9 based ECX-1000 (Highbank) SOC shall have the
5properties. 5following properties.
6 6
7Required root node properties: 7Required root node properties:
8 - compatible = "calxeda,highbank"; 8 - compatible = "calxeda,highbank";
9
10
11Boards with Calxeda Cortex-A15 based ECX-2000 SOC shall have the following
12properties.
13
14Required root node properties:
15 - compatible = "calxeda,ecx-2000";
diff --git a/Documentation/devicetree/bindings/arm/cpus.txt b/Documentation/devicetree/bindings/arm/cpus.txt
new file mode 100644
index 000000000000..f32494dbfe19
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/cpus.txt
@@ -0,0 +1,77 @@
1* ARM CPUs binding description
2
3The device tree allows to describe the layout of CPUs in a system through
4the "cpus" node, which in turn contains a number of subnodes (ie "cpu")
5defining properties for every cpu.
6
7Bindings for CPU nodes follow the ePAPR standard, available from:
8
9http://devicetree.org
10
11For the ARM architecture every CPU node must contain the following properties:
12
13- device_type: must be "cpu"
14- reg: property matching the CPU MPIDR[23:0] register bits
15 reg[31:24] bits must be set to 0
16- compatible: should be one of:
17 "arm,arm1020"
18 "arm,arm1020e"
19 "arm,arm1022"
20 "arm,arm1026"
21 "arm,arm720"
22 "arm,arm740"
23 "arm,arm7tdmi"
24 "arm,arm920"
25 "arm,arm922"
26 "arm,arm925"
27 "arm,arm926"
28 "arm,arm940"
29 "arm,arm946"
30 "arm,arm9tdmi"
31 "arm,cortex-a5"
32 "arm,cortex-a7"
33 "arm,cortex-a8"
34 "arm,cortex-a9"
35 "arm,cortex-a15"
36 "arm,arm1136"
37 "arm,arm1156"
38 "arm,arm1176"
39 "arm,arm11mpcore"
40 "faraday,fa526"
41 "intel,sa110"
42 "intel,sa1100"
43 "marvell,feroceon"
44 "marvell,mohawk"
45 "marvell,xsc3"
46 "marvell,xscale"
47
48Example:
49
50 cpus {
51 #size-cells = <0>;
52 #address-cells = <1>;
53
54 CPU0: cpu@0 {
55 device_type = "cpu";
56 compatible = "arm,cortex-a15";
57 reg = <0x0>;
58 };
59
60 CPU1: cpu@1 {
61 device_type = "cpu";
62 compatible = "arm,cortex-a15";
63 reg = <0x1>;
64 };
65
66 CPU2: cpu@100 {
67 device_type = "cpu";
68 compatible = "arm,cortex-a7";
69 reg = <0x100>;
70 };
71
72 CPU3: cpu@101 {
73 device_type = "cpu";
74 compatible = "arm,cortex-a7";
75 reg = <0x101>;
76 };
77 };
diff --git a/Documentation/devicetree/bindings/arm/davinci.txt b/Documentation/devicetree/bindings/arm/davinci.txt
new file mode 100644
index 000000000000..cfaeda4274e6
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/davinci.txt
@@ -0,0 +1,17 @@
1Texas Instruments DaVinci Platforms Device Tree Bindings
2--------------------------------------------------------
3
4DA850/OMAP-L138/AM18x Evaluation Module (EVM) board
5Required root node properties:
6 - compatible = "ti,da850-evm", "ti,da850";
7
8EnBW AM1808 based CMC board
9Required root node properties:
10 - compatible = "enbw,cmc", "ti,da850;
11
12Generic DaVinci Boards
13----------------------
14
15DA850/OMAP-L138/AM18x generic board
16Required root node properties:
17 - compatible = "ti,da850";
diff --git a/Documentation/devicetree/bindings/arm/davinci/nand.txt b/Documentation/devicetree/bindings/arm/davinci/nand.txt
index e37241f1fdd8..49fc7ada929a 100644
--- a/Documentation/devicetree/bindings/arm/davinci/nand.txt
+++ b/Documentation/devicetree/bindings/arm/davinci/nand.txt
@@ -23,29 +23,16 @@ Recommended properties :
23- ti,davinci-nand-buswidth: buswidth 8 or 16 23- ti,davinci-nand-buswidth: buswidth 8 or 16
24- ti,davinci-nand-use-bbt: use flash based bad block table support. 24- ti,davinci-nand-use-bbt: use flash based bad block table support.
25 25
26Example (enbw_cmc board): 26Example(da850 EVM ):
27aemif@60000000 { 27nand_cs3@62000000 {
28 compatible = "ti,davinci-aemif"; 28 compatible = "ti,davinci-nand";
29 #address-cells = <2>; 29 reg = <0x62000000 0x807ff
30 #size-cells = <1>; 30 0x68000000 0x8000>;
31 reg = <0x68000000 0x80000>; 31 ti,davinci-chipselect = <1>;
32 ranges = <2 0 0x60000000 0x02000000 32 ti,davinci-mask-ale = <0>;
33 3 0 0x62000000 0x02000000 33 ti,davinci-mask-cle = <0>;
34 4 0 0x64000000 0x02000000 34 ti,davinci-mask-chipsel = <0>;
35 5 0 0x66000000 0x02000000 35 ti,davinci-ecc-mode = "hw";
36 6 0 0x68000000 0x02000000>; 36 ti,davinci-ecc-bits = <4>;
37 nand@3,0 { 37 ti,davinci-nand-use-bbt;
38 compatible = "ti,davinci-nand";
39 reg = <3 0x0 0x807ff
40 6 0x0 0x8000>;
41 #address-cells = <1>;
42 #size-cells = <1>;
43 ti,davinci-chipselect = <1>;
44 ti,davinci-mask-ale = <0>;
45 ti,davinci-mask-cle = <0>;
46 ti,davinci-mask-chipsel = <0>;
47 ti,davinci-ecc-mode = "hw";
48 ti,davinci-ecc-bits = <4>;
49 ti,davinci-nand-use-bbt;
50 };
51}; 38};
diff --git a/Documentation/devicetree/bindings/arm/exynos/power_domain.txt b/Documentation/devicetree/bindings/arm/exynos/power_domain.txt
index 6528e215c5fe..5216b419016a 100644
--- a/Documentation/devicetree/bindings/arm/exynos/power_domain.txt
+++ b/Documentation/devicetree/bindings/arm/exynos/power_domain.txt
@@ -4,14 +4,13 @@ Exynos processors include support for multiple power domains which are used
4to gate power to one or more peripherals on the processor. 4to gate power to one or more peripherals on the processor.
5 5
6Required Properties: 6Required Properties:
7- compatiable: should be one of the following. 7- compatible: should be one of the following.
8 * samsung,exynos4210-pd - for exynos4210 type power domain. 8 * samsung,exynos4210-pd - for exynos4210 type power domain.
9- reg: physical base address of the controller and length of memory mapped 9- reg: physical base address of the controller and length of memory mapped
10 region. 10 region.
11 11
12Optional Properties: 12Node of a device using power domains must have a samsung,power-domain property
13- samsung,exynos4210-pd-off: Specifies that the power domain is in turned-off 13defined with a phandle to respective power domain.
14 state during boot and remains to be turned-off until explicitly turned-on.
15 14
16Example: 15Example:
17 16
@@ -19,3 +18,11 @@ Example:
19 compatible = "samsung,exynos4210-pd"; 18 compatible = "samsung,exynos4210-pd";
20 reg = <0x10023C00 0x10>; 19 reg = <0x10023C00 0x10>;
21 }; 20 };
21
22Example of the node using power domain:
23
24 node {
25 /* ... */
26 samsung,power-domain = <&lcd0>;
27 /* ... */
28 };
diff --git a/Documentation/devicetree/bindings/arm/fsl.txt b/Documentation/devicetree/bindings/arm/fsl.txt
index ac9e7516756e..f79818711e83 100644
--- a/Documentation/devicetree/bindings/arm/fsl.txt
+++ b/Documentation/devicetree/bindings/arm/fsl.txt
@@ -41,6 +41,10 @@ i.MX6 Quad SABRE Smart Device Board
41Required root node properties: 41Required root node properties:
42 - compatible = "fsl,imx6q-sabresd", "fsl,imx6q"; 42 - compatible = "fsl,imx6q-sabresd", "fsl,imx6q";
43 43
44i.MX6 Quad SABRE Automotive Board
45Required root node properties:
46 - compatible = "fsl,imx6q-sabreauto", "fsl,imx6q";
47
44Generic i.MX boards 48Generic i.MX boards
45------------------- 49-------------------
46 50
diff --git a/Documentation/devicetree/bindings/arm/l2cc.txt b/Documentation/devicetree/bindings/arm/l2cc.txt
index 76b0ee6ee9a4..cbef09b5c8a7 100644
--- a/Documentation/devicetree/bindings/arm/l2cc.txt
+++ b/Documentation/devicetree/bindings/arm/l2cc.txt
@@ -46,7 +46,7 @@ L2: cache-controller {
46 reg = <0xfff12000 0x1000>; 46 reg = <0xfff12000 0x1000>;
47 arm,data-latency = <1 1 1>; 47 arm,data-latency = <1 1 1>;
48 arm,tag-latency = <2 2 2>; 48 arm,tag-latency = <2 2 2>;
49 arm,filter-latency = <0x80000000 0x8000000>; 49 arm,filter-ranges = <0x80000000 0x8000000>;
50 cache-unified; 50 cache-unified;
51 cache-level = <2>; 51 cache-level = <2>;
52 interrupts = <45>; 52 interrupts = <45>;
diff --git a/Documentation/devicetree/bindings/arm/omap/counter.txt b/Documentation/devicetree/bindings/arm/omap/counter.txt
new file mode 100644
index 000000000000..5bd8aa091315
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/omap/counter.txt
@@ -0,0 +1,15 @@
1OMAP Counter-32K bindings
2
3Required properties:
4- compatible: Must be "ti,omap-counter32k" for OMAP controllers
5- reg: Contains timer register address range (base address and length)
6- ti,hwmods: Name of the hwmod associated to the counter, which is typically
7 "counter_32k"
8
9Example:
10
11counter32k: counter@4a304000 {
12 compatible = "ti,omap-counter32k";
13 reg = <0x4a304000 0x20>;
14 ti,hwmods = "counter_32k";
15};
diff --git a/Documentation/devicetree/bindings/arm/omap/timer.txt b/Documentation/devicetree/bindings/arm/omap/timer.txt
new file mode 100644
index 000000000000..8732d4d41f8b
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/omap/timer.txt
@@ -0,0 +1,31 @@
1OMAP Timer bindings
2
3Required properties:
4- compatible: Must be "ti,omap2-timer" for OMAP2+ controllers.
5- reg: Contains timer register address range (base address and
6 length).
7- interrupts: Contains the interrupt information for the timer. The
8 format is being dependent on which interrupt controller
9 the OMAP device uses.
10- ti,hwmods: Name of the hwmod associated to the timer, "timer<X>",
11 where <X> is the instance number of the timer from the
12 HW spec.
13
14Optional properties:
15- ti,timer-alwon: Indicates the timer is in an alway-on power domain.
16- ti,timer-dsp: Indicates the timer can interrupt the on-chip DSP in
17 addition to the ARM CPU.
18- ti,timer-pwm: Indicates the timer can generate a PWM output.
19- ti,timer-secure: Indicates the timer is reserved on a secure OMAP device
20 and therefore cannot be used by the kernel.
21
22Example:
23
24timer12: timer@48304000 {
25 compatible = "ti,omap2-timer";
26 reg = <0x48304000 0x400>;
27 interrupts = <95>;
28 ti,hwmods = "timer12"
29 ti,timer-alwon;
30 ti,timer-secure;
31};
diff --git a/Documentation/devicetree/bindings/arm/spear/shirq.txt b/Documentation/devicetree/bindings/arm/spear/shirq.txt
new file mode 100644
index 000000000000..13fbb8866bd6
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/spear/shirq.txt
@@ -0,0 +1,48 @@
1* SPEAr Shared IRQ layer (shirq)
2
3SPEAr3xx architecture includes shared/multiplexed irqs for certain set
4of devices. The multiplexor provides a single interrupt to parent
5interrupt controller (VIC) on behalf of a group of devices.
6
7There can be multiple groups available on SPEAr3xx variants but not
8exceeding 4. The number of devices in a group can differ, further they
9may share same set of status/mask registers spanning across different
10bit masks. Also in some cases the group may not have enable or other
11registers. This makes software little complex.
12
13A single node in the device tree is used to describe the shared
14interrupt multiplexor (one node for all groups). A group in the
15interrupt controller shares config/control registers with other groups.
16For example, a 32-bit interrupt enable/disable config register can
17accommodate upto 4 interrupt groups.
18
19Required properties:
20 - compatible: should be, either of
21 - "st,spear300-shirq"
22 - "st,spear310-shirq"
23 - "st,spear320-shirq"
24 - interrupt-controller: Identifies the node as an interrupt controller.
25 - #interrupt-cells: should be <1> which basically contains the offset
26 (starting from 0) of interrupts for all the groups.
27 - reg: Base address and size of shirq registers.
28 - interrupts: The list of interrupts generated by the groups which are
29 then connected to a parent interrupt controller. Each group is
30 associated with one of the interrupts, hence number of interrupts (to
31 parent) is equal to number of groups. The format of the interrupt
32 specifier depends in the interrupt parent controller.
33
34 Optional properties:
35 - interrupt-parent: pHandle of the parent interrupt controller, if not
36 inherited from the parent node.
37
38Example:
39
40The following is an example from the SPEAr320 SoC dtsi file.
41
42shirq: interrupt-controller@0xb3000000 {
43 compatible = "st,spear320-shirq";
44 reg = <0xb3000000 0x1000>;
45 interrupts = <28 29 30 1>;
46 #interrupt-cells = <1>;
47 interrupt-controller;
48};
diff --git a/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt b/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
new file mode 100644
index 000000000000..9cf3f25544c7
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
@@ -0,0 +1,50 @@
1ARM Versatile Express system registers
2--------------------------------------
3
4This is a system control registers block, providing multiple low level
5platform functions like board detection and identification, software
6interrupt generation, MMC and NOR Flash control etc.
7
8Required node properties:
9- compatible value : = "arm,vexpress,sysreg";
10- reg : physical base address and the size of the registers window
11- gpio-controller : specifies that the node is a GPIO controller
12- #gpio-cells : size of the GPIO specifier, should be 2:
13 - first cell is the pseudo-GPIO line number:
14 0 - MMC CARDIN
15 1 - MMC WPROT
16 2 - NOR FLASH WPn
17 - second cell can take standard GPIO flags (currently ignored).
18
19Example:
20 v2m_sysreg: sysreg@10000000 {
21 compatible = "arm,vexpress-sysreg";
22 reg = <0x10000000 0x1000>;
23 gpio-controller;
24 #gpio-cells = <2>;
25 };
26
27This block also can also act a bridge to the platform's configuration
28bus via "system control" interface, addressing devices with site number,
29position in the board stack, config controller, function and device
30numbers - see motherboard's TRM for more details.
31
32The node describing a config device must refer to the sysreg node via
33"arm,vexpress,config-bridge" phandle (can be also defined in the node's
34parent) and relies on the board topology properties - see main vexpress
35node documentation for more details. It must must also define the
36following property:
37- arm,vexpress-sysreg,func : must contain two cells:
38 - first cell defines function number (eg. 1 for clock generator,
39 2 for voltage regulators etc.)
40 - device number (eg. osc 0, osc 1 etc.)
41
42Example:
43 mcc {
44 arm,vexpress,config-bridge = <&v2m_sysreg>;
45
46 osc@0 {
47 compatible = "arm,vexpress-osc";
48 arm,vexpress-sysreg,func = <1 0>;
49 };
50 };
diff --git a/Documentation/devicetree/bindings/arm/vexpress.txt b/Documentation/devicetree/bindings/arm/vexpress.txt
index ec8b50cbb2e8..ae49161e478a 100644
--- a/Documentation/devicetree/bindings/arm/vexpress.txt
+++ b/Documentation/devicetree/bindings/arm/vexpress.txt
@@ -11,6 +11,10 @@ the motherboard file using a /include/ directive. As the motherboard
11can be initialized in one of two different configurations ("memory 11can be initialized in one of two different configurations ("memory
12maps"), care must be taken to include the correct one. 12maps"), care must be taken to include the correct one.
13 13
14
15Root node
16---------
17
14Required properties in the root node: 18Required properties in the root node:
15- compatible value: 19- compatible value:
16 compatible = "arm,vexpress,<model>", "arm,vexpress"; 20 compatible = "arm,vexpress,<model>", "arm,vexpress";
@@ -45,6 +49,10 @@ Optional properties in the root node:
45 - Coretile Express A9x4 (V2P-CA9) HBI-0225: 49 - Coretile Express A9x4 (V2P-CA9) HBI-0225:
46 arm,hbi = <0x225>; 50 arm,hbi = <0x225>;
47 51
52
53CPU nodes
54---------
55
48Top-level standard "cpus" node is required. It must contain a node 56Top-level standard "cpus" node is required. It must contain a node
49with device_type = "cpu" property for every available core, eg.: 57with device_type = "cpu" property for every available core, eg.:
50 58
@@ -59,6 +67,52 @@ with device_type = "cpu" property for every available core, eg.:
59 }; 67 };
60 }; 68 };
61 69
70
71Configuration infrastructure
72----------------------------
73
74The platform has an elaborated configuration system, consisting of
75microcontrollers residing on the mother- and daughterboards known
76as Motherboard/Daughterboard Configuration Controller (MCC and DCC).
77The controllers are responsible for the platform initialization
78(reset generation, flash programming, FPGA bitfiles loading etc.)
79but also control clock generators, voltage regulators, gather
80environmental data like temperature, power consumption etc. Even
81the video output switch (FPGA) is controlled that way.
82
83Nodes describing devices controlled by this infrastructure should
84point at the bridge device node:
85- bridge phandle:
86 arm,vexpress,config-bridge = <phandle>;
87This property can be also defined in a parent node (eg. for a DCC)
88and is effective for all children.
89
90
91Platform topology
92-----------------
93
94As Versatile Express can be configured in number of physically
95different setups, the device tree should describe platform topology.
96Root node and main motherboard node must define the following
97property, describing physical location of the children nodes:
98- site number:
99 arm,vexpress,site = <number>;
100 where 0 means motherboard, 1 or 2 are daugtherboard sites,
101 0xf means "master" site (site containing main CPU tile)
102- when daughterboards are stacked on one site, their position
103 in the stack be be described with:
104 arm,vexpress,position = <number>;
105- when describing tiles consisting more than one DCC, its number
106 can be described with:
107 arm,vexpress,dcc = <number>;
108
109Any of the numbers above defaults to zero if not defined in
110the node or any of its parent.
111
112
113Motherboard
114-----------
115
62The motherboard description file provides a single "motherboard" node 116The motherboard description file provides a single "motherboard" node
63using 2 address cells corresponding to the Static Memory Bus used 117using 2 address cells corresponding to the Static Memory Bus used
64between the motherboard and the tile. The first cell defines the Chip 118between the motherboard and the tile. The first cell defines the Chip
@@ -87,22 +141,30 @@ can be used to obtain required phandle in the tile's "aliases" node:
87- SP804 timers: 141- SP804 timers:
88 v2m_timer01 and v2m_timer23 142 v2m_timer01 and v2m_timer23
89 143
90Current Linux implementation requires a "arm,v2m_timer" alias 144The tile description should define a "smb" node, describing the
91pointing at one of the motherboard's SP804 timers, if it is to be 145Static Memory Bus between the tile and motherboard. It must define
92used as the system timer. This alias should be defined in the 146the following properties:
93motherboard files. 147- "simple-bus" compatible value (to ensure creation of the children)
148 compatible = "simple-bus";
149- mapping of the SMB CS/offset addresses into main address space:
150 #address-cells = <2>;
151 #size-cells = <1>;
152 ranges = <...>;
153- interrupts mapping:
154 #interrupt-cells = <1>;
155 interrupt-map-mask = <0 0 63>;
156 interrupt-map = <...>;
94 157
95The tile description must define "ranges", "interrupt-map-mask" and
96"interrupt-map" properties to translate the motherboard's address
97and interrupt space into one used by the tile's processor.
98 158
99Abbreviated example: 159Example of a VE tile description (simplified)
160---------------------------------------------
100 161
101/dts-v1/; 162/dts-v1/;
102 163
103/ { 164/ {
104 model = "V2P-CA5s"; 165 model = "V2P-CA5s";
105 arm,hbi = <0x225>; 166 arm,hbi = <0x225>;
167 arm,vexpress,site = <0xf>;
106 compatible = "arm,vexpress-v2p-ca5s", "arm,vexpress"; 168 compatible = "arm,vexpress-v2p-ca5s", "arm,vexpress";
107 interrupt-parent = <&gic>; 169 interrupt-parent = <&gic>;
108 #address-cells = <1>; 170 #address-cells = <1>;
@@ -134,13 +196,29 @@ Abbreviated example:
134 <0x2c000100 0x100>; 196 <0x2c000100 0x100>;
135 }; 197 };
136 198
137 motherboard { 199 dcc {
200 compatible = "simple-bus";
201 arm,vexpress,config-bridge = <&v2m_sysreg>;
202
203 osc@0 {
204 compatible = "arm,vexpress-osc";
205 };
206 };
207
208 smb {
209 compatible = "simple-bus";
210
211 #address-cells = <2>;
212 #size-cells = <1>;
138 /* CS0 is visible at 0x08000000 */ 213 /* CS0 is visible at 0x08000000 */
139 ranges = <0 0 0x08000000 0x04000000>; 214 ranges = <0 0 0x08000000 0x04000000>;
215
216 #interrupt-cells = <1>;
140 interrupt-map-mask = <0 0 63>; 217 interrupt-map-mask = <0 0 63>;
141 /* Active high IRQ 0 is connected to GIC's SPI0 */ 218 /* Active high IRQ 0 is connected to GIC's SPI0 */
142 interrupt-map = <0 0 0 &gic 0 0 4>; 219 interrupt-map = <0 0 0 &gic 0 0 4>;
220
221 /include/ "vexpress-v2m-rs1.dtsi"
143 }; 222 };
144}; 223};
145 224
146/include/ "vexpress-v2m-rs1.dtsi"
diff --git a/Documentation/devicetree/bindings/ata/exynos-sata-phy.txt b/Documentation/devicetree/bindings/ata/exynos-sata-phy.txt
new file mode 100644
index 000000000000..37824fac688e
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/exynos-sata-phy.txt
@@ -0,0 +1,14 @@
1* Samsung SATA PHY Controller
2
3SATA PHY nodes are defined to describe on-chip SATA Physical layer controllers.
4Each SATA PHY controller should have its own node.
5
6Required properties:
7- compatible : compatible list, contains "samsung,exynos5-sata-phy"
8- reg : <registers mapping>
9
10Example:
11 sata@ffe07000 {
12 compatible = "samsung,exynos5-sata-phy";
13 reg = <0xffe07000 0x1000>;
14 };
diff --git a/Documentation/devicetree/bindings/ata/exynos-sata.txt b/Documentation/devicetree/bindings/ata/exynos-sata.txt
new file mode 100644
index 000000000000..0849f1025e34
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/exynos-sata.txt
@@ -0,0 +1,17 @@
1* Samsung AHCI SATA Controller
2
3SATA nodes are defined to describe on-chip Serial ATA controllers.
4Each SATA controller should have its own node.
5
6Required properties:
7- compatible : compatible list, contains "samsung,exynos5-sata"
8- interrupts : <interrupt mapping for SATA IRQ>
9- reg : <registers mapping>
10- samsung,sata-freq : <frequency in MHz>
11
12Example:
13 sata@ffe08000 {
14 compatible = "samsung,exynos5-sata";
15 reg = <0xffe08000 0x1000>;
16 interrupts = <115>;
17 };
diff --git a/Documentation/devicetree/bindings/bus/omap-ocp2scp.txt b/Documentation/devicetree/bindings/bus/omap-ocp2scp.txt
index d2fe064a828b..63dd8051521c 100644
--- a/Documentation/devicetree/bindings/bus/omap-ocp2scp.txt
+++ b/Documentation/devicetree/bindings/bus/omap-ocp2scp.txt
@@ -2,9 +2,27 @@
2 2
3properties: 3properties:
4- compatible : Should be "ti,omap-ocp2scp" 4- compatible : Should be "ti,omap-ocp2scp"
5- reg : Address and length of the register set for the device
5- #address-cells, #size-cells : Must be present if the device has sub-nodes 6- #address-cells, #size-cells : Must be present if the device has sub-nodes
6- ranges : the child address space are mapped 1:1 onto the parent address space 7- ranges : the child address space are mapped 1:1 onto the parent address space
7- ti,hwmods : must be "ocp2scp_usb_phy" 8- ti,hwmods : must be "ocp2scp_usb_phy"
8 9
9Sub-nodes: 10Sub-nodes:
10All the devices connected to ocp2scp are described using sub-node to ocp2scp 11All the devices connected to ocp2scp are described using sub-node to ocp2scp
12
13ocp2scp@4a0ad000 {
14 compatible = "ti,omap-ocp2scp";
15 reg = <0x4a0ad000 0x1f>;
16 #address-cells = <1>;
17 #size-cells = <1>;
18 ranges;
19 ti,hwmods = "ocp2scp_usb_phy";
20
21 subnode1 {
22 ...
23 };
24
25 subnode2 {
26 ...
27 };
28};
diff --git a/Documentation/devicetree/bindings/clock/imx23-clock.txt b/Documentation/devicetree/bindings/clock/imx23-clock.txt
index a0b867ef8d96..baadbb11fe98 100644
--- a/Documentation/devicetree/bindings/clock/imx23-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx23-clock.txt
@@ -52,7 +52,7 @@ clocks and IDs.
52 lcdif 38 52 lcdif 38
53 etm 39 53 etm 39
54 usb 40 54 usb 40
55 usb_pwr 41 55 usb_phy 41
56 56
57Examples: 57Examples:
58 58
diff --git a/Documentation/devicetree/bindings/clock/imx25-clock.txt b/Documentation/devicetree/bindings/clock/imx25-clock.txt
new file mode 100644
index 000000000000..c2a3525ecb4e
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/imx25-clock.txt
@@ -0,0 +1,162 @@
1* Clock bindings for Freescale i.MX25
2
3Required properties:
4- compatible: Should be "fsl,imx25-ccm"
5- reg: Address and length of the register set
6- interrupts: Should contain CCM interrupt
7- #clock-cells: Should be <1>
8
9The clock consumer should specify the desired clock by having the clock
10ID in its "clocks" phandle cell. The following is a full list of i.MX25
11clocks and IDs.
12
13 Clock ID
14 ---------------------------
15 dummy 0
16 osc 1
17 mpll 2
18 upll 3
19 mpll_cpu_3_4 4
20 cpu_sel 5
21 cpu 6
22 ahb 7
23 usb_div 8
24 ipg 9
25 per0_sel 10
26 per1_sel 11
27 per2_sel 12
28 per3_sel 13
29 per4_sel 14
30 per5_sel 15
31 per6_sel 16
32 per7_sel 17
33 per8_sel 18
34 per9_sel 19
35 per10_sel 20
36 per11_sel 21
37 per12_sel 22
38 per13_sel 23
39 per14_sel 24
40 per15_sel 25
41 per0 26
42 per1 27
43 per2 28
44 per3 29
45 per4 30
46 per5 31
47 per6 32
48 per7 33
49 per8 34
50 per9 35
51 per10 36
52 per11 37
53 per12 38
54 per13 39
55 per14 40
56 per15 41
57 csi_ipg_per 42
58 epit_ipg_per 43
59 esai_ipg_per 44
60 esdhc1_ipg_per 45
61 esdhc2_ipg_per 46
62 gpt_ipg_per 47
63 i2c_ipg_per 48
64 lcdc_ipg_per 49
65 nfc_ipg_per 50
66 owire_ipg_per 51
67 pwm_ipg_per 52
68 sim1_ipg_per 53
69 sim2_ipg_per 54
70 ssi1_ipg_per 55
71 ssi2_ipg_per 56
72 uart_ipg_per 57
73 ata_ahb 58
74 reserved 59
75 csi_ahb 60
76 emi_ahb 61
77 esai_ahb 62
78 esdhc1_ahb 63
79 esdhc2_ahb 64
80 fec_ahb 65
81 lcdc_ahb 66
82 rtic_ahb 67
83 sdma_ahb 68
84 slcdc_ahb 69
85 usbotg_ahb 70
86 reserved 71
87 reserved 72
88 reserved 73
89 reserved 74
90 can1_ipg 75
91 can2_ipg 76
92 csi_ipg 77
93 cspi1_ipg 78
94 cspi2_ipg 79
95 cspi3_ipg 80
96 dryice_ipg 81
97 ect_ipg 82
98 epit1_ipg 83
99 epit2_ipg 84
100 reserved 85
101 esdhc1_ipg 86
102 esdhc2_ipg 87
103 fec_ipg 88
104 reserved 89
105 reserved 90
106 reserved 91
107 gpt1_ipg 92
108 gpt2_ipg 93
109 gpt3_ipg 94
110 gpt4_ipg 95
111 reserved 96
112 reserved 97
113 reserved 98
114 iim_ipg 99
115 reserved 100
116 reserved 101
117 kpp_ipg 102
118 lcdc_ipg 103
119 reserved 104
120 pwm1_ipg 105
121 pwm2_ipg 106
122 pwm3_ipg 107
123 pwm4_ipg 108
124 rngb_ipg 109
125 reserved 110
126 scc_ipg 111
127 sdma_ipg 112
128 sim1_ipg 113
129 sim2_ipg 114
130 slcdc_ipg 115
131 spba_ipg 116
132 ssi1_ipg 117
133 ssi2_ipg 118
134 tsc_ipg 119
135 uart1_ipg 120
136 uart2_ipg 121
137 uart3_ipg 122
138 uart4_ipg 123
139 uart5_ipg 124
140 reserved 125
141 wdt_ipg 126
142
143Examples:
144
145clks: ccm@53f80000 {
146 compatible = "fsl,imx25-ccm";
147 reg = <0x53f80000 0x4000>;
148 interrupts = <31>;
149 clock-output-names = ...
150 "uart_ipg",
151 "uart_serial",
152 ...;
153};
154
155uart1: serial@43f90000 {
156 compatible = "fsl,imx25-uart", "fsl,imx21-uart";
157 reg = <0x43f90000 0x4000>;
158 interrupts = <45>;
159 clocks = <&clks 79>, <&clks 50>;
160 clock-names = "ipg", "per";
161 status = "disabled";
162};
diff --git a/Documentation/devicetree/bindings/clock/imx28-clock.txt b/Documentation/devicetree/bindings/clock/imx28-clock.txt
index aa2af2866fe8..52a49a4a50b3 100644
--- a/Documentation/devicetree/bindings/clock/imx28-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx28-clock.txt
@@ -73,8 +73,8 @@ clocks and IDs.
73 can1 59 73 can1 59
74 usb0 60 74 usb0 60
75 usb1 61 75 usb1 61
76 usb0_pwr 62 76 usb0_phy 62
77 usb1_pwr 63 77 usb1_phy 63
78 enet_out 64 78 enet_out 64
79 79
80Examples: 80Examples:
diff --git a/Documentation/devicetree/bindings/clock/imx5-clock.txt b/Documentation/devicetree/bindings/clock/imx5-clock.txt
new file mode 100644
index 000000000000..04ad47876be0
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/imx5-clock.txt
@@ -0,0 +1,191 @@
1* Clock bindings for Freescale i.MX5
2
3Required properties:
4- compatible: Should be "fsl,<soc>-ccm" , where <soc> can be imx51 or imx53
5- reg: Address and length of the register set
6- interrupts: Should contain CCM interrupt
7- #clock-cells: Should be <1>
8
9The clock consumer should specify the desired clock by having the clock
10ID in its "clocks" phandle cell. The following is a full list of i.MX5
11clocks and IDs.
12
13 Clock ID
14 ---------------------------
15 dummy 0
16 ckil 1
17 osc 2
18 ckih1 3
19 ckih2 4
20 ahb 5
21 ipg 6
22 axi_a 7
23 axi_b 8
24 uart_pred 9
25 uart_root 10
26 esdhc_a_pred 11
27 esdhc_b_pred 12
28 esdhc_c_s 13
29 esdhc_d_s 14
30 emi_sel 15
31 emi_slow_podf 16
32 nfc_podf 17
33 ecspi_pred 18
34 ecspi_podf 19
35 usboh3_pred 20
36 usboh3_podf 21
37 usb_phy_pred 22
38 usb_phy_podf 23
39 cpu_podf 24
40 di_pred 25
41 tve_di 26
42 tve_s 27
43 uart1_ipg_gate 28
44 uart1_per_gate 29
45 uart2_ipg_gate 30
46 uart2_per_gate 31
47 uart3_ipg_gate 32
48 uart3_per_gate 33
49 i2c1_gate 34
50 i2c2_gate 35
51 gpt_ipg_gate 36
52 pwm1_ipg_gate 37
53 pwm1_hf_gate 38
54 pwm2_ipg_gate 39
55 pwm2_hf_gate 40
56 gpt_hf_gate 41
57 fec_gate 42
58 usboh3_per_gate 43
59 esdhc1_ipg_gate 44
60 esdhc2_ipg_gate 45
61 esdhc3_ipg_gate 46
62 esdhc4_ipg_gate 47
63 ssi1_ipg_gate 48
64 ssi2_ipg_gate 49
65 ssi3_ipg_gate 50
66 ecspi1_ipg_gate 51
67 ecspi1_per_gate 52
68 ecspi2_ipg_gate 53
69 ecspi2_per_gate 54
70 cspi_ipg_gate 55
71 sdma_gate 56
72 emi_slow_gate 57
73 ipu_s 58
74 ipu_gate 59
75 nfc_gate 60
76 ipu_di1_gate 61
77 vpu_s 62
78 vpu_gate 63
79 vpu_reference_gate 64
80 uart4_ipg_gate 65
81 uart4_per_gate 66
82 uart5_ipg_gate 67
83 uart5_per_gate 68
84 tve_gate 69
85 tve_pred 70
86 esdhc1_per_gate 71
87 esdhc2_per_gate 72
88 esdhc3_per_gate 73
89 esdhc4_per_gate 74
90 usb_phy_gate 75
91 hsi2c_gate 76
92 mipi_hsc1_gate 77
93 mipi_hsc2_gate 78
94 mipi_esc_gate 79
95 mipi_hsp_gate 80
96 ldb_di1_div_3_5 81
97 ldb_di1_div 82
98 ldb_di0_div_3_5 83
99 ldb_di0_div 84
100 ldb_di1_gate 85
101 can2_serial_gate 86
102 can2_ipg_gate 87
103 i2c3_gate 88
104 lp_apm 89
105 periph_apm 90
106 main_bus 91
107 ahb_max 92
108 aips_tz1 93
109 aips_tz2 94
110 tmax1 95
111 tmax2 96
112 tmax3 97
113 spba 98
114 uart_sel 99
115 esdhc_a_sel 100
116 esdhc_b_sel 101
117 esdhc_a_podf 102
118 esdhc_b_podf 103
119 ecspi_sel 104
120 usboh3_sel 105
121 usb_phy_sel 106
122 iim_gate 107
123 usboh3_gate 108
124 emi_fast_gate 109
125 ipu_di0_gate 110
126 gpc_dvfs 111
127 pll1_sw 112
128 pll2_sw 113
129 pll3_sw 114
130 ipu_di0_sel 115
131 ipu_di1_sel 116
132 tve_ext_sel 117
133 mx51_mipi 118
134 pll4_sw 119
135 ldb_di1_sel 120
136 di_pll4_podf 121
137 ldb_di0_sel 122
138 ldb_di0_gate 123
139 usb_phy1_gate 124
140 usb_phy2_gate 125
141 per_lp_apm 126
142 per_pred1 127
143 per_pred2 128
144 per_podf 129
145 per_root 130
146 ssi_apm 131
147 ssi1_root_sel 132
148 ssi2_root_sel 133
149 ssi3_root_sel 134
150 ssi_ext1_sel 135
151 ssi_ext2_sel 136
152 ssi_ext1_com_sel 137
153 ssi_ext2_com_sel 138
154 ssi1_root_pred 139
155 ssi1_root_podf 140
156 ssi2_root_pred 141
157 ssi2_root_podf 142
158 ssi_ext1_pred 143
159 ssi_ext1_podf 144
160 ssi_ext2_pred 145
161 ssi_ext2_podf 146
162 ssi1_root_gate 147
163 ssi2_root_gate 148
164 ssi3_root_gate 149
165 ssi_ext1_gate 150
166 ssi_ext2_gate 151
167 epit1_ipg_gate 152
168 epit1_hf_gate 153
169 epit2_ipg_gate 154
170 epit2_hf_gate 155
171 can_sel 156
172 can1_serial_gate 157
173 can1_ipg_gate 158
174
175Examples (for mx53):
176
177clks: ccm@53fd4000{
178 compatible = "fsl,imx53-ccm";
179 reg = <0x53fd4000 0x4000>;
180 interrupts = <0 71 0x04 0 72 0x04>;
181 #clock-cells = <1>;
182};
183
184can1: can@53fc8000 {
185 compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan";
186 reg = <0x53fc8000 0x4000>;
187 interrupts = <82>;
188 clocks = <&clks 158>, <&clks 157>;
189 clock-names = "ipg", "per";
190 status = "disabled";
191};
diff --git a/Documentation/devicetree/bindings/clock/imx6q-clock.txt b/Documentation/devicetree/bindings/clock/imx6q-clock.txt
index 492bd991d52a..d77b4e68dc42 100644
--- a/Documentation/devicetree/bindings/clock/imx6q-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx6q-clock.txt
@@ -187,9 +187,9 @@ clocks and IDs.
187 pll3_usb_otg 172 187 pll3_usb_otg 172
188 pll4_audio 173 188 pll4_audio 173
189 pll5_video 174 189 pll5_video 174
190 pll6_mlb 175 190 pll8_mlb 175
191 pll7_usb_host 176 191 pll7_usb_host 176
192 pll8_enet 177 192 pll6_enet 177
193 ssi1_ipg 178 193 ssi1_ipg 178
194 ssi2_ipg 179 194 ssi2_ipg 179
195 ssi3_ipg 180 195 ssi3_ipg 180
@@ -198,6 +198,11 @@ clocks and IDs.
198 usbphy2 183 198 usbphy2 183
199 ldb_di0_div_3_5 184 199 ldb_di0_div_3_5 184
200 ldb_di1_div_3_5 185 200 ldb_di1_div_3_5 185
201 sata_ref 186
202 sata_ref_100m 187
203 pcie_ref 188
204 pcie_ref_125m 189
205 enet_ref 190
201 206
202Examples: 207Examples:
203 208
diff --git a/Documentation/devicetree/bindings/clock/zynq-7000.txt b/Documentation/devicetree/bindings/clock/zynq-7000.txt
new file mode 100644
index 000000000000..23ae1db1bc13
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/zynq-7000.txt
@@ -0,0 +1,55 @@
1Device Tree Clock bindings for the Zynq 7000 EPP
2
3The Zynq EPP has several different clk providers, each with there own bindings.
4The purpose of this document is to document their usage.
5
6See clock_bindings.txt for more information on the generic clock bindings.
7See Chapter 25 of Zynq TRM for more information about Zynq clocks.
8
9== PLLs ==
10
11Used to describe the ARM_PLL, DDR_PLL, and IO_PLL.
12
13Required properties:
14- #clock-cells : shall be 0 (only one clock is output from this node)
15- compatible : "xlnx,zynq-pll"
16- reg : pair of u32 values, which are the address offsets within the SLCR
17 of the relevant PLL_CTRL register and PLL_CFG register respectively
18- clocks : phandle for parent clock. should be the phandle for ps_clk
19
20Optional properties:
21- clock-output-names : name of the output clock
22
23Example:
24 armpll: armpll {
25 #clock-cells = <0>;
26 compatible = "xlnx,zynq-pll";
27 clocks = <&ps_clk>;
28 reg = <0x100 0x110>;
29 clock-output-names = "armpll";
30 };
31
32== Peripheral clocks ==
33
34Describes clock node for the SDIO, SMC, SPI, QSPI, and UART clocks.
35
36Required properties:
37- #clock-cells : shall be 1
38- compatible : "xlnx,zynq-periph-clock"
39- reg : a single u32 value, describing the offset within the SLCR where
40 the CLK_CTRL register is found for this peripheral
41- clocks : phandle for parent clocks. should hold phandles for
42 the IO_PLL, ARM_PLL, and DDR_PLL in order
43- clock-output-names : names of the output clock(s). For peripherals that have
44 two output clocks (for example, the UART), two clocks
45 should be listed.
46
47Example:
48 uart_clk: uart_clk {
49 #clock-cells = <1>;
50 compatible = "xlnx,zynq-periph-clock";
51 clocks = <&iopll &armpll &ddrpll>;
52 reg = <0x154>;
53 clock-output-names = "uart0_ref_clk",
54 "uart1_ref_clk";
55 };
diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-spear.txt b/Documentation/devicetree/bindings/cpufreq/cpufreq-spear.txt
new file mode 100644
index 000000000000..f3d44984d91c
--- /dev/null
+++ b/Documentation/devicetree/bindings/cpufreq/cpufreq-spear.txt
@@ -0,0 +1,42 @@
1SPEAr cpufreq driver
2-------------------
3
4SPEAr SoC cpufreq driver for CPU frequency scaling.
5It supports both uniprocessor (UP) and symmetric multiprocessor (SMP) systems
6which share clock across all CPUs.
7
8Required properties:
9- cpufreq_tbl: Table of frequencies CPU could be transitioned into, in the
10 increasing order.
11
12Optional properties:
13- clock-latency: Specify the possible maximum transition latency for clock, in
14 unit of nanoseconds.
15
16Both required and optional properties listed above must be defined under node
17/cpus/cpu@0.
18
19Examples:
20--------
21cpus {
22
23 <...>
24
25 cpu@0 {
26 compatible = "arm,cortex-a9";
27 reg = <0>;
28
29 <...>
30
31 cpufreq_tbl = < 166000
32 200000
33 250000
34 300000
35 400000
36 500000
37 600000 >;
38 };
39
40 <...>
41
42};
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt
new file mode 100644
index 000000000000..589edee37394
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt
@@ -0,0 +1,22 @@
1Device-Tree bindings for drm hdmi driver
2
3Required properties:
4- compatible: value should be "samsung,exynos5-hdmi".
5- reg: physical base address of the hdmi and length of memory mapped
6 region.
7- interrupts: interrupt number to the cpu.
8- hpd-gpio: following information about the hotplug gpio pin.
9 a) phandle of the gpio controller node.
10 b) pin number within the gpio controller.
11 c) pin function mode.
12 d) optional flags and pull up/down.
13 e) drive strength.
14
15Example:
16
17 hdmi {
18 compatible = "samsung,exynos5-hdmi";
19 reg = <0x14530000 0x100000>;
20 interrupts = <0 95 0>;
21 hpd-gpio = <&gpx3 7 0xf 1 3>;
22 };
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt b/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
new file mode 100644
index 000000000000..fa166d945809
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
@@ -0,0 +1,12 @@
1Device-Tree bindings for hdmiddc driver
2
3Required properties:
4- compatible: value should be "samsung,exynos5-hdmiddc".
5- reg: I2C address of the hdmiddc device.
6
7Example:
8
9 hdmiddc {
10 compatible = "samsung,exynos5-hdmiddc";
11 reg = <0x50>;
12 };
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt b/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
new file mode 100644
index 000000000000..858f4f9b902f
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
@@ -0,0 +1,12 @@
1Device-Tree bindings for hdmiphy driver
2
3Required properties:
4- compatible: value should be "samsung,exynos5-hdmiphy".
5- reg: I2C address of the hdmiphy device.
6
7Example:
8
9 hdmiphy {
10 compatible = "samsung,exynos5-hdmiphy";
11 reg = <0x38>;
12 };
diff --git a/Documentation/devicetree/bindings/drm/exynos/mixer.txt b/Documentation/devicetree/bindings/drm/exynos/mixer.txt
new file mode 100644
index 000000000000..9b2ea0343566
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/exynos/mixer.txt
@@ -0,0 +1,15 @@
1Device-Tree bindings for mixer driver
2
3Required properties:
4- compatible: value should be "samsung,exynos5-mixer".
5- reg: physical base address of the mixer and length of memory mapped
6 region.
7- interrupts: interrupt number to the cpu.
8
9Example:
10
11 mixer {
12 compatible = "samsung,exynos5-mixer";
13 reg = <0x14450000 0x10000>;
14 interrupts = <0 94 0>;
15 };
diff --git a/Documentation/devicetree/bindings/gpio/gpio-poweroff.txt b/Documentation/devicetree/bindings/gpio/gpio-poweroff.txt
new file mode 100644
index 000000000000..558cdf3c9abc
--- /dev/null
+++ b/Documentation/devicetree/bindings/gpio/gpio-poweroff.txt
@@ -0,0 +1,22 @@
1GPIO line that should be set high/low to power off a device
2
3Required properties:
4- compatible : should be "gpio-poweroff".
5- gpios : The GPIO to set high/low, see "gpios property" in
6 Documentation/devicetree/bindings/gpio/gpio.txt. If the pin should be
7 low to power down the board set it to "Active Low", otherwise set
8 gpio to "Active High".
9
10Optional properties:
11- input : Initially configure the GPIO line as an input. Only reconfigure
12 it to an output when the pm_power_off function is called. If this optional
13 property is not specified, the GPIO is initialized as an output in its
14 inactive state.
15
16
17Examples:
18
19gpio-poweroff {
20 compatible = "gpio-poweroff";
21 gpios = <&gpio 4 0>; /* GPIO 4 Active Low */
22};
diff --git a/Documentation/devicetree/bindings/gpio/gpio-stmpe.txt b/Documentation/devicetree/bindings/gpio/gpio-stmpe.txt
new file mode 100644
index 000000000000..a0e4cf885213
--- /dev/null
+++ b/Documentation/devicetree/bindings/gpio/gpio-stmpe.txt
@@ -0,0 +1,18 @@
1STMPE gpio
2----------
3
4Required properties:
5 - compatible: "st,stmpe-gpio"
6
7Optional properties:
8 - st,norequest-mask: bitmask specifying which GPIOs should _not_ be requestable
9 due to different usage (e.g. touch, keypad)
10
11Node name must be stmpe_gpio and should be child node of stmpe node to which it
12belongs.
13
14Example:
15 stmpe_gpio {
16 compatible = "st,stmpe-gpio";
17 st,norequest-mask = <0x20>; //gpio 5 can't be used
18 };
diff --git a/Documentation/devicetree/bindings/gpio/gpio.txt b/Documentation/devicetree/bindings/gpio/gpio.txt
index 4e16ba4feab0..a33628759d36 100644
--- a/Documentation/devicetree/bindings/gpio/gpio.txt
+++ b/Documentation/devicetree/bindings/gpio/gpio.txt
@@ -75,4 +75,40 @@ Example of two SOC GPIO banks defined as gpio-controller nodes:
75 gpio-controller; 75 gpio-controller;
76 }; 76 };
77 77
782.1) gpio-controller and pinctrl subsystem
79------------------------------------------
78 80
81gpio-controller on a SOC might be tightly coupled with the pinctrl
82subsystem, in the sense that the pins can be used by other functions
83together with optional gpio feature.
84
85While the pin allocation is totally managed by the pin ctrl subsystem,
86gpio (under gpiolib) is still maintained by gpio drivers. It may happen
87that different pin ranges in a SoC is managed by different gpio drivers.
88
89This makes it logical to let gpio drivers announce their pin ranges to
90the pin ctrl subsystem and call 'pinctrl_request_gpio' in order to
91request the corresponding pin before any gpio usage.
92
93For this, the gpio controller can use a pinctrl phandle and pins to
94announce the pinrange to the pin ctrl subsystem. For example,
95
96 qe_pio_e: gpio-controller@1460 {
97 #gpio-cells = <2>;
98 compatible = "fsl,qe-pario-bank-e", "fsl,qe-pario-bank";
99 reg = <0x1460 0x18>;
100 gpio-controller;
101 gpio-ranges = <&pinctrl1 20 10>, <&pinctrl2 50 20>;
102
103 }
104
105where,
106 &pinctrl1 and &pinctrl2 is the phandle to the pinctrl DT node.
107
108 Next values specify the base pin and number of pins for the range
109 handled by 'qe_pio_e' gpio. In the given example from base pin 20 to
110 pin 29 under pinctrl1 and pin 50 to pin 69 under pinctrl2 is handled
111 by this gpio controller.
112
113The pinctrl node must have "#gpio-range-cells" property to show number of
114arguments to pass with phandle from gpio controllers node.
diff --git a/Documentation/devicetree/bindings/gpio/gpio_atmel.txt b/Documentation/devicetree/bindings/gpio/gpio_atmel.txt
index 66efc804806a..85f8c0d084fa 100644
--- a/Documentation/devicetree/bindings/gpio/gpio_atmel.txt
+++ b/Documentation/devicetree/bindings/gpio/gpio_atmel.txt
@@ -9,6 +9,10 @@ Required properties:
9 unused). 9 unused).
10- gpio-controller: Marks the device node as a GPIO controller. 10- gpio-controller: Marks the device node as a GPIO controller.
11 11
12optional properties:
13- #gpio-lines: Number of gpio if absent 32.
14
15
12Example: 16Example:
13 pioA: gpio@fffff200 { 17 pioA: gpio@fffff200 {
14 compatible = "atmel,at91rm9200-gpio"; 18 compatible = "atmel,at91rm9200-gpio";
@@ -16,5 +20,6 @@ Example:
16 interrupts = <2 4>; 20 interrupts = <2 4>;
17 #gpio-cells = <2>; 21 #gpio-cells = <2>;
18 gpio-controller; 22 gpio-controller;
23 #gpio-lines = <19>;
19 }; 24 };
20 25
diff --git a/Documentation/devicetree/bindings/gpio/leds-ns2.txt b/Documentation/devicetree/bindings/gpio/leds-ns2.txt
new file mode 100644
index 000000000000..aef3aca34d2d
--- /dev/null
+++ b/Documentation/devicetree/bindings/gpio/leds-ns2.txt
@@ -0,0 +1,26 @@
1Binding for dual-GPIO LED found on Network Space v2 (and parents).
2
3Required properties:
4- compatible: "lacie,ns2-leds".
5
6Each LED is represented as a sub-node of the ns2-leds device.
7
8Required sub-node properties:
9- cmd-gpio: Command LED GPIO. See OF device-tree GPIO specification.
10- slow-gpio: Slow LED GPIO. See OF device-tree GPIO specification.
11
12Optional sub-node properties:
13- label: Name for this LED. If omitted, the label is taken from the node name.
14- linux,default-trigger: Trigger assigned to the LED.
15
16Example:
17
18ns2-leds {
19 compatible = "lacie,ns2-leds";
20
21 blue-sata {
22 label = "ns2:blue:sata";
23 slow-gpio = <&gpio0 29 0>;
24 cmd-gpio = <&gpio0 30 0>;
25 };
26};
diff --git a/Documentation/devicetree/bindings/gpio/spear_spics.txt b/Documentation/devicetree/bindings/gpio/spear_spics.txt
new file mode 100644
index 000000000000..96c37eb15075
--- /dev/null
+++ b/Documentation/devicetree/bindings/gpio/spear_spics.txt
@@ -0,0 +1,50 @@
1=== ST Microelectronics SPEAr SPI CS Driver ===
2
3SPEAr platform provides a provision to control chipselects of ARM PL022 Prime
4Cell spi controller through its system registers, which otherwise remains under
5PL022 control. If chipselect remain under PL022 control then they would be
6released as soon as transfer is over and TxFIFO becomes empty. This is not
7desired by some of the device protocols above spi which expect (multiple)
8transfers without releasing their chipselects.
9
10Chipselects can be controlled by software by turning them as GPIOs. SPEAr
11provides another interface through system registers through which software can
12directly control each PL022 chipselect. Hence, it is natural for SPEAr to export
13the control of this interface as gpio.
14
15Required properties:
16
17 * compatible: should be defined as "st,spear-spics-gpio"
18 * reg: mentioning address range of spics controller
19 * st-spics,peripcfg-reg: peripheral configuration register offset
20 * st-spics,sw-enable-bit: bit offset to enable sw control
21 * st-spics,cs-value-bit: bit offset to drive chipselect low or high
22 * st-spics,cs-enable-mask: chip select number bit mask
23 * st-spics,cs-enable-shift: chip select number program offset
24 * gpio-controller: Marks the device node as gpio controller
25 * #gpio-cells: should be 1 and will mention chip select number
26
27All the above bit offsets are within peripcfg register.
28
29Example:
30-------
31spics: spics@e0700000{
32 compatible = "st,spear-spics-gpio";
33 reg = <0xe0700000 0x1000>;
34 st-spics,peripcfg-reg = <0x3b0>;
35 st-spics,sw-enable-bit = <12>;
36 st-spics,cs-value-bit = <11>;
37 st-spics,cs-enable-mask = <3>;
38 st-spics,cs-enable-shift = <8>;
39 gpio-controller;
40 #gpio-cells = <2>;
41};
42
43
44spi0: spi@e0100000 {
45 status = "okay";
46 num-cs = <3>;
47 cs-gpios = <&gpio1 7 0>, <&spics 0>,
48 <&spics 1>;
49 ...
50}
diff --git a/Documentation/devicetree/bindings/hwmon/vexpress.txt b/Documentation/devicetree/bindings/hwmon/vexpress.txt
new file mode 100644
index 000000000000..9c27ed694bbb
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/vexpress.txt
@@ -0,0 +1,23 @@
1Versatile Express hwmon sensors
2-------------------------------
3
4Requires node properties:
5- "compatible" value : one of
6 "arm,vexpress-volt"
7 "arm,vexpress-amp"
8 "arm,vexpress-temp"
9 "arm,vexpress-power"
10 "arm,vexpress-energy"
11- "arm,vexpress-sysreg,func" when controlled via vexpress-sysreg
12 (see Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
13 for more details)
14
15Optional node properties:
16- label : string describing the monitored value
17
18Example:
19 energy@0 {
20 compatible = "arm,vexpress-energy";
21 arm,vexpress-sysreg,func = <13 0>;
22 label = "A15 Jcore";
23 };
diff --git a/Documentation/devicetree/bindings/i2c/atmel-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-at91.txt
index b689a0d9441c..b689a0d9441c 100644
--- a/Documentation/devicetree/bindings/i2c/atmel-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-at91.txt
diff --git a/Documentation/devicetree/bindings/i2c/davinci.txt b/Documentation/devicetree/bindings/i2c/i2c-davinci.txt
index 2dc935b4113d..2dc935b4113d 100644
--- a/Documentation/devicetree/bindings/i2c/davinci.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-davinci.txt
diff --git a/Documentation/devicetree/bindings/i2c/gpio-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-gpio.txt
index 4f8ec947c6bd..4f8ec947c6bd 100644
--- a/Documentation/devicetree/bindings/i2c/gpio-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-gpio.txt
diff --git a/Documentation/devicetree/bindings/i2c/fsl-imx-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-imx.txt
index f3cf43b66f7e..3614242e7732 100644
--- a/Documentation/devicetree/bindings/i2c/fsl-imx-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-imx.txt
@@ -12,13 +12,13 @@ Optional properties:
12Examples: 12Examples:
13 13
14i2c@83fc4000 { /* I2C2 on i.MX51 */ 14i2c@83fc4000 { /* I2C2 on i.MX51 */
15 compatible = "fsl,imx51-i2c", "fsl,imx1-i2c"; 15 compatible = "fsl,imx51-i2c", "fsl,imx21-i2c";
16 reg = <0x83fc4000 0x4000>; 16 reg = <0x83fc4000 0x4000>;
17 interrupts = <63>; 17 interrupts = <63>;
18}; 18};
19 19
20i2c@70038000 { /* HS-I2C on i.MX51 */ 20i2c@70038000 { /* HS-I2C on i.MX51 */
21 compatible = "fsl,imx51-i2c", "fsl,imx1-i2c"; 21 compatible = "fsl,imx51-i2c", "fsl,imx21-i2c";
22 reg = <0x70038000 0x4000>; 22 reg = <0x70038000 0x4000>;
23 interrupts = <64>; 23 interrupts = <64>;
24 clock-frequency = <400000>; 24 clock-frequency = <400000>;
diff --git a/Documentation/devicetree/bindings/i2c/fsl-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-mpc.txt
index 1eacd6b20ed5..1eacd6b20ed5 100644
--- a/Documentation/devicetree/bindings/i2c/fsl-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-mpc.txt
diff --git a/Documentation/devicetree/bindings/i2c/mux.txt b/Documentation/devicetree/bindings/i2c/i2c-mux.txt
index af84cce5cd7b..af84cce5cd7b 100644
--- a/Documentation/devicetree/bindings/i2c/mux.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-mux.txt
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
new file mode 100644
index 000000000000..f46d928aa73d
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
@@ -0,0 +1,18 @@
1
2* Marvell MV64XXX I2C controller
3
4Required properties :
5
6 - reg : Offset and length of the register set for the device
7 - compatible : Should be "marvell,mv64xxx-i2c"
8 - interrupts : The interrupt number
9 - clock-frequency : Desired I2C bus clock frequency in Hz.
10
11Examples:
12
13 i2c@11000 {
14 compatible = "marvell,mv64xxx-i2c";
15 reg = <0x11000 0x20>;
16 interrupts = <29>;
17 clock-frequency = <100000>;
18 };
diff --git a/Documentation/devicetree/bindings/i2c/nomadik.txt b/Documentation/devicetree/bindings/i2c/i2c-nomadik.txt
index 72065b0ff680..72065b0ff680 100644
--- a/Documentation/devicetree/bindings/i2c/nomadik.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-nomadik.txt
diff --git a/Documentation/devicetree/bindings/i2c/cavium-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-octeon.txt
index dced82ebe31d..dced82ebe31d 100644
--- a/Documentation/devicetree/bindings/i2c/cavium-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-octeon.txt
diff --git a/Documentation/devicetree/bindings/i2c/omap-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-omap.txt
index 56564aa4b444..56564aa4b444 100644
--- a/Documentation/devicetree/bindings/i2c/omap-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-omap.txt
diff --git a/Documentation/devicetree/bindings/i2c/pnx.txt b/Documentation/devicetree/bindings/i2c/i2c-pnx.txt
index fe98ada33ee4..fe98ada33ee4 100644
--- a/Documentation/devicetree/bindings/i2c/pnx.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-pnx.txt
diff --git a/Documentation/devicetree/bindings/i2c/ce4100-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-pxa-pci-ce4100.txt
index 569b16248514..569b16248514 100644
--- a/Documentation/devicetree/bindings/i2c/ce4100-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-pxa-pci-ce4100.txt
diff --git a/Documentation/devicetree/bindings/i2c/mrvl-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-pxa.txt
index 0f7945019f6f..12b78ac507e9 100644
--- a/Documentation/devicetree/bindings/i2c/mrvl-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-pxa.txt
@@ -31,21 +31,3 @@ Examples:
31 reg = <0xd4025000 0x1000>; 31 reg = <0xd4025000 0x1000>;
32 interrupts = <58>; 32 interrupts = <58>;
33 }; 33 };
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/i2c/samsung-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-s3c2410.txt
index b6cb5a12c672..b6cb5a12c672 100644
--- a/Documentation/devicetree/bindings/i2c/samsung-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-s3c2410.txt
diff --git a/Documentation/devicetree/bindings/i2c/sirf-i2c.txt b/Documentation/devicetree/bindings/i2c/i2c-sirf.txt
index 7baf9e133fa8..7baf9e133fa8 100644
--- a/Documentation/devicetree/bindings/i2c/sirf-i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-sirf.txt
diff --git a/Documentation/devicetree/bindings/i2c/arm-versatile.txt b/Documentation/devicetree/bindings/i2c/i2c-versatile.txt
index 361d31c51b6f..361d31c51b6f 100644
--- a/Documentation/devicetree/bindings/i2c/arm-versatile.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-versatile.txt
diff --git a/Documentation/devicetree/bindings/i2c/xiic.txt b/Documentation/devicetree/bindings/i2c/i2c-xiic.txt
index ceabbe91ae44..ceabbe91ae44 100644
--- a/Documentation/devicetree/bindings/i2c/xiic.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-xiic.txt
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt
index 2f5322b119eb..446859fcdca4 100644
--- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt
+++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt
@@ -55,5 +55,7 @@ st-micro,24c256 i2c serial eeprom (24cxx)
55stm,m41t00 Serial Access TIMEKEEPER 55stm,m41t00 Serial Access TIMEKEEPER
56stm,m41t62 Serial real-time clock (RTC) with alarm 56stm,m41t62 Serial real-time clock (RTC) with alarm
57stm,m41t80 M41T80 - SERIAL ACCESS RTC WITH ALARMS 57stm,m41t80 M41T80 - SERIAL ACCESS RTC WITH ALARMS
58taos,tsl2550 Ambient Light Sensor with SMBUS/Two Wire Serial Interface
58ti,tsc2003 I2C Touch-Screen Controller 59ti,tsc2003 I2C Touch-Screen Controller
59ti,tmp102 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface 60ti,tmp102 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface
61ti,tmp275 Digital Temperature Sensor
diff --git a/Documentation/devicetree/bindings/input/touchscreen/bu21013.txt b/Documentation/devicetree/bindings/input/touchscreen/bu21013.txt
new file mode 100644
index 000000000000..ca5a2c86480c
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/bu21013.txt
@@ -0,0 +1,28 @@
1* Rohm BU21013 Touch Screen
2
3Required properties:
4 - compatible : "rohm,bu21013_tp"
5 - reg : I2C device address
6
7Optional properties:
8 - touch-gpio : GPIO pin registering a touch event
9 - <supply_name>-supply : Phandle to a regulator supply
10 - rohm,touch-max-x : Maximum outward permitted limit in the X axis
11 - rohm,touch-max-y : Maximum outward permitted limit in the Y axis
12 - rohm,flip-x : Flip touch coordinates on the X axis
13 - rohm,flip-y : Flip touch coordinates on the Y axis
14
15Example:
16
17 i2c@80110000 {
18 bu21013_tp@0x5c {
19 compatible = "rohm,bu21013_tp";
20 reg = <0x5c>;
21 touch-gpio = <&gpio2 20 0x4>;
22 avdd-supply = <&ab8500_ldo_aux1_reg>;
23
24 rohm,touch-max-x = <384>;
25 rohm,touch-max-y = <704>;
26 rohm,flip-y;
27 };
28 };
diff --git a/Documentation/devicetree/bindings/interrupt-controller/allwinner,sunxi-ic.txt b/Documentation/devicetree/bindings/interrupt-controller/allwinner,sunxi-ic.txt
new file mode 100644
index 000000000000..7f9fb85f5456
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/allwinner,sunxi-ic.txt
@@ -0,0 +1,104 @@
1Allwinner Sunxi Interrupt Controller
2
3Required properties:
4
5- compatible : should be "allwinner,sunxi-ic"
6- reg : Specifies base physical address and size of the registers.
7- interrupt-controller : Identifies the node as an interrupt controller
8- #interrupt-cells : Specifies the number of cells needed to encode an
9 interrupt source. The value shall be 1.
10
11The interrupt sources are as follows:
12
130: ENMI
141: UART0
152: UART1
163: UART2
174: UART3
185: IR0
196: IR1
207: I2C0
218: I2C1
229: I2C2
2310: SPI0
2411: SPI1
2512: SPI2
2613: SPDIF
2714: AC97
2815: TS
2916: I2S
3017: UART4
3118: UART5
3219: UART6
3320: UART7
3421: KEYPAD
3522: TIMER0
3623: TIMER1
3724: TIMER2
3825: TIMER3
3926: CAN
4027: DMA
4128: PIO
4229: TOUCH_PANEL
4330: AUDIO_CODEC
4431: LRADC
4532: SDMC0
4633: SDMC1
4734: SDMC2
4835: SDMC3
4936: MEMSTICK
5037: NAND
5138: USB0
5239: USB1
5340: USB2
5441: SCR
5542: CSI0
5643: CSI1
5744: LCDCTRL0
5845: LCDCTRL1
5946: MP
6047: DEFEBE0
6148: DEFEBE1
6249: PMU
6350: SPI3
6451: TZASC
6552: PATA
6653: VE
6754: SS
6855: EMAC
6956: SATA
7057: GPS
7158: HDMI
7259: TVE
7360: ACE
7461: TVD
7562: PS2_0
7663: PS2_1
7764: USB3
7865: USB4
7966: PLE_PFM
8067: TIMER4
8168: TIMER5
8269: GPU_GP
8370: GPU_GPMMU
8471: GPU_PP0
8572: GPU_PPMMU0
8673: GPU_PMU
8774: GPU_RSV0
8875: GPU_RSV1
8976: GPU_RSV2
9077: GPU_RSV3
9178: GPU_RSV4
9279: GPU_RSV5
9380: GPU_RSV6
9482: SYNC_TIMER0
9583: SYNC_TIMER1
96
97Example:
98
99intc: interrupt-controller {
100 compatible = "allwinner,sunxi-ic";
101 reg = <0x01c20400 0x400>;
102 interrupt-controller;
103 #interrupt-cells = <2>;
104};
diff --git a/Documentation/devicetree/bindings/leds/common.txt b/Documentation/devicetree/bindings/leds/common.txt
new file mode 100644
index 000000000000..2d88816dd550
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/common.txt
@@ -0,0 +1,23 @@
1Common leds properties.
2
3Optional properties for child nodes:
4- label : The label for this LED. If omitted, the label is
5 taken from the node name (excluding the unit address).
6
7- linux,default-trigger : This parameter, if present, is a
8 string defining the trigger assigned to the LED. Current triggers are:
9 "backlight" - LED will act as a back-light, controlled by the framebuffer
10 system
11 "default-on" - LED will turn on (but for leds-gpio see "default-state"
12 property in Documentation/devicetree/bindings/gpio/led.txt)
13 "heartbeat" - LED "double" flashes at a load average based rate
14 "ide-disk" - LED indicates disk activity
15 "timer" - LED flashes at a fixed, configurable rate
16
17Examples:
18
19system-status {
20 label = "Status";
21 linux,default-trigger = "heartbeat";
22 ...
23};
diff --git a/Documentation/devicetree/bindings/gpio/led.txt b/Documentation/devicetree/bindings/leds/leds-gpio.txt
index edc83c1c0d54..df1b3080f6b8 100644
--- a/Documentation/devicetree/bindings/gpio/led.txt
+++ b/Documentation/devicetree/bindings/leds/leds-gpio.txt
@@ -10,16 +10,10 @@ LED sub-node properties:
10- gpios : Should specify the LED's GPIO, see "gpios property" in 10- gpios : Should specify the LED's GPIO, see "gpios property" in
11 Documentation/devicetree/bindings/gpio/gpio.txt. Active low LEDs should be 11 Documentation/devicetree/bindings/gpio/gpio.txt. Active low LEDs should be
12 indicated using flags in the GPIO specifier. 12 indicated using flags in the GPIO specifier.
13- label : (optional) The label for this LED. If omitted, the label is 13- label : (optional)
14 taken from the node name (excluding the unit address). 14 see Documentation/devicetree/bindings/leds/common.txt
15- linux,default-trigger : (optional) This parameter, if present, is a 15- linux,default-trigger : (optional)
16 string defining the trigger assigned to the LED. Current triggers are: 16 see Documentation/devicetree/bindings/leds/common.txt
17 "backlight" - LED will act as a back-light, controlled by the framebuffer
18 system
19 "default-on" - LED will turn on, but see "default-state" below
20 "heartbeat" - LED "double" flashes at a load average based rate
21 "ide-disk" - LED indicates disk activity
22 "timer" - LED flashes at a fixed, configurable rate
23- default-state: (optional) The initial state of the LED. Valid 17- default-state: (optional) The initial state of the LED. Valid
24 values are "on", "off", and "keep". If the LED is already on or off 18 values are "on", "off", and "keep". If the LED is already on or off
25 and the default-state property is set the to same value, then no 19 and the default-state property is set the to same value, then no
diff --git a/Documentation/devicetree/bindings/media/s5p-mfc.txt b/Documentation/devicetree/bindings/media/s5p-mfc.txt
new file mode 100644
index 000000000000..67ec3d4ccc7f
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/s5p-mfc.txt
@@ -0,0 +1,23 @@
1* Samsung Multi Format Codec (MFC)
2
3Multi Format Codec (MFC) is the IP present in Samsung SoCs which
4supports high resolution decoding and encoding functionalities.
5The MFC device driver is a v4l2 driver which can encode/decode
6video raw/elementary streams and has support for all popular
7video codecs.
8
9Required properties:
10 - compatible : value should be either one among the following
11 (a) "samsung,mfc-v5" for MFC v5 present in Exynos4 SoCs
12 (b) "samsung,mfc-v6" for MFC v6 present in Exynos5 SoCs
13
14 - reg : Physical base address of the IP registers and length of memory
15 mapped region.
16
17 - interrupts : MFC interrupt number to the CPU.
18
19 - samsung,mfc-r : Base address of the first memory bank used by MFC
20 for DMA contiguous memory allocation and its size.
21
22 - samsung,mfc-l : Base address of the second memory bank used by MFC
23 for DMA contiguous memory allocation and its size.
diff --git a/Documentation/devicetree/bindings/mfd/ab8500.txt b/Documentation/devicetree/bindings/mfd/ab8500.txt
index ce83c8d3c00e..13b707b7355c 100644
--- a/Documentation/devicetree/bindings/mfd/ab8500.txt
+++ b/Documentation/devicetree/bindings/mfd/ab8500.txt
@@ -24,7 +24,32 @@ ab8500-bm : : : Battery Manager
24ab8500-btemp : : : Battery Temperature 24ab8500-btemp : : : Battery Temperature
25ab8500-charger : : : Battery Charger 25ab8500-charger : : : Battery Charger
26ab8500-codec : : : Audio Codec 26ab8500-codec : : : Audio Codec
27ab8500-fg : : : Fuel Gauge 27ab8500-fg : : vddadc : Fuel Gauge
28 : NCONV_ACCU : : Accumulate N Sample Conversion
29 : BATT_OVV : : Battery Over Voltage
30 : LOW_BAT_F : : LOW threshold battery voltage
31 : CC_INT_CALIB : : Coulomb Counter Internal Calibration
32 : CCEOC : : Coulomb Counter End of Conversion
33ab8500-btemp : : vtvout : Battery Temperature
34 : BAT_CTRL_INDB : : Battery Removal Indicator
35 : BTEMP_LOW : : Btemp < BtempLow, if battery temperature is lower than -10°C
36 : BTEMP_LOW_MEDIUM : : BtempLow < Btemp < BtempMedium,if battery temperature is between -10 and 0°C
37 : BTEMP_MEDIUM_HIGH : : BtempMedium < Btemp < BtempHigh,if battery temperature is between 0°C and“MaxTemp
38 : BTEMP_HIGH : : Btemp > BtempHigh, if battery temperature is higher than “MaxTemp
39ab8500-charger : : vddadc : Charger interface
40 : MAIN_CH_UNPLUG_DET : : main charger unplug detection management (not in 8505)
41 : MAIN_CHARGE_PLUG_DET : : main charger plug detection management (not in 8505)
42 : MAIN_EXT_CH_NOT_OK : : main charger not OK
43 : MAIN_CH_TH_PROT_R : : Die temp is above main charger
44 : MAIN_CH_TH_PROT_F : : Die temp is below main charger
45 : VBUS_DET_F : : VBUS falling detected
46 : VBUS_DET_R : : VBUS rising detected
47 : USB_LINK_STATUS : : USB link status has changed
48 : USB_CH_TH_PROT_R : : Die temp is above usb charger
49 : USB_CH_TH_PROT_F : : Die temp is below usb charger
50 : USB_CHARGER_NOT_OKR : : allowed USB charger not ok detection
51 : VBUS_OVV : : Overvoltage on Vbus ball detected (USB charge is stopped)
52 : CH_WD_EXP : : Charger watchdog detected
28ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter 53ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter
29 SW_CONV_END : : 54 SW_CONV_END : :
30ab8500-gpio : : : GPIO Controller 55ab8500-gpio : : : GPIO Controller
diff --git a/Documentation/devicetree/bindings/misc/atmel-ssc.txt b/Documentation/devicetree/bindings/misc/atmel-ssc.txt
new file mode 100644
index 000000000000..38e51ad2e07e
--- /dev/null
+++ b/Documentation/devicetree/bindings/misc/atmel-ssc.txt
@@ -0,0 +1,15 @@
1* Atmel SSC driver.
2
3Required properties:
4- compatible: "atmel,at91rm9200-ssc" or "atmel,at91sam9g45-ssc"
5 - atmel,at91rm9200-ssc: support pdc transfer
6 - atmel,at91sam9g45-ssc: support dma transfer
7- reg: Should contain SSC registers location and length
8- interrupts: Should contain SSC interrupt
9
10Example:
11ssc0: ssc@fffbc000 {
12 compatible = "atmel,at91rm9200-ssc";
13 reg = <0xfffbc000 0x4000>;
14 interrupts = <14 4 5>;
15};
diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt
index 8e2e0ba2f486..a591c6741d75 100644
--- a/Documentation/devicetree/bindings/mmc/mmc.txt
+++ b/Documentation/devicetree/bindings/mmc/mmc.txt
@@ -21,6 +21,12 @@ Optional properties:
21- cd-inverted: when present, polarity on the cd gpio line is inverted 21- cd-inverted: when present, polarity on the cd gpio line is inverted
22- wp-inverted: when present, polarity on the wp gpio line is inverted 22- wp-inverted: when present, polarity on the wp gpio line is inverted
23- max-frequency: maximum operating clock frequency 23- max-frequency: maximum operating clock frequency
24- no-1-8-v: when present, denotes that 1.8v card voltage is not supported on
25 this system, even if the controller claims it is.
26
27Optional SDIO properties:
28- keep-power-in-suspend: Preserves card power during a suspend/resume cycle
29- enable-sdio-wakeup: Enables wake up of host system on SDIO IRQ assertion
24 30
25Example: 31Example:
26 32
@@ -33,4 +39,6 @@ sdhci@ab000000 {
33 cd-inverted; 39 cd-inverted;
34 wp-gpios = <&gpio 70 0>; 40 wp-gpios = <&gpio 70 0>;
35 max-frequency = <50000000>; 41 max-frequency = <50000000>;
42 keep-power-in-suspend;
43 enable-sdio-wakeup;
36} 44}
diff --git a/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt b/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
index 630a7d7f4718..97e9e315400d 100644
--- a/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
+++ b/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
@@ -12,10 +12,6 @@ is used. The Samsung's SDHCI controller bindings extends this as listed below.
12[A] The property "samsung,cd-pinmux-gpio" can be used as stated in the 12[A] The property "samsung,cd-pinmux-gpio" can be used as stated in the
13 "Optional Board Specific Properties" section below. 13 "Optional Board Specific Properties" section below.
14 14
15[B] If core card-detect bindings and "samsung,cd-pinmux-gpio" property
16 is not specified, it is assumed that there is no card detection
17 mechanism used.
18
19Required SoC Specific Properties: 15Required SoC Specific Properties:
20- compatible: should be one of the following 16- compatible: should be one of the following
21 - "samsung,s3c6410-sdhci": For controllers compatible with s3c6410 sdhci 17 - "samsung,s3c6410-sdhci": For controllers compatible with s3c6410 sdhci
@@ -24,14 +20,18 @@ Required SoC Specific Properties:
24 controller. 20 controller.
25 21
26Required Board Specific Properties: 22Required Board Specific Properties:
27- gpios: Should specify the gpios used for clock, command and data lines. The 23- Samsung GPIO variant (will be completely replaced by pinctrl):
28 gpio specifier format depends on the gpio controller. 24 - gpios: Should specify the gpios used for clock, command and data lines. The
25 gpio specifier format depends on the gpio controller.
26- Pinctrl variant (preferred if available):
27 - pinctrl-0: Should specify pin control groups used for this controller.
28 - pinctrl-names: Should contain only one value - "default".
29 29
30Optional Board Specific Properties: 30Optional Board Specific Properties:
31- samsung,cd-pinmux-gpio: Specifies the card detect line that is routed 31- samsung,cd-pinmux-gpio: Specifies the card detect line that is routed
32 through a pinmux to the card-detect pin of the card slot. This property 32 through a pinmux to the card-detect pin of the card slot. This property
33 should be used only if none of the mmc core card-detect properties are 33 should be used only if none of the mmc core card-detect properties are
34 used. 34 used. Only for Samsung GPIO variant.
35 35
36Example: 36Example:
37 sdhci@12530000 { 37 sdhci@12530000 {
@@ -40,12 +40,18 @@ Example:
40 interrupts = <0 75 0>; 40 interrupts = <0 75 0>;
41 bus-width = <4>; 41 bus-width = <4>;
42 cd-gpios = <&gpk2 2 2 3 3>; 42 cd-gpios = <&gpk2 2 2 3 3>;
43
44 /* Samsung GPIO variant */
43 gpios = <&gpk2 0 2 0 3>, /* clock line */ 45 gpios = <&gpk2 0 2 0 3>, /* clock line */
44 <&gpk2 1 2 0 3>, /* command line */ 46 <&gpk2 1 2 0 3>, /* command line */
45 <&gpk2 3 2 3 3>, /* data line 0 */ 47 <&gpk2 3 2 3 3>, /* data line 0 */
46 <&gpk2 4 2 3 3>, /* data line 1 */ 48 <&gpk2 4 2 3 3>, /* data line 1 */
47 <&gpk2 5 2 3 3>, /* data line 2 */ 49 <&gpk2 5 2 3 3>, /* data line 2 */
48 <&gpk2 6 2 3 3>; /* data line 3 */ 50 <&gpk2 6 2 3 3>; /* data line 3 */
51
52 /* Pinctrl variant */
53 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4>;
54 pinctrl-names = "default";
49 }; 55 };
50 56
51 Note: This example shows both SoC specific and board specific properties 57 Note: This example shows both SoC specific and board specific properties
diff --git a/Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/synopsis-dw-mshc.txt
index 06cd32d08052..06cd32d08052 100644
--- a/Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt
+++ b/Documentation/devicetree/bindings/mmc/synopsis-dw-mshc.txt
diff --git a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
index be76a23b34c4..ed271fc255b2 100644
--- a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
+++ b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
@@ -19,6 +19,7 @@ ti,dual-volt: boolean, supports dual voltage cards
19"supply-name" examples are "vmmc", "vmmc_aux" etc 19"supply-name" examples are "vmmc", "vmmc_aux" etc
20ti,non-removable: non-removable slot (like eMMC) 20ti,non-removable: non-removable slot (like eMMC)
21ti,needs-special-reset: Requires a special softreset sequence 21ti,needs-special-reset: Requires a special softreset sequence
22ti,needs-special-hs-handling: HSMMC IP needs special setting for handling High Speed
22 23
23Example: 24Example:
24 mmc1: mmc@0x4809c000 { 25 mmc1: mmc@0x4809c000 {
diff --git a/Documentation/devicetree/bindings/mmc/vt8500-sdmmc.txt b/Documentation/devicetree/bindings/mmc/vt8500-sdmmc.txt
new file mode 100644
index 000000000000..d7fb6abb3eb8
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/vt8500-sdmmc.txt
@@ -0,0 +1,23 @@
1* Wondermedia WM8505/WM8650 SD/MMC Host Controller
2
3This file documents differences between the core properties described
4by mmc.txt and the properties used by the wmt-sdmmc driver.
5
6Required properties:
7- compatible: Should be "wm,wm8505-sdhc".
8- interrupts: Two interrupts are required - regular irq and dma irq.
9
10Optional properties:
11- sdon-inverted: SD_ON bit is inverted on the controller
12
13Examples:
14
15sdhc@d800a000 {
16 compatible = "wm,wm8505-sdhc";
17 reg = <0xd800a000 0x1000>;
18 interrupts = <20 21>;
19 clocks = <&sdhc>;
20 bus-width = <4>;
21 sdon-inverted;
22};
23
diff --git a/Documentation/devicetree/bindings/net/can/grcan.txt b/Documentation/devicetree/bindings/net/can/grcan.txt
new file mode 100644
index 000000000000..34ef3498f887
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/can/grcan.txt
@@ -0,0 +1,28 @@
1Aeroflex Gaisler GRCAN and GRHCAN CAN controllers.
2
3The GRCAN and CRHCAN CAN controllers are available in the GRLIB VHDL IP core
4library.
5
6Note: These properties are built from the AMBA plug&play in a Leon SPARC system
7(the ordinary environment for GRCAN and GRHCAN). There are no dts files for
8sparc.
9
10Required properties:
11
12- name : Should be "GAISLER_GRCAN", "01_03d", "GAISLER_GRHCAN" or "01_034"
13
14- reg : Address and length of the register set for the device
15
16- freq : Frequency of the external oscillator clock in Hz (the frequency of
17 the amba bus in the ordinary case)
18
19- interrupts : Interrupt number for this device
20
21Optional properties:
22
23- systemid : If not present or if the value of the least significant 16 bits
24 of this 32-bit property is smaller than GRCAN_TXBUG_SAFE_GRLIB_VERSION
25 a bug workaround is activated.
26
27For further information look in the documentation for the GLIB IP core library:
28http://www.gaisler.com/products/grlib/grip.pdf
diff --git a/Documentation/devicetree/bindings/net/cdns-emac.txt b/Documentation/devicetree/bindings/net/cdns-emac.txt
new file mode 100644
index 000000000000..09055c2495f0
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/cdns-emac.txt
@@ -0,0 +1,23 @@
1* Cadence EMAC Ethernet controller
2
3Required properties:
4- compatible: Should be "cdns,[<chip>-]{emac}"
5 Use "cdns,at91rm9200-emac" Atmel at91rm9200 SoC.
6 or the generic form: "cdns,emac".
7- reg: Address and length of the register set for the device
8- interrupts: Should contain macb interrupt
9- phy-mode: String, operation mode of the PHY interface.
10 Supported values are: "mii", "rmii".
11
12Optional properties:
13- local-mac-address: 6 bytes, mac address
14
15Examples:
16
17 macb0: ethernet@fffc4000 {
18 compatible = "cdns,at91rm9200-emac";
19 reg = <0xfffc4000 0x4000>;
20 interrupts = <21>;
21 phy-mode = "rmii";
22 local-mac-address = [3a 0e 03 04 05 06];
23 };
diff --git a/Documentation/devicetree/bindings/net/cpsw.txt b/Documentation/devicetree/bindings/net/cpsw.txt
index dcaabe9fe869..6ddd0286a9b7 100644
--- a/Documentation/devicetree/bindings/net/cpsw.txt
+++ b/Documentation/devicetree/bindings/net/cpsw.txt
@@ -9,21 +9,15 @@ Required properties:
9 number 9 number
10- interrupt-parent : The parent interrupt controller 10- interrupt-parent : The parent interrupt controller
11- cpdma_channels : Specifies number of channels in CPDMA 11- cpdma_channels : Specifies number of channels in CPDMA
12- host_port_no : Specifies host port shift
13- cpdma_reg_ofs : Specifies CPDMA submodule register offset
14- cpdma_sram_ofs : Specifies CPDMA SRAM offset
15- ale_reg_ofs : Specifies ALE submodule register offset
16- ale_entries : Specifies No of entries ALE can hold 12- ale_entries : Specifies No of entries ALE can hold
17- host_port_reg_ofs : Specifies host port register offset
18- hw_stats_reg_ofs : Specifies hardware statistics register offset
19- bd_ram_ofs : Specifies internal desciptor RAM offset
20- bd_ram_size : Specifies internal descriptor RAM size 13- bd_ram_size : Specifies internal descriptor RAM size
21- rx_descs : Specifies number of Rx descriptors 14- rx_descs : Specifies number of Rx descriptors
22- mac_control : Specifies Default MAC control register content 15- mac_control : Specifies Default MAC control register content
23 for the specific platform 16 for the specific platform
24- slaves : Specifies number for slaves 17- slaves : Specifies number for slaves
25- slave_reg_ofs : Specifies slave register offset 18- cpts_active_slave : Specifies the slave to use for time stamping
26- sliver_reg_ofs : Specifies slave sliver register offset 19- cpts_clock_mult : Numerator to convert input clock ticks into nanoseconds
20- cpts_clock_shift : Denominator to convert input clock ticks into nanoseconds
27- phy_id : Specifies slave phy id 21- phy_id : Specifies slave phy id
28- mac-address : Specifies slave MAC address 22- mac-address : Specifies slave MAC address
29 23
@@ -45,30 +39,22 @@ Examples:
45 interrupts = <55 0x4>; 39 interrupts = <55 0x4>;
46 interrupt-parent = <&intc>; 40 interrupt-parent = <&intc>;
47 cpdma_channels = <8>; 41 cpdma_channels = <8>;
48 host_port_no = <0>;
49 cpdma_reg_ofs = <0x800>;
50 cpdma_sram_ofs = <0xa00>;
51 ale_reg_ofs = <0xd00>;
52 ale_entries = <1024>; 42 ale_entries = <1024>;
53 host_port_reg_ofs = <0x108>;
54 hw_stats_reg_ofs = <0x900>;
55 bd_ram_ofs = <0x2000>;
56 bd_ram_size = <0x2000>; 43 bd_ram_size = <0x2000>;
57 no_bd_ram = <0>; 44 no_bd_ram = <0>;
58 rx_descs = <64>; 45 rx_descs = <64>;
59 mac_control = <0x20>; 46 mac_control = <0x20>;
60 slaves = <2>; 47 slaves = <2>;
48 cpts_active_slave = <0>;
49 cpts_clock_mult = <0x80000000>;
50 cpts_clock_shift = <29>;
61 cpsw_emac0: slave@0 { 51 cpsw_emac0: slave@0 {
62 slave_reg_ofs = <0x208>; 52 phy_id = <&davinci_mdio>, <0>;
63 sliver_reg_ofs = <0xd80>;
64 phy_id = "davinci_mdio.16:00";
65 /* Filled in by U-Boot */ 53 /* Filled in by U-Boot */
66 mac-address = [ 00 00 00 00 00 00 ]; 54 mac-address = [ 00 00 00 00 00 00 ];
67 }; 55 };
68 cpsw_emac1: slave@1 { 56 cpsw_emac1: slave@1 {
69 slave_reg_ofs = <0x308>; 57 phy_id = <&davinci_mdio>, <1>;
70 sliver_reg_ofs = <0xdc0>;
71 phy_id = "davinci_mdio.16:01";
72 /* Filled in by U-Boot */ 58 /* Filled in by U-Boot */
73 mac-address = [ 00 00 00 00 00 00 ]; 59 mac-address = [ 00 00 00 00 00 00 ];
74 }; 60 };
@@ -79,30 +65,22 @@ Examples:
79 compatible = "ti,cpsw"; 65 compatible = "ti,cpsw";
80 ti,hwmods = "cpgmac0"; 66 ti,hwmods = "cpgmac0";
81 cpdma_channels = <8>; 67 cpdma_channels = <8>;
82 host_port_no = <0>;
83 cpdma_reg_ofs = <0x800>;
84 cpdma_sram_ofs = <0xa00>;
85 ale_reg_ofs = <0xd00>;
86 ale_entries = <1024>; 68 ale_entries = <1024>;
87 host_port_reg_ofs = <0x108>;
88 hw_stats_reg_ofs = <0x900>;
89 bd_ram_ofs = <0x2000>;
90 bd_ram_size = <0x2000>; 69 bd_ram_size = <0x2000>;
91 no_bd_ram = <0>; 70 no_bd_ram = <0>;
92 rx_descs = <64>; 71 rx_descs = <64>;
93 mac_control = <0x20>; 72 mac_control = <0x20>;
94 slaves = <2>; 73 slaves = <2>;
74 cpts_active_slave = <0>;
75 cpts_clock_mult = <0x80000000>;
76 cpts_clock_shift = <29>;
95 cpsw_emac0: slave@0 { 77 cpsw_emac0: slave@0 {
96 slave_reg_ofs = <0x208>; 78 phy_id = <&davinci_mdio>, <0>;
97 sliver_reg_ofs = <0xd80>;
98 phy_id = "davinci_mdio.16:00";
99 /* Filled in by U-Boot */ 79 /* Filled in by U-Boot */
100 mac-address = [ 00 00 00 00 00 00 ]; 80 mac-address = [ 00 00 00 00 00 00 ];
101 }; 81 };
102 cpsw_emac1: slave@1 { 82 cpsw_emac1: slave@1 {
103 slave_reg_ofs = <0x308>; 83 phy_id = <&davinci_mdio>, <1>;
104 sliver_reg_ofs = <0xdc0>;
105 phy_id = "davinci_mdio.16:01";
106 /* Filled in by U-Boot */ 84 /* Filled in by U-Boot */
107 mac-address = [ 00 00 00 00 00 00 ]; 85 mac-address = [ 00 00 00 00 00 00 ];
108 }; 86 };
diff --git a/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt
new file mode 100644
index 000000000000..3a268127b054
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt
@@ -0,0 +1,141 @@
1* Atmel AT91 Pinmux Controller
2
3The AT91 Pinmux Controler, enables the IC
4to share one PAD to several functional blocks. The sharing is done by
5multiplexing the PAD input/output signals. For each PAD there are up to
68 muxing options (called periph modes). Since different modules require
7different PAD settings (like pull up, keeper, etc) the contoller controls
8also the PAD settings parameters.
9
10Please refer to pinctrl-bindings.txt in this directory for details of the
11common pinctrl bindings used by client devices, including the meaning of the
12phrase "pin configuration node".
13
14Atmel AT91 pin configuration node is a node of a group of pins which can be
15used for a specific device or function. This node represents both mux and config
16of the pins in that group. The 'pins' selects the function mode(also named pin
17mode) this pin can work on and the 'config' configures various pad settings
18such as pull-up, multi drive, etc.
19
20Required properties for iomux controller:
21- compatible: "atmel,at91rm9200-pinctrl"
22- atmel,mux-mask: array of mask (periph per bank) to describe if a pin can be
23 configured in this periph mode. All the periph and bank need to be describe.
24
25How to create such array:
26
27Each column will represent the possible peripheral of the pinctrl
28Each line will represent a pio bank
29
30Take an example on the 9260
31Peripheral: 2 ( A and B)
32Bank: 3 (A, B and C)
33=>
34
35 /* A B */
36 0xffffffff 0xffc00c3b /* pioA */
37 0xffffffff 0x7fff3ccf /* pioB */
38 0xffffffff 0x007fffff /* pioC */
39
40For each peripheral/bank we will descibe in a u32 if a pin can can be
41configured in it by putting 1 to the pin bit (1 << pin)
42
43Let's take the pioA on peripheral B
44From the datasheet Table 10-2.
45Peripheral B
46PA0 MCDB0
47PA1 MCCDB
48PA2
49PA3 MCDB3
50PA4 MCDB2
51PA5 MCDB1
52PA6
53PA7
54PA8
55PA9
56PA10 ETX2
57PA11 ETX3
58PA12
59PA13
60PA14
61PA15
62PA16
63PA17
64PA18
65PA19
66PA20
67PA21
68PA22 ETXER
69PA23 ETX2
70PA24 ETX3
71PA25 ERX2
72PA26 ERX3
73PA27 ERXCK
74PA28 ECRS
75PA29 ECOL
76PA30 RXD4
77PA31 TXD4
78
79=> 0xffc00c3b
80
81Required properties for pin configuration node:
82- atmel,pins: 4 integers array, represents a group of pins mux and config
83 setting. The format is atmel,pins = <PIN_BANK PIN_BANK_NUM PERIPH CONFIG>.
84 The PERIPH 0 means gpio.
85
86Bits used for CONFIG:
87PULL_UP (1 << 0): indicate this pin need a pull up.
88MULTIDRIVE (1 << 1): indicate this pin need to be configured as multidrive.
89DEGLITCH (1 << 2): indicate this pin need deglitch.
90PULL_DOWN (1 << 3): indicate this pin need a pull down.
91DIS_SCHMIT (1 << 4): indicate this pin need to disable schmit trigger.
92DEBOUNCE (1 << 16): indicate this pin need debounce.
93DEBOUNCE_VAL (0x3fff << 17): debounce val.
94
95NOTE:
96Some requirements for using atmel,at91rm9200-pinctrl binding:
971. We have pin function node defined under at91 controller node to represent
98 what pinmux functions this SoC supports.
992. The driver can use the function node's name and pin configuration node's
100 name describe the pin function and group hierarchy.
101 For example, Linux at91 pinctrl driver takes the function node's name
102 as the function name and pin configuration node's name as group name to
103 create the map table.
1043. Each pin configuration node should have a phandle, devices can set pins
105 configurations by referring to the phandle of that pin configuration node.
1064. The gpio controller must be describe in the pinctrl simple-bus.
107
108Examples:
109
110pinctrl@fffff400 {
111 #address-cells = <1>;
112 #size-cells = <1>;
113 ranges;
114 compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
115 reg = <0xfffff400 0x600>;
116
117 atmel,mux-mask = <
118 /* A B */
119 0xffffffff 0xffc00c3b /* pioA */
120 0xffffffff 0x7fff3ccf /* pioB */
121 0xffffffff 0x007fffff /* pioC */
122 >;
123
124 /* shared pinctrl settings */
125 dbgu {
126 pinctrl_dbgu: dbgu-0 {
127 atmel,pins =
128 <1 14 0x1 0x0 /* PB14 periph A */
129 1 15 0x1 0x1>; /* PB15 periph with pullup */
130 };
131 };
132};
133
134dbgu: serial@fffff200 {
135 compatible = "atmel,at91sam9260-usart";
136 reg = <0xfffff200 0x200>;
137 interrupts = <1 4 7>;
138 pinctrl-names = "default";
139 pinctrl-0 = <&pinctrl_dbgu>;
140 status = "disabled";
141};
diff --git a/Documentation/devicetree/bindings/pinctrl/marvell,kirkwood-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/marvell,kirkwood-pinctrl.txt
index 361bccb7ec89..95daf6335c37 100644
--- a/Documentation/devicetree/bindings/pinctrl/marvell,kirkwood-pinctrl.txt
+++ b/Documentation/devicetree/bindings/pinctrl/marvell,kirkwood-pinctrl.txt
@@ -7,8 +7,10 @@ Required properties:
7- compatible: "marvell,88f6180-pinctrl", 7- compatible: "marvell,88f6180-pinctrl",
8 "marvell,88f6190-pinctrl", "marvell,88f6192-pinctrl", 8 "marvell,88f6190-pinctrl", "marvell,88f6192-pinctrl",
9 "marvell,88f6281-pinctrl", "marvell,88f6282-pinctrl" 9 "marvell,88f6281-pinctrl", "marvell,88f6282-pinctrl"
10 "marvell,98dx4122-pinctrl"
10 11
11This driver supports all kirkwood variants, i.e. 88f6180, 88f619x, and 88f628x. 12This driver supports all kirkwood variants, i.e. 88f6180, 88f619x, and 88f628x.
13It also support the 88f6281-based variant in the 98dx412x Bobcat SoCs.
12 14
13Available mpp pins/groups and functions: 15Available mpp pins/groups and functions:
14Note: brackets (x) are not part of the mpp name for marvell,function and given 16Note: brackets (x) are not part of the mpp name for marvell,function and given
@@ -277,3 +279,40 @@ mpp46 46 gpio, ts(mp10), tdm(fs), lcd(hsync)
277mpp47 47 gpio, ts(mp11), tdm(drx), lcd(vsync) 279mpp47 47 gpio, ts(mp11), tdm(drx), lcd(vsync)
278mpp48 48 gpio, ts(mp12), tdm(dtx), lcd(d16) 280mpp48 48 gpio, ts(mp12), tdm(dtx), lcd(d16)
279mpp49 49 gpo, tdm(rx0ql), pex(clkreq), lcd(d17) 281mpp49 49 gpo, tdm(rx0ql), pex(clkreq), lcd(d17)
282
283* Marvell Bobcat 98dx4122
284
285name pins functions
286================================================================================
287mpp0 0 gpio, nand(io2), spi(cs)
288mpp1 1 gpo, nand(io3), spi(mosi)
289mpp2 2 gpo, nand(io4), spi(sck)
290mpp3 3 gpo, nand(io5), spi(miso)
291mpp4 4 gpio, nand(io6), uart0(rxd)
292mpp5 5 gpo, nand(io7), uart0(txd)
293mpp6 6 sysrst(out), spi(mosi)
294mpp7 7 gpo, pex(rsto), spi(cs)
295mpp8 8 gpio, twsi0(sda), uart0(rts), uart1(rts)
296mpp9 9 gpio, twsi(sck), uart0(cts), uart1(cts)
297mpp10 10 gpo, spi(sck), uart0(txd)
298mpp11 11 gpio, spi(miso), uart0(rxd)
299mpp13 13 gpio, uart1(txd)
300mpp14 14 gpio, uart1(rxd)
301mpp15 15 gpio, uart0(rts)
302mpp16 16 gpio, uart0(cts)
303mpp18 18 gpo, nand(io0)
304mpp19 19 gpo, nand(io1)
305mpp34 34 gpio
306mpp35 35 gpio
307mpp36 36 gpio
308mpp37 37 gpio
309mpp38 38 gpio
310mpp39 39 gpio
311mpp40 40 gpio
312mpp41 41 gpio
313mpp42 42 gpio
314mpp43 43 gpio
315mpp44 44 gpio
316mpp45 45 gpio
317mpp49 49 gpio
318
diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
index 03dee50532f5..e97a27856b21 100644
--- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
+++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
@@ -8,13 +8,20 @@ on-chip controllers onto these pads.
8Required Properties: 8Required Properties:
9- compatible: should be one of the following. 9- compatible: should be one of the following.
10 - "samsung,pinctrl-exynos4210": for Exynos4210 compatible pin-controller. 10 - "samsung,pinctrl-exynos4210": for Exynos4210 compatible pin-controller.
11 - "samsung,pinctrl-exynos4x12": for Exynos4x12 compatible pin-controller.
11 - "samsung,pinctrl-exynos5250": for Exynos5250 compatible pin-controller. 12 - "samsung,pinctrl-exynos5250": for Exynos5250 compatible pin-controller.
12 13
13- reg: Base address of the pin controller hardware module and length of 14- reg: Base address of the pin controller hardware module and length of
14 the address space it occupies. 15 the address space it occupies.
15 16
16- interrupts: interrupt specifier for the controller. The format and value of 17- Pin banks as child nodes: Pin banks of the controller are represented by child
17 the interrupt specifier depends on the interrupt parent for the controller. 18 nodes of the controller node. Bank name is taken from name of the node. Each
19 bank node must contain following properties:
20
21 - gpio-controller: identifies the node as a gpio controller and pin bank.
22 - #gpio-cells: number of cells in GPIO specifier. Since the generic GPIO
23 binding is used, the amount of cells must be specified as 2. See generic
24 GPIO binding documentation for description of particular cells.
18 25
19- Pin mux/config groups as child nodes: The pin mux (selecting pin function 26- Pin mux/config groups as child nodes: The pin mux (selecting pin function
20 mode) and pin config (pull up/down, driver strength) settings are represented 27 mode) and pin config (pull up/down, driver strength) settings are represented
@@ -72,16 +79,24 @@ used as system wakeup events.
72A. External GPIO Interrupts: For supporting external gpio interrupts, the 79A. External GPIO Interrupts: For supporting external gpio interrupts, the
73 following properties should be specified in the pin-controller device node. 80 following properties should be specified in the pin-controller device node.
74 81
75- interrupt-controller: identifies the controller node as interrupt-parent. 82 - interrupt-parent: phandle of the interrupt parent to which the external
76- #interrupt-cells: the value of this property should be 2. 83 GPIO interrupts are forwarded to.
77 - First Cell: represents the external gpio interrupt number local to the 84 - interrupts: interrupt specifier for the controller. The format and value of
78 external gpio interrupt space of the controller. 85 the interrupt specifier depends on the interrupt parent for the controller.
79 - Second Cell: flags to identify the type of the interrupt 86
80 - 1 = rising edge triggered 87 In addition, following properties must be present in node of every bank
81 - 2 = falling edge triggered 88 of pins supporting GPIO interrupts:
82 - 3 = rising and falling edge triggered 89
83 - 4 = high level triggered 90 - interrupt-controller: identifies the controller node as interrupt-parent.
84 - 8 = low level triggered 91 - #interrupt-cells: the value of this property should be 2.
92 - First Cell: represents the external gpio interrupt number local to the
93 external gpio interrupt space of the controller.
94 - Second Cell: flags to identify the type of the interrupt
95 - 1 = rising edge triggered
96 - 2 = falling edge triggered
97 - 3 = rising and falling edge triggered
98 - 4 = high level triggered
99 - 8 = low level triggered
85 100
86B. External Wakeup Interrupts: For supporting external wakeup interrupts, a 101B. External Wakeup Interrupts: For supporting external wakeup interrupts, a
87 child node representing the external wakeup interrupt controller should be 102 child node representing the external wakeup interrupt controller should be
@@ -94,6 +109,11 @@ B. External Wakeup Interrupts: For supporting external wakeup interrupts, a
94 found on Samsung Exynos4210 SoC. 109 found on Samsung Exynos4210 SoC.
95 - interrupt-parent: phandle of the interrupt parent to which the external 110 - interrupt-parent: phandle of the interrupt parent to which the external
96 wakeup interrupts are forwarded to. 111 wakeup interrupts are forwarded to.
112 - interrupts: interrupt used by multiplexed wakeup interrupts.
113
114 In addition, following properties must be present in node of every bank
115 of pins supporting wake-up interrupts:
116
97 - interrupt-controller: identifies the node as interrupt-parent. 117 - interrupt-controller: identifies the node as interrupt-parent.
98 - #interrupt-cells: the value of this property should be 2 118 - #interrupt-cells: the value of this property should be 2
99 - First Cell: represents the external wakeup interrupt number local to 119 - First Cell: represents the external wakeup interrupt number local to
@@ -105,11 +125,63 @@ B. External Wakeup Interrupts: For supporting external wakeup interrupts, a
105 - 4 = high level triggered 125 - 4 = high level triggered
106 - 8 = low level triggered 126 - 8 = low level triggered
107 127
128 Node of every bank of pins supporting direct wake-up interrupts (without
129 multiplexing) must contain following properties:
130
131 - interrupt-parent: phandle of the interrupt parent to which the external
132 wakeup interrupts are forwarded to.
133 - interrupts: interrupts of the interrupt parent which are used for external
134 wakeup interrupts from pins of the bank, must contain interrupts for all
135 pins of the bank.
136
108Aliases: 137Aliases:
109 138
110All the pin controller nodes should be represented in the aliases node using 139All the pin controller nodes should be represented in the aliases node using
111the following format 'pinctrl{n}' where n is a unique number for the alias. 140the following format 'pinctrl{n}' where n is a unique number for the alias.
112 141
142Example: A pin-controller node with pin banks:
143
144 pinctrl_0: pinctrl@11400000 {
145 compatible = "samsung,pinctrl-exynos4210";
146 reg = <0x11400000 0x1000>;
147 interrupts = <0 47 0>;
148
149 /* ... */
150
151 /* Pin bank without external interrupts */
152 gpy0: gpy0 {
153 gpio-controller;
154 #gpio-cells = <2>;
155 };
156
157 /* ... */
158
159 /* Pin bank with external GPIO or muxed wake-up interrupts */
160 gpj0: gpj0 {
161 gpio-controller;
162 #gpio-cells = <2>;
163
164 interrupt-controller;
165 #interrupt-cells = <2>;
166 };
167
168 /* ... */
169
170 /* Pin bank with external direct wake-up interrupts */
171 gpx0: gpx0 {
172 gpio-controller;
173 #gpio-cells = <2>;
174
175 interrupt-controller;
176 interrupt-parent = <&gic>;
177 interrupts = <0 16 0>, <0 17 0>, <0 18 0>, <0 19 0>,
178 <0 20 0>, <0 21 0>, <0 22 0>, <0 23 0>;
179 #interrupt-cells = <2>;
180 };
181
182 /* ... */
183 };
184
113Example 1: A pin-controller node with pin groups. 185Example 1: A pin-controller node with pin groups.
114 186
115 pinctrl_0: pinctrl@11400000 { 187 pinctrl_0: pinctrl@11400000 {
@@ -117,6 +189,8 @@ Example 1: A pin-controller node with pin groups.
117 reg = <0x11400000 0x1000>; 189 reg = <0x11400000 0x1000>;
118 interrupts = <0 47 0>; 190 interrupts = <0 47 0>;
119 191
192 /* ... */
193
120 uart0_data: uart0-data { 194 uart0_data: uart0-data {
121 samsung,pins = "gpa0-0", "gpa0-1"; 195 samsung,pins = "gpa0-0", "gpa0-1";
122 samsung,pin-function = <2>; 196 samsung,pin-function = <2>;
@@ -158,20 +232,14 @@ Example 2: A pin-controller node with external wakeup interrupt controller node.
158 pinctrl_1: pinctrl@11000000 { 232 pinctrl_1: pinctrl@11000000 {
159 compatible = "samsung,pinctrl-exynos4210"; 233 compatible = "samsung,pinctrl-exynos4210";
160 reg = <0x11000000 0x1000>; 234 reg = <0x11000000 0x1000>;
161 interrupts = <0 46 0>; 235 interrupts = <0 46 0>
162 interrupt-controller;
163 #interrupt-cells = <2>;
164 236
165 wakup_eint: wakeup-interrupt-controller { 237 /* ... */
238
239 wakeup-interrupt-controller {
166 compatible = "samsung,exynos4210-wakeup-eint"; 240 compatible = "samsung,exynos4210-wakeup-eint";
167 interrupt-parent = <&gic>; 241 interrupt-parent = <&gic>;
168 interrupt-controller; 242 interrupts = <0 32 0>;
169 #interrupt-cells = <2>;
170 interrupts = <0 16 0>, <0 17 0>, <0 18 0>, <0 19 0>,
171 <0 20 0>, <0 21 0>, <0 22 0>, <0 23 0>,
172 <0 24 0>, <0 25 0>, <0 26 0>, <0 27 0>,
173 <0 28 0>, <0 29 0>, <0 30 0>, <0 31 0>,
174 <0 32 0>;
175 }; 243 };
176 }; 244 };
177 245
@@ -190,7 +258,8 @@ Example 4: Set up the default pin state for uart controller.
190 258
191 static int s3c24xx_serial_probe(struct platform_device *pdev) { 259 static int s3c24xx_serial_probe(struct platform_device *pdev) {
192 struct pinctrl *pinctrl; 260 struct pinctrl *pinctrl;
193 ... 261
194 ... 262 /* ... */
263
195 pinctrl = devm_pinctrl_get_select_default(&pdev->dev); 264 pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
196 } 265 }
diff --git a/Documentation/devicetree/bindings/power_supply/ab8500/btemp.txt b/Documentation/devicetree/bindings/power_supply/ab8500/btemp.txt
new file mode 100644
index 000000000000..0ba1bcc7f33a
--- /dev/null
+++ b/Documentation/devicetree/bindings/power_supply/ab8500/btemp.txt
@@ -0,0 +1,16 @@
1=== AB8500 Battery Temperature Monitor Driver ===
2
3The properties below describes the node for btemp driver.
4
5Required Properties:
6- compatible = Shall be: "stericsson,ab8500-btemp"
7- battery = Shall be battery specific information
8
9 Example:
10 ab8500_btemp {
11 compatible = "stericsson,ab8500-btemp";
12 battery = <&ab8500_battery>;
13 };
14
15For information on battery specific node, Ref:
16Documentation/devicetree/bindings/power_supply/ab8500/fg.txt
diff --git a/Documentation/devicetree/bindings/power_supply/ab8500/chargalg.txt b/Documentation/devicetree/bindings/power_supply/ab8500/chargalg.txt
new file mode 100644
index 000000000000..ef5328371122
--- /dev/null
+++ b/Documentation/devicetree/bindings/power_supply/ab8500/chargalg.txt
@@ -0,0 +1,16 @@
1=== AB8500 Charging Algorithm Driver ===
2
3The properties below describes the node for chargalg driver.
4
5Required Properties:
6- compatible = Shall be: "stericsson,ab8500-chargalg"
7- battery = Shall be battery specific information
8
9Example:
10ab8500_chargalg {
11 compatible = "stericsson,ab8500-chargalg";
12 battery = <&ab8500_battery>;
13};
14
15For information on battery specific node, Ref:
16Documentation/devicetree/bindings/power_supply/ab8500/fg.txt
diff --git a/Documentation/devicetree/bindings/power_supply/ab8500/charger.txt b/Documentation/devicetree/bindings/power_supply/ab8500/charger.txt
new file mode 100644
index 000000000000..6bdbb08ea9e0
--- /dev/null
+++ b/Documentation/devicetree/bindings/power_supply/ab8500/charger.txt
@@ -0,0 +1,25 @@
1=== AB8500 Charger Driver ===
2
3Required Properties:
4- compatible = Shall be "stericsson,ab8500-charger"
5- battery = Shall be battery specific information
6 Example:
7 ab8500_charger {
8 compatible = "stericsson,ab8500-charger";
9 battery = <&ab8500_battery>;
10 };
11
12- vddadc-supply: Supply for USB and Main charger
13 Example:
14 ab8500-charger {
15 vddadc-supply = <&ab8500_ldo_tvout_reg>;
16 }
17- autopower_cfg:
18 Boolean value depicting the presence of 'automatic poweron after powerloss'
19 Example:
20 ab8500-charger {
21 autopower_cfg;
22 };
23
24For information on battery specific node, Ref:
25Documentation/devicetree/bindings/power_supply/ab8500/fg.txt
diff --git a/Documentation/devicetree/bindings/power_supply/ab8500/fg.txt b/Documentation/devicetree/bindings/power_supply/ab8500/fg.txt
new file mode 100644
index 000000000000..ccafcb9112fb
--- /dev/null
+++ b/Documentation/devicetree/bindings/power_supply/ab8500/fg.txt
@@ -0,0 +1,58 @@
1=== AB8500 Fuel Gauge Driver ===
2
3AB8500 is a mixed signal multimedia and power management
4device comprising: power and energy-management-module,
5wall-charger, usb-charger, audio codec, general purpose adc,
6tvout, clock management and sim card interface.
7
8Fuelgauge support is part of energy-management-modules, other
9components of this module are:
10main-charger, usb-combo-charger and battery-temperature-monitoring.
11
12The properties below describes the node for fuelgauge driver.
13
14Required Properties:
15- compatible = This shall be: "stericsson,ab8500-fg"
16- battery = Shall be battery specific information
17 Example:
18 ab8500_fg {
19 compatible = "stericsson,ab8500-fg";
20 battery = <&ab8500_battery>;
21 };
22
23dependent node:
24 ab8500_battery: ab8500_battery {
25 };
26 This node will provide information on 'thermistor interface' and
27 'battery technology type' used.
28
29Properties of this node are:
30thermistor-on-batctrl:
31 A boolean value indicating thermistor interface to battery
32
33 Note:
34 'btemp' and 'batctrl' are the pins interfaced for battery temperature
35 measurement, 'btemp' signal is used when NTC(negative temperature
36 coefficient) resister is interfaced external to battery whereas
37 'batctrl' pin is used when NTC resister is internal to battery.
38
39 Example:
40 ab8500_battery: ab8500_battery {
41 thermistor-on-batctrl;
42 };
43 indicates: NTC resister is internal to battery, 'batctrl' is used
44 for thermal measurement.
45
46 The absence of property 'thermal-on-batctrl' indicates
47 NTC resister is external to battery and 'btemp' signal is used
48 for thermal measurement.
49
50battery-type:
51 This shall be the battery manufacturing technology type,
52 allowed types are:
53 "UNKNOWN" "NiMH" "LION" "LIPO" "LiFe" "NiCd" "LiMn"
54 Example:
55 ab8500_battery: ab8500_battery {
56 stericsson,battery-type = "LIPO";
57 }
58
diff --git a/Documentation/devicetree/bindings/regulator/gpio-regulator.txt b/Documentation/devicetree/bindings/regulator/gpio-regulator.txt
new file mode 100644
index 000000000000..63c659800c03
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/gpio-regulator.txt
@@ -0,0 +1,37 @@
1GPIO controlled regulators
2
3Required properties:
4- compatible : Must be "regulator-gpio".
5- states : Selection of available voltages and GPIO configs.
6 if there are no states, then use a fixed regulator
7
8Optional properties:
9- enable-gpio : GPIO to use to enable/disable the regulator.
10- gpios : GPIO group used to control voltage.
11- startup-delay-us : Startup time in microseconds.
12- enable-active-high : Polarity of GPIO is active high (default is low).
13
14Any property defined as part of the core regulator binding defined in
15regulator.txt can also be used.
16
17Example:
18
19 mmciv: gpio-regulator {
20 compatible = "regulator-gpio";
21
22 regulator-name = "mmci-gpio-supply";
23 regulator-min-microvolt = <1800000>;
24 regulator-max-microvolt = <2600000>;
25 regulator-boot-on;
26
27 enable-gpio = <&gpio0 23 0x4>;
28 gpios = <&gpio0 24 0x4
29 &gpio0 25 0x4>;
30 states = <1800000 0x3
31 2200000 0x2
32 2600000 0x1
33 2900000 0x0>;
34
35 startup-delay-us = <100000>;
36 enable-active-high;
37 };
diff --git a/Documentation/devicetree/bindings/regulator/max8925-regulator.txt b/Documentation/devicetree/bindings/regulator/max8925-regulator.txt
new file mode 100644
index 000000000000..0057695aae8f
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/max8925-regulator.txt
@@ -0,0 +1,40 @@
1Max8925 Voltage regulators
2
3Required nodes:
4-nodes:
5 - SDV1 for SDV SDV1
6 - SDV2 for SDV SDV2
7 - SDV3 for SDV SDV3
8 - LDO1 for LDO LDO1
9 - LDO2 for LDO LDO2
10 - LDO3 for LDO LDO3
11 - LDO4 for LDO LDO4
12 - LDO5 for LDO LDO5
13 - LDO6 for LDO LDO6
14 - LDO7 for LDO LDO7
15 - LDO8 for LDO LDO8
16 - LDO9 for LDO LDO9
17 - LDO10 for LDO LDO10
18 - LDO11 for LDO LDO11
19 - LDO12 for LDO LDO12
20 - LDO13 for LDO LDO13
21 - LDO14 for LDO LDO14
22 - LDO15 for LDO LDO15
23 - LDO16 for LDO LDO16
24 - LDO17 for LDO LDO17
25 - LDO18 for LDO LDO18
26 - LDO19 for LDO LDO19
27 - LDO20 for LDO LDO20
28
29Optional properties:
30- Any optional property defined in bindings/regulator/regulator.txt
31
32Example:
33
34 SDV1 {
35 regulator-min-microvolt = <637500>;
36 regulator-max-microvolt = <1425000>;
37 regulator-boot-on;
38 regulator-always-on;
39 };
40
diff --git a/Documentation/devicetree/bindings/regulator/max8997-regulator.txt b/Documentation/devicetree/bindings/regulator/max8997-regulator.txt
new file mode 100644
index 000000000000..9fd69a18b0ba
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/max8997-regulator.txt
@@ -0,0 +1,146 @@
1* Maxim MAX8997 Voltage and Current Regulator
2
3The Maxim MAX8997 is a multi-function device which includes volatage and
4current regulators, rtc, charger controller and other sub-blocks. It is
5interfaced to the host controller using a i2c interface. Each sub-block is
6addressed by the host system using different i2c slave address. This document
7describes the bindings for 'pmic' sub-block of max8997.
8
9Required properties:
10- compatible: Should be "maxim,max8997-pmic".
11- reg: Specifies the i2c slave address of the pmic block. It should be 0x66.
12
13- max8997,pmic-buck1-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
14 units for buck1 when changing voltage using gpio dvs. Refer to [1] below
15 for additional information.
16
17- max8997,pmic-buck2-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
18 units for buck2 when changing voltage using gpio dvs. Refer to [1] below
19 for additional information.
20
21- max8997,pmic-buck5-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
22 units for buck5 when changing voltage using gpio dvs. Refer to [1] below
23 for additional information.
24
25[1] If none of the 'max8997,pmic-buck[1/2/5]-uses-gpio-dvs' optional
26 property is specified, the 'max8997,pmic-buck[1/2/5]-dvs-voltage'
27 property should specify atleast one voltage level (which would be a
28 safe operating voltage).
29
30 If either of the 'max8997,pmic-buck[1/2/5]-uses-gpio-dvs' optional
31 property is specified, then all the eigth voltage values for the
32 'max8997,pmic-buck[1/2/5]-dvs-voltage' should be specified.
33
34Optional properties:
35- interrupt-parent: Specifies the phandle of the interrupt controller to which
36 the interrupts from max8997 are delivered to.
37- interrupts: Interrupt specifiers for two interrupt sources.
38 - First interrupt specifier is for 'irq1' interrupt.
39 - Second interrupt specifier is for 'alert' interrupt.
40- max8997,pmic-buck1-uses-gpio-dvs: 'buck1' can be controlled by gpio dvs.
41- max8997,pmic-buck2-uses-gpio-dvs: 'buck2' can be controlled by gpio dvs.
42- max8997,pmic-buck5-uses-gpio-dvs: 'buck5' can be controlled by gpio dvs.
43
44Additional properties required if either of the optional properties are used:
45- max8997,pmic-ignore-gpiodvs-side-effect: When GPIO-DVS mode is used for
46 multiple bucks, changing the voltage value of one of the bucks may affect
47 that of another buck, which is the side effect of the change (set_voltage).
48 Use this property to ignore such side effects and change the voltage.
49
50- max8997,pmic-buck125-default-dvs-idx: Default voltage setting selected from
51 the possible 8 options selectable by the dvs gpios. The value of this
52 property should be between 0 and 7. If not specified or if out of range, the
53 default value of this property is set to 0.
54
55- max8997,pmic-buck125-dvs-gpios: GPIO specifiers for three host gpio's used
56 for dvs. The format of the gpio specifier depends in the gpio controller.
57
58Regulators: The regulators of max8997 that have to be instantiated should be
59included in a sub-node named 'regulators'. Regulator nodes included in this
60sub-node should be of the format as listed below.
61
62 regulator_name {
63 standard regulator bindings here
64 };
65
66The following are the names of the regulators that the max8997 pmic block
67supports. Note: The 'n' in LDOn and BUCKn represents the LDO or BUCK number
68as per the datasheet of max8997.
69
70 - LDOn
71 - valid values for n are 1 to 18 and 21
72 - Example: LDO0, LD01, LDO2, LDO21
73 - BUCKn
74 - valid values for n are 1 to 7.
75 - Example: BUCK1, BUCK2, BUCK3, BUCK7
76
77 - ENVICHG: Battery Charging Current Monitor Output. This is a fixed
78 voltage type regulator
79
80 - ESAFEOUT1: (ldo19)
81 - ESAFEOUT2: (ld020)
82
83 - CHARGER_CV: main battery charger voltage control
84 - CHARGER: main battery charger current control
85 - CHARGER_TOPOFF: end of charge current threshold level
86
87The bindings inside the regulator nodes use the standard regulator bindings
88which are documented elsewhere.
89
90Example:
91
92 max8997_pmic@66 {
93 compatible = "maxim,max8997-pmic";
94 interrupt-parent = <&wakeup_eint>;
95 reg = <0x66>;
96 interrupts = <4 0>, <3 0>;
97
98 max8997,pmic-buck1-uses-gpio-dvs;
99 max8997,pmic-buck2-uses-gpio-dvs;
100 max8997,pmic-buck5-uses-gpio-dvs;
101
102 max8997,pmic-ignore-gpiodvs-side-effect;
103 max8997,pmic-buck125-default-dvs-idx = <0>;
104
105 max8997,pmic-buck125-dvs-gpios = <&gpx0 0 1 0 0>, /* SET1 */
106 <&gpx0 1 1 0 0>, /* SET2 */
107 <&gpx0 2 1 0 0>; /* SET3 */
108
109 max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
110 <1250000>, <1200000>,
111 <1150000>, <1100000>,
112 <1000000>, <950000>;
113
114 max8997,pmic-buck2-dvs-voltage = <1100000>, <1100000>,
115 <1100000>, <1100000>,
116 <1000000>, <1000000>,
117 <1000000>, <1000000>;
118
119 max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
120 <1200000>, <1200000>,
121 <1200000>, <1200000>,
122 <1200000>, <1200000>;
123
124 regulators {
125 ldo1_reg: LDO1 {
126 regulator-name = "VDD_ABB_3.3V";
127 regulator-min-microvolt = <3300000>;
128 regulator-max-microvolt = <3300000>;
129 };
130
131 ldo2_reg: LDO2 {
132 regulator-name = "VDD_ALIVE_1.1V";
133 regulator-min-microvolt = <1100000>;
134 regulator-max-microvolt = <1100000>;
135 regulator-always-on;
136 };
137
138 buck1_reg: BUCK1 {
139 regulator-name = "VDD_ARM_1.2V";
140 regulator-min-microvolt = <950000>;
141 regulator-max-microvolt = <1350000>;
142 regulator-always-on;
143 regulator-boot-on;
144 };
145 };
146 };
diff --git a/Documentation/devicetree/bindings/regulator/vexpress.txt b/Documentation/devicetree/bindings/regulator/vexpress.txt
new file mode 100644
index 000000000000..d775f72487aa
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/vexpress.txt
@@ -0,0 +1,32 @@
1Versatile Express voltage regulators
2------------------------------------
3
4Requires node properties:
5- "compatible" value: "arm,vexpress-volt"
6- "arm,vexpress-sysreg,func" when controlled via vexpress-sysreg
7 (see Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
8 for more details)
9
10Required regulator properties:
11- "regulator-name"
12- "regulator-always-on"
13
14Optional regulator properties:
15- "regulator-min-microvolt"
16- "regulator-max-microvolt"
17
18See Documentation/devicetree/bindings/regulator/regulator.txt
19for more details about the regulator properties.
20
21When no "regulator-[min|max]-microvolt" properties are defined,
22the device is treated as fixed (or rather "read-only") regulator.
23
24Example:
25 volt@0 {
26 compatible = "arm,vexpress-volt";
27 arm,vexpress-sysreg,func = <2 0>;
28 regulator-name = "Cores";
29 regulator-min-microvolt = <800000>;
30 regulator-max-microvolt = <1050000>;
31 regulator-always-on;
32 };
diff --git a/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt b/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt
new file mode 100644
index 000000000000..93f45e9dce7c
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt
@@ -0,0 +1,19 @@
1NVIDIA Tegra20 real-time clock
2
3The Tegra RTC maintains seconds and milliseconds counters, and five alarm
4registers. The alarms and other interrupts may wake the system from low-power
5state.
6
7Required properties:
8
9- compatible : should be "nvidia,tegra20-rtc".
10- reg : Specifies base physical address and size of the registers.
11- interrupts : A single interrupt specifier.
12
13Example:
14
15timer {
16 compatible = "nvidia,tegra20-rtc";
17 reg = <0x7000e000 0x100>;
18 interrupts = <0 2 0x04>;
19};
diff --git a/Documentation/devicetree/bindings/rtc/orion-rtc.txt b/Documentation/devicetree/bindings/rtc/orion-rtc.txt
new file mode 100644
index 000000000000..3bf63ffa5160
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/orion-rtc.txt
@@ -0,0 +1,18 @@
1* Mvebu Real Time Clock
2
3RTC controller for the Kirkwood, the Dove, the Armada 370 and the
4Armada XP SoCs
5
6Required properties:
7- compatible : Should be "marvell,orion-rtc"
8- reg: physical base address of the controller and length of memory mapped
9 region.
10- interrupts: IRQ line for the RTC.
11
12Example:
13
14rtc@10300 {
15 compatible = "marvell,orion-rtc";
16 reg = <0xd0010300 0x20>;
17 interrupts = <50>;
18};
diff --git a/Documentation/devicetree/bindings/sound/ak4104.txt b/Documentation/devicetree/bindings/sound/ak4104.txt
new file mode 100644
index 000000000000..b902ee39cf89
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/ak4104.txt
@@ -0,0 +1,22 @@
1AK4104 S/PDIF transmitter
2
3This device supports SPI mode only.
4
5Required properties:
6
7 - compatible : "asahi-kasei,ak4104"
8
9 - reg : The chip select number on the SPI bus
10
11Optional properties:
12
13 - reset-gpio : a GPIO spec for the reset pin. If specified, it will be
14 deasserted before communication to the device starts.
15
16Example:
17
18spdif: ak4104@0 {
19 compatible = "asahi-kasei,ak4104";
20 reg = <0>;
21 spi-max-frequency = <5000000>;
22};
diff --git a/Documentation/devicetree/bindings/sound/atmel-at91sam9g20ek-wm8731-audio.txt b/Documentation/devicetree/bindings/sound/atmel-at91sam9g20ek-wm8731-audio.txt
new file mode 100644
index 000000000000..9c5a9947b64d
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/atmel-at91sam9g20ek-wm8731-audio.txt
@@ -0,0 +1,26 @@
1* Atmel at91sam9g20ek wm8731 audio complex
2
3Required properties:
4 - compatible: "atmel,at91sam9g20ek-wm8731-audio"
5 - atmel,model: The user-visible name of this sound complex.
6 - atmel,audio-routing: A list of the connections between audio components.
7 - atmel,ssc-controller: The phandle of the SSC controller
8 - atmel,audio-codec: The phandle of the WM8731 audio codec
9Optional properties:
10 - pinctrl-names, pinctrl-0: Please refer to pinctrl-bindings.txt
11
12Example:
13sound {
14 compatible = "atmel,at91sam9g20ek-wm8731-audio";
15 pinctrl-names = "default";
16 pinctrl-0 = <&pinctrl_pck0_as_mck>;
17
18 atmel,model = "wm8731 @ AT91SAMG20EK";
19
20 atmel,audio-routing =
21 "Ext Spk", "LHPOUT",
22 "Int MIC", "MICIN";
23
24 atmel,ssc-controller = <&ssc0>;
25 atmel,audio-codec = <&wm8731>;
26};
diff --git a/Documentation/devicetree/bindings/sound/cs4271.txt b/Documentation/devicetree/bindings/sound/cs4271.txt
index c81b5fd5a5bc..a850fb9c88ea 100644
--- a/Documentation/devicetree/bindings/sound/cs4271.txt
+++ b/Documentation/devicetree/bindings/sound/cs4271.txt
@@ -18,6 +18,8 @@ Optional properties:
18 18
19 - reset-gpio: a GPIO spec to define which pin is connected to the chip's 19 - reset-gpio: a GPIO spec to define which pin is connected to the chip's
20 !RESET pin 20 !RESET pin
21 - cirrus,amuteb-eq-bmutec: When given, the Codec's AMUTEB=BMUTEC flag
22 is enabled.
21 23
22Examples: 24Examples:
23 25
diff --git a/Documentation/devicetree/bindings/sound/omap-abe-twl6040.txt b/Documentation/devicetree/bindings/sound/omap-abe-twl6040.txt
index 65dec876cb2d..fd40c852d7c7 100644
--- a/Documentation/devicetree/bindings/sound/omap-abe-twl6040.txt
+++ b/Documentation/devicetree/bindings/sound/omap-abe-twl6040.txt
@@ -12,7 +12,7 @@ Required properties:
12 12
13Optional properties: 13Optional properties:
14- ti,dmic: phandle for the OMAP dmic node if the machine have it connected 14- ti,dmic: phandle for the OMAP dmic node if the machine have it connected
15- ti,jack_detection: Need to be set to <1> if the board capable to detect jack 15- ti,jack_detection: Need to be present if the board capable to detect jack
16 insertion, removal. 16 insertion, removal.
17 17
18Available audio endpoints for the audio-routing table: 18Available audio endpoints for the audio-routing table:
@@ -59,7 +59,7 @@ sound {
59 compatible = "ti,abe-twl6040"; 59 compatible = "ti,abe-twl6040";
60 ti,model = "SDP4430"; 60 ti,model = "SDP4430";
61 61
62 ti,jack-detection = <1>; 62 ti,jack-detection;
63 ti,mclk-freq = <38400000>; 63 ti,mclk-freq = <38400000>;
64 64
65 ti,mcpdm = <&mcpdm>; 65 ti,mcpdm = <&mcpdm>;
diff --git a/Documentation/devicetree/bindings/spi/nvidia,tegra20-sflash.txt b/Documentation/devicetree/bindings/spi/nvidia,tegra20-sflash.txt
new file mode 100644
index 000000000000..8cf24f6f0a99
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/nvidia,tegra20-sflash.txt
@@ -0,0 +1,26 @@
1NVIDIA Tegra20 SFLASH controller.
2
3Required properties:
4- compatible : should be "nvidia,tegra20-sflash".
5- reg: Should contain SFLASH registers location and length.
6- interrupts: Should contain SFLASH interrupts.
7- nvidia,dma-request-selector : The Tegra DMA controller's phandle and
8 request selector for this SFLASH controller.
9
10Recommended properties:
11- spi-max-frequency: Definition as per
12 Documentation/devicetree/bindings/spi/spi-bus.txt
13
14Example:
15
16spi@7000d600 {
17 compatible = "nvidia,tegra20-sflash";
18 reg = <0x7000c380 0x80>;
19 interrupts = <0 39 0x04>;
20 nvidia,dma-request-selector = <&apbdma 16>;
21 spi-max-frequency = <25000000>;
22 #address-cells = <1>;
23 #size-cells = <0>;
24 status = "disabled";
25};
26
diff --git a/Documentation/devicetree/bindings/spi/nvidia,tegra20-slink.txt b/Documentation/devicetree/bindings/spi/nvidia,tegra20-slink.txt
new file mode 100644
index 000000000000..f5b1ad1a1ec3
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/nvidia,tegra20-slink.txt
@@ -0,0 +1,26 @@
1NVIDIA Tegra20/Tegra30 SLINK controller.
2
3Required properties:
4- compatible : should be "nvidia,tegra20-slink", "nvidia,tegra30-slink".
5- reg: Should contain SLINK registers location and length.
6- interrupts: Should contain SLINK interrupts.
7- nvidia,dma-request-selector : The Tegra DMA controller's phandle and
8 request selector for this SLINK controller.
9
10Recommended properties:
11- spi-max-frequency: Definition as per
12 Documentation/devicetree/bindings/spi/spi-bus.txt
13
14Example:
15
16slink@7000d600 {
17 compatible = "nvidia,tegra20-slink";
18 reg = <0x7000d600 0x200>;
19 interrupts = <0 82 0x04>;
20 nvidia,dma-request-selector = <&apbdma 16>;
21 spi-max-frequency = <25000000>;
22 #address-cells = <1>;
23 #size-cells = <0>;
24 status = "disabled";
25};
26
diff --git a/Documentation/devicetree/bindings/spi/omap-spi.txt b/Documentation/devicetree/bindings/spi/omap-spi.txt
index 81df374adbb9..938809c6829b 100644
--- a/Documentation/devicetree/bindings/spi/omap-spi.txt
+++ b/Documentation/devicetree/bindings/spi/omap-spi.txt
@@ -6,7 +6,9 @@ Required properties:
6 - "ti,omap4-spi" for OMAP4+. 6 - "ti,omap4-spi" for OMAP4+.
7- ti,spi-num-cs : Number of chipselect supported by the instance. 7- ti,spi-num-cs : Number of chipselect supported by the instance.
8- ti,hwmods: Name of the hwmod associated to the McSPI 8- ti,hwmods: Name of the hwmod associated to the McSPI
9 9- ti,pindir-d0-out-d1-in: Select the D0 pin as output and D1 as
10 input. The default is D0 as input and
11 D1 as output.
10 12
11Example: 13Example:
12 14
diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt
index d2c33d0f533e..296015e3c632 100644
--- a/Documentation/devicetree/bindings/spi/spi-bus.txt
+++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
@@ -12,6 +12,7 @@ The SPI master node requires the following properties:
12- #size-cells - should be zero. 12- #size-cells - should be zero.
13- compatible - name of SPI bus controller following generic names 13- compatible - name of SPI bus controller following generic names
14 recommended practice. 14 recommended practice.
15- cs-gpios - (optional) gpios chip select.
15No other properties are required in the SPI bus node. It is assumed 16No other properties are required in the SPI bus node. It is assumed
16that a driver for an SPI bus device will understand that it is an SPI bus. 17that a driver for an SPI bus device will understand that it is an SPI bus.
17However, the binding does not attempt to define the specific method for 18However, the binding does not attempt to define the specific method for
@@ -24,6 +25,22 @@ support describing the chip select layout.
24Optional property: 25Optional property:
25- num-cs : total number of chipselects 26- num-cs : total number of chipselects
26 27
28If cs-gpios is used the number of chip select will automatically increased
29with max(cs-gpios > hw cs)
30
31So if for example the controller has 2 CS lines, and the cs-gpios
32property looks like this:
33
34cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>;
35
36Then it should be configured so that num_chipselect = 4 with the
37following mapping:
38
39cs0 : &gpio1 0 0
40cs1 : native
41cs2 : &gpio1 1 0
42cs3 : &gpio1 2 0
43
27SPI slave nodes must be children of the SPI master node and can 44SPI slave nodes must be children of the SPI master node and can
28contain the following properties. 45contain the following properties.
29- reg - (required) chip select address of device. 46- reg - (required) chip select address of device.
@@ -36,6 +53,11 @@ contain the following properties.
36 shifted clock phase (CPHA) mode 53 shifted clock phase (CPHA) mode
37- spi-cs-high - (optional) Empty property indicating device requires 54- spi-cs-high - (optional) Empty property indicating device requires
38 chip select active high 55 chip select active high
56- spi-3wire - (optional) Empty property indicating device requires
57 3-wire mode.
58
59If a gpio chipselect is used for the SPI slave the gpio number will be passed
60via the cs_gpio
39 61
40SPI example for an MPC5200 SPI bus: 62SPI example for an MPC5200 SPI bus:
41 spi@f00 { 63 spi@f00 {
diff --git a/Documentation/devicetree/bindings/thermal/db8500-thermal.txt b/Documentation/devicetree/bindings/thermal/db8500-thermal.txt
new file mode 100644
index 000000000000..2e1c06fad81f
--- /dev/null
+++ b/Documentation/devicetree/bindings/thermal/db8500-thermal.txt
@@ -0,0 +1,44 @@
1* ST-Ericsson DB8500 Thermal
2
3** Thermal node properties:
4
5- compatible : "stericsson,db8500-thermal";
6- reg : address range of the thermal sensor registers;
7- interrupts : interrupts generated from PRCMU;
8- interrupt-names : "IRQ_HOTMON_LOW" and "IRQ_HOTMON_HIGH";
9- num-trips : number of total trip points, this is required, set it 0 if none,
10 if greater than 0, the following properties must be defined;
11- tripN-temp : temperature of trip point N, should be in ascending order;
12- tripN-type : type of trip point N, should be one of "active" "passive" "hot"
13 "critical";
14- tripN-cdev-num : number of the cooling devices which can be bound to trip
15 point N, this is required if trip point N is defined, set it 0 if none,
16 otherwise the following cooling device names must be defined;
17- tripN-cdev-nameM : name of the No. M cooling device of trip point N;
18
19Usually the num-trips and tripN-*** are separated in board related dts files.
20
21Example:
22thermal@801573c0 {
23 compatible = "stericsson,db8500-thermal";
24 reg = <0x801573c0 0x40>;
25 interrupts = <21 0x4>, <22 0x4>;
26 interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH";
27
28 num-trips = <3>;
29
30 trip0-temp = <75000>;
31 trip0-type = "active";
32 trip0-cdev-num = <1>;
33 trip0-cdev-name0 = "thermal-cpufreq-0";
34
35 trip1-temp = <80000>;
36 trip1-type = "active";
37 trip1-cdev-num = <2>;
38 trip1-cdev-name0 = "thermal-cpufreq-0";
39 trip1-cdev-name1 = "thermal-fan";
40
41 trip2-temp = <85000>;
42 trip2-type = "critical";
43 trip2-cdev-num = <0>;
44}
diff --git a/Documentation/devicetree/bindings/timer/allwinner,sunxi-timer.txt b/Documentation/devicetree/bindings/timer/allwinner,sunxi-timer.txt
new file mode 100644
index 000000000000..0c7b64e95a61
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/allwinner,sunxi-timer.txt
@@ -0,0 +1,17 @@
1Allwinner A1X SoCs Timer Controller
2
3Required properties:
4
5- compatible : should be "allwinner,sunxi-timer"
6- reg : Specifies base physical address and size of the registers.
7- interrupts : The interrupt of the first timer
8- clocks: phandle to the source clock (usually a 24 MHz fixed clock)
9
10Example:
11
12timer {
13 compatible = "allwinner,sunxi-timer";
14 reg = <0x01c20c00 0x400>;
15 interrupts = <22>;
16 clocks = <&osc>;
17};
diff --git a/Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt b/Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt
new file mode 100644
index 000000000000..e019fdc38773
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt
@@ -0,0 +1,21 @@
1NVIDIA Tegra20 timer
2
3The Tegra20 timer provides four 29-bit timer channels and a single 32-bit free
4running counter. The first two channels may also trigger a watchdog reset.
5
6Required properties:
7
8- compatible : should be "nvidia,tegra20-timer".
9- reg : Specifies base physical address and size of the registers.
10- interrupts : A list of 4 interrupts; one per timer channel.
11
12Example:
13
14timer {
15 compatible = "nvidia,tegra20-timer";
16 reg = <0x60005000 0x60>;
17 interrupts = <0 0 0x04
18 0 1 0x04
19 0 41 0x04
20 0 42 0x04>;
21};
diff --git a/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt b/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt
new file mode 100644
index 000000000000..906109d4c593
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt
@@ -0,0 +1,23 @@
1NVIDIA Tegra30 timer
2
3The Tegra30 timer provides ten 29-bit timer channels, a single 32-bit free
4running counter, and 5 watchdog modules. The first two channels may also
5trigger a legacy watchdog reset.
6
7Required properties:
8
9- compatible : should be "nvidia,tegra30-timer", "nvidia,tegra20-timer".
10- reg : Specifies base physical address and size of the registers.
11- interrupts : A list of 6 interrupts; one per each of timer channels 1
12 through 5, and one for the shared interrupt for the remaining channels.
13
14timer {
15 compatible = "nvidia,tegra30-timer", "nvidia,tegra20-timer";
16 reg = <0x60005000 0x400>;
17 interrupts = <0 0 0x04
18 0 1 0x04
19 0 41 0x04
20 0 42 0x04
21 0 121 0x04
22 0 122 0x04>;
23};
diff --git a/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt b/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt
index 2ee903fad25c..273a8d5b3300 100644
--- a/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt
+++ b/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt
@@ -6,11 +6,19 @@ Required properties:
6- reg : Address and length of the register set for the device 6- reg : Address and length of the register set for the device
7- interrupts : Should contain the auart interrupt numbers 7- interrupts : Should contain the auart interrupt numbers
8 8
9Optional properties:
10- fsl,auart-dma-channel : The DMA channels, the first is for RX, the other
11 is for TX. If you add this property, it also means that you
12 will enable the DMA support for the auart.
13 Note: due to the hardware bug in imx23(see errata : 2836),
14 only the imx28 can enable the DMA support for the auart.
15
9Example: 16Example:
10auart0: serial@8006a000 { 17auart0: serial@8006a000 {
11 compatible = "fsl,imx28-auart", "fsl,imx23-auart"; 18 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
12 reg = <0x8006a000 0x2000>; 19 reg = <0x8006a000 0x2000>;
13 interrupts = <112 70 71>; 20 interrupts = <112 70 71>;
21 fsl,auart-dma-channel = <8 9>;
14}; 22};
15 23
16Note: Each auart port should have an alias correctly numbered in "aliases" 24Note: Each auart port should have an alias correctly numbered in "aliases"
diff --git a/Documentation/devicetree/bindings/tty/serial/of-serial.txt b/Documentation/devicetree/bindings/tty/serial/of-serial.txt
index ba385f2e0ddc..1e1145ca4f3c 100644
--- a/Documentation/devicetree/bindings/tty/serial/of-serial.txt
+++ b/Documentation/devicetree/bindings/tty/serial/of-serial.txt
@@ -14,7 +14,10 @@ Required properties:
14 - "serial" if the port type is unknown. 14 - "serial" if the port type is unknown.
15- reg : offset and length of the register set for the device. 15- reg : offset and length of the register set for the device.
16- interrupts : should contain uart interrupt. 16- interrupts : should contain uart interrupt.
17- clock-frequency : the input clock frequency for the UART. 17- clock-frequency : the input clock frequency for the UART
18 or
19 clocks phandle to refer to the clk used as per Documentation/devicetree
20 /bindings/clock/clock-bindings.txt
18 21
19Optional properties: 22Optional properties:
20- current-speed : the current active speed of the UART. 23- current-speed : the current active speed of the UART.
diff --git a/Documentation/devicetree/bindings/usb/am33xx-usb.txt b/Documentation/devicetree/bindings/usb/am33xx-usb.txt
index ca8fa56e9f03..ea840f7f9258 100644
--- a/Documentation/devicetree/bindings/usb/am33xx-usb.txt
+++ b/Documentation/devicetree/bindings/usb/am33xx-usb.txt
@@ -1,14 +1,35 @@
1AM33XX MUSB GLUE 1AM33XX MUSB GLUE
2 - compatible : Should be "ti,musb-am33xx" 2 - compatible : Should be "ti,musb-am33xx"
3 - reg : offset and length of register sets, first usbss, then for musb instances
4 - interrupts : usbss, musb instance interrupts in order
3 - ti,hwmods : must be "usb_otg_hs" 5 - ti,hwmods : must be "usb_otg_hs"
4 - multipoint : Should be "1" indicating the musb controller supports 6 - multipoint : Should be "1" indicating the musb controller supports
5 multipoint. This is a MUSB configuration-specific setting. 7 multipoint. This is a MUSB configuration-specific setting.
6 - num_eps : Specifies the number of endpoints. This is also a 8 - num-eps : Specifies the number of endpoints. This is also a
7 MUSB configuration-specific setting. Should be set to "16" 9 MUSB configuration-specific setting. Should be set to "16"
8 - ram_bits : Specifies the ram address size. Should be set to "12" 10 - ram-bits : Specifies the ram address size. Should be set to "12"
9 - port0_mode : Should be "3" to represent OTG. "1" signifies HOST and "2" 11 - port0-mode : Should be "3" to represent OTG. "1" signifies HOST and "2"
10 represents PERIPHERAL. 12 represents PERIPHERAL.
11 - port1_mode : Should be "1" to represent HOST. "3" signifies OTG and "2" 13 - port1-mode : Should be "1" to represent HOST. "3" signifies OTG and "2"
12 represents PERIPHERAL. 14 represents PERIPHERAL.
13 - power : Should be "250". This signifies the controller can supply upto 15 - power : Should be "250". This signifies the controller can supply upto
14 500mA when operating in host mode. 16 500mA when operating in host mode.
17
18Example:
19
20usb@47400000 {
21 compatible = "ti,musb-am33xx";
22 reg = <0x47400000 0x1000 /* usbss */
23 0x47401000 0x800 /* musb instance 0 */
24 0x47401800 0x800>; /* musb instance 1 */
25 interrupts = <17 /* usbss */
26 18 /* musb instance 0 */
27 19>; /* musb instance 1 */
28 multipoint = <1>;
29 num-eps = <16>;
30 ram-bits = <12>;
31 port0-mode = <3>;
32 port1-mode = <3>;
33 power = <250>;
34 ti,hwmods = "usb_otg_hs";
35};
diff --git a/Documentation/devicetree/bindings/usb/ehci-orion.txt b/Documentation/devicetree/bindings/usb/ehci-orion.txt
new file mode 100644
index 000000000000..6bc09ec14c4d
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/ehci-orion.txt
@@ -0,0 +1,15 @@
1* EHCI controller, Orion Marvell variants
2
3Required properties:
4- compatible: must be "marvell,orion-ehci"
5- reg: physical base address of the controller and length of memory mapped
6 region.
7- interrupts: The EHCI interrupt
8
9Example:
10
11 ehci@50000 {
12 compatible = "marvell,orion-ehci";
13 reg = <0x50000 0x1000>;
14 interrupts = <19>;
15 };
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 9de2b9ff9d6e..902b1b1f568e 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -5,6 +5,7 @@ using them to avoid name-space collisions.
5 5
6ad Avionic Design GmbH 6ad Avionic Design GmbH
7adi Analog Devices, Inc. 7adi Analog Devices, Inc.
8ak Asahi Kasei Corp.
8amcc Applied Micro Circuits Corporation (APM, formally AMCC) 9amcc Applied Micro Circuits Corporation (APM, formally AMCC)
9apm Applied Micro Circuits Corporation (APM) 10apm Applied Micro Circuits Corporation (APM)
10arm ARM Ltd. 11arm ARM Ltd.
@@ -25,6 +26,7 @@ gef GE Fanuc Intelligent Platforms Embedded Systems, Inc.
25hp Hewlett Packard 26hp Hewlett Packard
26ibm International Business Machines (IBM) 27ibm International Business Machines (IBM)
27idt Integrated Device Technologies, Inc. 28idt Integrated Device Technologies, Inc.
29img Imagination Technologies Ltd.
28intercontrol Inter Control Group 30intercontrol Inter Control Group
29linux Linux-specific binding 31linux Linux-specific binding
30marvell Marvell Technology Group Ltd. 32marvell Marvell Technology Group Ltd.
@@ -34,8 +36,9 @@ national National Semiconductor
34nintendo Nintendo 36nintendo Nintendo
35nvidia NVIDIA 37nvidia NVIDIA
36nxp NXP Semiconductors 38nxp NXP Semiconductors
39onnn ON Semiconductor Corp.
37picochip Picochip Ltd 40picochip Picochip Ltd
38powervr Imagination Technologies 41powervr PowerVR (deprecated, use img)
39qcom Qualcomm, Inc. 42qcom Qualcomm, Inc.
40ramtron Ramtron International 43ramtron Ramtron International
41realtek Realtek Semiconductor Corp. 44realtek Realtek Semiconductor Corp.
@@ -45,10 +48,12 @@ schindler Schindler
45sil Silicon Image 48sil Silicon Image
46simtek 49simtek
47sirf SiRF Technology, Inc. 50sirf SiRF Technology, Inc.
51snps Synopsys, Inc.
48st STMicroelectronics 52st STMicroelectronics
49stericsson ST-Ericsson 53stericsson ST-Ericsson
50ti Texas Instruments 54ti Texas Instruments
51via VIA Technologies, Inc. 55via VIA Technologies, Inc.
52wlf Wolfson Microelectronics 56wlf Wolfson Microelectronics
53wm Wondermedia Technologies, Inc. 57wm Wondermedia Technologies, Inc.
58winbond Winbond Electronics corp.
54xlnx Xilinx 59xlnx Xilinx
diff --git a/Documentation/devicetree/bindings/watchdog/atmel-wdt.txt b/Documentation/devicetree/bindings/watchdog/atmel-wdt.txt
new file mode 100644
index 000000000000..2957ebb5aa71
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/atmel-wdt.txt
@@ -0,0 +1,15 @@
1* Atmel Watchdog Timers
2
3** at91sam9-wdt
4
5Required properties:
6- compatible: must be "atmel,at91sam9260-wdt".
7- reg: physical base address of the controller and length of memory mapped
8 region.
9
10Example:
11
12 watchdog@fffffd40 {
13 compatible = "atmel,at91sam9260-wdt";
14 reg = <0xfffffd40 0x10>;
15 };
diff --git a/Documentation/devicetree/bindings/watchdog/brcm,bcm2835-pm-wdog.txt b/Documentation/devicetree/bindings/watchdog/brcm,bcm2835-pm-wdog.txt
new file mode 100644
index 000000000000..d209366b4a69
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/brcm,bcm2835-pm-wdog.txt
@@ -0,0 +1,13 @@
1BCM2835 Watchdog timer
2
3Required properties:
4
5- compatible : should be "brcm,bcm2835-pm-wdt"
6- reg : Specifies base physical address and size of the registers.
7
8Example:
9
10watchdog {
11 compatible = "brcm,bcm2835-pm-wdt";
12 reg = <0x7e100000 0x28>;
13};
diff --git a/Documentation/devicetree/bindings/watchdog/sunxi-wdt.txt b/Documentation/devicetree/bindings/watchdog/sunxi-wdt.txt
new file mode 100644
index 000000000000..0b2717775600
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/sunxi-wdt.txt
@@ -0,0 +1,13 @@
1Allwinner sunXi Watchdog timer
2
3Required properties:
4
5- compatible : should be "allwinner,sunxi-wdt"
6- reg : Specifies base physical address and size of the registers.
7
8Example:
9
10wdt: watchdog@01c20c90 {
11 compatible = "allwinner,sunxi-wdt";
12 reg = <0x01c20c90 0x10>;
13};