diff options
Diffstat (limited to 'Documentation/devicetree/bindings')
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 @@ | |||
1 | Altera SOCFPGA Reset Manager | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "altr,rst-mgr" | ||
5 | - reg : Should contain 1 register ranges(address and length) | ||
6 | |||
7 | Example: | ||
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 @@ | |||
1 | Altera SOCFPGA System Manager | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "altr,sys-mgr" | ||
5 | - reg : Should contain 1 register ranges(address and length) | ||
6 | |||
7 | Example: | ||
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 | ||
10 | FPGA type interrupt controllers, see the versatile-fpga-irq binding doc. | 10 | FPGA type interrupt controllers, see the versatile-fpga-irq binding doc. |
11 | 11 | ||
12 | In the root node the Integrator/CP must have a /cpcon node pointing | ||
13 | to the CP control registers, and the Integrator/AP must have a | ||
14 | /syscon node pointing to the Integrator/AP system controller. | ||
15 | |||
12 | 16 | ||
13 | ARM Versatile Application and Platform Baseboards | 17 | ARM 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 | ||
10 | System 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 | |||
10 | TC/TCLIB Timer required properties: | 16 | TC/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 @@ | |||
1 | Broadcom BCM11351 device tree bindings | ||
2 | ------------------------------------------- | ||
3 | |||
4 | Boards with the bcm281xx SoC family (which includes bcm11130, bcm11140, | ||
5 | bcm11351, bcm28145, bcm28155 SoCs) shall have the following properties: | ||
6 | |||
7 | Required root node property: | ||
8 | |||
9 | compatible = "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 @@ | |||
1 | Calxeda Highbank Platforms Device Tree Bindings | 1 | Calxeda Platforms Device Tree Bindings |
2 | ----------------------------------------------- | 2 | ----------------------------------------------- |
3 | 3 | ||
4 | Boards with Calxeda Cortex-A9 based Highbank SOC shall have the following | 4 | Boards with Calxeda Cortex-A9 based ECX-1000 (Highbank) SOC shall have the |
5 | properties. | 5 | following properties. |
6 | 6 | ||
7 | Required root node properties: | 7 | Required root node properties: |
8 | - compatible = "calxeda,highbank"; | 8 | - compatible = "calxeda,highbank"; |
9 | |||
10 | |||
11 | Boards with Calxeda Cortex-A15 based ECX-2000 SOC shall have the following | ||
12 | properties. | ||
13 | |||
14 | Required 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 | |||
3 | The device tree allows to describe the layout of CPUs in a system through | ||
4 | the "cpus" node, which in turn contains a number of subnodes (ie "cpu") | ||
5 | defining properties for every cpu. | ||
6 | |||
7 | Bindings for CPU nodes follow the ePAPR standard, available from: | ||
8 | |||
9 | http://devicetree.org | ||
10 | |||
11 | For 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 | |||
48 | Example: | ||
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 @@ | |||
1 | Texas Instruments DaVinci Platforms Device Tree Bindings | ||
2 | -------------------------------------------------------- | ||
3 | |||
4 | DA850/OMAP-L138/AM18x Evaluation Module (EVM) board | ||
5 | Required root node properties: | ||
6 | - compatible = "ti,da850-evm", "ti,da850"; | ||
7 | |||
8 | EnBW AM1808 based CMC board | ||
9 | Required root node properties: | ||
10 | - compatible = "enbw,cmc", "ti,da850; | ||
11 | |||
12 | Generic DaVinci Boards | ||
13 | ---------------------- | ||
14 | |||
15 | DA850/OMAP-L138/AM18x generic board | ||
16 | Required 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 | ||
26 | Example (enbw_cmc board): | 26 | Example(da850 EVM ): |
27 | aemif@60000000 { | 27 | nand_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 | |||
4 | to gate power to one or more peripherals on the processor. | 4 | to gate power to one or more peripherals on the processor. |
5 | 5 | ||
6 | Required Properties: | 6 | Required 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 | ||
12 | Optional Properties: | 12 | Node 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 | 13 | defined with a phandle to respective power domain. |
14 | state during boot and remains to be turned-off until explicitly turned-on. | ||
15 | 14 | ||
16 | Example: | 15 | Example: |
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 | |||
22 | Example 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 | |||
41 | Required root node properties: | 41 | Required root node properties: |
42 | - compatible = "fsl,imx6q-sabresd", "fsl,imx6q"; | 42 | - compatible = "fsl,imx6q-sabresd", "fsl,imx6q"; |
43 | 43 | ||
44 | i.MX6 Quad SABRE Automotive Board | ||
45 | Required root node properties: | ||
46 | - compatible = "fsl,imx6q-sabreauto", "fsl,imx6q"; | ||
47 | |||
44 | Generic i.MX boards | 48 | Generic 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 @@ | |||
1 | OMAP Counter-32K bindings | ||
2 | |||
3 | Required 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 | |||
9 | Example: | ||
10 | |||
11 | counter32k: 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 @@ | |||
1 | OMAP Timer bindings | ||
2 | |||
3 | Required 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 | |||
14 | Optional 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 | |||
22 | Example: | ||
23 | |||
24 | timer12: 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 | |||
3 | SPEAr3xx architecture includes shared/multiplexed irqs for certain set | ||
4 | of devices. The multiplexor provides a single interrupt to parent | ||
5 | interrupt controller (VIC) on behalf of a group of devices. | ||
6 | |||
7 | There can be multiple groups available on SPEAr3xx variants but not | ||
8 | exceeding 4. The number of devices in a group can differ, further they | ||
9 | may share same set of status/mask registers spanning across different | ||
10 | bit masks. Also in some cases the group may not have enable or other | ||
11 | registers. This makes software little complex. | ||
12 | |||
13 | A single node in the device tree is used to describe the shared | ||
14 | interrupt multiplexor (one node for all groups). A group in the | ||
15 | interrupt controller shares config/control registers with other groups. | ||
16 | For example, a 32-bit interrupt enable/disable config register can | ||
17 | accommodate upto 4 interrupt groups. | ||
18 | |||
19 | Required 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 | |||
38 | Example: | ||
39 | |||
40 | The following is an example from the SPEAr320 SoC dtsi file. | ||
41 | |||
42 | shirq: 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 @@ | |||
1 | ARM Versatile Express system registers | ||
2 | -------------------------------------- | ||
3 | |||
4 | This is a system control registers block, providing multiple low level | ||
5 | platform functions like board detection and identification, software | ||
6 | interrupt generation, MMC and NOR Flash control etc. | ||
7 | |||
8 | Required 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 | |||
19 | Example: | ||
20 | v2m_sysreg: sysreg@10000000 { | ||
21 | compatible = "arm,vexpress-sysreg"; | ||
22 | reg = <0x10000000 0x1000>; | ||
23 | gpio-controller; | ||
24 | #gpio-cells = <2>; | ||
25 | }; | ||
26 | |||
27 | This block also can also act a bridge to the platform's configuration | ||
28 | bus via "system control" interface, addressing devices with site number, | ||
29 | position in the board stack, config controller, function and device | ||
30 | numbers - see motherboard's TRM for more details. | ||
31 | |||
32 | The 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 | ||
34 | parent) and relies on the board topology properties - see main vexpress | ||
35 | node documentation for more details. It must must also define the | ||
36 | following 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 | |||
42 | Example: | ||
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 | |||
11 | can be initialized in one of two different configurations ("memory | 11 | can be initialized in one of two different configurations ("memory |
12 | maps"), care must be taken to include the correct one. | 12 | maps"), care must be taken to include the correct one. |
13 | 13 | ||
14 | |||
15 | Root node | ||
16 | --------- | ||
17 | |||
14 | Required properties in the root node: | 18 | Required 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 | |||
53 | CPU nodes | ||
54 | --------- | ||
55 | |||
48 | Top-level standard "cpus" node is required. It must contain a node | 56 | Top-level standard "cpus" node is required. It must contain a node |
49 | with device_type = "cpu" property for every available core, eg.: | 57 | with 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 | |||
71 | Configuration infrastructure | ||
72 | ---------------------------- | ||
73 | |||
74 | The platform has an elaborated configuration system, consisting of | ||
75 | microcontrollers residing on the mother- and daughterboards known | ||
76 | as Motherboard/Daughterboard Configuration Controller (MCC and DCC). | ||
77 | The controllers are responsible for the platform initialization | ||
78 | (reset generation, flash programming, FPGA bitfiles loading etc.) | ||
79 | but also control clock generators, voltage regulators, gather | ||
80 | environmental data like temperature, power consumption etc. Even | ||
81 | the video output switch (FPGA) is controlled that way. | ||
82 | |||
83 | Nodes describing devices controlled by this infrastructure should | ||
84 | point at the bridge device node: | ||
85 | - bridge phandle: | ||
86 | arm,vexpress,config-bridge = <phandle>; | ||
87 | This property can be also defined in a parent node (eg. for a DCC) | ||
88 | and is effective for all children. | ||
89 | |||
90 | |||
91 | Platform topology | ||
92 | ----------------- | ||
93 | |||
94 | As Versatile Express can be configured in number of physically | ||
95 | different setups, the device tree should describe platform topology. | ||
96 | Root node and main motherboard node must define the following | ||
97 | property, 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 | |||
109 | Any of the numbers above defaults to zero if not defined in | ||
110 | the node or any of its parent. | ||
111 | |||
112 | |||
113 | Motherboard | ||
114 | ----------- | ||
115 | |||
62 | The motherboard description file provides a single "motherboard" node | 116 | The motherboard description file provides a single "motherboard" node |
63 | using 2 address cells corresponding to the Static Memory Bus used | 117 | using 2 address cells corresponding to the Static Memory Bus used |
64 | between the motherboard and the tile. The first cell defines the Chip | 118 | between 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 | ||
90 | Current Linux implementation requires a "arm,v2m_timer" alias | 144 | The tile description should define a "smb" node, describing the |
91 | pointing at one of the motherboard's SP804 timers, if it is to be | 145 | Static Memory Bus between the tile and motherboard. It must define |
92 | used as the system timer. This alias should be defined in the | 146 | the following properties: |
93 | motherboard 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 | ||
95 | The tile description must define "ranges", "interrupt-map-mask" and | ||
96 | "interrupt-map" properties to translate the motherboard's address | ||
97 | and interrupt space into one used by the tile's processor. | ||
98 | 158 | ||
99 | Abbreviated example: | 159 | Example 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 | |||
3 | SATA PHY nodes are defined to describe on-chip SATA Physical layer controllers. | ||
4 | Each SATA PHY controller should have its own node. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible : compatible list, contains "samsung,exynos5-sata-phy" | ||
8 | - reg : <registers mapping> | ||
9 | |||
10 | Example: | ||
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 | |||
3 | SATA nodes are defined to describe on-chip Serial ATA controllers. | ||
4 | Each SATA controller should have its own node. | ||
5 | |||
6 | Required 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 | |||
12 | Example: | ||
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 | ||
3 | properties: | 3 | properties: |
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 | ||
9 | Sub-nodes: | 10 | Sub-nodes: |
10 | All the devices connected to ocp2scp are described using sub-node to ocp2scp | 11 | All the devices connected to ocp2scp are described using sub-node to ocp2scp |
12 | |||
13 | ocp2scp@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 | ||
57 | Examples: | 57 | Examples: |
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 | |||
3 | Required 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 | |||
9 | The clock consumer should specify the desired clock by having the clock | ||
10 | ID in its "clocks" phandle cell. The following is a full list of i.MX25 | ||
11 | clocks 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 | |||
143 | Examples: | ||
144 | |||
145 | clks: 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 | |||
155 | uart1: 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 | ||
80 | Examples: | 80 | Examples: |
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 | |||
3 | Required 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 | |||
9 | The clock consumer should specify the desired clock by having the clock | ||
10 | ID in its "clocks" phandle cell. The following is a full list of i.MX5 | ||
11 | clocks 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 | |||
175 | Examples (for mx53): | ||
176 | |||
177 | clks: 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 | |||
184 | can1: 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 | ||
202 | Examples: | 207 | Examples: |
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 @@ | |||
1 | Device Tree Clock bindings for the Zynq 7000 EPP | ||
2 | |||
3 | The Zynq EPP has several different clk providers, each with there own bindings. | ||
4 | The purpose of this document is to document their usage. | ||
5 | |||
6 | See clock_bindings.txt for more information on the generic clock bindings. | ||
7 | See Chapter 25 of Zynq TRM for more information about Zynq clocks. | ||
8 | |||
9 | == PLLs == | ||
10 | |||
11 | Used to describe the ARM_PLL, DDR_PLL, and IO_PLL. | ||
12 | |||
13 | Required 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 | |||
20 | Optional properties: | ||
21 | - clock-output-names : name of the output clock | ||
22 | |||
23 | Example: | ||
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 | |||
34 | Describes clock node for the SDIO, SMC, SPI, QSPI, and UART clocks. | ||
35 | |||
36 | Required 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 | |||
47 | Example: | ||
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 @@ | |||
1 | SPEAr cpufreq driver | ||
2 | ------------------- | ||
3 | |||
4 | SPEAr SoC cpufreq driver for CPU frequency scaling. | ||
5 | It supports both uniprocessor (UP) and symmetric multiprocessor (SMP) systems | ||
6 | which share clock across all CPUs. | ||
7 | |||
8 | Required properties: | ||
9 | - cpufreq_tbl: Table of frequencies CPU could be transitioned into, in the | ||
10 | increasing order. | ||
11 | |||
12 | Optional properties: | ||
13 | - clock-latency: Specify the possible maximum transition latency for clock, in | ||
14 | unit of nanoseconds. | ||
15 | |||
16 | Both required and optional properties listed above must be defined under node | ||
17 | /cpus/cpu@0. | ||
18 | |||
19 | Examples: | ||
20 | -------- | ||
21 | cpus { | ||
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 @@ | |||
1 | Device-Tree bindings for drm hdmi driver | ||
2 | |||
3 | Required 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 | |||
15 | Example: | ||
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 @@ | |||
1 | Device-Tree bindings for hdmiddc driver | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: value should be "samsung,exynos5-hdmiddc". | ||
5 | - reg: I2C address of the hdmiddc device. | ||
6 | |||
7 | Example: | ||
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 @@ | |||
1 | Device-Tree bindings for hdmiphy driver | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: value should be "samsung,exynos5-hdmiphy". | ||
5 | - reg: I2C address of the hdmiphy device. | ||
6 | |||
7 | Example: | ||
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 @@ | |||
1 | Device-Tree bindings for mixer driver | ||
2 | |||
3 | Required 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 | |||
9 | Example: | ||
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 @@ | |||
1 | GPIO line that should be set high/low to power off a device | ||
2 | |||
3 | Required 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 | |||
10 | Optional 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 | |||
17 | Examples: | ||
18 | |||
19 | gpio-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 @@ | |||
1 | STMPE gpio | ||
2 | ---------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible: "st,stmpe-gpio" | ||
6 | |||
7 | Optional properties: | ||
8 | - st,norequest-mask: bitmask specifying which GPIOs should _not_ be requestable | ||
9 | due to different usage (e.g. touch, keypad) | ||
10 | |||
11 | Node name must be stmpe_gpio and should be child node of stmpe node to which it | ||
12 | belongs. | ||
13 | |||
14 | Example: | ||
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 | ||
78 | 2.1) gpio-controller and pinctrl subsystem | ||
79 | ------------------------------------------ | ||
78 | 80 | ||
81 | gpio-controller on a SOC might be tightly coupled with the pinctrl | ||
82 | subsystem, in the sense that the pins can be used by other functions | ||
83 | together with optional gpio feature. | ||
84 | |||
85 | While the pin allocation is totally managed by the pin ctrl subsystem, | ||
86 | gpio (under gpiolib) is still maintained by gpio drivers. It may happen | ||
87 | that different pin ranges in a SoC is managed by different gpio drivers. | ||
88 | |||
89 | This makes it logical to let gpio drivers announce their pin ranges to | ||
90 | the pin ctrl subsystem and call 'pinctrl_request_gpio' in order to | ||
91 | request the corresponding pin before any gpio usage. | ||
92 | |||
93 | For this, the gpio controller can use a pinctrl phandle and pins to | ||
94 | announce 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 | |||
105 | where, | ||
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 | |||
113 | The pinctrl node must have "#gpio-range-cells" property to show number of | ||
114 | arguments 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 | ||
12 | optional properties: | ||
13 | - #gpio-lines: Number of gpio if absent 32. | ||
14 | |||
15 | |||
12 | Example: | 16 | Example: |
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 @@ | |||
1 | Binding for dual-GPIO LED found on Network Space v2 (and parents). | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "lacie,ns2-leds". | ||
5 | |||
6 | Each LED is represented as a sub-node of the ns2-leds device. | ||
7 | |||
8 | Required 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 | |||
12 | Optional 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 | |||
16 | Example: | ||
17 | |||
18 | ns2-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 | |||
3 | SPEAr platform provides a provision to control chipselects of ARM PL022 Prime | ||
4 | Cell spi controller through its system registers, which otherwise remains under | ||
5 | PL022 control. If chipselect remain under PL022 control then they would be | ||
6 | released as soon as transfer is over and TxFIFO becomes empty. This is not | ||
7 | desired by some of the device protocols above spi which expect (multiple) | ||
8 | transfers without releasing their chipselects. | ||
9 | |||
10 | Chipselects can be controlled by software by turning them as GPIOs. SPEAr | ||
11 | provides another interface through system registers through which software can | ||
12 | directly control each PL022 chipselect. Hence, it is natural for SPEAr to export | ||
13 | the control of this interface as gpio. | ||
14 | |||
15 | Required 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 | |||
27 | All the above bit offsets are within peripcfg register. | ||
28 | |||
29 | Example: | ||
30 | ------- | ||
31 | spics: 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 | |||
44 | spi0: 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 @@ | |||
1 | Versatile Express hwmon sensors | ||
2 | ------------------------------- | ||
3 | |||
4 | Requires 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 | |||
15 | Optional node properties: | ||
16 | - label : string describing the monitored value | ||
17 | |||
18 | Example: | ||
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: | |||
12 | Examples: | 12 | Examples: |
13 | 13 | ||
14 | i2c@83fc4000 { /* I2C2 on i.MX51 */ | 14 | i2c@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 | ||
20 | i2c@70038000 { /* HS-I2C on i.MX51 */ | 20 | i2c@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 | |||
4 | Required 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 | |||
11 | Examples: | ||
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 | |||
37 | Required 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 | |||
44 | Examples: | ||
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) | |||
55 | stm,m41t00 Serial Access TIMEKEEPER | 55 | stm,m41t00 Serial Access TIMEKEEPER |
56 | stm,m41t62 Serial real-time clock (RTC) with alarm | 56 | stm,m41t62 Serial real-time clock (RTC) with alarm |
57 | stm,m41t80 M41T80 - SERIAL ACCESS RTC WITH ALARMS | 57 | stm,m41t80 M41T80 - SERIAL ACCESS RTC WITH ALARMS |
58 | taos,tsl2550 Ambient Light Sensor with SMBUS/Two Wire Serial Interface | ||
58 | ti,tsc2003 I2C Touch-Screen Controller | 59 | ti,tsc2003 I2C Touch-Screen Controller |
59 | ti,tmp102 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface | 60 | ti,tmp102 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface |
61 | ti,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 | |||
3 | Required properties: | ||
4 | - compatible : "rohm,bu21013_tp" | ||
5 | - reg : I2C device address | ||
6 | |||
7 | Optional 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 | |||
15 | Example: | ||
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 @@ | |||
1 | Allwinner Sunxi Interrupt Controller | ||
2 | |||
3 | Required 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 | |||
11 | The interrupt sources are as follows: | ||
12 | |||
13 | 0: ENMI | ||
14 | 1: UART0 | ||
15 | 2: UART1 | ||
16 | 3: UART2 | ||
17 | 4: UART3 | ||
18 | 5: IR0 | ||
19 | 6: IR1 | ||
20 | 7: I2C0 | ||
21 | 8: I2C1 | ||
22 | 9: I2C2 | ||
23 | 10: SPI0 | ||
24 | 11: SPI1 | ||
25 | 12: SPI2 | ||
26 | 13: SPDIF | ||
27 | 14: AC97 | ||
28 | 15: TS | ||
29 | 16: I2S | ||
30 | 17: UART4 | ||
31 | 18: UART5 | ||
32 | 19: UART6 | ||
33 | 20: UART7 | ||
34 | 21: KEYPAD | ||
35 | 22: TIMER0 | ||
36 | 23: TIMER1 | ||
37 | 24: TIMER2 | ||
38 | 25: TIMER3 | ||
39 | 26: CAN | ||
40 | 27: DMA | ||
41 | 28: PIO | ||
42 | 29: TOUCH_PANEL | ||
43 | 30: AUDIO_CODEC | ||
44 | 31: LRADC | ||
45 | 32: SDMC0 | ||
46 | 33: SDMC1 | ||
47 | 34: SDMC2 | ||
48 | 35: SDMC3 | ||
49 | 36: MEMSTICK | ||
50 | 37: NAND | ||
51 | 38: USB0 | ||
52 | 39: USB1 | ||
53 | 40: USB2 | ||
54 | 41: SCR | ||
55 | 42: CSI0 | ||
56 | 43: CSI1 | ||
57 | 44: LCDCTRL0 | ||
58 | 45: LCDCTRL1 | ||
59 | 46: MP | ||
60 | 47: DEFEBE0 | ||
61 | 48: DEFEBE1 | ||
62 | 49: PMU | ||
63 | 50: SPI3 | ||
64 | 51: TZASC | ||
65 | 52: PATA | ||
66 | 53: VE | ||
67 | 54: SS | ||
68 | 55: EMAC | ||
69 | 56: SATA | ||
70 | 57: GPS | ||
71 | 58: HDMI | ||
72 | 59: TVE | ||
73 | 60: ACE | ||
74 | 61: TVD | ||
75 | 62: PS2_0 | ||
76 | 63: PS2_1 | ||
77 | 64: USB3 | ||
78 | 65: USB4 | ||
79 | 66: PLE_PFM | ||
80 | 67: TIMER4 | ||
81 | 68: TIMER5 | ||
82 | 69: GPU_GP | ||
83 | 70: GPU_GPMMU | ||
84 | 71: GPU_PP0 | ||
85 | 72: GPU_PPMMU0 | ||
86 | 73: GPU_PMU | ||
87 | 74: GPU_RSV0 | ||
88 | 75: GPU_RSV1 | ||
89 | 76: GPU_RSV2 | ||
90 | 77: GPU_RSV3 | ||
91 | 78: GPU_RSV4 | ||
92 | 79: GPU_RSV5 | ||
93 | 80: GPU_RSV6 | ||
94 | 82: SYNC_TIMER0 | ||
95 | 83: SYNC_TIMER1 | ||
96 | |||
97 | Example: | ||
98 | |||
99 | intc: 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 @@ | |||
1 | Common leds properties. | ||
2 | |||
3 | Optional 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 | |||
17 | Examples: | ||
18 | |||
19 | system-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 | |||
3 | Multi Format Codec (MFC) is the IP present in Samsung SoCs which | ||
4 | supports high resolution decoding and encoding functionalities. | ||
5 | The MFC device driver is a v4l2 driver which can encode/decode | ||
6 | video raw/elementary streams and has support for all popular | ||
7 | video codecs. | ||
8 | |||
9 | Required 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 | |||
24 | ab8500-btemp : : : Battery Temperature | 24 | ab8500-btemp : : : Battery Temperature |
25 | ab8500-charger : : : Battery Charger | 25 | ab8500-charger : : : Battery Charger |
26 | ab8500-codec : : : Audio Codec | 26 | ab8500-codec : : : Audio Codec |
27 | ab8500-fg : : : Fuel Gauge | 27 | ab8500-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 | ||
33 | ab8500-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 | ||
39 | ab8500-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 | ||
28 | ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter | 53 | ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter |
29 | SW_CONV_END : : | 54 | SW_CONV_END : : |
30 | ab8500-gpio : : : GPIO Controller | 55 | ab8500-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 | |||
3 | Required 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 | |||
10 | Example: | ||
11 | ssc0: 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 | |||
27 | Optional 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 | ||
25 | Example: | 31 | Example: |
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 | |||
19 | Required SoC Specific Properties: | 15 | Required 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 | ||
26 | Required Board Specific Properties: | 22 | Required 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 | ||
30 | Optional Board Specific Properties: | 30 | Optional 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 | ||
36 | Example: | 36 | Example: |
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 |
20 | ti,non-removable: non-removable slot (like eMMC) | 20 | ti,non-removable: non-removable slot (like eMMC) |
21 | ti,needs-special-reset: Requires a special softreset sequence | 21 | ti,needs-special-reset: Requires a special softreset sequence |
22 | ti,needs-special-hs-handling: HSMMC IP needs special setting for handling High Speed | ||
22 | 23 | ||
23 | Example: | 24 | Example: |
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 | |||
3 | This file documents differences between the core properties described | ||
4 | by mmc.txt and the properties used by the wmt-sdmmc driver. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible: Should be "wm,wm8505-sdhc". | ||
8 | - interrupts: Two interrupts are required - regular irq and dma irq. | ||
9 | |||
10 | Optional properties: | ||
11 | - sdon-inverted: SD_ON bit is inverted on the controller | ||
12 | |||
13 | Examples: | ||
14 | |||
15 | sdhc@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 @@ | |||
1 | Aeroflex Gaisler GRCAN and GRHCAN CAN controllers. | ||
2 | |||
3 | The GRCAN and CRHCAN CAN controllers are available in the GRLIB VHDL IP core | ||
4 | library. | ||
5 | |||
6 | Note: 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 | ||
8 | sparc. | ||
9 | |||
10 | Required 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 | |||
21 | Optional 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 | |||
27 | For further information look in the documentation for the GLIB IP core library: | ||
28 | http://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 | |||
3 | Required 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 | |||
12 | Optional properties: | ||
13 | - local-mac-address: 6 bytes, mac address | ||
14 | |||
15 | Examples: | ||
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 | |||
3 | The AT91 Pinmux Controler, enables the IC | ||
4 | to share one PAD to several functional blocks. The sharing is done by | ||
5 | multiplexing the PAD input/output signals. For each PAD there are up to | ||
6 | 8 muxing options (called periph modes). Since different modules require | ||
7 | different PAD settings (like pull up, keeper, etc) the contoller controls | ||
8 | also the PAD settings parameters. | ||
9 | |||
10 | Please refer to pinctrl-bindings.txt in this directory for details of the | ||
11 | common pinctrl bindings used by client devices, including the meaning of the | ||
12 | phrase "pin configuration node". | ||
13 | |||
14 | Atmel AT91 pin configuration node is a node of a group of pins which can be | ||
15 | used for a specific device or function. This node represents both mux and config | ||
16 | of the pins in that group. The 'pins' selects the function mode(also named pin | ||
17 | mode) this pin can work on and the 'config' configures various pad settings | ||
18 | such as pull-up, multi drive, etc. | ||
19 | |||
20 | Required 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 | |||
25 | How to create such array: | ||
26 | |||
27 | Each column will represent the possible peripheral of the pinctrl | ||
28 | Each line will represent a pio bank | ||
29 | |||
30 | Take an example on the 9260 | ||
31 | Peripheral: 2 ( A and B) | ||
32 | Bank: 3 (A, B and C) | ||
33 | => | ||
34 | |||
35 | /* A B */ | ||
36 | 0xffffffff 0xffc00c3b /* pioA */ | ||
37 | 0xffffffff 0x7fff3ccf /* pioB */ | ||
38 | 0xffffffff 0x007fffff /* pioC */ | ||
39 | |||
40 | For each peripheral/bank we will descibe in a u32 if a pin can can be | ||
41 | configured in it by putting 1 to the pin bit (1 << pin) | ||
42 | |||
43 | Let's take the pioA on peripheral B | ||
44 | From the datasheet Table 10-2. | ||
45 | Peripheral B | ||
46 | PA0 MCDB0 | ||
47 | PA1 MCCDB | ||
48 | PA2 | ||
49 | PA3 MCDB3 | ||
50 | PA4 MCDB2 | ||
51 | PA5 MCDB1 | ||
52 | PA6 | ||
53 | PA7 | ||
54 | PA8 | ||
55 | PA9 | ||
56 | PA10 ETX2 | ||
57 | PA11 ETX3 | ||
58 | PA12 | ||
59 | PA13 | ||
60 | PA14 | ||
61 | PA15 | ||
62 | PA16 | ||
63 | PA17 | ||
64 | PA18 | ||
65 | PA19 | ||
66 | PA20 | ||
67 | PA21 | ||
68 | PA22 ETXER | ||
69 | PA23 ETX2 | ||
70 | PA24 ETX3 | ||
71 | PA25 ERX2 | ||
72 | PA26 ERX3 | ||
73 | PA27 ERXCK | ||
74 | PA28 ECRS | ||
75 | PA29 ECOL | ||
76 | PA30 RXD4 | ||
77 | PA31 TXD4 | ||
78 | |||
79 | => 0xffc00c3b | ||
80 | |||
81 | Required 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 | |||
86 | Bits used for CONFIG: | ||
87 | PULL_UP (1 << 0): indicate this pin need a pull up. | ||
88 | MULTIDRIVE (1 << 1): indicate this pin need to be configured as multidrive. | ||
89 | DEGLITCH (1 << 2): indicate this pin need deglitch. | ||
90 | PULL_DOWN (1 << 3): indicate this pin need a pull down. | ||
91 | DIS_SCHMIT (1 << 4): indicate this pin need to disable schmit trigger. | ||
92 | DEBOUNCE (1 << 16): indicate this pin need debounce. | ||
93 | DEBOUNCE_VAL (0x3fff << 17): debounce val. | ||
94 | |||
95 | NOTE: | ||
96 | Some requirements for using atmel,at91rm9200-pinctrl binding: | ||
97 | 1. We have pin function node defined under at91 controller node to represent | ||
98 | what pinmux functions this SoC supports. | ||
99 | 2. 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. | ||
104 | 3. Each pin configuration node should have a phandle, devices can set pins | ||
105 | configurations by referring to the phandle of that pin configuration node. | ||
106 | 4. The gpio controller must be describe in the pinctrl simple-bus. | ||
107 | |||
108 | Examples: | ||
109 | |||
110 | pinctrl@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 | |||
134 | dbgu: 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 | ||
11 | This driver supports all kirkwood variants, i.e. 88f6180, 88f619x, and 88f628x. | 12 | This driver supports all kirkwood variants, i.e. 88f6180, 88f619x, and 88f628x. |
13 | It also support the 88f6281-based variant in the 98dx412x Bobcat SoCs. | ||
12 | 14 | ||
13 | Available mpp pins/groups and functions: | 15 | Available mpp pins/groups and functions: |
14 | Note: brackets (x) are not part of the mpp name for marvell,function and given | 16 | Note: 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) | |||
277 | mpp47 47 gpio, ts(mp11), tdm(drx), lcd(vsync) | 279 | mpp47 47 gpio, ts(mp11), tdm(drx), lcd(vsync) |
278 | mpp48 48 gpio, ts(mp12), tdm(dtx), lcd(d16) | 280 | mpp48 48 gpio, ts(mp12), tdm(dtx), lcd(d16) |
279 | mpp49 49 gpo, tdm(rx0ql), pex(clkreq), lcd(d17) | 281 | mpp49 49 gpo, tdm(rx0ql), pex(clkreq), lcd(d17) |
282 | |||
283 | * Marvell Bobcat 98dx4122 | ||
284 | |||
285 | name pins functions | ||
286 | ================================================================================ | ||
287 | mpp0 0 gpio, nand(io2), spi(cs) | ||
288 | mpp1 1 gpo, nand(io3), spi(mosi) | ||
289 | mpp2 2 gpo, nand(io4), spi(sck) | ||
290 | mpp3 3 gpo, nand(io5), spi(miso) | ||
291 | mpp4 4 gpio, nand(io6), uart0(rxd) | ||
292 | mpp5 5 gpo, nand(io7), uart0(txd) | ||
293 | mpp6 6 sysrst(out), spi(mosi) | ||
294 | mpp7 7 gpo, pex(rsto), spi(cs) | ||
295 | mpp8 8 gpio, twsi0(sda), uart0(rts), uart1(rts) | ||
296 | mpp9 9 gpio, twsi(sck), uart0(cts), uart1(cts) | ||
297 | mpp10 10 gpo, spi(sck), uart0(txd) | ||
298 | mpp11 11 gpio, spi(miso), uart0(rxd) | ||
299 | mpp13 13 gpio, uart1(txd) | ||
300 | mpp14 14 gpio, uart1(rxd) | ||
301 | mpp15 15 gpio, uart0(rts) | ||
302 | mpp16 16 gpio, uart0(cts) | ||
303 | mpp18 18 gpo, nand(io0) | ||
304 | mpp19 19 gpo, nand(io1) | ||
305 | mpp34 34 gpio | ||
306 | mpp35 35 gpio | ||
307 | mpp36 36 gpio | ||
308 | mpp37 37 gpio | ||
309 | mpp38 38 gpio | ||
310 | mpp39 39 gpio | ||
311 | mpp40 40 gpio | ||
312 | mpp41 41 gpio | ||
313 | mpp42 42 gpio | ||
314 | mpp43 43 gpio | ||
315 | mpp44 44 gpio | ||
316 | mpp45 45 gpio | ||
317 | mpp49 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. | |||
8 | Required Properties: | 8 | Required 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. | |||
72 | A. External GPIO Interrupts: For supporting external gpio interrupts, the | 79 | A. 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 | ||
86 | B. External Wakeup Interrupts: For supporting external wakeup interrupts, a | 101 | B. 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 | |||
108 | Aliases: | 137 | Aliases: |
109 | 138 | ||
110 | All the pin controller nodes should be represented in the aliases node using | 139 | All the pin controller nodes should be represented in the aliases node using |
111 | the following format 'pinctrl{n}' where n is a unique number for the alias. | 140 | the following format 'pinctrl{n}' where n is a unique number for the alias. |
112 | 141 | ||
142 | Example: 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 | |||
113 | Example 1: A pin-controller node with pin groups. | 185 | Example 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 | |||
3 | The properties below describes the node for btemp driver. | ||
4 | |||
5 | Required 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 | |||
15 | For information on battery specific node, Ref: | ||
16 | Documentation/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 | |||
3 | The properties below describes the node for chargalg driver. | ||
4 | |||
5 | Required Properties: | ||
6 | - compatible = Shall be: "stericsson,ab8500-chargalg" | ||
7 | - battery = Shall be battery specific information | ||
8 | |||
9 | Example: | ||
10 | ab8500_chargalg { | ||
11 | compatible = "stericsson,ab8500-chargalg"; | ||
12 | battery = <&ab8500_battery>; | ||
13 | }; | ||
14 | |||
15 | For information on battery specific node, Ref: | ||
16 | Documentation/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 | |||
3 | Required 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 | |||
24 | For information on battery specific node, Ref: | ||
25 | Documentation/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 | |||
3 | AB8500 is a mixed signal multimedia and power management | ||
4 | device comprising: power and energy-management-module, | ||
5 | wall-charger, usb-charger, audio codec, general purpose adc, | ||
6 | tvout, clock management and sim card interface. | ||
7 | |||
8 | Fuelgauge support is part of energy-management-modules, other | ||
9 | components of this module are: | ||
10 | main-charger, usb-combo-charger and battery-temperature-monitoring. | ||
11 | |||
12 | The properties below describes the node for fuelgauge driver. | ||
13 | |||
14 | Required 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 | |||
23 | dependent node: | ||
24 | ab8500_battery: ab8500_battery { | ||
25 | }; | ||
26 | This node will provide information on 'thermistor interface' and | ||
27 | 'battery technology type' used. | ||
28 | |||
29 | Properties of this node are: | ||
30 | thermistor-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 | |||
50 | battery-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 @@ | |||
1 | GPIO controlled regulators | ||
2 | |||
3 | Required 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 | |||
8 | Optional 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 | |||
14 | Any property defined as part of the core regulator binding defined in | ||
15 | regulator.txt can also be used. | ||
16 | |||
17 | Example: | ||
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 @@ | |||
1 | Max8925 Voltage regulators | ||
2 | |||
3 | Required 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 | |||
29 | Optional properties: | ||
30 | - Any optional property defined in bindings/regulator/regulator.txt | ||
31 | |||
32 | Example: | ||
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 | |||
3 | The Maxim MAX8997 is a multi-function device which includes volatage and | ||
4 | current regulators, rtc, charger controller and other sub-blocks. It is | ||
5 | interfaced to the host controller using a i2c interface. Each sub-block is | ||
6 | addressed by the host system using different i2c slave address. This document | ||
7 | describes the bindings for 'pmic' sub-block of max8997. | ||
8 | |||
9 | Required 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 | |||
34 | Optional 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 | |||
44 | Additional 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 | |||
58 | Regulators: The regulators of max8997 that have to be instantiated should be | ||
59 | included in a sub-node named 'regulators'. Regulator nodes included in this | ||
60 | sub-node should be of the format as listed below. | ||
61 | |||
62 | regulator_name { | ||
63 | standard regulator bindings here | ||
64 | }; | ||
65 | |||
66 | The following are the names of the regulators that the max8997 pmic block | ||
67 | supports. Note: The 'n' in LDOn and BUCKn represents the LDO or BUCK number | ||
68 | as 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 | |||
87 | The bindings inside the regulator nodes use the standard regulator bindings | ||
88 | which are documented elsewhere. | ||
89 | |||
90 | Example: | ||
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 @@ | |||
1 | Versatile Express voltage regulators | ||
2 | ------------------------------------ | ||
3 | |||
4 | Requires 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 | |||
10 | Required regulator properties: | ||
11 | - "regulator-name" | ||
12 | - "regulator-always-on" | ||
13 | |||
14 | Optional regulator properties: | ||
15 | - "regulator-min-microvolt" | ||
16 | - "regulator-max-microvolt" | ||
17 | |||
18 | See Documentation/devicetree/bindings/regulator/regulator.txt | ||
19 | for more details about the regulator properties. | ||
20 | |||
21 | When no "regulator-[min|max]-microvolt" properties are defined, | ||
22 | the device is treated as fixed (or rather "read-only") regulator. | ||
23 | |||
24 | Example: | ||
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 @@ | |||
1 | NVIDIA Tegra20 real-time clock | ||
2 | |||
3 | The Tegra RTC maintains seconds and milliseconds counters, and five alarm | ||
4 | registers. The alarms and other interrupts may wake the system from low-power | ||
5 | state. | ||
6 | |||
7 | Required 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 | |||
13 | Example: | ||
14 | |||
15 | timer { | ||
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 | |||
3 | RTC controller for the Kirkwood, the Dove, the Armada 370 and the | ||
4 | Armada XP SoCs | ||
5 | |||
6 | Required 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 | |||
12 | Example: | ||
13 | |||
14 | rtc@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 @@ | |||
1 | AK4104 S/PDIF transmitter | ||
2 | |||
3 | This device supports SPI mode only. | ||
4 | |||
5 | Required properties: | ||
6 | |||
7 | - compatible : "asahi-kasei,ak4104" | ||
8 | |||
9 | - reg : The chip select number on the SPI bus | ||
10 | |||
11 | Optional 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 | |||
16 | Example: | ||
17 | |||
18 | spdif: 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 | |||
3 | Required 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 | ||
9 | Optional properties: | ||
10 | - pinctrl-names, pinctrl-0: Please refer to pinctrl-bindings.txt | ||
11 | |||
12 | Example: | ||
13 | sound { | ||
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 | ||
22 | Examples: | 24 | Examples: |
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 | ||
13 | Optional properties: | 13 | Optional 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 | ||
18 | Available audio endpoints for the audio-routing table: | 18 | Available 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 @@ | |||
1 | NVIDIA Tegra20 SFLASH controller. | ||
2 | |||
3 | Required 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 | |||
10 | Recommended properties: | ||
11 | - spi-max-frequency: Definition as per | ||
12 | Documentation/devicetree/bindings/spi/spi-bus.txt | ||
13 | |||
14 | Example: | ||
15 | |||
16 | spi@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 @@ | |||
1 | NVIDIA Tegra20/Tegra30 SLINK controller. | ||
2 | |||
3 | Required 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 | |||
10 | Recommended properties: | ||
11 | - spi-max-frequency: Definition as per | ||
12 | Documentation/devicetree/bindings/spi/spi-bus.txt | ||
13 | |||
14 | Example: | ||
15 | |||
16 | slink@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 | ||
11 | Example: | 13 | Example: |
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. | ||
15 | No other properties are required in the SPI bus node. It is assumed | 16 | No other properties are required in the SPI bus node. It is assumed |
16 | that a driver for an SPI bus device will understand that it is an SPI bus. | 17 | that a driver for an SPI bus device will understand that it is an SPI bus. |
17 | However, the binding does not attempt to define the specific method for | 18 | However, the binding does not attempt to define the specific method for |
@@ -24,6 +25,22 @@ support describing the chip select layout. | |||
24 | Optional property: | 25 | Optional property: |
25 | - num-cs : total number of chipselects | 26 | - num-cs : total number of chipselects |
26 | 27 | ||
28 | If cs-gpios is used the number of chip select will automatically increased | ||
29 | with max(cs-gpios > hw cs) | ||
30 | |||
31 | So if for example the controller has 2 CS lines, and the cs-gpios | ||
32 | property looks like this: | ||
33 | |||
34 | cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>; | ||
35 | |||
36 | Then it should be configured so that num_chipselect = 4 with the | ||
37 | following mapping: | ||
38 | |||
39 | cs0 : &gpio1 0 0 | ||
40 | cs1 : native | ||
41 | cs2 : &gpio1 1 0 | ||
42 | cs3 : &gpio1 2 0 | ||
43 | |||
27 | SPI slave nodes must be children of the SPI master node and can | 44 | SPI slave nodes must be children of the SPI master node and can |
28 | contain the following properties. | 45 | contain 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 | |||
59 | If a gpio chipselect is used for the SPI slave the gpio number will be passed | ||
60 | via the cs_gpio | ||
39 | 61 | ||
40 | SPI example for an MPC5200 SPI bus: | 62 | SPI 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 | |||
19 | Usually the num-trips and tripN-*** are separated in board related dts files. | ||
20 | |||
21 | Example: | ||
22 | thermal@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 @@ | |||
1 | Allwinner A1X SoCs Timer Controller | ||
2 | |||
3 | Required 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 | |||
10 | Example: | ||
11 | |||
12 | timer { | ||
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 @@ | |||
1 | NVIDIA Tegra20 timer | ||
2 | |||
3 | The Tegra20 timer provides four 29-bit timer channels and a single 32-bit free | ||
4 | running counter. The first two channels may also trigger a watchdog reset. | ||
5 | |||
6 | Required 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 | |||
12 | Example: | ||
13 | |||
14 | timer { | ||
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 @@ | |||
1 | NVIDIA Tegra30 timer | ||
2 | |||
3 | The Tegra30 timer provides ten 29-bit timer channels, a single 32-bit free | ||
4 | running counter, and 5 watchdog modules. The first two channels may also | ||
5 | trigger a legacy watchdog reset. | ||
6 | |||
7 | Required 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 | |||
14 | timer { | ||
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 | ||
9 | Optional 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 | |||
9 | Example: | 16 | Example: |
10 | auart0: serial@8006a000 { | 17 | auart0: 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 | ||
16 | Note: Each auart port should have an alias correctly numbered in "aliases" | 24 | Note: 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 | ||
19 | Optional properties: | 22 | Optional 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 @@ | |||
1 | AM33XX MUSB GLUE | 1 | AM33XX 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 | |||
18 | Example: | ||
19 | |||
20 | usb@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 | |||
3 | Required 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 | |||
9 | Example: | ||
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 | ||
6 | ad Avionic Design GmbH | 6 | ad Avionic Design GmbH |
7 | adi Analog Devices, Inc. | 7 | adi Analog Devices, Inc. |
8 | ak Asahi Kasei Corp. | ||
8 | amcc Applied Micro Circuits Corporation (APM, formally AMCC) | 9 | amcc Applied Micro Circuits Corporation (APM, formally AMCC) |
9 | apm Applied Micro Circuits Corporation (APM) | 10 | apm Applied Micro Circuits Corporation (APM) |
10 | arm ARM Ltd. | 11 | arm ARM Ltd. |
@@ -25,6 +26,7 @@ gef GE Fanuc Intelligent Platforms Embedded Systems, Inc. | |||
25 | hp Hewlett Packard | 26 | hp Hewlett Packard |
26 | ibm International Business Machines (IBM) | 27 | ibm International Business Machines (IBM) |
27 | idt Integrated Device Technologies, Inc. | 28 | idt Integrated Device Technologies, Inc. |
29 | img Imagination Technologies Ltd. | ||
28 | intercontrol Inter Control Group | 30 | intercontrol Inter Control Group |
29 | linux Linux-specific binding | 31 | linux Linux-specific binding |
30 | marvell Marvell Technology Group Ltd. | 32 | marvell Marvell Technology Group Ltd. |
@@ -34,8 +36,9 @@ national National Semiconductor | |||
34 | nintendo Nintendo | 36 | nintendo Nintendo |
35 | nvidia NVIDIA | 37 | nvidia NVIDIA |
36 | nxp NXP Semiconductors | 38 | nxp NXP Semiconductors |
39 | onnn ON Semiconductor Corp. | ||
37 | picochip Picochip Ltd | 40 | picochip Picochip Ltd |
38 | powervr Imagination Technologies | 41 | powervr PowerVR (deprecated, use img) |
39 | qcom Qualcomm, Inc. | 42 | qcom Qualcomm, Inc. |
40 | ramtron Ramtron International | 43 | ramtron Ramtron International |
41 | realtek Realtek Semiconductor Corp. | 44 | realtek Realtek Semiconductor Corp. |
@@ -45,10 +48,12 @@ schindler Schindler | |||
45 | sil Silicon Image | 48 | sil Silicon Image |
46 | simtek | 49 | simtek |
47 | sirf SiRF Technology, Inc. | 50 | sirf SiRF Technology, Inc. |
51 | snps Synopsys, Inc. | ||
48 | st STMicroelectronics | 52 | st STMicroelectronics |
49 | stericsson ST-Ericsson | 53 | stericsson ST-Ericsson |
50 | ti Texas Instruments | 54 | ti Texas Instruments |
51 | via VIA Technologies, Inc. | 55 | via VIA Technologies, Inc. |
52 | wlf Wolfson Microelectronics | 56 | wlf Wolfson Microelectronics |
53 | wm Wondermedia Technologies, Inc. | 57 | wm Wondermedia Technologies, Inc. |
58 | winbond Winbond Electronics corp. | ||
54 | xlnx Xilinx | 59 | xlnx 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 | |||
5 | Required properties: | ||
6 | - compatible: must be "atmel,at91sam9260-wdt". | ||
7 | - reg: physical base address of the controller and length of memory mapped | ||
8 | region. | ||
9 | |||
10 | Example: | ||
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 @@ | |||
1 | BCM2835 Watchdog timer | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "brcm,bcm2835-pm-wdt" | ||
6 | - reg : Specifies base physical address and size of the registers. | ||
7 | |||
8 | Example: | ||
9 | |||
10 | watchdog { | ||
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 @@ | |||
1 | Allwinner sunXi Watchdog timer | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "allwinner,sunxi-wdt" | ||
6 | - reg : Specifies base physical address and size of the registers. | ||
7 | |||
8 | Example: | ||
9 | |||
10 | wdt: watchdog@01c20c90 { | ||
11 | compatible = "allwinner,sunxi-wdt"; | ||
12 | reg = <0x01c20c90 0x10>; | ||
13 | }; | ||