diff options
Diffstat (limited to 'Documentation/devicetree')
118 files changed, 2248 insertions, 357 deletions
diff --git a/Documentation/devicetree/bindings/arm/arch_timer.txt b/Documentation/devicetree/bindings/arm/arch_timer.txt index 20746e5abe6f..06fc7602593a 100644 --- a/Documentation/devicetree/bindings/arm/arch_timer.txt +++ b/Documentation/devicetree/bindings/arm/arch_timer.txt | |||
@@ -1,10 +1,14 @@ | |||
1 | * ARM architected timer | 1 | * ARM architected timer |
2 | 2 | ||
3 | ARM cores may have a per-core architected timer, which provides per-cpu timers. | 3 | ARM cores may have a per-core architected timer, which provides per-cpu timers, |
4 | or a memory mapped architected timer, which provides up to 8 frames with a | ||
5 | physical and optional virtual timer per frame. | ||
4 | 6 | ||
5 | The timer is attached to a GIC to deliver its per-processor interrupts. | 7 | The per-core architected timer is attached to a GIC to deliver its |
8 | per-processor interrupts via PPIs. The memory mapped timer is attached to a GIC | ||
9 | to deliver its interrupts via SPIs. | ||
6 | 10 | ||
7 | ** Timer node properties: | 11 | ** CP15 Timer node properties: |
8 | 12 | ||
9 | - compatible : Should at least contain one of | 13 | - compatible : Should at least contain one of |
10 | "arm,armv7-timer" | 14 | "arm,armv7-timer" |
@@ -26,3 +30,52 @@ Example: | |||
26 | <1 10 0xf08>; | 30 | <1 10 0xf08>; |
27 | clock-frequency = <100000000>; | 31 | clock-frequency = <100000000>; |
28 | }; | 32 | }; |
33 | |||
34 | ** Memory mapped timer node properties: | ||
35 | |||
36 | - compatible : Should at least contain "arm,armv7-timer-mem". | ||
37 | |||
38 | - clock-frequency : The frequency of the main counter, in Hz. Optional. | ||
39 | |||
40 | - reg : The control frame base address. | ||
41 | |||
42 | Note that #address-cells, #size-cells, and ranges shall be present to ensure | ||
43 | the CPU can address a frame's registers. | ||
44 | |||
45 | A timer node has up to 8 frame sub-nodes, each with the following properties: | ||
46 | |||
47 | - frame-number: 0 to 7. | ||
48 | |||
49 | - interrupts : Interrupt list for physical and virtual timers in that order. | ||
50 | The virtual timer interrupt is optional. | ||
51 | |||
52 | - reg : The first and second view base addresses in that order. The second view | ||
53 | base address is optional. | ||
54 | |||
55 | - status : "disabled" indicates the frame is not available for use. Optional. | ||
56 | |||
57 | Example: | ||
58 | |||
59 | timer@f0000000 { | ||
60 | compatible = "arm,armv7-timer-mem"; | ||
61 | #address-cells = <1>; | ||
62 | #size-cells = <1>; | ||
63 | ranges; | ||
64 | reg = <0xf0000000 0x1000>; | ||
65 | clock-frequency = <50000000>; | ||
66 | |||
67 | frame@f0001000 { | ||
68 | frame-number = <0> | ||
69 | interrupts = <0 13 0x8>, | ||
70 | <0 14 0x8>; | ||
71 | reg = <0xf0001000 0x1000>, | ||
72 | <0xf0002000 0x1000>; | ||
73 | }; | ||
74 | |||
75 | frame@f0003000 { | ||
76 | frame-number = <1> | ||
77 | interrupts = <0 15 0x8>; | ||
78 | reg = <0xf0003000 0x1000>; | ||
79 | status = "disabled"; | ||
80 | }; | ||
81 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/atmel-adc.txt b/Documentation/devicetree/bindings/arm/atmel-adc.txt index 16769d9cedd6..723c205cb10d 100644 --- a/Documentation/devicetree/bindings/arm/atmel-adc.txt +++ b/Documentation/devicetree/bindings/arm/atmel-adc.txt | |||
@@ -1,18 +1,15 @@ | |||
1 | * AT91's Analog to Digital Converter (ADC) | 1 | * AT91's Analog to Digital Converter (ADC) |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: Should be "atmel,at91sam9260-adc" | 4 | - compatible: Should be "atmel,<chip>-adc" |
5 | <chip> can be "at91sam9260", "at91sam9g45" or "at91sam9x5" | ||
5 | - reg: Should contain ADC registers location and length | 6 | - reg: Should contain ADC registers location and length |
6 | - interrupts: Should contain the IRQ line for the ADC | 7 | - interrupts: Should contain the IRQ line for the ADC |
7 | - atmel,adc-channel-base: Offset of the first channel data register | ||
8 | - atmel,adc-channels-used: Bitmask of the channels muxed and enable for this | 8 | - atmel,adc-channels-used: Bitmask of the channels muxed and enable for this |
9 | device | 9 | device |
10 | - atmel,adc-drdy-mask: Mask of the DRDY interruption in the ADC | ||
11 | - atmel,adc-num-channels: Number of channels available in the ADC | 10 | - atmel,adc-num-channels: Number of channels available in the ADC |
12 | - atmel,adc-startup-time: Startup Time of the ADC in microseconds as | 11 | - atmel,adc-startup-time: Startup Time of the ADC in microseconds as |
13 | defined in the datasheet | 12 | defined in the datasheet |
14 | - atmel,adc-status-register: Offset of the Interrupt Status Register | ||
15 | - atmel,adc-trigger-register: Offset of the Trigger Register | ||
16 | - atmel,adc-vref: Reference voltage in millivolts for the conversions | 13 | - atmel,adc-vref: Reference voltage in millivolts for the conversions |
17 | - atmel,adc-res: List of resolution in bits supported by the ADC. List size | 14 | - atmel,adc-res: List of resolution in bits supported by the ADC. List size |
18 | must be two at least. | 15 | must be two at least. |
diff --git a/Documentation/devicetree/bindings/arm/l2cc.txt b/Documentation/devicetree/bindings/arm/l2cc.txt index 69ddf9fad2dc..c0c7626fd0ff 100644 --- a/Documentation/devicetree/bindings/arm/l2cc.txt +++ b/Documentation/devicetree/bindings/arm/l2cc.txt | |||
@@ -16,9 +16,11 @@ Required properties: | |||
16 | performs the same operation). | 16 | performs the same operation). |
17 | "marvell,"aurora-outer-cache: Marvell Controller designed to be | 17 | "marvell,"aurora-outer-cache: Marvell Controller designed to be |
18 | compatible with the ARM one with outer cache mode. | 18 | compatible with the ARM one with outer cache mode. |
19 | "bcm,bcm11351-a2-pl310-cache": For Broadcom bcm11351 chipset where an | 19 | "brcm,bcm11351-a2-pl310-cache": For Broadcom bcm11351 chipset where an |
20 | offset needs to be added to the address before passing down to the L2 | 20 | offset needs to be added to the address before passing down to the L2 |
21 | cache controller | 21 | cache controller |
22 | "bcm,bcm11351-a2-pl310-cache": DEPRECATED by | ||
23 | "brcm,bcm11351-a2-pl310-cache" | ||
22 | - cache-unified : Specifies the cache is a unified cache. | 24 | - cache-unified : Specifies the cache is a unified cache. |
23 | - cache-level : Should be set to 2 for a level 2 cache. | 25 | - cache-level : Should be set to 2 for a level 2 cache. |
24 | - reg : Physical base address and size of cache controller's memory mapped | 26 | - reg : Physical base address and size of cache controller's memory mapped |
diff --git a/Documentation/devicetree/bindings/arm/ste-u300.txt b/Documentation/devicetree/bindings/arm/ste-u300.txt index 69b5ab0b5f4b..d11d80006a19 100644 --- a/Documentation/devicetree/bindings/arm/ste-u300.txt +++ b/Documentation/devicetree/bindings/arm/ste-u300.txt | |||
@@ -22,7 +22,7 @@ This contains the board-specific information. | |||
22 | - compatible: must be "stericsson,s365". | 22 | - compatible: must be "stericsson,s365". |
23 | - vana15-supply: the regulator supplying the 1.5V to drive the | 23 | - vana15-supply: the regulator supplying the 1.5V to drive the |
24 | board. | 24 | board. |
25 | - syscon: a pointer to the syscon node so we can acccess the | 25 | - syscon: a pointer to the syscon node so we can access the |
26 | syscon registers to set the board as self-powered. | 26 | syscon registers to set the board as self-powered. |
27 | 27 | ||
28 | Example: | 28 | Example: |
diff --git a/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt b/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt index 9cf3f25544c7..5580e9c4bd85 100644 --- a/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt +++ b/Documentation/devicetree/bindings/arm/vexpress-sysreg.txt | |||
@@ -32,8 +32,8 @@ numbers - see motherboard's TRM for more details. | |||
32 | The node describing a config device must refer to the sysreg node via | 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 | 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 | 34 | parent) and relies on the board topology properties - see main vexpress |
35 | node documentation for more details. It must must also define the | 35 | node documentation for more details. It must also define the following |
36 | following property: | 36 | property: |
37 | - arm,vexpress-sysreg,func : must contain two cells: | 37 | - arm,vexpress-sysreg,func : must contain two cells: |
38 | - first cell defines function number (eg. 1 for clock generator, | 38 | - first cell defines function number (eg. 1 for clock generator, |
39 | 2 for voltage regulators etc.) | 39 | 2 for voltage regulators etc.) |
diff --git a/Documentation/devicetree/bindings/ata/ahci-platform.txt b/Documentation/devicetree/bindings/ata/ahci-platform.txt index 3ec0c5c4f0e9..89de1564950c 100644 --- a/Documentation/devicetree/bindings/ata/ahci-platform.txt +++ b/Documentation/devicetree/bindings/ata/ahci-platform.txt | |||
@@ -4,27 +4,17 @@ SATA nodes are defined to describe on-chip Serial ATA controllers. | |||
4 | Each SATA controller should have its own node. | 4 | Each SATA controller should have its own node. |
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | - compatible : compatible list, contains "calxeda,hb-ahci" or "snps,spear-ahci" | 7 | - compatible : compatible list, contains "snps,spear-ahci" |
8 | - interrupts : <interrupt mapping for SATA IRQ> | 8 | - interrupts : <interrupt mapping for SATA IRQ> |
9 | - reg : <registers mapping> | 9 | - reg : <registers mapping> |
10 | 10 | ||
11 | Optional properties: | 11 | Optional properties: |
12 | - calxeda,port-phys: phandle-combophy and lane assignment, which maps each | ||
13 | SATA port to a combophy and a lane within that | ||
14 | combophy | ||
15 | - calxeda,sgpio-gpio: phandle-gpio bank, bit offset, and default on or off, | ||
16 | which indicates that the driver supports SGPIO | ||
17 | indicator lights using the indicated GPIOs | ||
18 | - calxeda,led-order : a u32 array that map port numbers to offsets within the | ||
19 | SGPIO bitstream. | ||
20 | - dma-coherent : Present if dma operations are coherent | 12 | - dma-coherent : Present if dma operations are coherent |
21 | 13 | ||
22 | Example: | 14 | Example: |
23 | sata@ffe08000 { | 15 | sata@ffe08000 { |
24 | compatible = "calxeda,hb-ahci"; | 16 | compatible = "snps,spear-ahci"; |
25 | reg = <0xffe08000 0x1000>; | 17 | reg = <0xffe08000 0x1000>; |
26 | interrupts = <115>; | 18 | interrupts = <115>; |
27 | calxeda,port-phys = <&combophy5 0 &combophy0 0 &combophy0 1 | ||
28 | &combophy0 2 &combophy0 3>; | ||
29 | 19 | ||
30 | }; | 20 | }; |
diff --git a/Documentation/devicetree/bindings/ata/sata_highbank.txt b/Documentation/devicetree/bindings/ata/sata_highbank.txt new file mode 100644 index 000000000000..aa83407cb7a4 --- /dev/null +++ b/Documentation/devicetree/bindings/ata/sata_highbank.txt | |||
@@ -0,0 +1,44 @@ | |||
1 | * Calxeda AHCI SATA Controller | ||
2 | |||
3 | SATA nodes are defined to describe on-chip Serial ATA controllers. | ||
4 | The Calxeda SATA controller mostly conforms to the AHCI interface | ||
5 | with some special extensions to add functionality. | ||
6 | Each SATA controller should have its own node. | ||
7 | |||
8 | Required properties: | ||
9 | - compatible : compatible list, contains "calxeda,hb-ahci" | ||
10 | - interrupts : <interrupt mapping for SATA IRQ> | ||
11 | - reg : <registers mapping> | ||
12 | |||
13 | Optional properties: | ||
14 | - dma-coherent : Present if dma operations are coherent | ||
15 | - calxeda,port-phys : phandle-combophy and lane assignment, which maps each | ||
16 | SATA port to a combophy and a lane within that | ||
17 | combophy | ||
18 | - calxeda,sgpio-gpio: phandle-gpio bank, bit offset, and default on or off, | ||
19 | which indicates that the driver supports SGPIO | ||
20 | indicator lights using the indicated GPIOs | ||
21 | - calxeda,led-order : a u32 array that map port numbers to offsets within the | ||
22 | SGPIO bitstream. | ||
23 | - calxeda,tx-atten : a u32 array that contains TX attenuation override | ||
24 | codes, one per port. The upper 3 bytes are always | ||
25 | 0 and thus ignored. | ||
26 | - calxeda,pre-clocks : a u32 that indicates the number of additional clock | ||
27 | cycles to transmit before sending an SGPIO pattern | ||
28 | - calxeda,post-clocks: a u32 that indicates the number of additional clock | ||
29 | cycles to transmit after sending an SGPIO pattern | ||
30 | |||
31 | Example: | ||
32 | sata@ffe08000 { | ||
33 | compatible = "calxeda,hb-ahci"; | ||
34 | reg = <0xffe08000 0x1000>; | ||
35 | interrupts = <115>; | ||
36 | dma-coherent; | ||
37 | calxeda,port-phys = <&combophy5 0 &combophy0 0 &combophy0 1 | ||
38 | &combophy0 2 &combophy0 3>; | ||
39 | calxeda,sgpio-gpio =<&gpioh 5 1 &gpioh 6 1 &gpioh 7 1>; | ||
40 | calxeda,led-order = <4 0 1 2 3>; | ||
41 | calxeda,tx-atten = <0xff 22 0xff 0xff 23>; | ||
42 | calxeda,pre-clocks = <10>; | ||
43 | calxeda,post-clocks = <0>; | ||
44 | }; | ||
diff --git a/Documentation/devicetree/bindings/c6x/dscr.txt b/Documentation/devicetree/bindings/c6x/dscr.txt index d847758f2b20..b0e97144cfb1 100644 --- a/Documentation/devicetree/bindings/c6x/dscr.txt +++ b/Documentation/devicetree/bindings/c6x/dscr.txt | |||
@@ -5,7 +5,7 @@ TI C6X SoCs contain a region of miscellaneous registers which provide various | |||
5 | function for SoC control or status. Details vary considerably among from SoC | 5 | function for SoC control or status. Details vary considerably among from SoC |
6 | to SoC with no two being alike. | 6 | to SoC with no two being alike. |
7 | 7 | ||
8 | In general, the Device State Configuraion Registers (DSCR) will provide one or | 8 | In general, the Device State Configuration Registers (DSCR) will provide one or |
9 | more configuration registers often protected by a lock register where one or | 9 | more configuration registers often protected by a lock register where one or |
10 | more key values must be written to a lock register in order to unlock the | 10 | more key values must be written to a lock register in order to unlock the |
11 | configuration register for writes. These configuration register may be used to | 11 | configuration register for writes. These configuration register may be used to |
diff --git a/Documentation/devicetree/bindings/clock/clk-exynos-audss.txt b/Documentation/devicetree/bindings/clock/clk-exynos-audss.txt index a1201802f90d..75e2e1999f87 100644 --- a/Documentation/devicetree/bindings/clock/clk-exynos-audss.txt +++ b/Documentation/devicetree/bindings/clock/clk-exynos-audss.txt | |||
@@ -2,7 +2,7 @@ | |||
2 | 2 | ||
3 | The Samsung Audio Subsystem clock controller generates and supplies clocks | 3 | The Samsung Audio Subsystem clock controller generates and supplies clocks |
4 | to Audio Subsystem block available in the S5PV210 and Exynos SoCs. The clock | 4 | to Audio Subsystem block available in the S5PV210 and Exynos SoCs. The clock |
5 | binding described here is applicable to all SoC's in Exynos family. | 5 | binding described here is applicable to all SoCs in Exynos family. |
6 | 6 | ||
7 | Required Properties: | 7 | Required Properties: |
8 | 8 | ||
diff --git a/Documentation/devicetree/bindings/clock/st,nomadik.txt b/Documentation/devicetree/bindings/clock/st,nomadik.txt index 7fc09773de46..40e0cf1f7b99 100644 --- a/Documentation/devicetree/bindings/clock/st,nomadik.txt +++ b/Documentation/devicetree/bindings/clock/st,nomadik.txt | |||
@@ -17,7 +17,7 @@ Optional properties for the SRC node: | |||
17 | - disable-mxtal: if present this will disable the MXTALO, | 17 | - disable-mxtal: if present this will disable the MXTALO, |
18 | i.e. the driver output for the main (~19.2 MHz) chrystal, | 18 | i.e. the driver output for the main (~19.2 MHz) chrystal, |
19 | if the board has its own circuitry for providing this | 19 | if the board has its own circuitry for providing this |
20 | osciallator | 20 | oscillator |
21 | 21 | ||
22 | 22 | ||
23 | PLL nodes: these nodes represent the two PLLs on the system, | 23 | PLL nodes: these nodes represent the two PLLs on the system, |
diff --git a/Documentation/devicetree/bindings/crypto/fsl-sec6.txt b/Documentation/devicetree/bindings/crypto/fsl-sec6.txt new file mode 100644 index 000000000000..c0a20cd972e3 --- /dev/null +++ b/Documentation/devicetree/bindings/crypto/fsl-sec6.txt | |||
@@ -0,0 +1,157 @@ | |||
1 | SEC 6 is as Freescale's Cryptographic Accelerator and Assurance Module (CAAM). | ||
2 | Currently Freescale powerpc chip C29X is embeded with SEC 6. | ||
3 | SEC 6 device tree binding include: | ||
4 | -SEC 6 Node | ||
5 | -Job Ring Node | ||
6 | -Full Example | ||
7 | |||
8 | ===================================================================== | ||
9 | SEC 6 Node | ||
10 | |||
11 | Description | ||
12 | |||
13 | Node defines the base address of the SEC 6 block. | ||
14 | This block specifies the address range of all global | ||
15 | configuration registers for the SEC 6 block. | ||
16 | For example, In C293, we could see three SEC 6 node. | ||
17 | |||
18 | PROPERTIES | ||
19 | |||
20 | - compatible | ||
21 | Usage: required | ||
22 | Value type: <string> | ||
23 | Definition: Must include "fsl,sec-v6.0". | ||
24 | |||
25 | - fsl,sec-era | ||
26 | Usage: optional | ||
27 | Value type: <u32> | ||
28 | Definition: A standard property. Define the 'ERA' of the SEC | ||
29 | device. | ||
30 | |||
31 | - #address-cells | ||
32 | Usage: required | ||
33 | Value type: <u32> | ||
34 | Definition: A standard property. Defines the number of cells | ||
35 | for representing physical addresses in child nodes. | ||
36 | |||
37 | - #size-cells | ||
38 | Usage: required | ||
39 | Value type: <u32> | ||
40 | Definition: A standard property. Defines the number of cells | ||
41 | for representing the size of physical addresses in | ||
42 | child nodes. | ||
43 | |||
44 | - reg | ||
45 | Usage: required | ||
46 | Value type: <prop-encoded-array> | ||
47 | Definition: A standard property. Specifies the physical | ||
48 | address and length of the SEC 6 configuration registers. | ||
49 | |||
50 | - ranges | ||
51 | Usage: required | ||
52 | Value type: <prop-encoded-array> | ||
53 | Definition: A standard property. Specifies the physical address | ||
54 | range of the SEC 6.0 register space (-SNVS not included). A | ||
55 | triplet that includes the child address, parent address, & | ||
56 | length. | ||
57 | |||
58 | Note: All other standard properties (see the ePAPR) are allowed | ||
59 | but are optional. | ||
60 | |||
61 | EXAMPLE | ||
62 | crypto@a0000 { | ||
63 | compatible = "fsl,sec-v6.0"; | ||
64 | fsl,sec-era = <6>; | ||
65 | #address-cells = <1>; | ||
66 | #size-cells = <1>; | ||
67 | reg = <0xa0000 0x20000>; | ||
68 | ranges = <0 0xa0000 0x20000>; | ||
69 | }; | ||
70 | |||
71 | ===================================================================== | ||
72 | Job Ring (JR) Node | ||
73 | |||
74 | Child of the crypto node defines data processing interface to SEC 6 | ||
75 | across the peripheral bus for purposes of processing | ||
76 | cryptographic descriptors. The specified address | ||
77 | range can be made visible to one (or more) cores. | ||
78 | The interrupt defined for this node is controlled within | ||
79 | the address range of this node. | ||
80 | |||
81 | - compatible | ||
82 | Usage: required | ||
83 | Value type: <string> | ||
84 | Definition: Must include "fsl,sec-v6.0-job-ring". | ||
85 | |||
86 | - reg | ||
87 | Usage: required | ||
88 | Value type: <prop-encoded-array> | ||
89 | Definition: Specifies a two JR parameters: an offset from | ||
90 | the parent physical address and the length the JR registers. | ||
91 | |||
92 | - interrupts | ||
93 | Usage: required | ||
94 | Value type: <prop_encoded-array> | ||
95 | Definition: Specifies the interrupts generated by this | ||
96 | device. The value of the interrupts property | ||
97 | consists of one interrupt specifier. The format | ||
98 | of the specifier is defined by the binding document | ||
99 | describing the node's interrupt parent. | ||
100 | |||
101 | EXAMPLE | ||
102 | jr@1000 { | ||
103 | compatible = "fsl,sec-v6.0-job-ring"; | ||
104 | reg = <0x1000 0x1000>; | ||
105 | interrupts = <49 2 0 0>; | ||
106 | }; | ||
107 | |||
108 | =================================================================== | ||
109 | Full Example | ||
110 | |||
111 | Since some chips may contain more than one SEC, the dtsi contains | ||
112 | only the node contents, not the node itself. A chip using the SEC | ||
113 | should include the dtsi inside each SEC node. Example: | ||
114 | |||
115 | In qoriq-sec6.0.dtsi: | ||
116 | |||
117 | compatible = "fsl,sec-v6.0"; | ||
118 | fsl,sec-era = <6>; | ||
119 | #address-cells = <1>; | ||
120 | #size-cells = <1>; | ||
121 | |||
122 | jr@1000 { | ||
123 | compatible = "fsl,sec-v6.0-job-ring", | ||
124 | "fsl,sec-v5.2-job-ring", | ||
125 | "fsl,sec-v5.0-job-ring", | ||
126 | "fsl,sec-v4.4-job-ring", | ||
127 | "fsl,sec-v4.0-job-ring"; | ||
128 | reg = <0x1000 0x1000>; | ||
129 | }; | ||
130 | |||
131 | jr@2000 { | ||
132 | compatible = "fsl,sec-v6.0-job-ring", | ||
133 | "fsl,sec-v5.2-job-ring", | ||
134 | "fsl,sec-v5.0-job-ring", | ||
135 | "fsl,sec-v4.4-job-ring", | ||
136 | "fsl,sec-v4.0-job-ring"; | ||
137 | reg = <0x2000 0x1000>; | ||
138 | }; | ||
139 | |||
140 | In the C293 device tree, we add the include of public property: | ||
141 | |||
142 | crypto@a0000 { | ||
143 | /include/ "qoriq-sec6.0.dtsi" | ||
144 | } | ||
145 | |||
146 | crypto@a0000 { | ||
147 | reg = <0xa0000 0x20000>; | ||
148 | ranges = <0 0xa0000 0x20000>; | ||
149 | |||
150 | jr@1000 { | ||
151 | interrupts = <49 2 0 0>; | ||
152 | }; | ||
153 | |||
154 | jr@2000 { | ||
155 | interrupts = <50 2 0 0>; | ||
156 | }; | ||
157 | }; | ||
diff --git a/Documentation/devicetree/bindings/dma/atmel-dma.txt b/Documentation/devicetree/bindings/dma/atmel-dma.txt index c280a0e6f42d..e1f343c7a34b 100644 --- a/Documentation/devicetree/bindings/dma/atmel-dma.txt +++ b/Documentation/devicetree/bindings/dma/atmel-dma.txt | |||
@@ -18,14 +18,14 @@ dma0: dma@ffffec00 { | |||
18 | 18 | ||
19 | DMA clients connected to the Atmel DMA controller must use the format | 19 | DMA clients connected to the Atmel DMA controller must use the format |
20 | described in the dma.txt file, using a three-cell specifier for each channel: | 20 | described in the dma.txt file, using a three-cell specifier for each channel: |
21 | a phandle plus two interger cells. | 21 | a phandle plus two integer cells. |
22 | The three cells in order are: | 22 | The three cells in order are: |
23 | 23 | ||
24 | 1. A phandle pointing to the DMA controller. | 24 | 1. A phandle pointing to the DMA controller. |
25 | 2. The memory interface (16 most significant bits), the peripheral interface | 25 | 2. The memory interface (16 most significant bits), the peripheral interface |
26 | (16 less significant bits). | 26 | (16 less significant bits). |
27 | 3. Parameters for the at91 DMA configuration register which are device | 27 | 3. Parameters for the at91 DMA configuration register which are device |
28 | dependant: | 28 | dependent: |
29 | - bit 7-0: peripheral identifier for the hardware handshaking interface. The | 29 | - bit 7-0: peripheral identifier for the hardware handshaking interface. The |
30 | identifier can be different for tx and rx. | 30 | identifier can be different for tx and rx. |
31 | - bit 11-8: FIFO configuration. 0 for half FIFO, 1 for ALAP, 1 for ASAP. | 31 | - bit 11-8: FIFO configuration. 0 for half FIFO, 1 for ALAP, 1 for ASAP. |
diff --git a/Documentation/devicetree/bindings/dma/fsl-imx-dma.txt b/Documentation/devicetree/bindings/dma/fsl-imx-dma.txt index 2717ecb47db9..7bd8847d6394 100644 --- a/Documentation/devicetree/bindings/dma/fsl-imx-dma.txt +++ b/Documentation/devicetree/bindings/dma/fsl-imx-dma.txt | |||
@@ -34,7 +34,7 @@ Clients have to specify the DMA requests with phandles in a list. | |||
34 | Required properties: | 34 | Required properties: |
35 | - dmas: List of one or more DMA request specifiers. One DMA request specifier | 35 | - dmas: List of one or more DMA request specifiers. One DMA request specifier |
36 | consists of a phandle to the DMA controller followed by the integer | 36 | consists of a phandle to the DMA controller followed by the integer |
37 | specifiying the request line. | 37 | specifying the request line. |
38 | - dma-names: List of string identifiers for the DMA requests. For the correct | 38 | - dma-names: List of string identifiers for the DMA requests. For the correct |
39 | names, have a look at the specific client driver. | 39 | names, have a look at the specific client driver. |
40 | 40 | ||
diff --git a/Documentation/devicetree/bindings/dma/ste-dma40.txt b/Documentation/devicetree/bindings/dma/ste-dma40.txt index bea5b73a7390..a8c21c256baa 100644 --- a/Documentation/devicetree/bindings/dma/ste-dma40.txt +++ b/Documentation/devicetree/bindings/dma/ste-dma40.txt | |||
@@ -37,14 +37,14 @@ Each dmas request consists of 4 cells: | |||
37 | 1. A phandle pointing to the DMA controller | 37 | 1. A phandle pointing to the DMA controller |
38 | 2. Device Type | 38 | 2. Device Type |
39 | 3. The DMA request line number (only when 'use fixed channel' is set) | 39 | 3. The DMA request line number (only when 'use fixed channel' is set) |
40 | 4. A 32bit mask specifying; mode, direction and endianess [NB: This list will grow] | 40 | 4. A 32bit mask specifying; mode, direction and endianness [NB: This list will grow] |
41 | 0x00000001: Mode: | 41 | 0x00000001: Mode: |
42 | Logical channel when unset | 42 | Logical channel when unset |
43 | Physical channel when set | 43 | Physical channel when set |
44 | 0x00000002: Direction: | 44 | 0x00000002: Direction: |
45 | Memory to Device when unset | 45 | Memory to Device when unset |
46 | Device to Memory when set | 46 | Device to Memory when set |
47 | 0x00000004: Endianess: | 47 | 0x00000004: Endianness: |
48 | Little endian when unset | 48 | Little endian when unset |
49 | Big endian when set | 49 | Big endian when set |
50 | 0x00000008: Use fixed channel: | 50 | 0x00000008: Use fixed channel: |
diff --git a/Documentation/devicetree/bindings/extcon/extcon-twl.txt b/Documentation/devicetree/bindings/extcon/extcon-palmas.txt index 58f531ab4df3..7dab6a8f4a0e 100644 --- a/Documentation/devicetree/bindings/extcon/extcon-twl.txt +++ b/Documentation/devicetree/bindings/extcon/extcon-palmas.txt | |||
@@ -1,15 +1,15 @@ | |||
1 | EXTCON FOR TWL CHIPS | 1 | EXTCON FOR PALMAS/TWL CHIPS |
2 | 2 | ||
3 | PALMAS USB COMPARATOR | 3 | PALMAS USB COMPARATOR |
4 | Required Properties: | 4 | Required Properties: |
5 | - compatible : Should be "ti,palmas-usb" or "ti,twl6035-usb" | 5 | - compatible : Should be "ti,palmas-usb" or "ti,twl6035-usb" |
6 | - vbus-supply : phandle to the regulator device tree node. | ||
7 | 6 | ||
8 | Optional Properties: | 7 | Optional Properties: |
9 | - ti,wakeup : To enable the wakeup comparator in probe | 8 | - ti,wakeup : To enable the wakeup comparator in probe |
9 | - ti,enable-id-detection: Perform ID detection. | ||
10 | - ti,enable-vbus-detection: Perform VBUS detection. | ||
10 | 11 | ||
11 | palmas-usb { | 12 | palmas-usb { |
12 | compatible = "ti,twl6035-usb", "ti,palmas-usb"; | 13 | compatible = "ti,twl6035-usb", "ti,palmas-usb"; |
13 | vbus-supply = <&smps10_reg>; | ||
14 | ti,wakeup; | 14 | ti,wakeup; |
15 | }; | 15 | }; |
diff --git a/Documentation/devicetree/bindings/gpio/gpio.txt b/Documentation/devicetree/bindings/gpio/gpio.txt index d933af370697..6cec6ff20d2e 100644 --- a/Documentation/devicetree/bindings/gpio/gpio.txt +++ b/Documentation/devicetree/bindings/gpio/gpio.txt | |||
@@ -75,23 +75,36 @@ 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 | 78 | 2.1) gpio- and pin-controller interaction |
79 | ------------------------------------------ | 79 | ----------------------------------------- |
80 | 80 | ||
81 | gpio-controller on a SOC might be tightly coupled with the pinctrl | 81 | Some or all of the GPIOs provided by a GPIO controller may be routed to pins |
82 | subsystem, in the sense that the pins can be used by other functions | 82 | on the package via a pin controller. This allows muxing those pins between |
83 | together with optional gpio feature. | 83 | GPIO and other functions. |
84 | 84 | ||
85 | While the pin allocation is totally managed by the pin ctrl subsystem, | 85 | It is useful to represent which GPIOs correspond to which pins on which pin |
86 | gpio (under gpiolib) is still maintained by gpio drivers. It may happen | 86 | controllers. The gpio-ranges property described below represents this, and |
87 | that different pin ranges in a SoC is managed by different gpio drivers. | 87 | contains information structures as follows: |
88 | 88 | ||
89 | This makes it logical to let gpio drivers announce their pin ranges to | 89 | gpio-range-list ::= <single-gpio-range> [gpio-range-list] |
90 | the pin ctrl subsystem and call 'pinctrl_request_gpio' in order to | 90 | single-gpio-range ::= |
91 | request the corresponding pin before any gpio usage. | 91 | <pinctrl-phandle> <gpio-base> <pinctrl-base> <count> |
92 | gpio-phandle : phandle to pin controller node. | ||
93 | gpio-base : Base GPIO ID in the GPIO controller | ||
94 | pinctrl-base : Base pinctrl pin ID in the pin controller | ||
95 | count : The number of GPIOs/pins in this range | ||
92 | 96 | ||
93 | For this, the gpio controller can use a pinctrl phandle and pins to | 97 | The "pin controller node" mentioned above must conform to the bindings |
94 | announce the pinrange to the pin ctrl subsystem. For example, | 98 | described in ../pinctrl/pinctrl-bindings.txt. |
99 | |||
100 | Previous versions of this binding required all pin controller nodes that | ||
101 | were referenced by any gpio-ranges property to contain a property named | ||
102 | #gpio-range-cells with value <3>. This requirement is now deprecated. | ||
103 | However, that property may still exist in older device trees for | ||
104 | compatibility reasons, and would still be required even in new device | ||
105 | trees that need to be compatible with older software. | ||
106 | |||
107 | Example: | ||
95 | 108 | ||
96 | qe_pio_e: gpio-controller@1460 { | 109 | qe_pio_e: gpio-controller@1460 { |
97 | #gpio-cells = <2>; | 110 | #gpio-cells = <2>; |
@@ -99,16 +112,8 @@ announce the pinrange to the pin ctrl subsystem. For example, | |||
99 | reg = <0x1460 0x18>; | 112 | reg = <0x1460 0x18>; |
100 | gpio-controller; | 113 | gpio-controller; |
101 | gpio-ranges = <&pinctrl1 0 20 10>, <&pinctrl2 10 50 20>; | 114 | gpio-ranges = <&pinctrl1 0 20 10>, <&pinctrl2 10 50 20>; |
115 | }; | ||
102 | 116 | ||
103 | } | 117 | Here, a single GPIO controller has GPIOs 0..9 routed to pin controller |
104 | 118 | pinctrl1's pins 20..29, and GPIOs 10..19 routed to pin controller pinctrl2's | |
105 | where, | 119 | pins 50..59. |
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 with gpio offset 0 and pin 50 to pin 69 under | ||
111 | pinctrl2 with gpio offset 10 is handled 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/gpu/samsung-rotator.txt b/Documentation/devicetree/bindings/gpu/samsung-rotator.txt new file mode 100644 index 000000000000..82cd1ed0be93 --- /dev/null +++ b/Documentation/devicetree/bindings/gpu/samsung-rotator.txt | |||
@@ -0,0 +1,27 @@ | |||
1 | * Samsung Image Rotator | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : value should be one of the following: | ||
5 | (a) "samsung,exynos4210-rotator" for Rotator IP in Exynos4210 | ||
6 | (b) "samsung,exynos4212-rotator" for Rotator IP in Exynos4212/4412 | ||
7 | (c) "samsung,exynos5250-rotator" for Rotator IP in Exynos5250 | ||
8 | |||
9 | - reg : Physical base address of the IP registers and length of memory | ||
10 | mapped region. | ||
11 | |||
12 | - interrupts : Interrupt specifier for rotator interrupt, according to format | ||
13 | specific to interrupt parent. | ||
14 | |||
15 | - clocks : Clock specifier for rotator clock, according to generic clock | ||
16 | bindings. (See Documentation/devicetree/bindings/clock/exynos*.txt) | ||
17 | |||
18 | - clock-names : Names of clocks. For exynos rotator, it should be "rotator". | ||
19 | |||
20 | Example: | ||
21 | rotator@12810000 { | ||
22 | compatible = "samsung,exynos4210-rotator"; | ||
23 | reg = <0x12810000 0x1000>; | ||
24 | interrupts = <0 83 0>; | ||
25 | clocks = <&clock 278>; | ||
26 | clock-names = "rotator"; | ||
27 | }; | ||
diff --git a/Documentation/devicetree/bindings/hid/hid-over-i2c.txt b/Documentation/devicetree/bindings/hid/hid-over-i2c.txt new file mode 100644 index 000000000000..488edcb264c4 --- /dev/null +++ b/Documentation/devicetree/bindings/hid/hid-over-i2c.txt | |||
@@ -0,0 +1,28 @@ | |||
1 | * HID over I2C Device-Tree bindings | ||
2 | |||
3 | HID over I2C provides support for various Human Interface Devices over the | ||
4 | I2C bus. These devices can be for example touchpads, keyboards, touch screens | ||
5 | or sensors. | ||
6 | |||
7 | The specification has been written by Microsoft and is currently available here: | ||
8 | http://msdn.microsoft.com/en-us/library/windows/hardware/hh852380.aspx | ||
9 | |||
10 | If this binding is used, the kernel module i2c-hid will handle the communication | ||
11 | with the device and the generic hid core layer will handle the protocol. | ||
12 | |||
13 | Required properties: | ||
14 | - compatible: must be "hid-over-i2c" | ||
15 | - reg: i2c slave address | ||
16 | - hid-descr-addr: HID descriptor address | ||
17 | - interrupt-parent: the phandle for the interrupt controller | ||
18 | - interrupts: interrupt line | ||
19 | |||
20 | Example: | ||
21 | |||
22 | i2c-hid-dev@2c { | ||
23 | compatible = "hid-over-i2c"; | ||
24 | reg = <0x2c>; | ||
25 | hid-descr-addr = <0x0020>; | ||
26 | interrupt-parent = <&gpx3>; | ||
27 | interrupts = <3 2>; | ||
28 | }; | ||
diff --git a/Documentation/devicetree/bindings/i2c/i2c-imx.txt b/Documentation/devicetree/bindings/i2c/i2c-imx.txt index 3614242e7732..4a8513e44740 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-imx.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-imx.txt | |||
@@ -1,7 +1,10 @@ | |||
1 | * Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX | 1 | * Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "fsl,<chip>-i2c" | 4 | - compatible : |
5 | - "fsl,imx1-i2c" for I2C compatible with the one integrated on i.MX1 SoC | ||
6 | - "fsl,imx21-i2c" for I2C compatible with the one integrated on i.MX21 SoC | ||
7 | - "fsl,vf610-i2c" for I2C compatible with the one integrated on Vybrid vf610 SoC | ||
5 | - reg : Should contain I2C/HS-I2C registers location and length | 8 | - reg : Should contain I2C/HS-I2C registers location and length |
6 | - interrupts : Should contain I2C/HS-I2C interrupt | 9 | - interrupts : Should contain I2C/HS-I2C interrupt |
7 | 10 | ||
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt index a1ee681942cc..82e8f6f17179 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt | |||
@@ -4,7 +4,8 @@ | |||
4 | Required properties : | 4 | Required properties : |
5 | 5 | ||
6 | - reg : Offset and length of the register set for the device | 6 | - reg : Offset and length of the register set for the device |
7 | - compatible : Should be "marvell,mv64xxx-i2c" | 7 | - compatible : Should be "marvell,mv64xxx-i2c" or "allwinner,sun4i-i2c" |
8 | or "marvell,mv78230-i2c" | ||
8 | - interrupts : The interrupt number | 9 | - interrupts : The interrupt number |
9 | 10 | ||
10 | Optional properties : | 11 | Optional properties : |
@@ -20,3 +21,12 @@ Examples: | |||
20 | interrupts = <29>; | 21 | interrupts = <29>; |
21 | clock-frequency = <100000>; | 22 | clock-frequency = <100000>; |
22 | }; | 23 | }; |
24 | |||
25 | For the Armada XP: | ||
26 | |||
27 | i2c@11000 { | ||
28 | compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c"; | ||
29 | reg = <0x11000 0x100>; | ||
30 | interrupts = <29>; | ||
31 | clock-frequency = <100000>; | ||
32 | }; | ||
diff --git a/Documentation/devicetree/bindings/iio/accel/bma180.txt b/Documentation/devicetree/bindings/iio/accel/bma180.txt new file mode 100644 index 000000000000..c5933573e0f6 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/accel/bma180.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | * Bosch BMA180 triaxial acceleration sensor | ||
2 | |||
3 | http://omapworld.com/BMA180_111_1002839.pdf | ||
4 | |||
5 | Required properties: | ||
6 | |||
7 | - compatible : should be "bosch,bma180" | ||
8 | - reg : the I2C address of the sensor | ||
9 | |||
10 | Optional properties: | ||
11 | |||
12 | - interrupt-parent : should be the phandle for the interrupt controller | ||
13 | |||
14 | - interrupts : interrupt mapping for GPIO IRQ, it should by configured with | ||
15 | flags IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING | ||
16 | |||
17 | Example: | ||
18 | |||
19 | bma180@40 { | ||
20 | compatible = "bosch,bma180"; | ||
21 | reg = <0x40>; | ||
22 | interrupt-parent = <&gpio6>; | ||
23 | interrupts = <18 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton-nau7802.txt b/Documentation/devicetree/bindings/iio/adc/nuvoton-nau7802.txt new file mode 100644 index 000000000000..e9582e6fe350 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton-nau7802.txt | |||
@@ -0,0 +1,18 @@ | |||
1 | * Nuvoton NAU7802 Analog to Digital Converter (ADC) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "nuvoton,nau7802" | ||
5 | - reg: Should contain the ADC I2C address | ||
6 | |||
7 | Optional properties: | ||
8 | - nuvoton,vldo: Internal reference voltage in millivolts to be | ||
9 | configured valid values are between 2400 mV and 4500 mV. | ||
10 | - interrupts: IRQ line for the ADC. If not used the driver will use | ||
11 | polling. | ||
12 | |||
13 | Example: | ||
14 | adc2: nau7802@2a { | ||
15 | compatible = "nuvoton,nau7802"; | ||
16 | reg = <0x2a>; | ||
17 | nuvoton,vldo = <3000>; | ||
18 | }; | ||
diff --git a/Documentation/devicetree/bindings/iio/light/apds9300.txt b/Documentation/devicetree/bindings/iio/light/apds9300.txt new file mode 100644 index 000000000000..d6f66c73ddbf --- /dev/null +++ b/Documentation/devicetree/bindings/iio/light/apds9300.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * Avago APDS9300 ambient light sensor | ||
2 | |||
3 | http://www.avagotech.com/docs/AV02-1077EN | ||
4 | |||
5 | Required properties: | ||
6 | |||
7 | - compatible : should be "avago,apds9300" | ||
8 | - reg : the I2C address of the sensor | ||
9 | |||
10 | Optional properties: | ||
11 | |||
12 | - interrupt-parent : should be the phandle for the interrupt controller | ||
13 | - interrupts : interrupt mapping for GPIO IRQ | ||
14 | |||
15 | Example: | ||
16 | |||
17 | apds9300@39 { | ||
18 | compatible = "avago,apds9300"; | ||
19 | reg = <0x39>; | ||
20 | interrupt-parent = <&gpio2>; | ||
21 | interrupts = <29 8>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/i2c/adv7343.txt b/Documentation/devicetree/bindings/media/i2c/adv7343.txt new file mode 100644 index 000000000000..5653bc2428b8 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/adv7343.txt | |||
@@ -0,0 +1,48 @@ | |||
1 | * Analog Devices adv7343 video encoder | ||
2 | |||
3 | The ADV7343 are high speed, digital-to-analog video encoders in a 64-lead LQFP | ||
4 | package. Six high speed, 3.3 V, 11-bit video DACs provide support for composite | ||
5 | (CVBS), S-Video (Y-C), and component (YPrPb/RGB) analog outputs in standard | ||
6 | definition (SD), enhanced definition (ED), or high definition (HD) video | ||
7 | formats. | ||
8 | |||
9 | Required Properties : | ||
10 | - compatible: Must be "adi,adv7343" | ||
11 | |||
12 | Optional Properties : | ||
13 | - adi,power-mode-sleep-mode: on enable the current consumption is reduced to | ||
14 | micro ampere level. All DACs and the internal PLL | ||
15 | circuit are disabled. | ||
16 | - adi,power-mode-pll-ctrl: PLL and oversampling control. This control allows | ||
17 | internal PLL 1 circuit to be powered down and the | ||
18 | oversampling to be switched off. | ||
19 | - ad,adv7343-power-mode-dac: array configuring the power on/off DAC's 1..6, | ||
20 | 0 = OFF and 1 = ON, Default value when this | ||
21 | property is not specified is <0 0 0 0 0 0>. | ||
22 | - ad,adv7343-sd-config-dac-out: array configure SD DAC Output's 1 and 2, 0 = OFF | ||
23 | and 1 = ON, Default value when this property is | ||
24 | not specified is <0 0>. | ||
25 | |||
26 | Example: | ||
27 | |||
28 | i2c0@1c22000 { | ||
29 | ... | ||
30 | ... | ||
31 | |||
32 | adv7343@2a { | ||
33 | compatible = "adi,adv7343"; | ||
34 | reg = <0x2a>; | ||
35 | |||
36 | port { | ||
37 | adv7343_1: endpoint { | ||
38 | adi,power-mode-sleep-mode; | ||
39 | adi,power-mode-pll-ctrl; | ||
40 | /* Use DAC1..3, DAC6 */ | ||
41 | adi,dac-enable = <1 1 1 0 0 1>; | ||
42 | /* Use SD DAC output 1 */ | ||
43 | adi,sd-dac-enable = <1 0>; | ||
44 | }; | ||
45 | }; | ||
46 | }; | ||
47 | ... | ||
48 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/i2c/ths8200.txt b/Documentation/devicetree/bindings/media/i2c/ths8200.txt new file mode 100644 index 000000000000..285f6ae7dfa9 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/ths8200.txt | |||
@@ -0,0 +1,19 @@ | |||
1 | * Texas Instruments THS8200 video encoder | ||
2 | |||
3 | The ths8200 device is a digital to analog converter used in DVD players, video | ||
4 | recorders, set-top boxes. | ||
5 | |||
6 | Required Properties : | ||
7 | - compatible : value must be "ti,ths8200" | ||
8 | |||
9 | Example: | ||
10 | |||
11 | i2c0@1c22000 { | ||
12 | ... | ||
13 | ... | ||
14 | ths8200@5c { | ||
15 | compatible = "ti,ths8200"; | ||
16 | reg = <0x5c>; | ||
17 | }; | ||
18 | ... | ||
19 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/i2c/tvp7002.txt b/Documentation/devicetree/bindings/media/i2c/tvp7002.txt new file mode 100644 index 000000000000..5f28b5d9abcc --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/tvp7002.txt | |||
@@ -0,0 +1,53 @@ | |||
1 | * Texas Instruments TV7002 video decoder | ||
2 | |||
3 | The TVP7002 device supports digitizing of video and graphics signal in RGB and | ||
4 | YPbPr color space. | ||
5 | |||
6 | Required Properties : | ||
7 | - compatible : Must be "ti,tvp7002" | ||
8 | |||
9 | Optional Properties: | ||
10 | - hsync-active: HSYNC Polarity configuration for the bus. Default value when | ||
11 | this property is not specified is <0>. | ||
12 | |||
13 | - vsync-active: VSYNC Polarity configuration for the bus. Default value when | ||
14 | this property is not specified is <0>. | ||
15 | |||
16 | - pclk-sample: Clock polarity of the bus. Default value when this property is | ||
17 | not specified is <0>. | ||
18 | |||
19 | - sync-on-green-active: Active state of Sync-on-green signal property of the | ||
20 | endpoint. | ||
21 | 0 = Normal Operation (Active Low, Default) | ||
22 | 1 = Inverted operation | ||
23 | |||
24 | - field-even-active: Active-high Field ID output polarity control of the bus. | ||
25 | Under normal operation, the field ID output is set to logic 1 for an odd field | ||
26 | (field 1) and set to logic 0 for an even field (field 0). | ||
27 | 0 = Normal Operation (Active Low, Default) | ||
28 | 1 = FID output polarity inverted | ||
29 | |||
30 | For further reading of port node refer Documentation/devicetree/bindings/media/ | ||
31 | video-interfaces.txt. | ||
32 | |||
33 | Example: | ||
34 | |||
35 | i2c0@1c22000 { | ||
36 | ... | ||
37 | ... | ||
38 | tvp7002@5c { | ||
39 | compatible = "ti,tvp7002"; | ||
40 | reg = <0x5c>; | ||
41 | |||
42 | port { | ||
43 | tvp7002_1: endpoint { | ||
44 | hsync-active = <1>; | ||
45 | vsync-active = <1>; | ||
46 | pclk-sample = <0>; | ||
47 | sync-on-green-active = <1>; | ||
48 | field-even-active = <0>; | ||
49 | }; | ||
50 | }; | ||
51 | }; | ||
52 | ... | ||
53 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/s5p-mfc.txt b/Documentation/devicetree/bindings/media/s5p-mfc.txt index df37b0230c75..36bd2d6725c8 100644 --- a/Documentation/devicetree/bindings/media/s5p-mfc.txt +++ b/Documentation/devicetree/bindings/media/s5p-mfc.txt | |||
@@ -10,6 +10,7 @@ Required properties: | |||
10 | - compatible : value should be either one among the following | 10 | - compatible : value should be either one among the following |
11 | (a) "samsung,mfc-v5" for MFC v5 present in Exynos4 SoCs | 11 | (a) "samsung,mfc-v5" for MFC v5 present in Exynos4 SoCs |
12 | (b) "samsung,mfc-v6" for MFC v6 present in Exynos5 SoCs | 12 | (b) "samsung,mfc-v6" for MFC v6 present in Exynos5 SoCs |
13 | (b) "samsung,mfc-v7" for MFC v7 present in Exynos5420 SoC | ||
13 | 14 | ||
14 | - reg : Physical base address of the IP registers and length of memory | 15 | - reg : Physical base address of the IP registers and length of memory |
15 | mapped region. | 16 | mapped region. |
diff --git a/Documentation/devicetree/bindings/media/video-interfaces.txt b/Documentation/devicetree/bindings/media/video-interfaces.txt index e022d2dc4962..ce719f89dd1c 100644 --- a/Documentation/devicetree/bindings/media/video-interfaces.txt +++ b/Documentation/devicetree/bindings/media/video-interfaces.txt | |||
@@ -88,6 +88,8 @@ Optional endpoint properties | |||
88 | - field-even-active: field signal level during the even field data transmission. | 88 | - field-even-active: field signal level during the even field data transmission. |
89 | - pclk-sample: sample data on rising (1) or falling (0) edge of the pixel clock | 89 | - pclk-sample: sample data on rising (1) or falling (0) edge of the pixel clock |
90 | signal. | 90 | signal. |
91 | - sync-on-green-active: active state of Sync-on-green (SoG) signal, 0/1 for | ||
92 | LOW/HIGH respectively. | ||
91 | - data-lanes: an array of physical data lane indexes. Position of an entry | 93 | - data-lanes: an array of physical data lane indexes. Position of an entry |
92 | determines the logical lane number, while the value of an entry indicates | 94 | determines the logical lane number, while the value of an entry indicates |
93 | physical lane, e.g. for 2-lane MIPI CSI-2 bus we could have | 95 | physical lane, e.g. for 2-lane MIPI CSI-2 bus we could have |
diff --git a/Documentation/devicetree/bindings/mfd/cros-ec.txt b/Documentation/devicetree/bindings/mfd/cros-ec.txt index e0e59c58a1f9..5f229c5f6da9 100644 --- a/Documentation/devicetree/bindings/mfd/cros-ec.txt +++ b/Documentation/devicetree/bindings/mfd/cros-ec.txt | |||
@@ -4,7 +4,7 @@ Google's ChromeOS EC is a Cortex-M device which talks to the AP and | |||
4 | implements various function such as keyboard and battery charging. | 4 | implements various function such as keyboard and battery charging. |
5 | 5 | ||
6 | The EC can be connect through various means (I2C, SPI, LPC) and the | 6 | The EC can be connect through various means (I2C, SPI, LPC) and the |
7 | compatible string used depends on the inteface. Each connection method has | 7 | compatible string used depends on the interface. Each connection method has |
8 | its own driver which connects to the top level interface-agnostic EC driver. | 8 | its own driver which connects to the top level interface-agnostic EC driver. |
9 | Other Linux driver (such as cros-ec-keyb for the matrix keyboard) connect to | 9 | Other Linux driver (such as cros-ec-keyb for the matrix keyboard) connect to |
10 | the top-level driver. | 10 | the top-level driver. |
diff --git a/Documentation/devicetree/bindings/misc/atmel-ssc.txt b/Documentation/devicetree/bindings/misc/atmel-ssc.txt index 38e51ad2e07e..a45ae08c8ed1 100644 --- a/Documentation/devicetree/bindings/misc/atmel-ssc.txt +++ b/Documentation/devicetree/bindings/misc/atmel-ssc.txt | |||
@@ -7,9 +7,30 @@ Required properties: | |||
7 | - reg: Should contain SSC registers location and length | 7 | - reg: Should contain SSC registers location and length |
8 | - interrupts: Should contain SSC interrupt | 8 | - interrupts: Should contain SSC interrupt |
9 | 9 | ||
10 | Example: | 10 | |
11 | Required properties for devices compatible with "atmel,at91sam9g45-ssc": | ||
12 | - dmas: DMA specifier, consisting of a phandle to DMA controller node, | ||
13 | the memory interface and SSC DMA channel ID (for tx and rx). | ||
14 | See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. | ||
15 | - dma-names: Must be "tx", "rx". | ||
16 | |||
17 | Examples: | ||
18 | - PDC transfer: | ||
11 | ssc0: ssc@fffbc000 { | 19 | ssc0: ssc@fffbc000 { |
12 | compatible = "atmel,at91rm9200-ssc"; | 20 | compatible = "atmel,at91rm9200-ssc"; |
13 | reg = <0xfffbc000 0x4000>; | 21 | reg = <0xfffbc000 0x4000>; |
14 | interrupts = <14 4 5>; | 22 | interrupts = <14 4 5>; |
15 | }; | 23 | }; |
24 | |||
25 | - DMA transfer: | ||
26 | ssc0: ssc@f0010000 { | ||
27 | compatible = "atmel,at91sam9g45-ssc"; | ||
28 | reg = <0xf0010000 0x4000>; | ||
29 | interrupts = <28 4 5>; | ||
30 | dmas = <&dma0 1 13>, | ||
31 | <&dma0 1 14>; | ||
32 | dma-names = "tx", "rx"; | ||
33 | pinctrl-names = "default"; | ||
34 | pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; | ||
35 | status = "disabled"; | ||
36 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/can/atmel-can.txt b/Documentation/devicetree/bindings/net/can/atmel-can.txt index 72cf0c5daff4..14e52a0d86ec 100644 --- a/Documentation/devicetree/bindings/net/can/atmel-can.txt +++ b/Documentation/devicetree/bindings/net/can/atmel-can.txt | |||
@@ -8,7 +8,7 @@ Required properties: | |||
8 | Example: | 8 | Example: |
9 | 9 | ||
10 | can0: can@f000c000 { | 10 | can0: can@f000c000 { |
11 | compatbile = "atmel,at91sam9x5-can"; | 11 | compatible = "atmel,at91sam9x5-can"; |
12 | reg = <0xf000c000 0x300>; | 12 | reg = <0xf000c000 0x300>; |
13 | interrupts = <40 4 5> | 13 | interrupts = <40 4 5> |
14 | }; | 14 | }; |
diff --git a/Documentation/devicetree/bindings/net/micrel-ksz9021.txt b/Documentation/devicetree/bindings/net/micrel-ksz9021.txt new file mode 100644 index 000000000000..997a63f1aea1 --- /dev/null +++ b/Documentation/devicetree/bindings/net/micrel-ksz9021.txt | |||
@@ -0,0 +1,49 @@ | |||
1 | Micrel KSZ9021 Gigabit Ethernet PHY | ||
2 | |||
3 | Some boards require special tuning values, particularly when it comes to | ||
4 | clock delays. You can specify clock delay values by adding | ||
5 | micrel-specific properties to an Ethernet OF device node. | ||
6 | |||
7 | All skew control options are specified in picoseconds. The minimum | ||
8 | value is 0, and the maximum value is 3000. | ||
9 | |||
10 | Optional properties: | ||
11 | - rxc-skew-ps : Skew control of RXC pad | ||
12 | - rxdv-skew-ps : Skew control of RX CTL pad | ||
13 | - txc-skew-ps : Skew control of TXC pad | ||
14 | - txen-skew-ps : Skew control of TX_CTL pad | ||
15 | - rxd0-skew-ps : Skew control of RX data 0 pad | ||
16 | - rxd1-skew-ps : Skew control of RX data 1 pad | ||
17 | - rxd2-skew-ps : Skew control of RX data 2 pad | ||
18 | - rxd3-skew-ps : Skew control of RX data 3 pad | ||
19 | - txd0-skew-ps : Skew control of TX data 0 pad | ||
20 | - txd1-skew-ps : Skew control of TX data 1 pad | ||
21 | - txd2-skew-ps : Skew control of TX data 2 pad | ||
22 | - txd3-skew-ps : Skew control of TX data 3 pad | ||
23 | |||
24 | Examples: | ||
25 | |||
26 | /* Attach to an Ethernet device with autodetected PHY */ | ||
27 | &enet { | ||
28 | rxc-skew-ps = <3000>; | ||
29 | rxdv-skew-ps = <0>; | ||
30 | txc-skew-ps = <3000>; | ||
31 | txen-skew-ps = <0>; | ||
32 | status = "okay"; | ||
33 | }; | ||
34 | |||
35 | /* Attach to an explicitly-specified PHY */ | ||
36 | mdio { | ||
37 | phy0: ethernet-phy@0 { | ||
38 | rxc-skew-ps = <3000>; | ||
39 | rxdv-skew-ps = <0>; | ||
40 | txc-skew-ps = <3000>; | ||
41 | txen-skew-ps = <0>; | ||
42 | reg = <0>; | ||
43 | }; | ||
44 | }; | ||
45 | ethernet@70000 { | ||
46 | status = "okay"; | ||
47 | phy = <&phy0>; | ||
48 | phy-mode = "rgmii-id"; | ||
49 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/moxa,moxart-mac.txt b/Documentation/devicetree/bindings/net/moxa,moxart-mac.txt new file mode 100644 index 000000000000..583418b2c127 --- /dev/null +++ b/Documentation/devicetree/bindings/net/moxa,moxart-mac.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | MOXA ART Ethernet Controller | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : Must be "moxa,moxart-mac" | ||
6 | - reg : Should contain register location and length | ||
7 | - interrupts : Should contain the mac interrupt number | ||
8 | |||
9 | Example: | ||
10 | |||
11 | mac0: mac@90900000 { | ||
12 | compatible = "moxa,moxart-mac"; | ||
13 | reg = <0x90900000 0x100>; | ||
14 | interrupts = <25 0>; | ||
15 | }; | ||
16 | |||
17 | mac1: mac@92000000 { | ||
18 | compatible = "moxa,moxart-mac"; | ||
19 | reg = <0x92000000 0x100>; | ||
20 | interrupts = <27 0>; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/stmmac.txt b/Documentation/devicetree/bindings/net/stmmac.txt index 261c563b5f06..eba0e5e59ebe 100644 --- a/Documentation/devicetree/bindings/net/stmmac.txt +++ b/Documentation/devicetree/bindings/net/stmmac.txt | |||
@@ -22,6 +22,11 @@ Required properties: | |||
22 | - snps,pbl Programmable Burst Length | 22 | - snps,pbl Programmable Burst Length |
23 | - snps,fixed-burst Program the DMA to use the fixed burst mode | 23 | - snps,fixed-burst Program the DMA to use the fixed burst mode |
24 | - snps,mixed-burst Program the DMA to use the mixed burst mode | 24 | - snps,mixed-burst Program the DMA to use the mixed burst mode |
25 | - snps,force_thresh_dma_mode Force DMA to use the threshold mode for | ||
26 | both tx and rx | ||
27 | - snps,force_sf_dma_mode Force DMA to use the Store and Forward | ||
28 | mode for both tx and rx. This flag is | ||
29 | ignored if force_thresh_dma_mode is set. | ||
25 | 30 | ||
26 | Optional properties: | 31 | Optional properties: |
27 | - mac-address: 6 bytes, mac address | 32 | - mac-address: 6 bytes, mac address |
diff --git a/Documentation/devicetree/bindings/pci/designware-pcie.txt b/Documentation/devicetree/bindings/pci/designware-pcie.txt index e2371f5cdebe..eabcb4b5db6e 100644 --- a/Documentation/devicetree/bindings/pci/designware-pcie.txt +++ b/Documentation/devicetree/bindings/pci/designware-pcie.txt | |||
@@ -18,6 +18,7 @@ Required properties: | |||
18 | - interrupt-map-mask and interrupt-map: standard PCI properties | 18 | - interrupt-map-mask and interrupt-map: standard PCI properties |
19 | to define the mapping of the PCIe interface to interrupt | 19 | to define the mapping of the PCIe interface to interrupt |
20 | numbers. | 20 | numbers. |
21 | - num-lanes: number of lanes to use | ||
21 | - reset-gpio: gpio pin number of power good signal | 22 | - reset-gpio: gpio pin number of power good signal |
22 | 23 | ||
23 | Example: | 24 | Example: |
@@ -41,6 +42,7 @@ SoC specific DT Entry: | |||
41 | #interrupt-cells = <1>; | 42 | #interrupt-cells = <1>; |
42 | interrupt-map-mask = <0 0 0 0>; | 43 | interrupt-map-mask = <0 0 0 0>; |
43 | interrupt-map = <0x0 0 &gic 53>; | 44 | interrupt-map = <0x0 0 &gic 53>; |
45 | num-lanes = <4>; | ||
44 | }; | 46 | }; |
45 | 47 | ||
46 | pcie@2a0000 { | 48 | pcie@2a0000 { |
@@ -60,6 +62,7 @@ SoC specific DT Entry: | |||
60 | #interrupt-cells = <1>; | 62 | #interrupt-cells = <1>; |
61 | interrupt-map-mask = <0 0 0 0>; | 63 | interrupt-map-mask = <0 0 0 0>; |
62 | interrupt-map = <0x0 0 &gic 56>; | 64 | interrupt-map = <0x0 0 &gic 56>; |
65 | num-lanes = <4>; | ||
63 | }; | 66 | }; |
64 | 67 | ||
65 | Board specific DT Entry: | 68 | Board specific DT Entry: |
diff --git a/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt index 648d60eb9fd8..7ccae490ff6d 100644 --- a/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt | |||
@@ -37,7 +37,7 @@ Bank: 3 (A, B and C) | |||
37 | 0xffffffff 0x7fff3ccf /* pioB */ | 37 | 0xffffffff 0x7fff3ccf /* pioB */ |
38 | 0xffffffff 0x007fffff /* pioC */ | 38 | 0xffffffff 0x007fffff /* pioC */ |
39 | 39 | ||
40 | For each peripheral/bank we will descibe in a u32 if a pin can can be | 40 | For each peripheral/bank we will descibe in a u32 if a pin can be |
41 | configured in it by putting 1 to the pin bit (1 << pin) | 41 | configured in it by putting 1 to the pin bit (1 << pin) |
42 | 42 | ||
43 | Let's take the pioA on peripheral B | 43 | Let's take the pioA on peripheral B |
diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt b/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt index aeb3c995cc04..1958ca9f9e5c 100644 --- a/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt +++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt | |||
@@ -127,21 +127,20 @@ whether there is any interaction between the child and intermediate parent | |||
127 | nodes, is again defined entirely by the binding for the individual pin | 127 | nodes, is again defined entirely by the binding for the individual pin |
128 | controller device. | 128 | controller device. |
129 | 129 | ||
130 | == Using generic pinconfig options == | 130 | == Generic pin configuration node content == |
131 | 131 | ||
132 | Generic pinconfig parameters can be used by defining a separate node containing | 132 | Many data items that are represented in a pin configuration node are common |
133 | the applicable parameters (and optional values), like: | 133 | and generic. Pin control bindings should use the properties defined below |
134 | where they are applicable; not all of these properties are relevant or useful | ||
135 | for all hardware or binding structures. Each individual binding document | ||
136 | should state which of these generic properties, if any, are used, and the | ||
137 | structure of the DT nodes that contain these properties. | ||
134 | 138 | ||
135 | pcfg_pull_up: pcfg_pull_up { | 139 | Supported generic properties are: |
136 | bias-pull-up; | ||
137 | drive-strength = <20>; | ||
138 | }; | ||
139 | |||
140 | This node should then be referenced in the appropriate pinctrl node as a phandle | ||
141 | and parsed in the driver using the pinconf_generic_parse_dt_config function. | ||
142 | |||
143 | Supported configuration parameters are: | ||
144 | 140 | ||
141 | pins - the list of pins that properties in the node | ||
142 | apply to | ||
143 | function - the mux function to select | ||
145 | bias-disable - disable any pin bias | 144 | bias-disable - disable any pin bias |
146 | bias-high-impedance - high impedance mode ("third-state", "floating") | 145 | bias-high-impedance - high impedance mode ("third-state", "floating") |
147 | bias-bus-hold - latch weakly | 146 | bias-bus-hold - latch weakly |
@@ -160,7 +159,21 @@ low-power-disable - disable low power mode | |||
160 | output-low - set the pin to output mode with low level | 159 | output-low - set the pin to output mode with low level |
161 | output-high - set the pin to output mode with high level | 160 | output-high - set the pin to output mode with high level |
162 | 161 | ||
163 | Arguments for parameters: | 162 | Some of the generic properties take arguments. For those that do, the |
163 | arguments are described below. | ||
164 | |||
165 | - pins takes a list of pin names or IDs as a required argument. The specific | ||
166 | binding for the hardware defines: | ||
167 | - Whether the entries are integers or strings, and their meaning. | ||
168 | |||
169 | - function takes a list of function names/IDs as a required argument. The | ||
170 | specific binding for the hardware defines: | ||
171 | - Whether the entries are integers or strings, and their meaning. | ||
172 | - Whether only a single entry is allowed (which is applied to all entries | ||
173 | in the pins property), or whether there may alternatively be one entry per | ||
174 | entry in the pins property, in which case the list lengths must match, and | ||
175 | for each list index i, the function at list index i is applied to the pin | ||
176 | at list index i. | ||
164 | 177 | ||
165 | - bias-pull-up, -down and -pin-default take as optional argument on hardware | 178 | - bias-pull-up, -down and -pin-default take as optional argument on hardware |
166 | supporting it the pull strength in Ohm. bias-disable will disable the pull. | 179 | supporting it the pull strength in Ohm. bias-disable will disable the pull. |
@@ -170,7 +183,5 @@ Arguments for parameters: | |||
170 | - input-debounce takes the debounce time in usec as argument | 183 | - input-debounce takes the debounce time in usec as argument |
171 | or 0 to disable debouncing | 184 | or 0 to disable debouncing |
172 | 185 | ||
173 | All parameters not listed here, do not take an argument. | ||
174 | |||
175 | More in-depth documentation on these parameters can be found in | 186 | More in-depth documentation on these parameters can be found in |
176 | <include/linux/pinctrl/pinconfig-generic.h> | 187 | <include/linux/pinctrl/pinconfig-generic.h> |
diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-palmas.txt b/Documentation/devicetree/bindings/pinctrl/pinctrl-palmas.txt new file mode 100644 index 000000000000..734d9b04d533 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-palmas.txt | |||
@@ -0,0 +1,96 @@ | |||
1 | Palmas Pincontrol bindings | ||
2 | |||
3 | The pins of Palmas device can be set on different option and provides | ||
4 | the configuration for Pull UP/DOWN, open drain etc. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible: It must be one of following: | ||
8 | - "ti,palmas-pinctrl" for Palma series of the pincontrol. | ||
9 | - "ti,tps65913-pinctrl" for Palma series device TPS65913. | ||
10 | - "ti,tps80036-pinctrl" for Palma series device TPS80036. | ||
11 | |||
12 | Please refer to pinctrl-bindings.txt in this directory for details of the | ||
13 | common pinctrl bindings used by client devices, including the meaning of the | ||
14 | phrase "pin configuration node". | ||
15 | |||
16 | Palmas's pin configuration nodes act as a container for an arbitrary number of | ||
17 | subnodes. Each of these subnodes represents some desired configuration for a | ||
18 | list of pins. This configuration can include the mux function to select on | ||
19 | those pin(s), and various pin configuration parameters, such as pull-up, | ||
20 | open drain. | ||
21 | |||
22 | The name of each subnode is not important; all subnodes should be enumerated | ||
23 | and processed purely based on their content. | ||
24 | |||
25 | Each subnode only affects those parameters that are explicitly listed. In | ||
26 | other words, a subnode that lists a mux function but no pin configuration | ||
27 | parameters implies no information about any pin configuration parameters. | ||
28 | Similarly, a pin subnode that describes a pullup parameter implies no | ||
29 | information about e.g. the mux function. | ||
30 | |||
31 | Optional properties: | ||
32 | - ti,palmas-enable-dvfs1: Enable DVFS1. Configure pins for DVFS1 mode. | ||
33 | Selection primary or secondary function associated to I2C2_SCL_SCE, | ||
34 | I2C2_SDA_SDO pin/pad for DVFS1 interface | ||
35 | - ti,palmas-enable-dvfs2: Enable DVFS2. Configure pins for DVFS2 mode. | ||
36 | Selection primary or secondary function associated to GPADC_START | ||
37 | and SYSEN2 pin/pad for DVFS2 interface | ||
38 | |||
39 | This binding uses the following generic properties as defined in | ||
40 | pinctrl-bindings.txt: | ||
41 | |||
42 | Required: pins | ||
43 | Options: function, bias-disable, bias-pull-up, bias-pull-down, | ||
44 | bias-pin-default, drive-open-drain. | ||
45 | |||
46 | Note that many of these properties are only valid for certain specific pins. | ||
47 | See the Palmas device datasheet for complete details regarding which pins | ||
48 | support which functionality. | ||
49 | |||
50 | Valid values for pin names are: | ||
51 | gpio0, gpio1, gpio2, gpio3, gpio4, gpio5, gpio6, gpio7, gpio8, gpio9, | ||
52 | gpio10, gpio11, gpio12, gpio13, gpio14, gpio15, vac, powergood, | ||
53 | nreswarm, pwrdown, gpadc_start, reset_in, nsleep, enable1, enable2, | ||
54 | int. | ||
55 | |||
56 | Valid value of function names are: | ||
57 | gpio, led, pwm, regen, sysen, clk32kgaudio, id, vbus_det, chrg_det, | ||
58 | vac, vacok, powergood, usb_psel, msecure, pwrhold, int, nreswarm, | ||
59 | simrsto, simrsti, low_vbat, wireless_chrg1, rcm, pwrdown, gpadc_start, | ||
60 | reset_in, nsleep, enable. | ||
61 | |||
62 | There are 4 special functions: opt0, opt1, opt2 and opt3. If any of these | ||
63 | functions is selected then directly pins register will be written with 0, 1, 2 | ||
64 | or 3 respectively if it is valid for that pins or list of pins. | ||
65 | |||
66 | Example: | ||
67 | palmas: tps65913 { | ||
68 | .... | ||
69 | pinctrl { | ||
70 | compatible = "ti,tps65913-pinctrl"; | ||
71 | ti,palmas-enable-dvfs1; | ||
72 | pinctrl-names = "default"; | ||
73 | pinctrl-0 = <&palmas_pins_state>; | ||
74 | |||
75 | palmas_pins_state: pinmux { | ||
76 | gpio0 { | ||
77 | pins = "gpio0"; | ||
78 | function = "id"; | ||
79 | bias-pull-up; | ||
80 | }; | ||
81 | |||
82 | vac { | ||
83 | pins = "vac"; | ||
84 | function = "vacok"; | ||
85 | bias-pull-down; | ||
86 | }; | ||
87 | |||
88 | gpio5 { | ||
89 | pins = "gpio5"; | ||
90 | function = "opt0"; | ||
91 | drive-open-drain = <1>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
95 | .... | ||
96 | }; | ||
diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt index 36281e7a2a46..257677de3e6b 100644 --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt | |||
@@ -12,6 +12,7 @@ Required Properties: | |||
12 | - "samsung,s3c2440-pinctrl": for S3C2440-compatible pin-controller, | 12 | - "samsung,s3c2440-pinctrl": for S3C2440-compatible pin-controller, |
13 | - "samsung,s3c2450-pinctrl": for S3C2450-compatible pin-controller, | 13 | - "samsung,s3c2450-pinctrl": for S3C2450-compatible pin-controller, |
14 | - "samsung,s3c64xx-pinctrl": for S3C64xx-compatible pin-controller, | 14 | - "samsung,s3c64xx-pinctrl": for S3C64xx-compatible pin-controller, |
15 | - "samsung,s5pv210-pinctrl": for S5PV210-compatible pin-controller, | ||
15 | - "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin-controller. | 16 | - "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin-controller. |
16 | - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible pin-controller. | 17 | - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible pin-controller. |
17 | - "samsung,exynos5250-pinctrl": for Exynos5250 compatible pin-controller. | 18 | - "samsung,exynos5250-pinctrl": for Exynos5250 compatible pin-controller. |
@@ -128,7 +129,7 @@ B. External Wakeup Interrupts: For supporting external wakeup interrupts, a | |||
128 | - samsung,s3c64xx-wakeup-eint: represents wakeup interrupt controller | 129 | - samsung,s3c64xx-wakeup-eint: represents wakeup interrupt controller |
129 | found on Samsung S3C64xx SoCs, | 130 | found on Samsung S3C64xx SoCs, |
130 | - samsung,exynos4210-wakeup-eint: represents wakeup interrupt controller | 131 | - samsung,exynos4210-wakeup-eint: represents wakeup interrupt controller |
131 | found on Samsung Exynos4210 SoC. | 132 | found on Samsung Exynos4210 and S5PC110/S5PV210 SoCs. |
132 | - interrupt-parent: phandle of the interrupt parent to which the external | 133 | - interrupt-parent: phandle of the interrupt parent to which the external |
133 | wakeup interrupts are forwarded to. | 134 | wakeup interrupts are forwarded to. |
134 | - interrupts: interrupt used by multiplexed wakeup interrupts. | 135 | - interrupts: interrupt used by multiplexed wakeup interrupts. |
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt b/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt index 5693877ab377..82dd5b65cf48 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt | |||
@@ -1,21 +1,20 @@ | |||
1 | * Freescale MSI interrupt controller | 1 | * Freescale MSI interrupt controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : compatible list, contains 2 entries, | 4 | - compatible : compatible list, may contain one or two entries |
5 | first is "fsl,CHIP-msi", where CHIP is the processor(mpc8610, mpc8572, | 5 | The first is "fsl,CHIP-msi", where CHIP is the processor(mpc8610, mpc8572, |
6 | etc.) and the second is "fsl,mpic-msi" or "fsl,ipic-msi" depending on | 6 | etc.) and the second is "fsl,mpic-msi" or "fsl,ipic-msi" or |
7 | the parent type. | 7 | "fsl,mpic-msi-v4.3" depending on the parent type and version. If mpic |
8 | version is 4.3, the number of MSI registers is increased to 16, MSIIR1 is | ||
9 | provided to access these 16 registers, and compatible "fsl,mpic-msi-v4.3" | ||
10 | should be used. The first entry is optional; the second entry is | ||
11 | required. | ||
8 | 12 | ||
9 | - reg : It may contain one or two regions. The first region should contain | 13 | - reg : It may contain one or two regions. The first region should contain |
10 | the address and the length of the shared message interrupt register set. | 14 | the address and the length of the shared message interrupt register set. |
11 | The second region should contain the address of aliased MSIIR register for | 15 | The second region should contain the address of aliased MSIIR or MSIIR1 |
12 | platforms that have such an alias. | 16 | register for platforms that have such an alias, if using MSIIR1, the second |
13 | 17 | region must be added because different MSI group has different MSIIR1 offset. | |
14 | - msi-available-ranges: use <start count> style section to define which | ||
15 | msi interrupt can be used in the 256 msi interrupts. This property is | ||
16 | optional, without this, all the 256 MSI interrupts can be used. | ||
17 | Each available range must begin and end on a multiple of 32 (i.e. | ||
18 | no splitting an individual MSI register or the associated PIC interrupt). | ||
19 | 18 | ||
20 | - interrupts : each one of the interrupts here is one entry per 32 MSIs, | 19 | - interrupts : each one of the interrupts here is one entry per 32 MSIs, |
21 | and routed to the host interrupt controller. the interrupts should | 20 | and routed to the host interrupt controller. the interrupts should |
@@ -28,6 +27,14 @@ Required properties: | |||
28 | to MPIC. | 27 | to MPIC. |
29 | 28 | ||
30 | Optional properties: | 29 | Optional properties: |
30 | - msi-available-ranges: use <start count> style section to define which | ||
31 | msi interrupt can be used in the 256 msi interrupts. This property is | ||
32 | optional, without this, all the MSI interrupts can be used. | ||
33 | Each available range must begin and end on a multiple of 32 (i.e. | ||
34 | no splitting an individual MSI register or the associated PIC interrupt). | ||
35 | MPIC v4.3 does not support this property because the 32 interrupts of an | ||
36 | individual register are not continuous when using MSIIR1. | ||
37 | |||
31 | - msi-address-64: 64-bit PCI address of the MSIIR register. The MSIIR register | 38 | - msi-address-64: 64-bit PCI address of the MSIIR register. The MSIIR register |
32 | is used for MSI messaging. The address of MSIIR in PCI address space is | 39 | is used for MSI messaging. The address of MSIIR in PCI address space is |
33 | the MSI message address. | 40 | the MSI message address. |
@@ -54,6 +61,28 @@ Example: | |||
54 | interrupt-parent = <&mpic>; | 61 | interrupt-parent = <&mpic>; |
55 | }; | 62 | }; |
56 | 63 | ||
64 | msi@41600 { | ||
65 | compatible = "fsl,mpic-msi-v4.3"; | ||
66 | reg = <0x41600 0x200 0x44148 4>; | ||
67 | interrupts = < | ||
68 | 0xe0 0 0 0 | ||
69 | 0xe1 0 0 0 | ||
70 | 0xe2 0 0 0 | ||
71 | 0xe3 0 0 0 | ||
72 | 0xe4 0 0 0 | ||
73 | 0xe5 0 0 0 | ||
74 | 0xe6 0 0 0 | ||
75 | 0xe7 0 0 0 | ||
76 | 0x100 0 0 0 | ||
77 | 0x101 0 0 0 | ||
78 | 0x102 0 0 0 | ||
79 | 0x103 0 0 0 | ||
80 | 0x104 0 0 0 | ||
81 | 0x105 0 0 0 | ||
82 | 0x106 0 0 0 | ||
83 | 0x107 0 0 0>; | ||
84 | }; | ||
85 | |||
57 | The Freescale hypervisor and msi-address-64 | 86 | The Freescale hypervisor and msi-address-64 |
58 | ------------------------------------------- | 87 | ------------------------------------------- |
59 | Normally, PCI devices have access to all of CCSR via an ATMU mapping. The | 88 | Normally, PCI devices have access to all of CCSR via an ATMU mapping. The |
diff --git a/Documentation/devicetree/bindings/pwm/atmel-tcb-pwm.txt b/Documentation/devicetree/bindings/pwm/atmel-tcb-pwm.txt index de0eaed86651..8031148bcf85 100644 --- a/Documentation/devicetree/bindings/pwm/atmel-tcb-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/atmel-tcb-pwm.txt | |||
@@ -2,11 +2,9 @@ Atmel TCB PWM controller | |||
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: should be "atmel,tcb-pwm" | 4 | - compatible: should be "atmel,tcb-pwm" |
5 | - #pwm-cells: Should be 3. The first cell specifies the per-chip index | 5 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of |
6 | of the PWM to use, the second cell is the period in nanoseconds and | 6 | the cells format. The only third cell flag supported by this binding is |
7 | bit 0 in the third cell is used to encode the polarity of PWM output. | 7 | PWM_POLARITY_INVERTED. |
8 | Set bit 0 of the third cell in PWM specifier to 1 for inverse polarity & | ||
9 | set to 0 for normal polarity. | ||
10 | - tc-block: The Timer Counter block to use as a PWM chip. | 8 | - tc-block: The Timer Counter block to use as a PWM chip. |
11 | 9 | ||
12 | Example: | 10 | Example: |
diff --git a/Documentation/devicetree/bindings/pwm/imx-pwm.txt b/Documentation/devicetree/bindings/pwm/imx-pwm.txt index 8522bfbccfd7..b50d7a6d9d7f 100644 --- a/Documentation/devicetree/bindings/pwm/imx-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/imx-pwm.txt | |||
@@ -3,8 +3,8 @@ Freescale i.MX PWM controller | |||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: should be "fsl,<soc>-pwm" | 4 | - compatible: should be "fsl,<soc>-pwm" |
5 | - reg: physical base address and length of the controller's registers | 5 | - reg: physical base address and length of the controller's registers |
6 | - #pwm-cells: should be 2. The first cell specifies the per-chip index | 6 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
7 | of the PWM to use and the second cell is the period in nanoseconds. | 7 | the cells format. |
8 | - interrupts: The interrupt for the pwm controller | 8 | - interrupts: The interrupt for the pwm controller |
9 | 9 | ||
10 | Example: | 10 | Example: |
diff --git a/Documentation/devicetree/bindings/pwm/mxs-pwm.txt b/Documentation/devicetree/bindings/pwm/mxs-pwm.txt index 9e3f8f1d46a2..96cdde5f6208 100644 --- a/Documentation/devicetree/bindings/pwm/mxs-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/mxs-pwm.txt | |||
@@ -3,8 +3,8 @@ Freescale MXS PWM controller | |||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: should be "fsl,imx23-pwm" | 4 | - compatible: should be "fsl,imx23-pwm" |
5 | - reg: physical base address and length of the controller's registers | 5 | - reg: physical base address and length of the controller's registers |
6 | - #pwm-cells: should be 2. The first cell specifies the per-chip index | 6 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
7 | of the PWM to use and the second cell is the period in nanoseconds. | 7 | the cells format. |
8 | - fsl,pwm-number: the number of PWM devices | 8 | - fsl,pwm-number: the number of PWM devices |
9 | 9 | ||
10 | Example: | 10 | Example: |
diff --git a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt index 01438ecd6628..c3fc57af8772 100644 --- a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt | |||
@@ -5,9 +5,8 @@ Required properties: | |||
5 | - "nvidia,tegra20-pwm" | 5 | - "nvidia,tegra20-pwm" |
6 | - "nvidia,tegra30-pwm" | 6 | - "nvidia,tegra30-pwm" |
7 | - reg: physical base address and length of the controller's registers | 7 | - reg: physical base address and length of the controller's registers |
8 | - #pwm-cells: On Tegra the number of cells used to specify a PWM is 2. The | 8 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
9 | first cell specifies the per-chip index of the PWM to use and the second | 9 | the cells format. |
10 | cell is the period in nanoseconds. | ||
11 | 10 | ||
12 | Example: | 11 | Example: |
13 | 12 | ||
diff --git a/Documentation/devicetree/bindings/pwm/nxp,pca9685-pwm.txt b/Documentation/devicetree/bindings/pwm/nxp,pca9685-pwm.txt index 1e3dfe7a4894..f84ec9d291ea 100644 --- a/Documentation/devicetree/bindings/pwm/nxp,pca9685-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/nxp,pca9685-pwm.txt | |||
@@ -3,8 +3,8 @@ NXP PCA9685 16-channel 12-bit PWM LED controller | |||
3 | 3 | ||
4 | Required properties: | 4 | Required properties: |
5 | - compatible: "nxp,pca9685-pwm" | 5 | - compatible: "nxp,pca9685-pwm" |
6 | - #pwm-cells: should be 2. The first cell specifies the per-chip index | 6 | - #pwm-cells: Should be 2. See pwm.txt in this directory for a description of |
7 | of the PWM to use and the second cell is the period in nanoseconds. | 7 | the cells format. |
8 | The index 16 is the ALLCALL channel, that sets all PWM channels at the same | 8 | The index 16 is the ALLCALL channel, that sets all PWM channels at the same |
9 | time. | 9 | time. |
10 | 10 | ||
diff --git a/Documentation/devicetree/bindings/pwm/pwm-samsung.txt b/Documentation/devicetree/bindings/pwm/pwm-samsung.txt index ac67c687a327..4caa1a78863e 100644 --- a/Documentation/devicetree/bindings/pwm/pwm-samsung.txt +++ b/Documentation/devicetree/bindings/pwm/pwm-samsung.txt | |||
@@ -19,13 +19,9 @@ Required properties: | |||
19 | - reg: base address and size of register area | 19 | - reg: base address and size of register area |
20 | - interrupts: list of timer interrupts (one interrupt per timer, starting at | 20 | - interrupts: list of timer interrupts (one interrupt per timer, starting at |
21 | timer 0) | 21 | timer 0) |
22 | - #pwm-cells: number of cells used for PWM specifier - must be 3 | 22 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of |
23 | the specifier format is as follows: | 23 | the cells format. The only third cell flag supported by this binding is |
24 | - phandle to PWM controller node | 24 | PWM_POLARITY_INVERTED. |
25 | - index of PWM channel (from 0 to 4) | ||
26 | - PWM signal period in nanoseconds | ||
27 | - bitmask of optional PWM flags: | ||
28 | 0x1 - invert PWM signal | ||
29 | 25 | ||
30 | Optional properties: | 26 | Optional properties: |
31 | - samsung,pwm-outputs: list of PWM channels used as PWM outputs on particular | 27 | - samsung,pwm-outputs: list of PWM channels used as PWM outputs on particular |
diff --git a/Documentation/devicetree/bindings/pwm/pwm-tiecap.txt b/Documentation/devicetree/bindings/pwm/pwm-tiecap.txt index 681afad73778..fb81179dce37 100644 --- a/Documentation/devicetree/bindings/pwm/pwm-tiecap.txt +++ b/Documentation/devicetree/bindings/pwm/pwm-tiecap.txt | |||
@@ -4,11 +4,9 @@ Required properties: | |||
4 | - compatible: Must be "ti,<soc>-ecap". | 4 | - compatible: Must be "ti,<soc>-ecap". |
5 | for am33xx - compatible = "ti,am33xx-ecap"; | 5 | for am33xx - compatible = "ti,am33xx-ecap"; |
6 | for da850 - compatible = "ti,da850-ecap", "ti,am33xx-ecap"; | 6 | for da850 - compatible = "ti,da850-ecap", "ti,am33xx-ecap"; |
7 | - #pwm-cells: Should be 3. Number of cells being used to specify PWM property. | 7 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of |
8 | First cell specifies the per-chip index of the PWM to use, the second | 8 | the cells format. The PWM channel index ranges from 0 to 4. The only third |
9 | cell is the period in nanoseconds and bit 0 in the third cell is used to | 9 | cell flag supported by this binding is PWM_POLARITY_INVERTED. |
10 | encode the polarity of PWM output. Set bit 0 of the third in PWM specifier | ||
11 | to 1 for inverse polarity & set to 0 for normal polarity. | ||
12 | - reg: physical base address and size of the registers map. | 10 | - reg: physical base address and size of the registers map. |
13 | 11 | ||
14 | Optional properties: | 12 | Optional properties: |
diff --git a/Documentation/devicetree/bindings/pwm/pwm-tiehrpwm.txt b/Documentation/devicetree/bindings/pwm/pwm-tiehrpwm.txt index 337c6fc65d3f..9c100b2c5b23 100644 --- a/Documentation/devicetree/bindings/pwm/pwm-tiehrpwm.txt +++ b/Documentation/devicetree/bindings/pwm/pwm-tiehrpwm.txt | |||
@@ -4,11 +4,9 @@ Required properties: | |||
4 | - compatible: Must be "ti,<soc>-ehrpwm". | 4 | - compatible: Must be "ti,<soc>-ehrpwm". |
5 | for am33xx - compatible = "ti,am33xx-ehrpwm"; | 5 | for am33xx - compatible = "ti,am33xx-ehrpwm"; |
6 | for da850 - compatible = "ti,da850-ehrpwm", "ti,am33xx-ehrpwm"; | 6 | for da850 - compatible = "ti,da850-ehrpwm", "ti,am33xx-ehrpwm"; |
7 | - #pwm-cells: Should be 3. Number of cells being used to specify PWM property. | 7 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of |
8 | First cell specifies the per-chip index of the PWM to use, the second | 8 | the cells format. The only third cell flag supported by this binding is |
9 | cell is the period in nanoseconds and bit 0 in the third cell is used to | 9 | PWM_POLARITY_INVERTED. |
10 | encode the polarity of PWM output. Set bit 0 of the third in PWM specifier | ||
11 | to 1 for inverse polarity & set to 0 for normal polarity. | ||
12 | - reg: physical base address and size of the registers map. | 10 | - reg: physical base address and size of the registers map. |
13 | 11 | ||
14 | Optional properties: | 12 | Optional properties: |
diff --git a/Documentation/devicetree/bindings/pwm/pwm.txt b/Documentation/devicetree/bindings/pwm/pwm.txt index 06e67247859a..8556263b8502 100644 --- a/Documentation/devicetree/bindings/pwm/pwm.txt +++ b/Documentation/devicetree/bindings/pwm/pwm.txt | |||
@@ -43,13 +43,14 @@ because the name "backlight" would be used as fallback anyway. | |||
43 | pwm-specifier typically encodes the chip-relative PWM number and the PWM | 43 | pwm-specifier typically encodes the chip-relative PWM number and the PWM |
44 | period in nanoseconds. | 44 | period in nanoseconds. |
45 | 45 | ||
46 | Optionally, the pwm-specifier can encode a number of flags in a third cell: | 46 | Optionally, the pwm-specifier can encode a number of flags (defined in |
47 | - bit 0: PWM signal polarity (0: normal polarity, 1: inverse polarity) | 47 | <dt-bindings/pwm/pwm.h>) in a third cell: |
48 | - PWM_POLARITY_INVERTED: invert the PWM signal polarity | ||
48 | 49 | ||
49 | Example with optional PWM specifier for inverse polarity | 50 | Example with optional PWM specifier for inverse polarity |
50 | 51 | ||
51 | bl: backlight { | 52 | bl: backlight { |
52 | pwms = <&pwm 0 5000000 1>; | 53 | pwms = <&pwm 0 5000000 PWM_POLARITY_INVERTED>; |
53 | pwm-names = "backlight"; | 54 | pwm-names = "backlight"; |
54 | }; | 55 | }; |
55 | 56 | ||
diff --git a/Documentation/devicetree/bindings/pwm/renesas,tpu-pwm.txt b/Documentation/devicetree/bindings/pwm/renesas,tpu-pwm.txt new file mode 100644 index 000000000000..b067e84a94b5 --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/renesas,tpu-pwm.txt | |||
@@ -0,0 +1,28 @@ | |||
1 | * Renesas R-Car Timer Pulse Unit PWM Controller | ||
2 | |||
3 | Required Properties: | ||
4 | |||
5 | - compatible: should be one of the following. | ||
6 | - "renesas,tpu-r8a73a4": for R8A77A4 (R-Mobile APE6) compatible PWM controller. | ||
7 | - "renesas,tpu-r8a7740": for R8A7740 (R-Mobile A1) compatible PWM controller. | ||
8 | - "renesas,tpu-r8a7790": for R8A7790 (R-Car H2) compatible PWM controller. | ||
9 | - "renesas,tpu-sh7372": for SH7372 (SH-Mobile AP4) compatible PWM controller. | ||
10 | - "renesas,tpu": for generic R-Car TPU PWM controller. | ||
11 | |||
12 | - reg: Base address and length of each memory resource used by the PWM | ||
13 | controller hardware module. | ||
14 | |||
15 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of | ||
16 | the cells format. The only third cell flag supported by this binding is | ||
17 | PWM_POLARITY_INVERTED. | ||
18 | |||
19 | Please refer to pwm.txt in this directory for details of the common PWM bindings | ||
20 | used by client devices. | ||
21 | |||
22 | Example: R8A7740 (R-Car A1) TPU controller node | ||
23 | |||
24 | tpu: pwm@e6600000 { | ||
25 | compatible = "renesas,tpu-r8a7740", "renesas,tpu"; | ||
26 | reg = <0xe6600000 0x100>; | ||
27 | #pwm-cells = <3>; | ||
28 | }; | ||
diff --git a/Documentation/devicetree/bindings/pwm/spear-pwm.txt b/Documentation/devicetree/bindings/pwm/spear-pwm.txt index 3ac779d83386..b486de2c3fe3 100644 --- a/Documentation/devicetree/bindings/pwm/spear-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/spear-pwm.txt | |||
@@ -5,9 +5,8 @@ Required properties: | |||
5 | - "st,spear320-pwm" | 5 | - "st,spear320-pwm" |
6 | - "st,spear1340-pwm" | 6 | - "st,spear1340-pwm" |
7 | - reg: physical base address and length of the controller's registers | 7 | - reg: physical base address and length of the controller's registers |
8 | - #pwm-cells: number of cells used to specify PWM which is fixed to 2 on | 8 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
9 | SPEAr. The first cell specifies the per-chip index of the PWM to use and | 9 | the cells format. |
10 | the second cell is the period in nanoseconds. | ||
11 | 10 | ||
12 | Example: | 11 | Example: |
13 | 12 | ||
diff --git a/Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt b/Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt index 2943ee5fce00..4e32bee11201 100644 --- a/Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt | |||
@@ -6,8 +6,8 @@ On TWL6030 series: PWM0 and PWM1 | |||
6 | 6 | ||
7 | Required properties: | 7 | Required properties: |
8 | - compatible: "ti,twl4030-pwm" or "ti,twl6030-pwm" | 8 | - compatible: "ti,twl4030-pwm" or "ti,twl6030-pwm" |
9 | - #pwm-cells: should be 2. The first cell specifies the per-chip index | 9 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
10 | of the PWM to use and the second cell is the period in nanoseconds. | 10 | the cells format. |
11 | 11 | ||
12 | Example: | 12 | Example: |
13 | 13 | ||
diff --git a/Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt b/Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt index cb64f3acc10f..9f4b46090782 100644 --- a/Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt +++ b/Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt | |||
@@ -6,8 +6,8 @@ On TWL6030 series: LED PWM (mainly used as charging indicator LED) | |||
6 | 6 | ||
7 | Required properties: | 7 | Required properties: |
8 | - compatible: "ti,twl4030-pwmled" or "ti,twl6030-pwmled" | 8 | - compatible: "ti,twl4030-pwmled" or "ti,twl6030-pwmled" |
9 | - #pwm-cells: should be 2. The first cell specifies the per-chip index | 9 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
10 | of the PWM to use and the second cell is the period in nanoseconds. | 10 | the cells format. |
11 | 11 | ||
12 | Example: | 12 | Example: |
13 | 13 | ||
diff --git a/Documentation/devicetree/bindings/pwm/vt8500-pwm.txt b/Documentation/devicetree/bindings/pwm/vt8500-pwm.txt index d21d82d29855..a76390e6df2e 100644 --- a/Documentation/devicetree/bindings/pwm/vt8500-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/vt8500-pwm.txt | |||
@@ -3,11 +3,9 @@ VIA/Wondermedia VT8500/WM8xxx series SoC PWM controller | |||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: should be "via,vt8500-pwm" | 4 | - compatible: should be "via,vt8500-pwm" |
5 | - reg: physical base address and length of the controller's registers | 5 | - reg: physical base address and length of the controller's registers |
6 | - #pwm-cells: Should be 3. Number of cells being used to specify PWM property. | 6 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of |
7 | First cell specifies the per-chip index of the PWM to use, the second | 7 | the cells format. The only third cell flag supported by this binding is |
8 | cell is the period in nanoseconds and bit 0 in the third cell is used to | 8 | PWM_POLARITY_INVERTED. |
9 | encode the polarity of PWM output. Set bit 0 of the third in PWM specifier | ||
10 | to 1 for inverse polarity & set to 0 for normal polarity. | ||
11 | - clocks: phandle to the PWM source clock | 9 | - clocks: phandle to the PWM source clock |
12 | 10 | ||
13 | Example: | 11 | Example: |
diff --git a/Documentation/devicetree/bindings/regulator/88pm800.txt b/Documentation/devicetree/bindings/regulator/88pm800.txt new file mode 100644 index 000000000000..e8a54c2a5821 --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/88pm800.txt | |||
@@ -0,0 +1,38 @@ | |||
1 | Marvell 88PM800 regulator | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "marvell,88pm800" | ||
5 | - reg: I2C slave address | ||
6 | - regulators: A node that houses a sub-node for each regulator within the | ||
7 | device. Each sub-node is identified using the node's name (or the deprecated | ||
8 | regulator-compatible property if present), with valid values listed below. | ||
9 | The content of each sub-node is defined by the standard binding for | ||
10 | regulators; see regulator.txt. | ||
11 | |||
12 | The valid names for regulators are: | ||
13 | |||
14 | buck1, buck2, buck3, buck4, buck5, ldo1, ldo2, ldo3, ldo4, ldo5, ldo6, ldo7, | ||
15 | ldo8, ldo9, ldo10, ldo11, ldo12, ldo13, ldo14, ldo15, ldo16, ldo17, ldo18, ldo19 | ||
16 | |||
17 | Example: | ||
18 | |||
19 | pmic: 88pm800@31 { | ||
20 | compatible = "marvell,88pm800"; | ||
21 | reg = <0x31>; | ||
22 | |||
23 | regulators { | ||
24 | buck1 { | ||
25 | regulator-min-microvolt = <600000>; | ||
26 | regulator-max-microvolt = <3950000>; | ||
27 | regulator-boot-on; | ||
28 | regulator-always-on; | ||
29 | }; | ||
30 | ldo1 { | ||
31 | regulator-min-microvolt = <600000>; | ||
32 | regulator-max-microvolt = <15000000>; | ||
33 | regulator-boot-on; | ||
34 | regulator-always-on; | ||
35 | }; | ||
36 | ... | ||
37 | }; | ||
38 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/max8660.txt b/Documentation/devicetree/bindings/regulator/max8660.txt new file mode 100644 index 000000000000..8ba994d8a142 --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/max8660.txt | |||
@@ -0,0 +1,47 @@ | |||
1 | Maxim MAX8660 voltage regulator | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: must be one of "maxim,max8660", "maxim,max8661" | ||
5 | - reg: I2C slave address, usually 0x34 | ||
6 | - any required generic properties defined in regulator.txt | ||
7 | |||
8 | Example: | ||
9 | |||
10 | i2c_master { | ||
11 | max8660@34 { | ||
12 | compatible = "maxim,max8660"; | ||
13 | reg = <0x34>; | ||
14 | |||
15 | regulators { | ||
16 | regulator@0 { | ||
17 | regulator-compatible= "V3(DCDC)"; | ||
18 | regulator-min-microvolt = <725000>; | ||
19 | regulator-max-microvolt = <1800000>; | ||
20 | }; | ||
21 | |||
22 | regulator@1 { | ||
23 | regulator-compatible= "V4(DCDC)"; | ||
24 | regulator-min-microvolt = <725000>; | ||
25 | regulator-max-microvolt = <1800000>; | ||
26 | }; | ||
27 | |||
28 | regulator@2 { | ||
29 | regulator-compatible= "V5(LDO)"; | ||
30 | regulator-min-microvolt = <1700000>; | ||
31 | regulator-max-microvolt = <2000000>; | ||
32 | }; | ||
33 | |||
34 | regulator@3 { | ||
35 | regulator-compatible= "V6(LDO)"; | ||
36 | regulator-min-microvolt = <1800000>; | ||
37 | regulator-max-microvolt = <3300000>; | ||
38 | }; | ||
39 | |||
40 | regulator@4 { | ||
41 | regulator-compatible= "V7(LDO)"; | ||
42 | regulator-min-microvolt = <1800000>; | ||
43 | regulator-max-microvolt = <3300000>; | ||
44 | }; | ||
45 | }; | ||
46 | }; | ||
47 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/palmas-pmic.txt b/Documentation/devicetree/bindings/regulator/palmas-pmic.txt index d5a308629c57..a22e4c70db5c 100644 --- a/Documentation/devicetree/bindings/regulator/palmas-pmic.txt +++ b/Documentation/devicetree/bindings/regulator/palmas-pmic.txt | |||
@@ -25,15 +25,14 @@ Optional nodes: | |||
25 | Additional custom properties are listed below. | 25 | Additional custom properties are listed below. |
26 | 26 | ||
27 | For ti,palmas-pmic - smps12, smps123, smps3 depending on OTP, | 27 | For ti,palmas-pmic - smps12, smps123, smps3 depending on OTP, |
28 | smps45, smps457, smps7 depending on variant, smps6, smps[8-10], | 28 | smps45, smps457, smps7 depending on variant, smps6, smps[8-9], |
29 | ldo[1-9], ldoln, ldousb. | 29 | smps10_out2, smps10_out1, do[1-9], ldoln, ldousb. |
30 | 30 | ||
31 | Optional sub-node properties: | 31 | Optional sub-node properties: |
32 | ti,warm-reset - maintain voltage during warm reset(boolean) | 32 | ti,warm-reset - maintain voltage during warm reset(boolean) |
33 | ti,roof-floor - control voltage selection by pin(boolean) | 33 | ti,roof-floor - control voltage selection by pin(boolean) |
34 | ti,sleep-mode - mode to adopt in pmic sleep 0 - off, 1 - auto, | 34 | ti,mode-sleep - mode to adopt in pmic sleep 0 - off, 1 - auto, |
35 | 2 - eco, 3 - forced pwm | 35 | 2 - eco, 3 - forced pwm |
36 | ti,tstep - slope control 0 - Jump, 1 10mV/us, 2 5mV/us, 3 2.5mV/us | ||
37 | ti,smps-range - OTP has the wrong range set for the hardware so override | 36 | ti,smps-range - OTP has the wrong range set for the hardware so override |
38 | 0 - low range, 1 - high range. | 37 | 0 - low range, 1 - high range. |
39 | 38 | ||
@@ -59,7 +58,6 @@ pmic { | |||
59 | ti,warm-reset; | 58 | ti,warm-reset; |
60 | ti,roof-floor; | 59 | ti,roof-floor; |
61 | ti,mode-sleep = <0>; | 60 | ti,mode-sleep = <0>; |
62 | ti,tstep = <0>; | ||
63 | ti,smps-range = <1>; | 61 | ti,smps-range = <1>; |
64 | }; | 62 | }; |
65 | 63 | ||
diff --git a/Documentation/devicetree/bindings/regulator/pfuze100.txt b/Documentation/devicetree/bindings/regulator/pfuze100.txt new file mode 100644 index 000000000000..fc989b2e8057 --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/pfuze100.txt | |||
@@ -0,0 +1,115 @@ | |||
1 | PFUZE100 family of regulators | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "fsl,pfuze100" | ||
5 | - reg: I2C slave address | ||
6 | |||
7 | Required child node: | ||
8 | - regulators: This is the list of child nodes that specify the regulator | ||
9 | initialization data for defined regulators. Please refer to below doc | ||
10 | Documentation/devicetree/bindings/regulator/regulator.txt. | ||
11 | |||
12 | The valid names for regulators are: | ||
13 | sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6 | ||
14 | |||
15 | Each regulator is defined using the standard binding for regulators. | ||
16 | |||
17 | Example: | ||
18 | |||
19 | pmic: pfuze100@08 { | ||
20 | compatible = "fsl,pfuze100"; | ||
21 | reg = <0x08>; | ||
22 | |||
23 | regulators { | ||
24 | sw1a_reg: sw1ab { | ||
25 | regulator-min-microvolt = <300000>; | ||
26 | regulator-max-microvolt = <1875000>; | ||
27 | regulator-boot-on; | ||
28 | regulator-always-on; | ||
29 | regulator-ramp-delay = <6250>; | ||
30 | }; | ||
31 | |||
32 | sw1c_reg: sw1c { | ||
33 | regulator-min-microvolt = <300000>; | ||
34 | regulator-max-microvolt = <1875000>; | ||
35 | regulator-boot-on; | ||
36 | regulator-always-on; | ||
37 | }; | ||
38 | |||
39 | sw2_reg: sw2 { | ||
40 | regulator-min-microvolt = <800000>; | ||
41 | regulator-max-microvolt = <3300000>; | ||
42 | regulator-boot-on; | ||
43 | regulator-always-on; | ||
44 | }; | ||
45 | |||
46 | sw3a_reg: sw3a { | ||
47 | regulator-min-microvolt = <400000>; | ||
48 | regulator-max-microvolt = <1975000>; | ||
49 | regulator-boot-on; | ||
50 | regulator-always-on; | ||
51 | }; | ||
52 | |||
53 | sw3b_reg: sw3b { | ||
54 | regulator-min-microvolt = <400000>; | ||
55 | regulator-max-microvolt = <1975000>; | ||
56 | regulator-boot-on; | ||
57 | regulator-always-on; | ||
58 | }; | ||
59 | |||
60 | sw4_reg: sw4 { | ||
61 | regulator-min-microvolt = <800000>; | ||
62 | regulator-max-microvolt = <3300000>; | ||
63 | }; | ||
64 | |||
65 | swbst_reg: swbst { | ||
66 | regulator-min-microvolt = <5000000>; | ||
67 | regulator-max-microvolt = <5150000>; | ||
68 | }; | ||
69 | |||
70 | snvs_reg: vsnvs { | ||
71 | regulator-min-microvolt = <1000000>; | ||
72 | regulator-max-microvolt = <3000000>; | ||
73 | regulator-boot-on; | ||
74 | regulator-always-on; | ||
75 | }; | ||
76 | |||
77 | vref_reg: vrefddr { | ||
78 | regulator-boot-on; | ||
79 | regulator-always-on; | ||
80 | }; | ||
81 | |||
82 | vgen1_reg: vgen1 { | ||
83 | regulator-min-microvolt = <800000>; | ||
84 | regulator-max-microvolt = <1550000>; | ||
85 | }; | ||
86 | |||
87 | vgen2_reg: vgen2 { | ||
88 | regulator-min-microvolt = <800000>; | ||
89 | regulator-max-microvolt = <1550000>; | ||
90 | }; | ||
91 | |||
92 | vgen3_reg: vgen3 { | ||
93 | regulator-min-microvolt = <1800000>; | ||
94 | regulator-max-microvolt = <3300000>; | ||
95 | }; | ||
96 | |||
97 | vgen4_reg: vgen4 { | ||
98 | regulator-min-microvolt = <1800000>; | ||
99 | regulator-max-microvolt = <3300000>; | ||
100 | regulator-always-on; | ||
101 | }; | ||
102 | |||
103 | vgen5_reg: vgen5 { | ||
104 | regulator-min-microvolt = <1800000>; | ||
105 | regulator-max-microvolt = <3300000>; | ||
106 | regulator-always-on; | ||
107 | }; | ||
108 | |||
109 | vgen6_reg: vgen6 { | ||
110 | regulator-min-microvolt = <1800000>; | ||
111 | regulator-max-microvolt = <3300000>; | ||
112 | regulator-always-on; | ||
113 | }; | ||
114 | }; | ||
115 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/regulator.txt b/Documentation/devicetree/bindings/regulator/regulator.txt index 48a3b8e5d6bd..2bd8f0978765 100644 --- a/Documentation/devicetree/bindings/regulator/regulator.txt +++ b/Documentation/devicetree/bindings/regulator/regulator.txt | |||
@@ -12,6 +12,8 @@ Optional properties: | |||
12 | - regulator-allow-bypass: allow the regulator to go into bypass mode | 12 | - regulator-allow-bypass: allow the regulator to go into bypass mode |
13 | - <name>-supply: phandle to the parent supply/regulator node | 13 | - <name>-supply: phandle to the parent supply/regulator node |
14 | - regulator-ramp-delay: ramp delay for regulator(in uV/uS) | 14 | - regulator-ramp-delay: ramp delay for regulator(in uV/uS) |
15 | For hardwares which support disabling ramp rate, it should be explicitly | ||
16 | intialised to zero (regulator-ramp-delay = <0>) for disabling ramp delay. | ||
15 | 17 | ||
16 | Deprecated properties: | 18 | Deprecated properties: |
17 | - regulator-compatible: If a regulator chip contains multiple | 19 | - regulator-compatible: If a regulator chip contains multiple |
diff --git a/Documentation/devicetree/bindings/tty/serial/arc-uart.txt b/Documentation/devicetree/bindings/serial/arc-uart.txt index 5cae2eb686f8..5cae2eb686f8 100644 --- a/Documentation/devicetree/bindings/tty/serial/arc-uart.txt +++ b/Documentation/devicetree/bindings/serial/arc-uart.txt | |||
diff --git a/Documentation/devicetree/bindings/tty/serial/atmel-usart.txt b/Documentation/devicetree/bindings/serial/atmel-usart.txt index a49d9a1d4ccf..2191dcb9f1da 100644 --- a/Documentation/devicetree/bindings/tty/serial/atmel-usart.txt +++ b/Documentation/devicetree/bindings/serial/atmel-usart.txt | |||
@@ -10,13 +10,18 @@ Required properties: | |||
10 | Optional properties: | 10 | Optional properties: |
11 | - atmel,use-dma-rx: use of PDC or DMA for receiving data | 11 | - atmel,use-dma-rx: use of PDC or DMA for receiving data |
12 | - atmel,use-dma-tx: use of PDC or DMA for transmitting data | 12 | - atmel,use-dma-tx: use of PDC or DMA for transmitting data |
13 | - add dma bindings for dma transfer: | ||
14 | - dmas: DMA specifier, consisting of a phandle to DMA controller node, | ||
15 | memory peripheral interface and USART DMA channel ID, FIFO configuration. | ||
16 | Refer to dma.txt and atmel-dma.txt for details. | ||
17 | - dma-names: "rx" for RX channel, "tx" for TX channel. | ||
13 | 18 | ||
14 | <chip> compatible description: | 19 | <chip> compatible description: |
15 | - at91rm9200: legacy USART support | 20 | - at91rm9200: legacy USART support |
16 | - at91sam9260: generic USART implementation for SAM9 SoCs | 21 | - at91sam9260: generic USART implementation for SAM9 SoCs |
17 | 22 | ||
18 | Example: | 23 | Example: |
19 | 24 | - use PDC: | |
20 | usart0: serial@fff8c000 { | 25 | usart0: serial@fff8c000 { |
21 | compatible = "atmel,at91sam9260-usart"; | 26 | compatible = "atmel,at91sam9260-usart"; |
22 | reg = <0xfff8c000 0x4000>; | 27 | reg = <0xfff8c000 0x4000>; |
@@ -25,3 +30,14 @@ Example: | |||
25 | atmel,use-dma-tx; | 30 | atmel,use-dma-tx; |
26 | }; | 31 | }; |
27 | 32 | ||
33 | - use DMA: | ||
34 | usart0: serial@f001c000 { | ||
35 | compatible = "atmel,at91sam9260-usart"; | ||
36 | reg = <0xf001c000 0x100>; | ||
37 | interrupts = <12 4 5>; | ||
38 | atmel,use-dma-rx; | ||
39 | atmel,use-dma-tx; | ||
40 | dmas = <&dma0 2 0x3>, | ||
41 | <&dma0 2 0x204>; | ||
42 | dma-names = "tx", "rx"; | ||
43 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/efm32-uart.txt b/Documentation/devicetree/bindings/serial/efm32-uart.txt index 8e080b893b49..8e080b893b49 100644 --- a/Documentation/devicetree/bindings/tty/serial/efm32-uart.txt +++ b/Documentation/devicetree/bindings/serial/efm32-uart.txt | |||
diff --git a/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt b/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt index c58573b5b1a4..35ae1fb3537f 100644 --- a/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt +++ b/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt | |||
@@ -1,35 +1,29 @@ | |||
1 | * Freescale i.MX UART controller | 1 | * Freescale i.MX Universal Asynchronous Receiver/Transmitter (UART) |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be "fsl,imx21-uart" | 4 | - compatible : Should be "fsl,<soc>-uart" |
5 | - reg : Address and length of the register set for the device | 5 | - reg : Address and length of the register set for the device |
6 | - interrupts : Should contain UART interrupt number | 6 | - interrupts : Should contain uart interrupt |
7 | 7 | ||
8 | Optional properties: | 8 | Optional properties: |
9 | - fsl,uart-has-rtscts: indicate that RTS/CTS signals are used | 9 | - fsl,uart-has-rtscts : Indicate the uart has rts and cts |
10 | - fsl,irda-mode : Indicate the uart supports irda mode | ||
11 | - fsl,dte-mode : Indicate the uart works in DTE mode. The uart works | ||
12 | is DCE mode by default. | ||
10 | 13 | ||
11 | Note: Each uart controller should have an alias correctly numbered | 14 | Note: Each uart controller should have an alias correctly numbered |
12 | in "aliases" node. | 15 | in "aliases" node. |
13 | 16 | ||
14 | Example: | 17 | Example: |
15 | 18 | ||
16 | - From imx51.dtsi: | ||
17 | aliases { | 19 | aliases { |
18 | serial0 = &uart1; | 20 | serial0 = &uart1; |
19 | serial1 = &uart2; | ||
20 | serial2 = &uart3; | ||
21 | }; | 21 | }; |
22 | 22 | ||
23 | uart1: serial@73fbc000 { | 23 | uart1: serial@73fbc000 { |
24 | compatible = "fsl,imx51-uart", "fsl,imx21-uart"; | 24 | compatible = "fsl,imx51-uart", "fsl,imx21-uart"; |
25 | reg = <0x73fbc000 0x4000>; | 25 | reg = <0x73fbc000 0x4000>; |
26 | interrupts = <31>; | 26 | interrupts = <31>; |
27 | status = "disabled"; | ||
28 | } | ||
29 | |||
30 | - From imx51-babbage.dts: | ||
31 | uart1: serial@73fbc000 { | ||
32 | fsl,uart-has-rtscts; | 27 | fsl,uart-has-rtscts; |
33 | status = "okay"; | 28 | fsl,dte-mode; |
34 | }; | 29 | }; |
35 | |||
diff --git a/Documentation/devicetree/bindings/tty/serial/fsl-lpuart.txt b/Documentation/devicetree/bindings/serial/fsl-lpuart.txt index 6fd1dd1638dd..6fd1dd1638dd 100644 --- a/Documentation/devicetree/bindings/tty/serial/fsl-lpuart.txt +++ b/Documentation/devicetree/bindings/serial/fsl-lpuart.txt | |||
diff --git a/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt b/Documentation/devicetree/bindings/serial/fsl-mxs-auart.txt index 2c00ec64628e..59a40f18d551 100644 --- a/Documentation/devicetree/bindings/tty/serial/fsl-mxs-auart.txt +++ b/Documentation/devicetree/bindings/serial/fsl-mxs-auart.txt | |||
@@ -10,6 +10,10 @@ Required properties: | |||
10 | Refer to dma.txt and fsl-mxs-dma.txt for details. | 10 | Refer to dma.txt and fsl-mxs-dma.txt for details. |
11 | - dma-names: "rx" for RX channel, "tx" for TX channel. | 11 | - dma-names: "rx" for RX channel, "tx" for TX channel. |
12 | 12 | ||
13 | Optional properties: | ||
14 | - fsl,uart-has-rtscts : Indicate the UART has RTS and CTS lines, | ||
15 | it also means you enable the DMA support for this UART. | ||
16 | |||
13 | Example: | 17 | Example: |
14 | auart0: serial@8006a000 { | 18 | auart0: serial@8006a000 { |
15 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 19 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; |
diff --git a/Documentation/devicetree/bindings/serial/mrvl,pxa-ssp.txt b/Documentation/devicetree/bindings/serial/mrvl,pxa-ssp.txt new file mode 100644 index 000000000000..669b8140dd79 --- /dev/null +++ b/Documentation/devicetree/bindings/serial/mrvl,pxa-ssp.txt | |||
@@ -0,0 +1,65 @@ | |||
1 | Device tree bindings for Marvell PXA SSP ports | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: Must be one of | ||
6 | mrvl,pxa25x-ssp | ||
7 | mvrl,pxa25x-nssp | ||
8 | mrvl,pxa27x-ssp | ||
9 | mrvl,pxa3xx-ssp | ||
10 | mvrl,pxa168-ssp | ||
11 | mrvl,pxa910-ssp | ||
12 | mrvl,ce4100-ssp | ||
13 | mrvl,lpss-ssp | ||
14 | |||
15 | - reg: The memory base | ||
16 | - dmas: Two dma phandles, one for rx, one for tx | ||
17 | - dma-names: Must be "rx", "tx" | ||
18 | |||
19 | |||
20 | Example for PXA3xx: | ||
21 | |||
22 | ssp0: ssp@41000000 { | ||
23 | compatible = "mrvl,pxa3xx-ssp"; | ||
24 | reg = <0x41000000 0x40>; | ||
25 | ssp-id = <1>; | ||
26 | interrupts = <24>; | ||
27 | clock-names = "pxa27x-ssp.0"; | ||
28 | dmas = <&dma 13 | ||
29 | &dma 14>; | ||
30 | dma-names = "rx", "tx"; | ||
31 | }; | ||
32 | |||
33 | ssp1: ssp@41700000 { | ||
34 | compatible = "mrvl,pxa3xx-ssp"; | ||
35 | reg = <0x41700000 0x40>; | ||
36 | ssp-id = <2>; | ||
37 | interrupts = <16>; | ||
38 | clock-names = "pxa27x-ssp.1"; | ||
39 | dmas = <&dma 15 | ||
40 | &dma 16>; | ||
41 | dma-names = "rx", "tx"; | ||
42 | }; | ||
43 | |||
44 | ssp2: ssp@41900000 { | ||
45 | compatibl3 = "mrvl,pxa3xx-ssp"; | ||
46 | reg = <0x41900000 0x40>; | ||
47 | ssp-id = <3>; | ||
48 | interrupts = <0>; | ||
49 | clock-names = "pxa27x-ssp.2"; | ||
50 | dmas = <&dma 66 | ||
51 | &dma 67>; | ||
52 | dma-names = "rx", "tx"; | ||
53 | }; | ||
54 | |||
55 | ssp3: ssp@41a00000 { | ||
56 | compatible = "mrvl,pxa3xx-ssp"; | ||
57 | reg = <0x41a00000 0x40>; | ||
58 | ssp-id = <4>; | ||
59 | interrupts = <13>; | ||
60 | clock-names = "pxa27x-ssp.3"; | ||
61 | dmas = <&dma 2 | ||
62 | &dma 3>; | ||
63 | dma-names = "rx", "tx"; | ||
64 | }; | ||
65 | |||
diff --git a/Documentation/devicetree/bindings/tty/serial/nxp-lpc32xx-hsuart.txt b/Documentation/devicetree/bindings/serial/nxp-lpc32xx-hsuart.txt index 0d439dfc1aa5..0d439dfc1aa5 100644 --- a/Documentation/devicetree/bindings/tty/serial/nxp-lpc32xx-hsuart.txt +++ b/Documentation/devicetree/bindings/serial/nxp-lpc32xx-hsuart.txt | |||
diff --git a/Documentation/devicetree/bindings/tty/serial/of-serial.txt b/Documentation/devicetree/bindings/serial/of-serial.txt index 1928a3e83cd0..1928a3e83cd0 100644 --- a/Documentation/devicetree/bindings/tty/serial/of-serial.txt +++ b/Documentation/devicetree/bindings/serial/of-serial.txt | |||
diff --git a/Documentation/devicetree/bindings/serial/qcom,msm-uart.txt b/Documentation/devicetree/bindings/serial/qcom,msm-uart.txt new file mode 100644 index 000000000000..ce8c90161959 --- /dev/null +++ b/Documentation/devicetree/bindings/serial/qcom,msm-uart.txt | |||
@@ -0,0 +1,25 @@ | |||
1 | * MSM Serial UART | ||
2 | |||
3 | The MSM serial UART hardware is designed for low-speed use cases where a | ||
4 | dma-engine isn't needed. From a software perspective it's mostly compatible | ||
5 | with the MSM serial UARTDM except that it only supports reading and writing one | ||
6 | character at a time. | ||
7 | |||
8 | Required properties: | ||
9 | - compatible: Should contain "qcom,msm-uart" | ||
10 | - reg: Should contain UART register location and length. | ||
11 | - interrupts: Should contain UART interrupt. | ||
12 | - clocks: Should contain the core clock. | ||
13 | - clock-names: Should be "core". | ||
14 | |||
15 | Example: | ||
16 | |||
17 | A uart device at 0xa9c00000 with interrupt 11. | ||
18 | |||
19 | serial@a9c00000 { | ||
20 | compatible = "qcom,msm-uart"; | ||
21 | reg = <0xa9c00000 0x1000>; | ||
22 | interrupts = <11>; | ||
23 | clocks = <&uart_cxc>; | ||
24 | clock-names = "core"; | ||
25 | }; | ||
diff --git a/Documentation/devicetree/bindings/serial/qcom,msm-uartdm.txt b/Documentation/devicetree/bindings/serial/qcom,msm-uartdm.txt new file mode 100644 index 000000000000..ffa5b784c66e --- /dev/null +++ b/Documentation/devicetree/bindings/serial/qcom,msm-uartdm.txt | |||
@@ -0,0 +1,53 @@ | |||
1 | * MSM Serial UARTDM | ||
2 | |||
3 | The MSM serial UARTDM hardware is designed for high-speed use cases where the | ||
4 | transmit and/or receive channels can be offloaded to a dma-engine. From a | ||
5 | software perspective it's mostly compatible with the MSM serial UART except | ||
6 | that it supports reading and writing multiple characters at a time. | ||
7 | |||
8 | Required properties: | ||
9 | - compatible: Should contain at least "qcom,msm-uartdm". | ||
10 | A more specific property should be specified as follows depending | ||
11 | on the version: | ||
12 | "qcom,msm-uartdm-v1.1" | ||
13 | "qcom,msm-uartdm-v1.2" | ||
14 | "qcom,msm-uartdm-v1.3" | ||
15 | "qcom,msm-uartdm-v1.4" | ||
16 | - reg: Should contain UART register locations and lengths. The first | ||
17 | register shall specify the main control registers. An optional second | ||
18 | register location shall specify the GSBI control region. | ||
19 | "qcom,msm-uartdm-v1.3" is the only compatible value that might | ||
20 | need the GSBI control region. | ||
21 | - interrupts: Should contain UART interrupt. | ||
22 | - clocks: Should contain the core clock and the AHB clock. | ||
23 | - clock-names: Should be "core" for the core clock and "iface" for the | ||
24 | AHB clock. | ||
25 | |||
26 | Optional properties: | ||
27 | - dmas: Should contain dma specifiers for transmit and receive channels | ||
28 | - dma-names: Should contain "tx" for transmit and "rx" for receive channels | ||
29 | |||
30 | Examples: | ||
31 | |||
32 | A uartdm v1.4 device with dma capabilities. | ||
33 | |||
34 | serial@f991e000 { | ||
35 | compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; | ||
36 | reg = <0xf991e000 0x1000>; | ||
37 | interrupts = <0 108 0x0>; | ||
38 | clocks = <&blsp1_uart2_apps_cxc>, <&blsp1_ahb_cxc>; | ||
39 | clock-names = "core", "iface"; | ||
40 | dmas = <&dma0 0>, <&dma0 1>; | ||
41 | dma-names = "tx", "rx"; | ||
42 | }; | ||
43 | |||
44 | A uartdm v1.3 device without dma capabilities and part of a GSBI complex. | ||
45 | |||
46 | serial@19c40000 { | ||
47 | compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; | ||
48 | reg = <0x19c40000 0x1000>, | ||
49 | <0x19c00000 0x1000>; | ||
50 | interrupts = <0 195 0x0>; | ||
51 | clocks = <&gsbi5_uart_cxc>, <&gsbi5_ahb_cxc>; | ||
52 | clock-names = "core", "iface"; | ||
53 | }; | ||
diff --git a/Documentation/devicetree/bindings/serial/rs485.txt b/Documentation/devicetree/bindings/serial/rs485.txt index 1e753c69fc83..32b1fa1f2a5b 100644 --- a/Documentation/devicetree/bindings/serial/rs485.txt +++ b/Documentation/devicetree/bindings/serial/rs485.txt | |||
@@ -7,7 +7,7 @@ UART node. | |||
7 | 7 | ||
8 | Required properties: | 8 | Required properties: |
9 | - rs485-rts-delay: prop-encoded-array <a b> where: | 9 | - rs485-rts-delay: prop-encoded-array <a b> where: |
10 | * a is the delay beteween rts signal and beginning of data sent in milliseconds. | 10 | * a is the delay between rts signal and beginning of data sent in milliseconds. |
11 | it corresponds to the delay before sending data. | 11 | it corresponds to the delay before sending data. |
12 | * b is the delay between end of data sent and rts signal in milliseconds | 12 | * b is the delay between end of data sent and rts signal in milliseconds |
13 | it corresponds to the delay after sending data and actual release of the line. | 13 | it corresponds to the delay after sending data and actual release of the line. |
diff --git a/Documentation/devicetree/bindings/serial/sirf-uart.txt b/Documentation/devicetree/bindings/serial/sirf-uart.txt new file mode 100644 index 000000000000..a2dfc6522a91 --- /dev/null +++ b/Documentation/devicetree/bindings/serial/sirf-uart.txt | |||
@@ -0,0 +1,33 @@ | |||
1 | * CSR SiRFprimaII/atlasVI Universal Synchronous Asynchronous Receiver/Transmitter * | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should be "sirf,prima2-uart" or "sirf, prima2-usp-uart" | ||
5 | - reg : Offset and length of the register set for the device | ||
6 | - interrupts : Should contain uart interrupt | ||
7 | - fifosize : Should define hardware rx/tx fifo size | ||
8 | - clocks : Should contain uart clock number | ||
9 | |||
10 | Optional properties: | ||
11 | - sirf,uart-has-rtscts: we have hardware flow controller pins in hardware | ||
12 | - rts-gpios: RTS pin for USP-based UART if sirf,uart-has-rtscts is true | ||
13 | - cts-gpios: CTS pin for USP-based UART if sirf,uart-has-rtscts is true | ||
14 | |||
15 | Example: | ||
16 | |||
17 | uart0: uart@b0050000 { | ||
18 | cell-index = <0>; | ||
19 | compatible = "sirf,prima2-uart"; | ||
20 | reg = <0xb0050000 0x1000>; | ||
21 | interrupts = <17>; | ||
22 | fifosize = <128>; | ||
23 | clocks = <&clks 13>; | ||
24 | }; | ||
25 | |||
26 | On the board-specific dts, we can put rts-gpios and cts-gpios like | ||
27 | |||
28 | usp@b0090000 { | ||
29 | compatible = "sirf,prima2-usp-uart"; | ||
30 | sirf,uart-has-rtscts; | ||
31 | rts-gpios = <&gpio 15 0>; | ||
32 | cts-gpios = <&gpio 46 0>; | ||
33 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/snps-dw-apb-uart.txt b/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt index f13f1c5be91c..f13f1c5be91c 100644 --- a/Documentation/devicetree/bindings/tty/serial/snps-dw-apb-uart.txt +++ b/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt | |||
diff --git a/Documentation/devicetree/bindings/serial/st-asc.txt b/Documentation/devicetree/bindings/serial/st-asc.txt new file mode 100644 index 000000000000..75d877f5968f --- /dev/null +++ b/Documentation/devicetree/bindings/serial/st-asc.txt | |||
@@ -0,0 +1,18 @@ | |||
1 | *st-asc(Serial Port) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should be "st,asc". | ||
5 | - reg, reg-names, interrupts, interrupt-names : Standard way to define device | ||
6 | resources with names. look in | ||
7 | Documentation/devicetree/bindings/resource-names.txt | ||
8 | |||
9 | Optional properties: | ||
10 | - st,hw-flow-ctrl bool flag to enable hardware flow control. | ||
11 | - st,force-m1 bool flat to force asc to be in Mode-1 recommeded | ||
12 | for high bit rates (above 19.2K) | ||
13 | Example: | ||
14 | serial@fe440000{ | ||
15 | compatible = "st,asc"; | ||
16 | reg = <0xfe440000 0x2c>; | ||
17 | interrupts = <0 209 0>; | ||
18 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/via,vt8500-uart.txt b/Documentation/devicetree/bindings/serial/via,vt8500-uart.txt index 5feef1ef167d..5feef1ef167d 100644 --- a/Documentation/devicetree/bindings/tty/serial/via,vt8500-uart.txt +++ b/Documentation/devicetree/bindings/serial/via,vt8500-uart.txt | |||
diff --git a/Documentation/devicetree/bindings/sound/ak4554.c b/Documentation/devicetree/bindings/sound/ak4554.c new file mode 100644 index 000000000000..934fa02754b3 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/ak4554.c | |||
@@ -0,0 +1,11 @@ | |||
1 | AK4554 ADC/DAC | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : "asahi-kasei,ak4554" | ||
6 | |||
7 | Example: | ||
8 | |||
9 | ak4554-adc-dac { | ||
10 | compatible = "asahi-kasei,ak4554"; | ||
11 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/alc5632.txt b/Documentation/devicetree/bindings/sound/alc5632.txt index 8608f747dcfe..ffd886d110bd 100644 --- a/Documentation/devicetree/bindings/sound/alc5632.txt +++ b/Documentation/devicetree/bindings/sound/alc5632.txt | |||
@@ -13,6 +13,25 @@ Required properties: | |||
13 | - #gpio-cells : Should be two. The first cell is the pin number and the | 13 | - #gpio-cells : Should be two. The first cell is the pin number and the |
14 | second cell is used to specify optional parameters (currently unused). | 14 | second cell is used to specify optional parameters (currently unused). |
15 | 15 | ||
16 | Pins on the device (for linking into audio routes): | ||
17 | |||
18 | * SPK_OUTP | ||
19 | * SPK_OUTN | ||
20 | * HP_OUT_L | ||
21 | * HP_OUT_R | ||
22 | * AUX_OUT_P | ||
23 | * AUX_OUT_N | ||
24 | * LINE_IN_L | ||
25 | * LINE_IN_R | ||
26 | * PHONE_P | ||
27 | * PHONE_N | ||
28 | * MIC1_P | ||
29 | * MIC1_N | ||
30 | * MIC2_P | ||
31 | * MIC2_N | ||
32 | * MICBIAS1 | ||
33 | * DMICDAT | ||
34 | |||
16 | Example: | 35 | Example: |
17 | 36 | ||
18 | alc5632: alc5632@1e { | 37 | alc5632: alc5632@1e { |
diff --git a/Documentation/devicetree/bindings/sound/atmel-sam9x5-wm8731-audio.txt b/Documentation/devicetree/bindings/sound/atmel-sam9x5-wm8731-audio.txt new file mode 100644 index 000000000000..0720857089a7 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/atmel-sam9x5-wm8731-audio.txt | |||
@@ -0,0 +1,35 @@ | |||
1 | * Atmel at91sam9x5ek wm8731 audio complex | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "atmel,sam9x5-wm8731-audio" | ||
5 | - atmel,model: The user-visible name of this sound complex. | ||
6 | - atmel,ssc-controller: The phandle of the SSC controller | ||
7 | - atmel,audio-codec: The phandle of the WM8731 audio codec | ||
8 | - atmel,audio-routing: A list of the connections between audio components. | ||
9 | Each entry is a pair of strings, the first being the connection's sink, | ||
10 | the second being the connection's source. | ||
11 | |||
12 | Available audio endpoints for the audio-routing table: | ||
13 | |||
14 | Board connectors: | ||
15 | * Headphone Jack | ||
16 | * Line In Jack | ||
17 | |||
18 | wm8731 pins: | ||
19 | cf Documentation/devicetree/bindings/sound/wm8731.txt | ||
20 | |||
21 | Example: | ||
22 | sound { | ||
23 | compatible = "atmel,sam9x5-wm8731-audio"; | ||
24 | |||
25 | atmel,model = "wm8731 @ AT91SAM9X5EK"; | ||
26 | |||
27 | atmel,audio-routing = | ||
28 | "Headphone Jack", "RHPOUT", | ||
29 | "Headphone Jack", "LHPOUT", | ||
30 | "LLINEIN", "Line In Jack", | ||
31 | "RLINEIN", "Line In Jack"; | ||
32 | |||
33 | atmel,ssc-controller = <&ssc0>; | ||
34 | atmel,audio-codec = <&wm8731>; | ||
35 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/atmel-wm8904.txt b/Documentation/devicetree/bindings/sound/atmel-wm8904.txt new file mode 100644 index 000000000000..8bbe50c884b6 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/atmel-wm8904.txt | |||
@@ -0,0 +1,55 @@ | |||
1 | Atmel ASoC driver with wm8904 audio codec complex | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "atmel,asoc-wm8904" | ||
5 | - atmel,model: The user-visible name of this sound complex. | ||
6 | - atmel,audio-routing: A list of the connections between audio components. | ||
7 | Each entry is a pair of strings, the first being the connection's sink, | ||
8 | the second being the connection's source. Valid names for sources and | ||
9 | sinks are the WM8904's pins, and the jacks on the board: | ||
10 | |||
11 | WM8904 pins: | ||
12 | |||
13 | * IN1L | ||
14 | * IN1R | ||
15 | * IN2L | ||
16 | * IN2R | ||
17 | * IN3L | ||
18 | * IN3R | ||
19 | * HPOUTL | ||
20 | * HPOUTR | ||
21 | * LINEOUTL | ||
22 | * LINEOUTR | ||
23 | * MICBIAS | ||
24 | |||
25 | Board connectors: | ||
26 | |||
27 | * Headphone Jack | ||
28 | * Line In Jack | ||
29 | * Mic | ||
30 | |||
31 | - atmel,ssc-controller: The phandle of the SSC controller | ||
32 | - atmel,audio-codec: The phandle of the WM8904 audio codec | ||
33 | |||
34 | Optional properties: | ||
35 | - pinctrl-names, pinctrl-0: Please refer to pinctrl-bindings.txt | ||
36 | |||
37 | Example: | ||
38 | sound { | ||
39 | compatible = "atmel,asoc-wm8904"; | ||
40 | pinctrl-names = "default"; | ||
41 | pinctrl-0 = <&pinctrl_pck0_as_mck>; | ||
42 | |||
43 | atmel,model = "wm8904 @ AT91SAM9N12EK"; | ||
44 | |||
45 | atmel,audio-routing = | ||
46 | "Headphone Jack", "HPOUTL", | ||
47 | "Headphone Jack", "HPOUTR", | ||
48 | "IN2L", "Line In Jack", | ||
49 | "IN2R", "Line In Jack", | ||
50 | "Mic", "MICBIAS", | ||
51 | "IN1L", "Mic"; | ||
52 | |||
53 | atmel,ssc-controller = <&ssc0>; | ||
54 | atmel,audio-codec = <&wm8904>; | ||
55 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/fsl,spdif.txt b/Documentation/devicetree/bindings/sound/fsl,spdif.txt new file mode 100644 index 000000000000..f2ae335670f5 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/fsl,spdif.txt | |||
@@ -0,0 +1,54 @@ | |||
1 | Freescale Sony/Philips Digital Interface Format (S/PDIF) Controller | ||
2 | |||
3 | The Freescale S/PDIF audio block is a stereo transceiver that allows the | ||
4 | processor to receive and transmit digital audio via an coaxial cable or | ||
5 | a fibre cable. | ||
6 | |||
7 | Required properties: | ||
8 | |||
9 | - compatible : Compatible list, must contain "fsl,imx35-spdif". | ||
10 | |||
11 | - reg : Offset and length of the register set for the device. | ||
12 | |||
13 | - interrupts : Contains the spdif interrupt. | ||
14 | |||
15 | - dmas : Generic dma devicetree binding as described in | ||
16 | Documentation/devicetree/bindings/dma/dma.txt. | ||
17 | |||
18 | - dma-names : Two dmas have to be defined, "tx" and "rx". | ||
19 | |||
20 | - clocks : Contains an entry for each entry in clock-names. | ||
21 | |||
22 | - clock-names : Includes the following entries: | ||
23 | "core" The core clock of spdif controller | ||
24 | "rxtx<0-7>" Clock source list for tx and rx clock. | ||
25 | This clock list should be identical to | ||
26 | the source list connecting to the spdif | ||
27 | clock mux in "SPDIF Transceiver Clock | ||
28 | Diagram" of SoC reference manual. It | ||
29 | can also be referred to TxClk_Source | ||
30 | bit of register SPDIF_STC. | ||
31 | |||
32 | Example: | ||
33 | |||
34 | spdif: spdif@02004000 { | ||
35 | compatible = "fsl,imx35-spdif"; | ||
36 | reg = <0x02004000 0x4000>; | ||
37 | interrupts = <0 52 0x04>; | ||
38 | dmas = <&sdma 14 18 0>, | ||
39 | <&sdma 15 18 0>; | ||
40 | dma-names = "rx", "tx"; | ||
41 | |||
42 | clocks = <&clks 197>, <&clks 3>, | ||
43 | <&clks 197>, <&clks 107>, | ||
44 | <&clks 0>, <&clks 118>, | ||
45 | <&clks 62>, <&clks 139>, | ||
46 | <&clks 0>; | ||
47 | clock-names = "core", "rxtx0", | ||
48 | "rxtx1", "rxtx2", | ||
49 | "rxtx3", "rxtx4", | ||
50 | "rxtx5", "rxtx6", | ||
51 | "rxtx7"; | ||
52 | |||
53 | status = "okay"; | ||
54 | }; | ||
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/ssi.txt b/Documentation/devicetree/bindings/sound/fsl,ssi.txt index 5ff76c9c57d2..4303b6ab6208 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/ssi.txt +++ b/Documentation/devicetree/bindings/sound/fsl,ssi.txt | |||
@@ -43,10 +43,22 @@ Required properties: | |||
43 | together. This would still allow different sample sizes, | 43 | together. This would still allow different sample sizes, |
44 | but not different sample rates. | 44 | but not different sample rates. |
45 | 45 | ||
46 | Required are also ac97 link bindings if ac97 is used. See | ||
47 | Documentation/devicetree/bindings/sound/soc-ac97link.txt for the necessary | ||
48 | bindings. | ||
49 | |||
46 | Optional properties: | 50 | Optional properties: |
47 | - codec-handle: Phandle to a 'codec' node that defines an audio | 51 | - codec-handle: Phandle to a 'codec' node that defines an audio |
48 | codec connected to this SSI. This node is typically | 52 | codec connected to this SSI. This node is typically |
49 | a child of an I2C or other control node. | 53 | a child of an I2C or other control node. |
54 | - fsl,fiq-stream-filter: Bool property. Disabled DMA and use FIQ instead to | ||
55 | filter the codec stream. This is necessary for some boards | ||
56 | where an incompatible codec is connected to this SSI, e.g. | ||
57 | on pca100 and pcm043. | ||
58 | - dmas: Generic dma devicetree binding as described in | ||
59 | Documentation/devicetree/bindings/dma/dma.txt. | ||
60 | - dma-names: Two dmas have to be defined, "tx" and "rx", if fsl,imx-fiq | ||
61 | is not defined. | ||
50 | 62 | ||
51 | Child 'codec' node required properties: | 63 | Child 'codec' node required properties: |
52 | - compatible: Compatible list, contains the name of the codec | 64 | - compatible: Compatible list, contains the name of the codec |
diff --git a/Documentation/devicetree/bindings/sound/imx-audio-spdif.txt b/Documentation/devicetree/bindings/sound/imx-audio-spdif.txt new file mode 100644 index 000000000000..7d13479f9c3c --- /dev/null +++ b/Documentation/devicetree/bindings/sound/imx-audio-spdif.txt | |||
@@ -0,0 +1,34 @@ | |||
1 | Freescale i.MX audio complex with S/PDIF transceiver | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : "fsl,imx-audio-spdif" | ||
6 | |||
7 | - model : The user-visible name of this sound complex | ||
8 | |||
9 | - spdif-controller : The phandle of the i.MX S/PDIF controller | ||
10 | |||
11 | |||
12 | Optional properties: | ||
13 | |||
14 | - spdif-out : This is a boolean property. If present, the transmitting | ||
15 | function of S/PDIF will be enabled, indicating there's a physical | ||
16 | S/PDIF out connector/jack on the board or it's connecting to some | ||
17 | other IP block, such as an HDMI encoder/display-controller. | ||
18 | |||
19 | - spdif-in : This is a boolean property. If present, the receiving | ||
20 | function of S/PDIF will be enabled, indicating there's a physical | ||
21 | S/PDIF in connector/jack on the board. | ||
22 | |||
23 | * Note: At least one of these two properties should be set in the DT binding. | ||
24 | |||
25 | |||
26 | Example: | ||
27 | |||
28 | sound-spdif { | ||
29 | compatible = "fsl,imx-audio-spdif"; | ||
30 | model = "imx-spdif"; | ||
31 | spdif-controller = <&spdif>; | ||
32 | spdif-out; | ||
33 | spdif-in; | ||
34 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/imx-audmux.txt b/Documentation/devicetree/bindings/sound/imx-audmux.txt index 215aa9817213..f88a00e54c63 100644 --- a/Documentation/devicetree/bindings/sound/imx-audmux.txt +++ b/Documentation/devicetree/bindings/sound/imx-audmux.txt | |||
@@ -5,6 +5,15 @@ Required properties: | |||
5 | or "fsl,imx31-audmux" for the version firstly used on i.MX31. | 5 | or "fsl,imx31-audmux" for the version firstly used on i.MX31. |
6 | - reg : Should contain AUDMUX registers location and length | 6 | - reg : Should contain AUDMUX registers location and length |
7 | 7 | ||
8 | An initial configuration can be setup using child nodes. | ||
9 | |||
10 | Required properties of optional child nodes: | ||
11 | - fsl,audmux-port : Integer of the audmux port that is configured by this | ||
12 | child node. | ||
13 | - fsl,port-config : List of configuration options for the specific port. For | ||
14 | imx31-audmux and above, it is a list of tuples <ptcr pdcr>. For | ||
15 | imx21-audmux it is a list of pcr values. | ||
16 | |||
8 | Example: | 17 | Example: |
9 | 18 | ||
10 | audmux@021d8000 { | 19 | audmux@021d8000 { |
diff --git a/Documentation/devicetree/bindings/sound/mrvl,pxa-ssp.txt b/Documentation/devicetree/bindings/sound/mrvl,pxa-ssp.txt new file mode 100644 index 000000000000..74c9ba6c2823 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/mrvl,pxa-ssp.txt | |||
@@ -0,0 +1,28 @@ | |||
1 | Marvell PXA SSP CPU DAI bindings | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | compatible Must be "mrvl,pxa-ssp-dai" | ||
6 | port A phandle reference to a PXA ssp upstream device | ||
7 | |||
8 | Example: | ||
9 | |||
10 | /* upstream device */ | ||
11 | |||
12 | ssp0: ssp@41000000 { | ||
13 | compatible = "mrvl,pxa3xx-ssp"; | ||
14 | reg = <0x41000000 0x40>; | ||
15 | interrupts = <24>; | ||
16 | clock-names = "pxa27x-ssp.0"; | ||
17 | dmas = <&dma 13 | ||
18 | &dma 14>; | ||
19 | dma-names = "rx", "tx"; | ||
20 | }; | ||
21 | |||
22 | /* DAI as user */ | ||
23 | |||
24 | ssp_dai0: ssp_dai@0 { | ||
25 | compatible = "mrvl,pxa-ssp-dai"; | ||
26 | port = <&ssp0>; | ||
27 | }; | ||
28 | |||
diff --git a/Documentation/devicetree/bindings/sound/mrvl,pxa2xx-pcm.txt b/Documentation/devicetree/bindings/sound/mrvl,pxa2xx-pcm.txt new file mode 100644 index 000000000000..551fbb8348c2 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/mrvl,pxa2xx-pcm.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | DT bindings for ARM PXA2xx PCM platform driver | ||
2 | |||
3 | This is just a dummy driver that registers the PXA ASoC platform driver. | ||
4 | It does not have any resources assigned. | ||
5 | |||
6 | Required properties: | ||
7 | |||
8 | - compatible 'mrvl,pxa-pcm-audio' | ||
9 | |||
10 | Example: | ||
11 | |||
12 | pxa_pcm_audio: snd_soc_pxa_audio { | ||
13 | compatible = "mrvl,pxa-pcm-audio"; | ||
14 | }; | ||
15 | |||
diff --git a/Documentation/devicetree/bindings/sound/mvebu-audio.txt b/Documentation/devicetree/bindings/sound/mvebu-audio.txt new file mode 100644 index 000000000000..7e5fd37c1b3f --- /dev/null +++ b/Documentation/devicetree/bindings/sound/mvebu-audio.txt | |||
@@ -0,0 +1,29 @@ | |||
1 | * mvebu (Kirkwood, Dove, Armada 370) audio controller | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: "marvell,mvebu-audio" | ||
6 | |||
7 | - reg: physical base address of the controller and length of memory mapped | ||
8 | region. | ||
9 | |||
10 | - interrupts: list of two irq numbers. | ||
11 | The first irq is used for data flow and the second one is used for errors. | ||
12 | |||
13 | - clocks: one or two phandles. | ||
14 | The first one is mandatory and defines the internal clock. | ||
15 | The second one is optional and defines an external clock. | ||
16 | |||
17 | - clock-names: names associated to the clocks: | ||
18 | "internal" for the internal clock | ||
19 | "extclk" for the external clock | ||
20 | |||
21 | Example: | ||
22 | |||
23 | i2s1: audio-controller@b4000 { | ||
24 | compatible = "marvell,mvebu-audio"; | ||
25 | reg = <0xb4000 0x2210>; | ||
26 | interrupts = <21>, <22>; | ||
27 | clocks = <&gate_clk 13>; | ||
28 | clock-names = "internal"; | ||
29 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt index 05ffecb57103..8b8903ef0800 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt | |||
@@ -11,28 +11,8 @@ Required properties: | |||
11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
14 | sinks are the ALC5632's pins: | 14 | sinks are the ALC5632's pins as documented in the binding for the device |
15 | 15 | and: | |
16 | ALC5632 pins: | ||
17 | |||
18 | * SPK_OUTP | ||
19 | * SPK_OUTN | ||
20 | * HP_OUT_L | ||
21 | * HP_OUT_R | ||
22 | * AUX_OUT_P | ||
23 | * AUX_OUT_N | ||
24 | * LINE_IN_L | ||
25 | * LINE_IN_R | ||
26 | * PHONE_P | ||
27 | * PHONE_N | ||
28 | * MIC1_P | ||
29 | * MIC1_N | ||
30 | * MIC2_P | ||
31 | * MIC2_N | ||
32 | * MICBIAS1 | ||
33 | * DMICDAT | ||
34 | |||
35 | Board connectors: | ||
36 | 16 | ||
37 | * Headset Stereophone | 17 | * Headset Stereophone |
38 | * Int Spk | 18 | * Int Spk |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt index d130818700b2..dc6224994d69 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt | |||
@@ -11,32 +11,12 @@ Required properties: | |||
11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
14 | sinks are the RT5640's pins, and the jacks on the board: | 14 | sinks are the RT5640's pins (as documented in its binding), and the jacks |
15 | 15 | on the board: | |
16 | RT5640 pins: | ||
17 | |||
18 | * DMIC1 | ||
19 | * DMIC2 | ||
20 | * MICBIAS1 | ||
21 | * IN1P | ||
22 | * IN1R | ||
23 | * IN2P | ||
24 | * IN2R | ||
25 | * HPOL | ||
26 | * HPOR | ||
27 | * LOUTL | ||
28 | * LOUTR | ||
29 | * MONOP | ||
30 | * MONON | ||
31 | * SPOLP | ||
32 | * SPOLN | ||
33 | * SPORP | ||
34 | * SPORN | ||
35 | |||
36 | Board connectors: | ||
37 | 16 | ||
38 | * Headphones | 17 | * Headphones |
39 | * Speakers | 18 | * Speakers |
19 | * Mic Jack | ||
40 | 20 | ||
41 | - nvidia,i2s-controller : The phandle of the Tegra I2S controller that's | 21 | - nvidia,i2s-controller : The phandle of the Tegra I2S controller that's |
42 | connected to the CODEC. | 22 | connected to the CODEC. |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt index d14510613a7f..aab6ce0ad2fc 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt | |||
@@ -11,31 +11,8 @@ Required properties: | |||
11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
14 | sinks are the WM8753's pins, and the jacks on the board: | 14 | sinks are the WM8753's pins as documented in the binding for the WM8753, |
15 | 15 | and the jacks on the board: | |
16 | WM8753 pins: | ||
17 | |||
18 | * LOUT1 | ||
19 | * LOUT2 | ||
20 | * ROUT1 | ||
21 | * ROUT2 | ||
22 | * MONO1 | ||
23 | * MONO2 | ||
24 | * OUT3 | ||
25 | * OUT4 | ||
26 | * LINE1 | ||
27 | * LINE2 | ||
28 | * RXP | ||
29 | * RXN | ||
30 | * ACIN | ||
31 | * ACOP | ||
32 | * MIC1N | ||
33 | * MIC1 | ||
34 | * MIC2N | ||
35 | * MIC2 | ||
36 | * Mic Bias | ||
37 | |||
38 | Board connectors: | ||
39 | 16 | ||
40 | * Headphone Jack | 17 | * Headphone Jack |
41 | * Mic Jack | 18 | * Mic Jack |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt index 3bf722deb722..4b44dfb6ca0d 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt | |||
@@ -11,28 +11,8 @@ Required properties: | |||
11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
14 | sinks are the WM8903's pins, and the jacks on the board: | 14 | sinks are the WM8903's pins (documented in the WM8903 binding document), |
15 | 15 | and the jacks on the board: | |
16 | WM8903 pins: | ||
17 | |||
18 | * IN1L | ||
19 | * IN1R | ||
20 | * IN2L | ||
21 | * IN2R | ||
22 | * IN3L | ||
23 | * IN3R | ||
24 | * DMICDAT | ||
25 | * HPOUTL | ||
26 | * HPOUTR | ||
27 | * LINEOUTL | ||
28 | * LINEOUTR | ||
29 | * LOP | ||
30 | * LON | ||
31 | * ROP | ||
32 | * RON | ||
33 | * MICBIAS | ||
34 | |||
35 | Board connectors: | ||
36 | 16 | ||
37 | * Headphone Jack | 17 | * Headphone Jack |
38 | * Int Spk | 18 | * Int Spk |
diff --git a/Documentation/devicetree/bindings/sound/pcm1792a.txt b/Documentation/devicetree/bindings/sound/pcm1792a.txt new file mode 100644 index 000000000000..970ba1ed576f --- /dev/null +++ b/Documentation/devicetree/bindings/sound/pcm1792a.txt | |||
@@ -0,0 +1,18 @@ | |||
1 | Texas Instruments pcm1792a DT bindings | ||
2 | |||
3 | This driver supports the SPI bus. | ||
4 | |||
5 | Required properties: | ||
6 | |||
7 | - compatible: "ti,pcm1792a" | ||
8 | |||
9 | For required properties on SPI, please consult | ||
10 | Documentation/devicetree/bindings/spi/spi-bus.txt | ||
11 | |||
12 | Examples: | ||
13 | |||
14 | codec_spi: 1792a@0 { | ||
15 | compatible = "ti,pcm1792a"; | ||
16 | spi-max-frequency = <600000>; | ||
17 | }; | ||
18 | |||
diff --git a/Documentation/devicetree/bindings/sound/rt5640.txt b/Documentation/devicetree/bindings/sound/rt5640.txt index 005bcb24d72d..068a1141b06f 100644 --- a/Documentation/devicetree/bindings/sound/rt5640.txt +++ b/Documentation/devicetree/bindings/sound/rt5640.txt | |||
@@ -18,6 +18,26 @@ Optional properties: | |||
18 | 18 | ||
19 | - realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin. | 19 | - realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin. |
20 | 20 | ||
21 | Pins on the device (for linking into audio routes): | ||
22 | |||
23 | * DMIC1 | ||
24 | * DMIC2 | ||
25 | * MICBIAS1 | ||
26 | * IN1P | ||
27 | * IN1R | ||
28 | * IN2P | ||
29 | * IN2R | ||
30 | * HPOL | ||
31 | * HPOR | ||
32 | * LOUTL | ||
33 | * LOUTR | ||
34 | * MONOP | ||
35 | * MONON | ||
36 | * SPOLP | ||
37 | * SPOLN | ||
38 | * SPORP | ||
39 | * SPORN | ||
40 | |||
21 | Example: | 41 | Example: |
22 | 42 | ||
23 | rt5640 { | 43 | rt5640 { |
diff --git a/Documentation/devicetree/bindings/sound/samsung-i2s.txt b/Documentation/devicetree/bindings/sound/samsung-i2s.txt index 025e66b85a43..7386d444ada1 100644 --- a/Documentation/devicetree/bindings/sound/samsung-i2s.txt +++ b/Documentation/devicetree/bindings/sound/samsung-i2s.txt | |||
@@ -2,7 +2,15 @@ | |||
2 | 2 | ||
3 | Required SoC Specific Properties: | 3 | Required SoC Specific Properties: |
4 | 4 | ||
5 | - compatible : "samsung,i2s-v5" | 5 | - compatible : should be one of the following. |
6 | - samsung,s3c6410-i2s: for 8/16/24bit stereo I2S. | ||
7 | - samsung,s5pv210-i2s: for 8/16/24bit multichannel(5.1) I2S with | ||
8 | secondary fifo, s/w reset control and internal mux for root clk src. | ||
9 | - samsung,exynos5420-i2s: for 8/16/24bit multichannel(7.1) I2S with | ||
10 | secondary fifo, s/w reset control, internal mux for root clk src and | ||
11 | TDM support. TDM (Time division multiplexing) is to allow transfer of | ||
12 | multiple channel audio data on single data line. | ||
13 | |||
6 | - reg: physical base address of the controller and length of memory mapped | 14 | - reg: physical base address of the controller and length of memory mapped |
7 | region. | 15 | region. |
8 | - dmas: list of DMA controller phandle and DMA request line ordered pairs. | 16 | - dmas: list of DMA controller phandle and DMA request line ordered pairs. |
@@ -21,13 +29,6 @@ Required SoC Specific Properties: | |||
21 | 29 | ||
22 | Optional SoC Specific Properties: | 30 | Optional SoC Specific Properties: |
23 | 31 | ||
24 | - samsung,supports-6ch: If the I2S Primary sound source has 5.1 Channel | ||
25 | support, this flag is enabled. | ||
26 | - samsung,supports-rstclr: This flag should be set if I2S software reset bit | ||
27 | control is required. When this flag is set I2S software reset bit will be | ||
28 | enabled or disabled based on need. | ||
29 | - samsung,supports-secdai:If I2S block has a secondary FIFO and internal DMA, | ||
30 | then this flag is enabled. | ||
31 | - samsung,idma-addr: Internal DMA register base address of the audio | 32 | - samsung,idma-addr: Internal DMA register base address of the audio |
32 | sub system(used in secondary sound source). | 33 | sub system(used in secondary sound source). |
33 | - pinctrl-0: Should specify pin control groups used for this controller. | 34 | - pinctrl-0: Should specify pin control groups used for this controller. |
@@ -36,7 +37,7 @@ Optional SoC Specific Properties: | |||
36 | Example: | 37 | Example: |
37 | 38 | ||
38 | i2s0: i2s@03830000 { | 39 | i2s0: i2s@03830000 { |
39 | compatible = "samsung,i2s-v5"; | 40 | compatible = "samsung,s5pv210-i2s"; |
40 | reg = <0x03830000 0x100>; | 41 | reg = <0x03830000 0x100>; |
41 | dmas = <&pdma0 10 | 42 | dmas = <&pdma0 10 |
42 | &pdma0 9 | 43 | &pdma0 9 |
@@ -46,9 +47,6 @@ i2s0: i2s@03830000 { | |||
46 | <&clock_audss EXYNOS_I2S_BUS>, | 47 | <&clock_audss EXYNOS_I2S_BUS>, |
47 | <&clock_audss EXYNOS_SCLK_I2S>; | 48 | <&clock_audss EXYNOS_SCLK_I2S>; |
48 | clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; | 49 | clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; |
49 | samsung,supports-6ch; | ||
50 | samsung,supports-rstclr; | ||
51 | samsung,supports-secdai; | ||
52 | samsung,idma-addr = <0x03000000>; | 50 | samsung,idma-addr = <0x03000000>; |
53 | pinctrl-names = "default"; | 51 | pinctrl-names = "default"; |
54 | pinctrl-0 = <&i2s0_bus>; | 52 | pinctrl-0 = <&i2s0_bus>; |
diff --git a/Documentation/devicetree/bindings/sound/soc-ac97link.txt b/Documentation/devicetree/bindings/sound/soc-ac97link.txt new file mode 100644 index 000000000000..80152a87f239 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/soc-ac97link.txt | |||
@@ -0,0 +1,28 @@ | |||
1 | AC97 link bindings | ||
2 | |||
3 | These bindings can be included within any other device node. | ||
4 | |||
5 | Required properties: | ||
6 | - pinctrl-names: Has to contain following states to setup the correct | ||
7 | pinmuxing for the used gpios: | ||
8 | "ac97-running": AC97-link is active | ||
9 | "ac97-reset": AC97-link reset state | ||
10 | "ac97-warm-reset": AC97-link warm reset state | ||
11 | - ac97-gpios: List of gpio phandles with args in the order ac97-sync, | ||
12 | ac97-sdata, ac97-reset | ||
13 | |||
14 | |||
15 | Example: | ||
16 | |||
17 | ssi { | ||
18 | ... | ||
19 | |||
20 | pinctrl-names = "default", "ac97-running", "ac97-reset", "ac97-warm-reset"; | ||
21 | pinctrl-0 = <&ac97link_running>; | ||
22 | pinctrl-1 = <&ac97link_running>; | ||
23 | pinctrl-2 = <&ac97link_reset>; | ||
24 | pinctrl-3 = <&ac97link_warm_reset>; | ||
25 | ac97-gpios = <&gpio3 20 0 &gpio3 22 0 &gpio3 28 0>; | ||
26 | |||
27 | ... | ||
28 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/ti,pcm1681.txt b/Documentation/devicetree/bindings/sound/ti,pcm1681.txt new file mode 100644 index 000000000000..4df17185ab80 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/ti,pcm1681.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | Texas Instruments PCM1681 8-channel PWM Processor | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: Should contain "ti,pcm1681". | ||
6 | - reg: The i2c address. Should contain <0x4c>. | ||
7 | |||
8 | Examples: | ||
9 | |||
10 | i2c_bus { | ||
11 | pcm1681@4c { | ||
12 | compatible = "ti,pcm1681"; | ||
13 | reg = <0x4c>; | ||
14 | }; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt index f47c3f589fd0..705a6b156c6c 100644 --- a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt +++ b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt | |||
@@ -3,7 +3,14 @@ Texas Instruments - tlv320aic3x Codec module | |||
3 | The tlv320aic3x serial control bus communicates through I2C protocols | 3 | The tlv320aic3x serial control bus communicates through I2C protocols |
4 | 4 | ||
5 | Required properties: | 5 | Required properties: |
6 | - compatible - "string" - "ti,tlv320aic3x" | 6 | |
7 | - compatible - "string" - One of: | ||
8 | "ti,tlv320aic3x" - Generic TLV320AIC3x device | ||
9 | "ti,tlv320aic33" - TLV320AIC33 | ||
10 | "ti,tlv320aic3007" - TLV320AIC3007 | ||
11 | "ti,tlv320aic3106" - TLV320AIC3106 | ||
12 | |||
13 | |||
7 | - reg - <int> - I2C slave address | 14 | - reg - <int> - I2C slave address |
8 | 15 | ||
9 | 16 | ||
diff --git a/Documentation/devicetree/bindings/sound/wm8731.txt b/Documentation/devicetree/bindings/sound/wm8731.txt index 15f70048469b..236690e99b87 100644 --- a/Documentation/devicetree/bindings/sound/wm8731.txt +++ b/Documentation/devicetree/bindings/sound/wm8731.txt | |||
@@ -16,3 +16,12 @@ codec: wm8731@1a { | |||
16 | compatible = "wlf,wm8731"; | 16 | compatible = "wlf,wm8731"; |
17 | reg = <0x1a>; | 17 | reg = <0x1a>; |
18 | }; | 18 | }; |
19 | |||
20 | Available audio endpoints for an audio-routing table: | ||
21 | * LOUT: Left Channel Line Output | ||
22 | * ROUT: Right Channel Line Output | ||
23 | * LHPOUT: Left Channel Headphone Output | ||
24 | * RHPOUT: Right Channel Headphone Output | ||
25 | * LLINEIN: Left Channel Line Input | ||
26 | * RLINEIN: Right Channel Line Input | ||
27 | * MICIN: Microphone Input | ||
diff --git a/Documentation/devicetree/bindings/sound/wm8753.txt b/Documentation/devicetree/bindings/sound/wm8753.txt index e65277a0fb60..8eee61282105 100644 --- a/Documentation/devicetree/bindings/sound/wm8753.txt +++ b/Documentation/devicetree/bindings/sound/wm8753.txt | |||
@@ -10,9 +10,31 @@ Required properties: | |||
10 | - reg : the I2C address of the device for I2C, the chip select | 10 | - reg : the I2C address of the device for I2C, the chip select |
11 | number for SPI. | 11 | number for SPI. |
12 | 12 | ||
13 | Pins on the device (for linking into audio routes): | ||
14 | |||
15 | * LOUT1 | ||
16 | * LOUT2 | ||
17 | * ROUT1 | ||
18 | * ROUT2 | ||
19 | * MONO1 | ||
20 | * MONO2 | ||
21 | * OUT3 | ||
22 | * OUT4 | ||
23 | * LINE1 | ||
24 | * LINE2 | ||
25 | * RXP | ||
26 | * RXN | ||
27 | * ACIN | ||
28 | * ACOP | ||
29 | * MIC1N | ||
30 | * MIC1 | ||
31 | * MIC2N | ||
32 | * MIC2 | ||
33 | * Mic Bias | ||
34 | |||
13 | Example: | 35 | Example: |
14 | 36 | ||
15 | codec: wm8737@1a { | 37 | codec: wm8753@1a { |
16 | compatible = "wlf,wm8753"; | 38 | compatible = "wlf,wm8753"; |
17 | reg = <0x1a>; | 39 | reg = <0x1a>; |
18 | }; | 40 | }; |
diff --git a/Documentation/devicetree/bindings/sound/wm8903.txt b/Documentation/devicetree/bindings/sound/wm8903.txt index f102cbc42694..94ec32c194bb 100644 --- a/Documentation/devicetree/bindings/sound/wm8903.txt +++ b/Documentation/devicetree/bindings/sound/wm8903.txt | |||
@@ -28,6 +28,25 @@ Optional properties: | |||
28 | performed. If any entry has the value 0xffffffff, that GPIO's | 28 | performed. If any entry has the value 0xffffffff, that GPIO's |
29 | configuration will not be modified. | 29 | configuration will not be modified. |
30 | 30 | ||
31 | Pins on the device (for linking into audio routes): | ||
32 | |||
33 | * IN1L | ||
34 | * IN1R | ||
35 | * IN2L | ||
36 | * IN2R | ||
37 | * IN3L | ||
38 | * IN3R | ||
39 | * DMICDAT | ||
40 | * HPOUTL | ||
41 | * HPOUTR | ||
42 | * LINEOUTL | ||
43 | * LINEOUTR | ||
44 | * LOP | ||
45 | * LON | ||
46 | * ROP | ||
47 | * RON | ||
48 | * MICBIAS | ||
49 | |||
31 | Example: | 50 | Example: |
32 | 51 | ||
33 | codec: wm8903@1a { | 52 | codec: wm8903@1a { |
diff --git a/Documentation/devicetree/bindings/sound/wm8994.txt b/Documentation/devicetree/bindings/sound/wm8994.txt index f2f3e80934d2..e045e90a0924 100644 --- a/Documentation/devicetree/bindings/sound/wm8994.txt +++ b/Documentation/devicetree/bindings/sound/wm8994.txt | |||
@@ -32,6 +32,10 @@ Optional properties: | |||
32 | The second cell is the flags, encoded as the trigger masks from | 32 | The second cell is the flags, encoded as the trigger masks from |
33 | Documentation/devicetree/bindings/interrupts.txt | 33 | Documentation/devicetree/bindings/interrupts.txt |
34 | 34 | ||
35 | - clocks : A list of up to two phandle and clock specifier pairs | ||
36 | - clock-names : A list of clock names sorted in the same order as clocks. | ||
37 | Valid clock names are "MCLK1" and "MCLK2". | ||
38 | |||
35 | - wlf,gpio-cfg : A list of GPIO configuration register values. If absent, | 39 | - wlf,gpio-cfg : A list of GPIO configuration register values. If absent, |
36 | no configuration of these registers is performed. If any value is | 40 | no configuration of these registers is performed. If any value is |
37 | over 0xffff then the register will be left as default. If present 11 | 41 | over 0xffff then the register will be left as default. If present 11 |
diff --git a/Documentation/devicetree/bindings/spi/efm32-spi.txt b/Documentation/devicetree/bindings/spi/efm32-spi.txt new file mode 100644 index 000000000000..a590ca51be75 --- /dev/null +++ b/Documentation/devicetree/bindings/spi/efm32-spi.txt | |||
@@ -0,0 +1,34 @@ | |||
1 | * Energy Micro EFM32 SPI | ||
2 | |||
3 | Required properties: | ||
4 | - #address-cells: see spi-bus.txt | ||
5 | - #size-cells: see spi-bus.txt | ||
6 | - compatible: should be "efm32,spi" | ||
7 | - reg: Offset and length of the register set for the controller | ||
8 | - interrupts: pair specifying rx and tx irq | ||
9 | - clocks: phandle to the spi clock | ||
10 | - cs-gpios: see spi-bus.txt | ||
11 | - location: Value to write to the ROUTE register's LOCATION bitfield to configure the pinmux for the device, see datasheet for values. | ||
12 | |||
13 | Example: | ||
14 | |||
15 | spi1: spi@0x4000c400 { /* USART1 */ | ||
16 | #address-cells = <1>; | ||
17 | #size-cells = <0>; | ||
18 | compatible = "efm32,spi"; | ||
19 | reg = <0x4000c400 0x400>; | ||
20 | interrupts = <15 16>; | ||
21 | clocks = <&cmu 20>; | ||
22 | cs-gpios = <&gpio 51 1>; // D3 | ||
23 | location = <1>; | ||
24 | status = "ok"; | ||
25 | |||
26 | ks8851@0 { | ||
27 | compatible = "ks8851"; | ||
28 | spi-max-frequency = <6000000>; | ||
29 | reg = <0>; | ||
30 | interrupt-parent = <&boardfpga>; | ||
31 | interrupts = <4>; | ||
32 | status = "ok"; | ||
33 | }; | ||
34 | }; | ||
diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt index 296015e3c632..800dafe5b01b 100644 --- a/Documentation/devicetree/bindings/spi/spi-bus.txt +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt | |||
@@ -55,6 +55,16 @@ contain the following properties. | |||
55 | chip select active high | 55 | chip select active high |
56 | - spi-3wire - (optional) Empty property indicating device requires | 56 | - spi-3wire - (optional) Empty property indicating device requires |
57 | 3-wire mode. | 57 | 3-wire mode. |
58 | - spi-tx-bus-width - (optional) The bus width(number of data wires) that | ||
59 | used for MOSI. Defaults to 1 if not present. | ||
60 | - spi-rx-bus-width - (optional) The bus width(number of data wires) that | ||
61 | used for MISO. Defaults to 1 if not present. | ||
62 | |||
63 | Some SPI controllers and devices support Dual and Quad SPI transfer mode. | ||
64 | It allows data in SPI system transfered in 2 wires(DUAL) or 4 wires(QUAD). | ||
65 | Now the value that spi-tx-bus-width and spi-rx-bus-width can receive is | ||
66 | only 1(SINGLE), 2(DUAL) and 4(QUAD). | ||
67 | Dual/Quad mode is not allowed when 3-wire mode is used. | ||
58 | 68 | ||
59 | If a gpio chipselect is used for the SPI slave the gpio number will be passed | 69 | If a gpio chipselect is used for the SPI slave the gpio number will be passed |
60 | via the cs_gpio | 70 | via the cs_gpio |
diff --git a/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt b/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt new file mode 100644 index 000000000000..a1fb3035a42b --- /dev/null +++ b/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt | |||
@@ -0,0 +1,42 @@ | |||
1 | ARM Freescale DSPI controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "fsl,vf610-dspi" | ||
5 | - reg : Offset and length of the register set for the device | ||
6 | - interrupts : Should contain SPI controller interrupt | ||
7 | - clocks: from common clock binding: handle to dspi clock. | ||
8 | - clock-names: from common clock binding: Shall be "dspi". | ||
9 | - pinctrl-0: pin control group to be used for this controller. | ||
10 | - pinctrl-names: must contain a "default" entry. | ||
11 | - spi-num-chipselects : the number of the chipselect signals. | ||
12 | - bus-num : the slave chip chipselect signal number. | ||
13 | Example: | ||
14 | |||
15 | dspi0@4002c000 { | ||
16 | #address-cells = <1>; | ||
17 | #size-cells = <0>; | ||
18 | compatible = "fsl,vf610-dspi"; | ||
19 | reg = <0x4002c000 0x1000>; | ||
20 | interrupts = <0 67 0x04>; | ||
21 | clocks = <&clks VF610_CLK_DSPI0>; | ||
22 | clock-names = "dspi"; | ||
23 | spi-num-chipselects = <5>; | ||
24 | bus-num = <0>; | ||
25 | pinctrl-names = "default"; | ||
26 | pinctrl-0 = <&pinctrl_dspi0_1>; | ||
27 | status = "okay"; | ||
28 | |||
29 | sflash: at26df081a@0 { | ||
30 | #address-cells = <1>; | ||
31 | #size-cells = <1>; | ||
32 | compatible = "atmel,at26df081a"; | ||
33 | spi-max-frequency = <16000000>; | ||
34 | spi-cpol; | ||
35 | spi-cpha; | ||
36 | reg = <0>; | ||
37 | linux,modalias = "m25p80"; | ||
38 | modal = "at26df081a"; | ||
39 | }; | ||
40 | }; | ||
41 | |||
42 | |||
diff --git a/Documentation/devicetree/bindings/spi/ti_qspi.txt b/Documentation/devicetree/bindings/spi/ti_qspi.txt new file mode 100644 index 000000000000..1f9641ade0b5 --- /dev/null +++ b/Documentation/devicetree/bindings/spi/ti_qspi.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | TI QSPI controller. | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : should be "ti,dra7xxx-qspi" or "ti,am4372-qspi". | ||
5 | - reg: Should contain QSPI registers location and length. | ||
6 | - #address-cells, #size-cells : Must be present if the device has sub-nodes | ||
7 | - ti,hwmods: Name of the hwmod associated to the QSPI | ||
8 | |||
9 | Recommended properties: | ||
10 | - spi-max-frequency: Definition as per | ||
11 | Documentation/devicetree/bindings/spi/spi-bus.txt | ||
12 | |||
13 | Example: | ||
14 | |||
15 | qspi: qspi@4b300000 { | ||
16 | compatible = "ti,dra7xxx-qspi"; | ||
17 | reg = <0x4b300000 0x100>; | ||
18 | #address-cells = <1>; | ||
19 | #size-cells = <0>; | ||
20 | spi-max-frequency = <25000000>; | ||
21 | ti,hwmods = "qspi"; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/timer/moxa,moxart-timer.txt b/Documentation/devicetree/bindings/timer/moxa,moxart-timer.txt new file mode 100644 index 000000000000..da2d510cae47 --- /dev/null +++ b/Documentation/devicetree/bindings/timer/moxa,moxart-timer.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | MOXA ART timer | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : Must be "moxa,moxart-timer" | ||
6 | - reg : Should contain registers location and length | ||
7 | - interrupts : Should contain the timer interrupt number | ||
8 | - clocks : Should contain phandle for the clock that drives the counter | ||
9 | |||
10 | Example: | ||
11 | |||
12 | timer: timer@98400000 { | ||
13 | compatible = "moxa,moxart-timer"; | ||
14 | reg = <0x98400000 0x42>; | ||
15 | interrupts = <19 1>; | ||
16 | clocks = <&coreclk>; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/fsl-imx-uart.txt b/Documentation/devicetree/bindings/tty/serial/fsl-imx-uart.txt deleted file mode 100644 index c662eb36be29..000000000000 --- a/Documentation/devicetree/bindings/tty/serial/fsl-imx-uart.txt +++ /dev/null | |||
@@ -1,22 +0,0 @@ | |||
1 | * Freescale i.MX Universal Asynchronous Receiver/Transmitter (UART) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should be "fsl,<soc>-uart" | ||
5 | - reg : Address and length of the register set for the device | ||
6 | - interrupts : Should contain uart interrupt | ||
7 | |||
8 | Optional properties: | ||
9 | - fsl,uart-has-rtscts : Indicate the uart has rts and cts | ||
10 | - fsl,irda-mode : Indicate the uart supports irda mode | ||
11 | - fsl,dte-mode : Indicate the uart works in DTE mode. The uart works | ||
12 | is DCE mode by default. | ||
13 | |||
14 | Example: | ||
15 | |||
16 | serial@73fbc000 { | ||
17 | compatible = "fsl,imx51-uart", "fsl,imx21-uart"; | ||
18 | reg = <0x73fbc000 0x4000>; | ||
19 | interrupts = <31>; | ||
20 | fsl,uart-has-rtscts; | ||
21 | fsl,dte-mode; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/msm_serial.txt b/Documentation/devicetree/bindings/tty/serial/msm_serial.txt deleted file mode 100644 index aef383eb8876..000000000000 --- a/Documentation/devicetree/bindings/tty/serial/msm_serial.txt +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | * Qualcomm MSM UART | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : | ||
5 | - "qcom,msm-uart", and one of "qcom,msm-hsuart" or | ||
6 | "qcom,msm-lsuart". | ||
7 | - reg : offset and length of the register set for the device | ||
8 | for the hsuart operating in compatible mode, there should be a | ||
9 | second pair describing the gsbi registers. | ||
10 | - interrupts : should contain the uart interrupt. | ||
11 | |||
12 | There are two different UART blocks used in MSM devices, | ||
13 | "qcom,msm-hsuart" and "qcom,msm-lsuart". The msm-serial driver is | ||
14 | able to handle both of these, and matches against the "qcom,msm-uart" | ||
15 | as the compatibility. | ||
16 | |||
17 | The registers for the "qcom,msm-hsuart" device need to specify both | ||
18 | register blocks, even for the common driver. | ||
19 | |||
20 | Example: | ||
21 | |||
22 | uart@19c400000 { | ||
23 | compatible = "qcom,msm-hsuart", "qcom,msm-uart"; | ||
24 | reg = <0x19c40000 0x1000>, | ||
25 | <0x19c00000 0x1000>; | ||
26 | interrupts = <195>; | ||
27 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/qca,ar9330-uart.txt b/Documentation/devicetree/bindings/tty/serial/qca,ar9330-uart.txt new file mode 100644 index 000000000000..c5e032c85bf9 --- /dev/null +++ b/Documentation/devicetree/bindings/tty/serial/qca,ar9330-uart.txt | |||
@@ -0,0 +1,34 @@ | |||
1 | * Qualcomm Atheros AR9330 High-Speed UART | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: Must be "qca,ar9330-uart" | ||
6 | |||
7 | - reg: Specifies the physical base address of the controller and | ||
8 | the length of the memory mapped region. | ||
9 | |||
10 | - interrupt-parent: The phandle for the interrupt controller that | ||
11 | services interrupts for this device. | ||
12 | |||
13 | - interrupts: Specifies the interrupt source of the parent interrupt | ||
14 | controller. The format of the interrupt specifier depends on the | ||
15 | parent interrupt controller. | ||
16 | |||
17 | Additional requirements: | ||
18 | |||
19 | Each UART port must have an alias correctly numbered in "aliases" | ||
20 | node. | ||
21 | |||
22 | Example: | ||
23 | |||
24 | aliases { | ||
25 | serial0 = &uart0; | ||
26 | }; | ||
27 | |||
28 | uart0: uart@18020000 { | ||
29 | compatible = "qca,ar9330-uart"; | ||
30 | reg = <0x18020000 0x14>; | ||
31 | |||
32 | interrupt-parent = <&intc>; | ||
33 | interrupts = <3>; | ||
34 | }; | ||
diff --git a/Documentation/devicetree/bindings/usb/am33xx-usb.txt b/Documentation/devicetree/bindings/usb/am33xx-usb.txt index dc9dc8c87f15..20c2ff2ba07e 100644 --- a/Documentation/devicetree/bindings/usb/am33xx-usb.txt +++ b/Documentation/devicetree/bindings/usb/am33xx-usb.txt | |||
@@ -1,35 +1,197 @@ | |||
1 | AM33XX MUSB GLUE | 1 | AM33xx MUSB |
2 | - compatible : Should be "ti,musb-am33xx" | 2 | ~~~~~~~~~~~~~~~ |
3 | - reg : offset and length of register sets, first usbss, then for musb instances | 3 | - compatible: ti,am33xx-usb |
4 | - interrupts : usbss, musb instance interrupts in order | 4 | - reg: offset and length of the usbss register sets |
5 | - ti,hwmods : must be "usb_otg_hs" | 5 | - ti,hwmods : must be "usb_otg_hs" |
6 | - multipoint : Should be "1" indicating the musb controller supports | 6 | |
7 | multipoint. This is a MUSB configuration-specific setting. | 7 | The glue layer contains multiple child nodes. It is required the have |
8 | - num-eps : Specifies the number of endpoints. This is also a | 8 | at least a control module node, USB node and a PHY node. The second USB |
9 | MUSB configuration-specific setting. Should be set to "16" | 9 | node and its PHY node is optional. The DMA node is also optional. |
10 | - ram-bits : Specifies the ram address size. Should be set to "12" | 10 | |
11 | - port0-mode : Should be "3" to represent OTG. "1" signifies HOST and "2" | 11 | Reset module |
12 | represents PERIPHERAL. | 12 | ~~~~~~~~~~~~ |
13 | - port1-mode : Should be "1" to represent HOST. "3" signifies OTG and "2" | 13 | - compatible: ti,am335x-usb-ctrl-module |
14 | represents PERIPHERAL. | 14 | - reg: offset and length of the "USB control registers" in the "Control |
15 | - power : Should be "250". This signifies the controller can supply up to | 15 | Module" block. A second offset and length for the USB wake up control |
16 | 500mA when operating in host mode. | 16 | in the same memory block. |
17 | - reg-names: "phy_ctrl" for the "USB control registers" and "wakeup" for | ||
18 | the USB wake up control register. | ||
19 | |||
20 | USB PHY | ||
21 | ~~~~~~~ | ||
22 | compatible: ti,am335x-usb-phy | ||
23 | reg: offset and length of the "USB PHY" register space | ||
24 | ti,ctrl_mod: reference to the "reset module" node | ||
25 | reg-names: phy | ||
26 | The PHY should have a "phy" alias numbered properly in the alias | ||
27 | node. | ||
28 | |||
29 | USB | ||
30 | ~~~ | ||
31 | - compatible: ti,musb-am33xx | ||
32 | - reg: offset and length of "USB Controller Registers", and offset and | ||
33 | length of "USB Core" register space. | ||
34 | - reg-names: control for the ""USB Controller Registers" and "mc" for | ||
35 | "USB Core" register space | ||
36 | - interrupts: USB interrupt number | ||
37 | - interrupt-names: mc | ||
38 | - dr_mode: Should be one of "host", "peripheral" or "otg". | ||
39 | - mentor,multipoint: Should be "1" indicating the musb controller supports | ||
40 | multipoint. This is a MUSB configuration-specific setting. | ||
41 | - mentor,num-eps: Specifies the number of endpoints. This is also a | ||
42 | MUSB configuration-specific setting. Should be set to "16" | ||
43 | - mentor,ram-bits: Specifies the ram address size. Should be set to "12" | ||
44 | - mentor,power: Should be "500". This signifies the controller can supply up to | ||
45 | 500mA when operating in host mode. | ||
46 | - phys: reference to the USB phy | ||
47 | - dmas: specifies the dma channels | ||
48 | - dma-names: specifies the names of the channels. Use "rxN" for receive | ||
49 | and "txN" for transmit endpoints. N specifies the endpoint number. | ||
50 | |||
51 | The controller should have an "usb" alias numbered properly in the alias | ||
52 | node. | ||
53 | |||
54 | DMA | ||
55 | ~~~ | ||
56 | - compatible: ti,am3359-cppi41 | ||
57 | - reg: offset and length of the following register spaces: USBSS, USB | ||
58 | CPPI DMA Controller, USB CPPI DMA Scheduler, USB Queue Manager | ||
59 | - reg-names: glue, controller, scheduler, queuemgr | ||
60 | - #dma-cells: should be set to 2. The first number represents the | ||
61 | endpoint number (0 … 14 for endpoints 1 … 15 on instance 0 and 15 … 29 | ||
62 | for endpoints 1 … 15 on instance 1). The second number is 0 for RX and | ||
63 | 1 for TX transfers. | ||
64 | - #dma-channels: should be set to 30 representing the 15 endpoints for | ||
65 | each USB instance. | ||
17 | 66 | ||
18 | Example: | 67 | Example: |
68 | ~~~~~~~~ | ||
69 | The following example contains all the nodes as used on am335x-evm: | ||
70 | |||
71 | aliases { | ||
72 | usb0 = &usb0; | ||
73 | usb1 = &usb1; | ||
74 | phy0 = &usb0_phy; | ||
75 | phy1 = &usb1_phy; | ||
76 | }; | ||
19 | 77 | ||
20 | usb@47400000 { | 78 | usb: usb@47400000 { |
21 | compatible = "ti,musb-am33xx"; | 79 | compatible = "ti,am33xx-usb"; |
22 | reg = <0x47400000 0x1000 /* usbss */ | 80 | reg = <0x47400000 0x1000>; |
23 | 0x47401000 0x800 /* musb instance 0 */ | 81 | ranges; |
24 | 0x47401800 0x800>; /* musb instance 1 */ | 82 | #address-cells = <1>; |
25 | interrupts = <17 /* usbss */ | 83 | #size-cells = <1>; |
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"; | 84 | ti,hwmods = "usb_otg_hs"; |
85 | |||
86 | ctrl_mod: control@44e10000 { | ||
87 | compatible = "ti,am335x-usb-ctrl-module"; | ||
88 | reg = <0x44e10620 0x10 | ||
89 | 0x44e10648 0x4>; | ||
90 | reg-names = "phy_ctrl", "wakeup"; | ||
91 | }; | ||
92 | |||
93 | usb0_phy: usb-phy@47401300 { | ||
94 | compatible = "ti,am335x-usb-phy"; | ||
95 | reg = <0x47401300 0x100>; | ||
96 | reg-names = "phy"; | ||
97 | ti,ctrl_mod = <&ctrl_mod>; | ||
98 | }; | ||
99 | |||
100 | usb0: usb@47401000 { | ||
101 | compatible = "ti,musb-am33xx"; | ||
102 | reg = <0x47401400 0x400 | ||
103 | 0x47401000 0x200>; | ||
104 | reg-names = "mc", "control"; | ||
105 | |||
106 | interrupts = <18>; | ||
107 | interrupt-names = "mc"; | ||
108 | dr_mode = "otg" | ||
109 | mentor,multipoint = <1>; | ||
110 | mentor,num-eps = <16>; | ||
111 | mentor,ram-bits = <12>; | ||
112 | mentor,power = <500>; | ||
113 | phys = <&usb0_phy>; | ||
114 | |||
115 | dmas = <&cppi41dma 0 0 &cppi41dma 1 0 | ||
116 | &cppi41dma 2 0 &cppi41dma 3 0 | ||
117 | &cppi41dma 4 0 &cppi41dma 5 0 | ||
118 | &cppi41dma 6 0 &cppi41dma 7 0 | ||
119 | &cppi41dma 8 0 &cppi41dma 9 0 | ||
120 | &cppi41dma 10 0 &cppi41dma 11 0 | ||
121 | &cppi41dma 12 0 &cppi41dma 13 0 | ||
122 | &cppi41dma 14 0 &cppi41dma 0 1 | ||
123 | &cppi41dma 1 1 &cppi41dma 2 1 | ||
124 | &cppi41dma 3 1 &cppi41dma 4 1 | ||
125 | &cppi41dma 5 1 &cppi41dma 6 1 | ||
126 | &cppi41dma 7 1 &cppi41dma 8 1 | ||
127 | &cppi41dma 9 1 &cppi41dma 10 1 | ||
128 | &cppi41dma 11 1 &cppi41dma 12 1 | ||
129 | &cppi41dma 13 1 &cppi41dma 14 1>; | ||
130 | dma-names = | ||
131 | "rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7", | ||
132 | "rx8", "rx9", "rx10", "rx11", "rx12", "rx13", | ||
133 | "rx14", "rx15", | ||
134 | "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7", | ||
135 | "tx8", "tx9", "tx10", "tx11", "tx12", "tx13", | ||
136 | "tx14", "tx15"; | ||
137 | }; | ||
138 | |||
139 | usb1_phy: usb-phy@47401b00 { | ||
140 | compatible = "ti,am335x-usb-phy"; | ||
141 | reg = <0x47401b00 0x100>; | ||
142 | reg-names = "phy"; | ||
143 | ti,ctrl_mod = <&ctrl_mod>; | ||
144 | }; | ||
145 | |||
146 | usb1: usb@47401800 { | ||
147 | compatible = "ti,musb-am33xx"; | ||
148 | reg = <0x47401c00 0x400 | ||
149 | 0x47401800 0x200>; | ||
150 | reg-names = "mc", "control"; | ||
151 | interrupts = <19>; | ||
152 | interrupt-names = "mc"; | ||
153 | dr_mode = "host" | ||
154 | mentor,multipoint = <1>; | ||
155 | mentor,num-eps = <16>; | ||
156 | mentor,ram-bits = <12>; | ||
157 | mentor,power = <500>; | ||
158 | phys = <&usb1_phy>; | ||
159 | |||
160 | dmas = <&cppi41dma 15 0 &cppi41dma 16 0 | ||
161 | &cppi41dma 17 0 &cppi41dma 18 0 | ||
162 | &cppi41dma 19 0 &cppi41dma 20 0 | ||
163 | &cppi41dma 21 0 &cppi41dma 22 0 | ||
164 | &cppi41dma 23 0 &cppi41dma 24 0 | ||
165 | &cppi41dma 25 0 &cppi41dma 26 0 | ||
166 | &cppi41dma 27 0 &cppi41dma 28 0 | ||
167 | &cppi41dma 29 0 &cppi41dma 15 1 | ||
168 | &cppi41dma 16 1 &cppi41dma 17 1 | ||
169 | &cppi41dma 18 1 &cppi41dma 19 1 | ||
170 | &cppi41dma 20 1 &cppi41dma 21 1 | ||
171 | &cppi41dma 22 1 &cppi41dma 23 1 | ||
172 | &cppi41dma 24 1 &cppi41dma 25 1 | ||
173 | &cppi41dma 26 1 &cppi41dma 27 1 | ||
174 | &cppi41dma 28 1 &cppi41dma 29 1>; | ||
175 | dma-names = | ||
176 | "rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7", | ||
177 | "rx8", "rx9", "rx10", "rx11", "rx12", "rx13", | ||
178 | "rx14", "rx15", | ||
179 | "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7", | ||
180 | "tx8", "tx9", "tx10", "tx11", "tx12", "tx13", | ||
181 | "tx14", "tx15"; | ||
182 | }; | ||
183 | |||
184 | cppi41dma: dma-controller@07402000 { | ||
185 | compatible = "ti,am3359-cppi41"; | ||
186 | reg = <0x47400000 0x1000 | ||
187 | 0x47402000 0x1000 | ||
188 | 0x47403000 0x1000 | ||
189 | 0x47404000 0x4000>; | ||
190 | reg-names = "glue", "controller", "scheduler", "queuemgr"; | ||
191 | interrupts = <17>; | ||
192 | interrupt-names = "glue"; | ||
193 | #dma-cells = <2>; | ||
194 | #dma-channels = <30>; | ||
195 | #dma-requests = <256>; | ||
196 | }; | ||
35 | }; | 197 | }; |
diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt index 7a95c651ceb3..e807635f9e1c 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt | |||
@@ -3,10 +3,12 @@ synopsys DWC3 CORE | |||
3 | DWC3- USB3 CONTROLLER | 3 | DWC3- USB3 CONTROLLER |
4 | 4 | ||
5 | Required properties: | 5 | Required properties: |
6 | - compatible: must be "synopsys,dwc3" | 6 | - compatible: must be "snps,dwc3" |
7 | - reg : Address and length of the register set for the device | 7 | - reg : Address and length of the register set for the device |
8 | - interrupts: Interrupts used by the dwc3 controller. | 8 | - interrupts: Interrupts used by the dwc3 controller. |
9 | - usb-phy : array of phandle for the PHY device | 9 | - usb-phy : array of phandle for the PHY device. The first element |
10 | in the array is expected to be a handle to the USB2/HS PHY and | ||
11 | the second element is expected to be a handle to the USB3/SS PHY | ||
10 | 12 | ||
11 | Optional properties: | 13 | Optional properties: |
12 | - tx-fifo-resize: determines if the FIFO *has* to be reallocated. | 14 | - tx-fifo-resize: determines if the FIFO *has* to be reallocated. |
@@ -14,7 +16,7 @@ Optional properties: | |||
14 | This is usually a subnode to DWC3 glue to which it is connected. | 16 | This is usually a subnode to DWC3 glue to which it is connected. |
15 | 17 | ||
16 | dwc3@4a030000 { | 18 | dwc3@4a030000 { |
17 | compatible = "synopsys,dwc3"; | 19 | compatible = "snps,dwc3"; |
18 | reg = <0x4a030000 0xcfff>; | 20 | reg = <0x4a030000 0xcfff>; |
19 | interrupts = <0 92 4> | 21 | interrupts = <0 92 4> |
20 | usb-phy = <&usb2_phy>, <&usb3,phy>; | 22 | usb-phy = <&usb2_phy>, <&usb3,phy>; |
diff --git a/Documentation/devicetree/bindings/usb/generic.txt b/Documentation/devicetree/bindings/usb/generic.txt new file mode 100644 index 000000000000..477d5bb5e51c --- /dev/null +++ b/Documentation/devicetree/bindings/usb/generic.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | Generic USB Properties | ||
2 | |||
3 | Optional properties: | ||
4 | - maximum-speed: tells USB controllers we want to work up to a certain | ||
5 | speed. Valid arguments are "super-speed", "high-speed", | ||
6 | "full-speed" and "low-speed". In case this isn't passed | ||
7 | via DT, USB controllers should default to their maximum | ||
8 | HW capability. | ||
9 | - dr_mode: tells Dual-Role USB controllers that we want to work on a | ||
10 | particular mode. Valid arguments are "host", | ||
11 | "peripheral" and "otg". In case this attribute isn't | ||
12 | passed via DT, USB DRD controllers should default to | ||
13 | OTG. | ||
14 | |||
15 | This is an attribute to a USB controller such as: | ||
16 | |||
17 | dwc3@4a030000 { | ||
18 | compatible = "synopsys,dwc3"; | ||
19 | reg = <0x4a030000 0xcfff>; | ||
20 | interrupts = <0 92 4> | ||
21 | usb-phy = <&usb2_phy>, <&usb3,phy>; | ||
22 | maximum-speed = "super-speed"; | ||
23 | dr_mode = "otg"; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt b/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt index c4c9e9e664aa..ba797d3e6326 100644 --- a/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt +++ b/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt | |||
@@ -3,7 +3,7 @@ Tegra SOC USB PHY | |||
3 | The device node for Tegra SOC USB PHY: | 3 | The device node for Tegra SOC USB PHY: |
4 | 4 | ||
5 | Required properties : | 5 | Required properties : |
6 | - compatible : Should be "nvidia,tegra20-usb-phy". | 6 | - compatible : Should be "nvidia,tegra<chip>-usb-phy". |
7 | - reg : Defines the following set of registers, in the order listed: | 7 | - reg : Defines the following set of registers, in the order listed: |
8 | - The PHY's own register set. | 8 | - The PHY's own register set. |
9 | Always present. | 9 | Always present. |
@@ -24,17 +24,26 @@ Required properties : | |||
24 | Required properties for phy_type == ulpi: | 24 | Required properties for phy_type == ulpi: |
25 | - nvidia,phy-reset-gpio : The GPIO used to reset the PHY. | 25 | - nvidia,phy-reset-gpio : The GPIO used to reset the PHY. |
26 | 26 | ||
27 | Required PHY timing params for utmi phy: | 27 | Required PHY timing params for utmi phy, for all chips: |
28 | - nvidia,hssync-start-delay : Number of 480 Mhz clock cycles to wait before | 28 | - nvidia,hssync-start-delay : Number of 480 Mhz clock cycles to wait before |
29 | start of sync launches RxActive | 29 | start of sync launches RxActive |
30 | - nvidia,elastic-limit : Variable FIFO Depth of elastic input store | 30 | - nvidia,elastic-limit : Variable FIFO Depth of elastic input store |
31 | - nvidia,idle-wait-delay : Number of 480 Mhz clock cycles of idle to wait | 31 | - nvidia,idle-wait-delay : Number of 480 Mhz clock cycles of idle to wait |
32 | before declare IDLE. | 32 | before declare IDLE. |
33 | - nvidia,term-range-adj : Range adjusment on terminations | 33 | - nvidia,term-range-adj : Range adjusment on terminations |
34 | - nvidia,xcvr-setup : HS driver output control | 34 | - Either one of the following for HS driver output control: |
35 | - nvidia,xcvr-setup : integer, uses the provided value. | ||
36 | - nvidia,xcvr-setup-use-fuses : boolean, indicates that the value is read | ||
37 | from the on-chip fuses | ||
38 | If both are provided, nvidia,xcvr-setup-use-fuses takes precedence. | ||
35 | - nvidia,xcvr-lsfslew : LS falling slew rate control. | 39 | - nvidia,xcvr-lsfslew : LS falling slew rate control. |
36 | - nvidia,xcvr-lsrslew : LS rising slew rate control. | 40 | - nvidia,xcvr-lsrslew : LS rising slew rate control. |
37 | 41 | ||
42 | Required PHY timing params for utmi phy, only on Tegra30 and above: | ||
43 | - nvidia,xcvr-hsslew : HS slew rate control. | ||
44 | - nvidia,hssquelch-level : HS squelch detector level. | ||
45 | - nvidia,hsdiscon-level : HS disconnect detector level. | ||
46 | |||
38 | Optional properties: | 47 | Optional properties: |
39 | - nvidia,has-legacy-mode : boolean indicates whether this controller can | 48 | - nvidia,has-legacy-mode : boolean indicates whether this controller can |
40 | operate in legacy mode (as APX 2500 / 2600). In legacy mode some | 49 | operate in legacy mode (as APX 2500 / 2600). In legacy mode some |
@@ -48,5 +57,5 @@ Optional properties: | |||
48 | peripheral means it is device controller | 57 | peripheral means it is device controller |
49 | otg means it can operate as either ("on the go") | 58 | otg means it can operate as either ("on the go") |
50 | 59 | ||
51 | Required properties for dr_mode == otg: | 60 | VBUS control (required for dr_mode == otg, optional for dr_mode == host): |
52 | - vbus-supply: regulator for VBUS | 61 | - vbus-supply: regulator for VBUS |
diff --git a/Documentation/devicetree/bindings/usb/omap-usb.txt b/Documentation/devicetree/bindings/usb/omap-usb.txt index 57e71f6817d0..9088ab09e200 100644 --- a/Documentation/devicetree/bindings/usb/omap-usb.txt +++ b/Documentation/devicetree/bindings/usb/omap-usb.txt | |||
@@ -53,6 +53,11 @@ OMAP DWC3 GLUE | |||
53 | It should be set to "1" for HW mode and "2" for SW mode. | 53 | It should be set to "1" for HW mode and "2" for SW mode. |
54 | - ranges: the child address space are mapped 1:1 onto the parent address space | 54 | - ranges: the child address space are mapped 1:1 onto the parent address space |
55 | 55 | ||
56 | Optional Properties: | ||
57 | - extcon : phandle for the extcon device omap dwc3 uses to detect | ||
58 | connect/disconnect events. | ||
59 | - vbus-supply : phandle to the regulator device tree node if needed. | ||
60 | |||
56 | Sub-nodes: | 61 | Sub-nodes: |
57 | The dwc3 core should be added as subnode to omap dwc3 glue. | 62 | The dwc3 core should be added as subnode to omap dwc3 glue. |
58 | - dwc3 : | 63 | - dwc3 : |
diff --git a/Documentation/devicetree/bindings/usb/samsung-hsotg.txt b/Documentation/devicetree/bindings/usb/samsung-hsotg.txt new file mode 100644 index 000000000000..b83d428a265e --- /dev/null +++ b/Documentation/devicetree/bindings/usb/samsung-hsotg.txt | |||
@@ -0,0 +1,40 @@ | |||
1 | Samsung High Speed USB OTG controller | ||
2 | ----------------------------- | ||
3 | |||
4 | The Samsung HSOTG IP can be found on Samsung SoCs, from S3C6400 onwards. | ||
5 | It gives functionality of OTG-compliant USB 2.0 host and device with | ||
6 | support for USB 2.0 high-speed (480Mbps) and full-speed (12 Mbps) | ||
7 | operation. | ||
8 | |||
9 | Currently only device mode is supported. | ||
10 | |||
11 | Binding details | ||
12 | ----- | ||
13 | |||
14 | Required properties: | ||
15 | - compatible: "samsung,s3c6400-hsotg" should be used for all currently | ||
16 | supported SoC, | ||
17 | - interrupt-parent: phandle for the interrupt controller to which the | ||
18 | interrupt signal of the HSOTG block is routed, | ||
19 | - interrupts: specifier of interrupt signal of interrupt controller, | ||
20 | according to bindings of interrupt controller, | ||
21 | - clocks: contains an array of clock specifiers: | ||
22 | - first entry: OTG clock | ||
23 | - clock-names: contains array of clock names: | ||
24 | - first entry: must be "otg" | ||
25 | - vusb_d-supply: phandle to voltage regulator of digital section, | ||
26 | - vusb_a-supply: phandle to voltage regulator of analog section. | ||
27 | |||
28 | Example | ||
29 | ----- | ||
30 | |||
31 | hsotg@12480000 { | ||
32 | compatible = "samsung,s3c6400-hsotg"; | ||
33 | reg = <0x12480000 0x20000>; | ||
34 | interrupts = <0 71 0>; | ||
35 | clocks = <&clock 305>; | ||
36 | clock-names = "otg"; | ||
37 | vusb_d-supply = <&vusb_reg>; | ||
38 | vusb_a-supply = <&vusbdac_reg>; | ||
39 | }; | ||
40 | |||
diff --git a/Documentation/devicetree/bindings/usb/usb-xhci.txt b/Documentation/devicetree/bindings/usb/usb-xhci.txt new file mode 100644 index 000000000000..5752df0e17a2 --- /dev/null +++ b/Documentation/devicetree/bindings/usb/usb-xhci.txt | |||
@@ -0,0 +1,14 @@ | |||
1 | USB xHCI controllers | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be "xhci-platform". | ||
5 | - reg: should contain address and length of the standard XHCI | ||
6 | register set for the device. | ||
7 | - interrupts: one XHCI interrupt should be described here. | ||
8 | |||
9 | Example: | ||
10 | usb@f0931000 { | ||
11 | compatible = "xhci-platform"; | ||
12 | reg = <0xf0931000 0x8c8>; | ||
13 | interrupts = <0x0 0x4e 0x0>; | ||
14 | }; | ||
diff --git a/Documentation/devicetree/bindings/usb/usb3503.txt b/Documentation/devicetree/bindings/usb/usb3503.txt index 8c5be48b43c8..a018da4a7ad7 100644 --- a/Documentation/devicetree/bindings/usb/usb3503.txt +++ b/Documentation/devicetree/bindings/usb/usb3503.txt | |||
@@ -1,8 +1,11 @@ | |||
1 | SMSC USB3503 High-Speed Hub Controller | 1 | SMSC USB3503 High-Speed Hub Controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: Should be "smsc,usb3503". | 4 | - compatible: Should be "smsc,usb3503" or "smsc,usb3503a". |
5 | - reg: Specifies the i2c slave address, it should be 0x08. | 5 | |
6 | Optional properties: | ||
7 | - reg: Specifies the i2c slave address, it is required and should be 0x08 | ||
8 | if I2C is used. | ||
6 | - connect-gpios: Should specify GPIO for connect. | 9 | - connect-gpios: Should specify GPIO for connect. |
7 | - disabled-ports: Should specify the ports unused. | 10 | - disabled-ports: Should specify the ports unused. |
8 | '1' or '2' or '3' are availe for this property to describe the port | 11 | '1' or '2' or '3' are availe for this property to describe the port |
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index 366ce9b87240..ec4d713674fa 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt | |||
@@ -11,6 +11,7 @@ amcc Applied Micro Circuits Corporation (APM, formally AMCC) | |||
11 | apm Applied Micro Circuits Corporation (APM) | 11 | apm Applied Micro Circuits Corporation (APM) |
12 | arm ARM Ltd. | 12 | arm ARM Ltd. |
13 | atmel Atmel Corporation | 13 | atmel Atmel Corporation |
14 | avago Avago Technologies | ||
14 | bosch Bosch Sensortec GmbH | 15 | bosch Bosch Sensortec GmbH |
15 | brcm Broadcom Corporation | 16 | brcm Broadcom Corporation |
16 | cavium Cavium, Inc. | 17 | cavium Cavium, Inc. |
diff --git a/Documentation/devicetree/bindings/video/simple-framebuffer.txt b/Documentation/devicetree/bindings/video/simple-framebuffer.txt index 3ea460583111..70c26f3a5b9a 100644 --- a/Documentation/devicetree/bindings/video/simple-framebuffer.txt +++ b/Documentation/devicetree/bindings/video/simple-framebuffer.txt | |||
@@ -12,6 +12,7 @@ Required properties: | |||
12 | - stride: The number of bytes in each line of the framebuffer. | 12 | - stride: The number of bytes in each line of the framebuffer. |
13 | - format: The format of the framebuffer surface. Valid values are: | 13 | - format: The format of the framebuffer surface. Valid values are: |
14 | - r5g6b5 (16-bit pixels, d[15:11]=r, d[10:5]=g, d[4:0]=b). | 14 | - r5g6b5 (16-bit pixels, d[15:11]=r, d[10:5]=g, d[4:0]=b). |
15 | - a8b8g8r8 (32-bit pixels, d[31:24]=a, d[23:16]=b, d[15:8]=g, d[7:0]=r). | ||
15 | 16 | ||
16 | Example: | 17 | Example: |
17 | 18 | ||