aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/devicetree/bindings')
-rw-r--r--Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt25
-rw-r--r--Documentation/devicetree/bindings/arm/samsung/pmu.txt30
-rw-r--r--Documentation/devicetree/bindings/ata/ahci-platform.txt45
-rw-r--r--Documentation/devicetree/bindings/ata/ahci-st.txt31
-rw-r--r--Documentation/devicetree/bindings/ata/imx-sata.txt36
-rw-r--r--Documentation/devicetree/bindings/ata/tegra-sata.txt30
-rw-r--r--Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt35
-rw-r--r--Documentation/devicetree/bindings/clock/clock-bindings.txt36
-rw-r--r--Documentation/devicetree/bindings/clock/clps711x-clock.txt19
-rw-r--r--Documentation/devicetree/bindings/clock/qcom,gcc.txt2
-rw-r--r--Documentation/devicetree/bindings/clock/qcom,mmcc.txt2
-rw-r--r--Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.txt61
-rw-r--r--Documentation/devicetree/bindings/clock/rockchip,rk3288-cru.txt61
-rw-r--r--Documentation/devicetree/bindings/clock/rockchip.txt3
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,clkgen-divmux.txt28
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,clkgen-mux.txt6
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,clkgen-pll.txt17
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,clkgen-prediv.txt8
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,clkgen-vcc.txt34
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,clkgen.txt59
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,flexgen.txt119
-rw-r--r--Documentation/devicetree/bindings/clock/st/st,quadfs.txt15
-rw-r--r--Documentation/devicetree/bindings/clock/sunxi.txt7
-rw-r--r--Documentation/devicetree/bindings/crypto/amd-ccp.txt19
-rw-r--r--Documentation/devicetree/bindings/crypto/qcom-qce.txt25
-rw-r--r--Documentation/devicetree/bindings/extcon/extcon-sm5502.txt23
-rw-r--r--Documentation/devicetree/bindings/hwmon/ibmpowernv.txt23
-rw-r--r--Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt1
-rw-r--r--Documentation/devicetree/bindings/hwmon/pwm-fan.txt12
-rw-r--r--Documentation/devicetree/bindings/i2c/trivial-devices.txt2
-rw-r--r--Documentation/devicetree/bindings/iio/adc/max1027-adc.txt22
-rw-r--r--Documentation/devicetree/bindings/iio/magnetometer/hmc5843.txt4
-rw-r--r--Documentation/devicetree/bindings/iio/st-sensors.txt54
-rw-r--r--Documentation/devicetree/bindings/iommu/arm,smmu.txt6
-rw-r--r--Documentation/devicetree/bindings/iommu/iommu.txt182
-rw-r--r--Documentation/devicetree/bindings/mfd/palmas.txt2
-rw-r--r--Documentation/devicetree/bindings/phy/berlin-sata-phy.txt34
-rw-r--r--Documentation/devicetree/bindings/phy/hix5hd2-phy.txt22
-rw-r--r--Documentation/devicetree/bindings/phy/phy-bindings.txt4
-rw-r--r--Documentation/devicetree/bindings/phy/phy-miphy365x.txt76
-rw-r--r--Documentation/devicetree/bindings/phy/qcom-apq8064-sata-phy.txt24
-rw-r--r--Documentation/devicetree/bindings/phy/qcom-ipq806x-sata-phy.txt23
-rw-r--r--Documentation/devicetree/bindings/phy/samsung-phy.txt2
-rw-r--r--Documentation/devicetree/bindings/phy/ti-phy.txt23
-rw-r--r--Documentation/devicetree/bindings/regulator/act8865-regulator.txt7
-rw-r--r--Documentation/devicetree/bindings/regulator/palmas-pmic.txt1
-rw-r--r--Documentation/devicetree/bindings/regulator/tps65218.txt23
-rw-r--r--Documentation/devicetree/bindings/serial/efm32-uart.txt4
-rw-r--r--Documentation/devicetree/bindings/serial/fsl-lpuart.txt6
-rw-r--r--Documentation/devicetree/bindings/serial/samsung_uart.txt56
-rw-r--r--Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt32
-rw-r--r--Documentation/devicetree/bindings/spi/efm32-spi.txt13
-rw-r--r--Documentation/devicetree/bindings/spi/qcom,spi-qup.txt6
-rw-r--r--Documentation/devicetree/bindings/spi/snps,dw-apb-ssi.txt28
-rw-r--r--Documentation/devicetree/bindings/spi/spi-davinci.txt9
-rw-r--r--Documentation/devicetree/bindings/spi/spi-rockchip.txt37
-rw-r--r--Documentation/devicetree/bindings/spi/spi-samsung.txt26
-rw-r--r--Documentation/devicetree/bindings/usb/ci-hdrc-imx.txt2
-rw-r--r--Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt8
-rw-r--r--Documentation/devicetree/bindings/usb/usb-xhci.txt3
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt1
61 files changed, 1431 insertions, 123 deletions
diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt b/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt
index 832fe8cc24d7..adc61b095bd1 100644
--- a/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt
+++ b/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt
@@ -14,14 +14,21 @@ Required properties:
14 for exynos4412/5250 controllers. 14 for exynos4412/5250 controllers.
15 Must be "samsung,exynos-adc-v2" for 15 Must be "samsung,exynos-adc-v2" for
16 future controllers. 16 future controllers.
17 Must be "samsung,exynos3250-adc" for
18 controllers compatible with ADC of Exynos3250.
17- reg: Contains ADC register address range (base address and 19- reg: Contains ADC register address range (base address and
18 length) and the address of the phy enable register. 20 length) and the address of the phy enable register.
19- interrupts: Contains the interrupt information for the timer. The 21- interrupts: Contains the interrupt information for the timer. The
20 format is being dependent on which interrupt controller 22 format is being dependent on which interrupt controller
21 the Samsung device uses. 23 the Samsung device uses.
22- #io-channel-cells = <1>; As ADC has multiple outputs 24- #io-channel-cells = <1>; As ADC has multiple outputs
23- clocks From common clock binding: handle to adc clock. 25- clocks From common clock bindings: handles to clocks specified
24- clock-names From common clock binding: Shall be "adc". 26 in "clock-names" property, in the same order.
27- clock-names From common clock bindings: list of clock input names
28 used by ADC block:
29 - "adc" : ADC bus clock
30 - "sclk" : ADC special clock (only for Exynos3250 and
31 compatible ADC block)
25- vdd-supply VDD input supply. 32- vdd-supply VDD input supply.
26 33
27Note: child nodes can be added for auto probing from device tree. 34Note: child nodes can be added for auto probing from device tree.
@@ -41,6 +48,20 @@ adc: adc@12D10000 {
41 vdd-supply = <&buck5_reg>; 48 vdd-supply = <&buck5_reg>;
42}; 49};
43 50
51Example: adding device info in dtsi file for Exynos3250 with additional sclk
52
53adc: adc@126C0000 {
54 compatible = "samsung,exynos3250-adc", "samsung,exynos-adc-v2;
55 reg = <0x126C0000 0x100>, <0x10020718 0x4>;
56 interrupts = <0 137 0>;
57 #io-channel-cells = <1>;
58 io-channel-ranges;
59
60 clocks = <&cmu CLK_TSADC>, <&cmu CLK_SCLK_TSADC>;
61 clock-names = "adc", "sclk";
62
63 vdd-supply = <&buck5_reg>;
64};
44 65
45Example: Adding child nodes in dts file 66Example: Adding child nodes in dts file
46 67
diff --git a/Documentation/devicetree/bindings/arm/samsung/pmu.txt b/Documentation/devicetree/bindings/arm/samsung/pmu.txt
index 2a4ab046a8a1..f9865e77e0b0 100644
--- a/Documentation/devicetree/bindings/arm/samsung/pmu.txt
+++ b/Documentation/devicetree/bindings/arm/samsung/pmu.txt
@@ -12,8 +12,38 @@ Properties:
12 12
13 - reg : offset and length of the register set. 13 - reg : offset and length of the register set.
14 14
15 - #clock-cells : must be <1>, since PMU requires once cell as clock specifier.
16 The single specifier cell is used as index to list of clocks
17 provided by PMU, which is currently:
18 0 : SoC clock output (CLKOUT pin)
19
20 - clock-names : list of clock names for particular CLKOUT mux inputs in
21 following format:
22 "clkoutN", where N is a decimal number corresponding to
23 CLKOUT mux control bits value for given input, e.g.
24 "clkout0", "clkout7", "clkout15".
25
26 - clocks : list of phandles and specifiers to all input clocks listed in
27 clock-names property.
28
15Example : 29Example :
16pmu_system_controller: system-controller@10040000 { 30pmu_system_controller: system-controller@10040000 {
17 compatible = "samsung,exynos5250-pmu", "syscon"; 31 compatible = "samsung,exynos5250-pmu", "syscon";
18 reg = <0x10040000 0x5000>; 32 reg = <0x10040000 0x5000>;
33 #clock-cells = <1>;
34 clock-names = "clkout0", "clkout1", "clkout2", "clkout3",
35 "clkout4", "clkout8", "clkout9";
36 clocks = <&clock CLK_OUT_DMC>, <&clock CLK_OUT_TOP>,
37 <&clock CLK_OUT_LEFTBUS>, <&clock CLK_OUT_RIGHTBUS>,
38 <&clock CLK_OUT_CPU>, <&clock CLK_XXTI>,
39 <&clock CLK_XUSBXTI>;
40};
41
42Example of clock consumer :
43
44usb3503: usb3503@08 {
45 /* ... */
46 clock-names = "refclk";
47 clocks = <&pmu_system_controller 0>;
48 /* ... */
19}; 49};
diff --git a/Documentation/devicetree/bindings/ata/ahci-platform.txt b/Documentation/devicetree/bindings/ata/ahci-platform.txt
index c96d8dcf98fd..4ab09f2202d4 100644
--- a/Documentation/devicetree/bindings/ata/ahci-platform.txt
+++ b/Documentation/devicetree/bindings/ata/ahci-platform.txt
@@ -3,28 +3,43 @@
3SATA nodes are defined to describe on-chip Serial ATA controllers. 3SATA nodes are defined to describe on-chip Serial ATA controllers.
4Each SATA controller should have its own node. 4Each SATA controller should have its own node.
5 5
6It is possible, but not required, to represent each port as a sub-node.
7It allows to enable each port independently when dealing with multiple
8PHYs.
9
6Required properties: 10Required properties:
7- compatible : compatible string, one of: 11- compatible : compatible string, one of:
8 - "allwinner,sun4i-a10-ahci" 12 - "allwinner,sun4i-a10-ahci"
9 - "fsl,imx53-ahci"
10 - "fsl,imx6q-ahci"
11 - "hisilicon,hisi-ahci" 13 - "hisilicon,hisi-ahci"
12 - "ibm,476gtr-ahci" 14 - "ibm,476gtr-ahci"
13 - "marvell,armada-380-ahci" 15 - "marvell,armada-380-ahci"
14 - "snps,dwc-ahci" 16 - "snps,dwc-ahci"
15 - "snps,exynos5440-ahci" 17 - "snps,exynos5440-ahci"
16 - "snps,spear-ahci" 18 - "snps,spear-ahci"
19 - "generic-ahci"
17- interrupts : <interrupt mapping for SATA IRQ> 20- interrupts : <interrupt mapping for SATA IRQ>
18- reg : <registers mapping> 21- reg : <registers mapping>
19 22
23Please note that when using "generic-ahci" you must also specify a SoC specific
24compatible:
25 compatible = "manufacturer,soc-model-ahci", "generic-ahci";
26
20Optional properties: 27Optional properties:
21- dma-coherent : Present if dma operations are coherent 28- dma-coherent : Present if dma operations are coherent
22- clocks : a list of phandle + clock specifier pairs 29- clocks : a list of phandle + clock specifier pairs
23- target-supply : regulator for SATA target power 30- target-supply : regulator for SATA target power
31- phys : reference to the SATA PHY node
32- phy-names : must be "sata-phy"
33
34Required properties when using sub-nodes:
35- #address-cells : number of cells to encode an address
36- #size-cells : number of cells representing the size of an address
37
38
39Sub-nodes required properties:
40- reg : the port number
41- phys : reference to the SATA PHY node
24 42
25"fsl,imx53-ahci", "fsl,imx6q-ahci" required properties:
26- clocks : must contain the sata, sata_ref and ahb clocks
27- clock-names : must contain "ahb" for the ahb clock
28 43
29Examples: 44Examples:
30 sata@ffe08000 { 45 sata@ffe08000 {
@@ -40,3 +55,23 @@ Examples:
40 clocks = <&pll6 0>, <&ahb_gates 25>; 55 clocks = <&pll6 0>, <&ahb_gates 25>;
41 target-supply = <&reg_ahci_5v>; 56 target-supply = <&reg_ahci_5v>;
42 }; 57 };
58
59With sub-nodes:
60 sata@f7e90000 {
61 compatible = "marvell,berlin2q-achi", "generic-ahci";
62 reg = <0xe90000 0x1000>;
63 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
64 clocks = <&chip CLKID_SATA>;
65 #address-cells = <1>;
66 #size-cells = <0>;
67
68 sata0: sata-port@0 {
69 reg = <0>;
70 phys = <&sata_phy 0>;
71 };
72
73 sata1: sata-port@1 {
74 reg = <1>;
75 phys = <&sata_phy 1>;
76 };
77 };
diff --git a/Documentation/devicetree/bindings/ata/ahci-st.txt b/Documentation/devicetree/bindings/ata/ahci-st.txt
new file mode 100644
index 000000000000..0574a77a0b9f
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/ahci-st.txt
@@ -0,0 +1,31 @@
1STMicroelectronics STi SATA controller
2
3This binding describes a SATA device.
4
5Required properties:
6 - compatible : Must be "st,sti-ahci"
7 - reg : Physical base addresses and length of register sets
8 - interrupts : Interrupt associated with the SATA device
9 - interrupt-names : Associated name must be; "hostc"
10 - resets : The power-down and soft-reset lines of SATA IP
11 - reset-names : Associated names must be; "pwr-dwn" and "sw-rst"
12 - clocks : The phandle for the clock
13 - clock-names : Associated name must be; "ahci_clk"
14 - phys : The phandle for the PHY device
15 - phy-names : Associated name must be; "ahci_phy"
16
17Example:
18
19 sata0: sata@fe380000 {
20 compatible = "st,sti-ahci";
21 reg = <0xfe380000 0x1000>;
22 interrupts = <GIC_SPI 157 IRQ_TYPE_NONE>;
23 interrupt-names = "hostc";
24 phys = <&miphy365x_phy MIPHY_PORT_0 MIPHY_TYPE_SATA>;
25 phy-names = "ahci_phy";
26 resets = <&powerdown STIH416_SATA0_POWERDOWN>,
27 <&softreset STIH416_SATA0_SOFTRESET>;
28 reset-names = "pwr-dwn", "sw-rst";
29 clocks = <&clk_s_a0_ls CLK_ICN_REG>;
30 clock-names = "ahci_clk";
31 };
diff --git a/Documentation/devicetree/bindings/ata/imx-sata.txt b/Documentation/devicetree/bindings/ata/imx-sata.txt
new file mode 100644
index 000000000000..fa511db18408
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/imx-sata.txt
@@ -0,0 +1,36 @@
1* Freescale i.MX AHCI SATA Controller
2
3The Freescale i.MX SATA controller mostly conforms to the AHCI interface
4with some special extensions at integration level.
5
6Required properties:
7- compatible : should be one of the following:
8 - "fsl,imx53-ahci" for i.MX53 SATA controller
9 - "fsl,imx6q-ahci" for i.MX6Q SATA controller
10- interrupts : interrupt mapping for SATA IRQ
11- reg : registers mapping
12- clocks : list of clock specifiers, must contain an entry for each
13 required entry in clock-names
14- clock-names : should include "sata", "sata_ref" and "ahb" entries
15
16Optional properties:
17- fsl,transmit-level-mV : transmit voltage level, in millivolts.
18- fsl,transmit-boost-mdB : transmit boost level, in milli-decibels
19- fsl,transmit-atten-16ths : transmit attenuation, in 16ths
20- fsl,receive-eq-mdB : receive equalisation, in milli-decibels
21 Please refer to the technical documentation or the driver source code
22 for the list of legal values for these options.
23- fsl,no-spread-spectrum : disable spread-spectrum clocking on the SATA
24 link.
25
26Examples:
27
28sata@02200000 {
29 compatible = "fsl,imx6q-ahci";
30 reg = <0x02200000 0x4000>;
31 interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
32 clocks = <&clks IMX6QDL_CLK_SATA>,
33 <&clks IMX6QDL_CLK_SATA_REF_100M>,
34 <&clks IMX6QDL_CLK_AHB>;
35 clock-names = "sata", "sata_ref", "ahb";
36};
diff --git a/Documentation/devicetree/bindings/ata/tegra-sata.txt b/Documentation/devicetree/bindings/ata/tegra-sata.txt
new file mode 100644
index 000000000000..946f2072570b
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/tegra-sata.txt
@@ -0,0 +1,30 @@
1Tegra124 SoC SATA AHCI controller
2
3Required properties :
4- compatible : "nvidia,tegra124-ahci".
5- reg : Should contain 2 entries:
6 - AHCI register set (SATA BAR5)
7 - SATA register set
8- interrupts : Defines the interrupt used by SATA
9- clocks : Must contain an entry for each entry in clock-names.
10 See ../clocks/clock-bindings.txt for details.
11- clock-names : Must include the following entries:
12 - sata
13 - sata-oob
14 - cml1
15 - pll_e
16- resets : Must contain an entry for each entry in reset-names.
17 See ../reset/reset.txt for details.
18- reset-names : Must include the following entries:
19 - sata
20 - sata-oob
21 - sata-cold
22- phys : Must contain an entry for each entry in phy-names.
23 See ../phy/phy-bindings.txt for details.
24- phy-names : Must include the following entries:
25 - sata-phy : XUSB PADCTL SATA PHY
26- hvdd-supply : Defines the SATA HVDD regulator
27- vddio-supply : Defines the SATA VDDIO regulator
28- avdd-supply : Defines the SATA AVDD regulator
29- target-5v-supply : Defines the SATA 5V power regulator
30- target-12v-supply : Defines the SATA 12V power regulator
diff --git a/Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt b/Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt
new file mode 100644
index 000000000000..4208886d834a
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt
@@ -0,0 +1,35 @@
1* Palmas 32KHz clocks *
2
3Palmas device has two clock output pins for 32KHz, KG and KG_AUDIO.
4
5This binding uses the common clock binding ./clock-bindings.txt.
6
7Required properties:
8- compatible : "ti,palmas-clk32kg" for clk32kg clock
9 "ti,palmas-clk32kgaudio" for clk32kgaudio clock
10- #clock-cells : shall be set to 0.
11
12Optional property:
13- ti,external-sleep-control: The external enable input pins controlled the
14 enable/disable of clocks. The external enable input pins ENABLE1,
15 ENABLE2 and NSLEEP. The valid values for the external pins are:
16 PALMAS_EXT_CONTROL_PIN_ENABLE1 for ENABLE1 pin
17 PALMAS_EXT_CONTROL_PIN_ENABLE2 for ENABLE2 pin
18 PALMAS_EXT_CONTROL_PIN_NSLEEP for NSLEEP pin
19 Option 0 or missing this property means the clock is enabled/disabled
20 via register access and these pins do not have any control.
21 The macros of external control pins for DTS is defined at
22 dt-bindings/mfd/palmas.h
23
24Example:
25 #include <dt-bindings/mfd/palmas.h>
26 ...
27 palmas: tps65913@58 {
28 ...
29 clk32kg: palmas_clk32k@0 {
30 compatible = "ti,palmas-clk32kg";
31 #clock-cells = <0>;
32 ti,external-sleep-control = <PALMAS_EXT_CONTROL_PIN_NSLEEP>;
33 };
34 ...
35 };
diff --git a/Documentation/devicetree/bindings/clock/clock-bindings.txt b/Documentation/devicetree/bindings/clock/clock-bindings.txt
index f15787817d6b..06fc6d541c89 100644
--- a/Documentation/devicetree/bindings/clock/clock-bindings.txt
+++ b/Documentation/devicetree/bindings/clock/clock-bindings.txt
@@ -131,3 +131,39 @@ clock signal, and a UART.
131 ("pll" and "pll-switched"). 131 ("pll" and "pll-switched").
132* The UART has its baud clock connected the external oscillator and its 132* The UART has its baud clock connected the external oscillator and its
133 register clock connected to the PLL clock (the "pll-switched" signal) 133 register clock connected to the PLL clock (the "pll-switched" signal)
134
135==Assigned clock parents and rates==
136
137Some platforms may require initial configuration of default parent clocks
138and clock frequencies. Such a configuration can be specified in a device tree
139node through assigned-clocks, assigned-clock-parents and assigned-clock-rates
140properties. The assigned-clock-parents property should contain a list of parent
141clocks in form of phandle and clock specifier pairs, the assigned-clock-parents
142property the list of assigned clock frequency values - corresponding to clocks
143listed in the assigned-clocks property.
144
145To skip setting parent or rate of a clock its corresponding entry should be
146set to 0, or can be omitted if it is not followed by any non-zero entry.
147
148 uart@a000 {
149 compatible = "fsl,imx-uart";
150 reg = <0xa000 0x1000>;
151 ...
152 clocks = <&osc 0>, <&pll 1>;
153 clock-names = "baud", "register";
154
155 assigned-clocks = <&clkcon 0>, <&pll 2>;
156 assigned-clock-parents = <&pll 2>;
157 assigned-clock-rates = <0>, <460800>;
158 };
159
160In this example the <&pll 2> clock is set as parent of clock <&clkcon 0> and
161the <&pll 2> clock is assigned a frequency value of 460800 Hz.
162
163Configuring a clock's parent and rate through the device node that consumes
164the clock can be done only for clocks that have a single user. Specifying
165conflicting parent or rate configuration in multiple consumer nodes for
166a shared clock is forbidden.
167
168Configuration of common clocks, which affect multiple consumer devices can
169be similarly specified in the clock provider node.
diff --git a/Documentation/devicetree/bindings/clock/clps711x-clock.txt b/Documentation/devicetree/bindings/clock/clps711x-clock.txt
new file mode 100644
index 000000000000..ce5a7476f05d
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/clps711x-clock.txt
@@ -0,0 +1,19 @@
1* Clock bindings for the Cirrus Logic CLPS711X CPUs
2
3Required properties:
4- compatible : Shall contain "cirrus,clps711x-clk".
5- reg : Address of the internal register set.
6- startup-frequency: Factory set CPU startup frequency in HZ.
7- #clock-cells : Should be <1>.
8
9The clock consumer should specify the desired clock by having the clock
10ID in its "clocks" phandle cell. See include/dt-bindings/clock/clps711x-clock.h
11for the full list of CLPS711X clock IDs.
12
13Example:
14 clks: clks@80000000 {
15 #clock-cells = <1>;
16 compatible = "cirrus,ep7312-clk", "cirrus,clps711x-clk";
17 reg = <0x80000000 0xc000>;
18 startup-frequency = <73728000>;
19 };
diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc.txt b/Documentation/devicetree/bindings/clock/qcom,gcc.txt
index 9cfcb4f2bc97..aba3d254e037 100644
--- a/Documentation/devicetree/bindings/clock/qcom,gcc.txt
+++ b/Documentation/devicetree/bindings/clock/qcom,gcc.txt
@@ -5,6 +5,8 @@ Required properties :
5- compatible : shall contain only one of the following: 5- compatible : shall contain only one of the following:
6 6
7 "qcom,gcc-apq8064" 7 "qcom,gcc-apq8064"
8 "qcom,gcc-apq8084"
9 "qcom,gcc-ipq8064"
8 "qcom,gcc-msm8660" 10 "qcom,gcc-msm8660"
9 "qcom,gcc-msm8960" 11 "qcom,gcc-msm8960"
10 "qcom,gcc-msm8974" 12 "qcom,gcc-msm8974"
diff --git a/Documentation/devicetree/bindings/clock/qcom,mmcc.txt b/Documentation/devicetree/bindings/clock/qcom,mmcc.txt
index d572e9964c54..29ebf84d25af 100644
--- a/Documentation/devicetree/bindings/clock/qcom,mmcc.txt
+++ b/Documentation/devicetree/bindings/clock/qcom,mmcc.txt
@@ -4,6 +4,8 @@ Qualcomm Multimedia Clock & Reset Controller Binding
4Required properties : 4Required properties :
5- compatible : shall contain only one of the following: 5- compatible : shall contain only one of the following:
6 6
7 "qcom,mmcc-apq8064"
8 "qcom,mmcc-apq8084"
7 "qcom,mmcc-msm8660" 9 "qcom,mmcc-msm8660"
8 "qcom,mmcc-msm8960" 10 "qcom,mmcc-msm8960"
9 "qcom,mmcc-msm8974" 11 "qcom,mmcc-msm8974"
diff --git a/Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.txt b/Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.txt
new file mode 100644
index 000000000000..0c2bf5eba43e
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.txt
@@ -0,0 +1,61 @@
1* Rockchip RK3188/RK3066 Clock and Reset Unit
2
3The RK3188/RK3066 clock controller generates and supplies clock to various
4controllers within the SoC and also implements a reset controller for SoC
5peripherals.
6
7Required Properties:
8
9- compatible: should be "rockchip,rk3188-cru", "rockchip,rk3188a-cru" or
10 "rockchip,rk3066a-cru"
11- reg: physical base address of the controller and length of memory mapped
12 region.
13- #clock-cells: should be 1.
14- #reset-cells: should be 1.
15
16Optional Properties:
17
18- rockchip,grf: phandle to the syscon managing the "general register files"
19 If missing pll rates are not changable, due to the missing pll lock status.
20
21Each clock is assigned an identifier and client nodes can use this identifier
22to specify the clock which they consume. All available clocks are defined as
23preprocessor macros in the dt-bindings/clock/rk3188-cru.h and
24dt-bindings/clock/rk3066-cru.h headers and can be used in device tree sources.
25Similar macros exist for the reset sources in these files.
26
27External clocks:
28
29There are several clocks that are generated outside the SoC. It is expected
30that they are defined using standard clock bindings with following
31clock-output-names:
32 - "xin24m" - crystal input - required,
33 - "xin32k" - rtc clock - optional,
34 - "xin27m" - 27mhz crystal input on rk3066 - optional,
35 - "ext_hsadc" - external HSADC clock - optional,
36 - "ext_cif0" - external camera clock - optional,
37 - "ext_rmii" - external RMII clock - optional,
38 - "ext_jtag" - externalJTAG clock - optional
39
40Example: Clock controller node:
41
42 cru: cru@20000000 {
43 compatible = "rockchip,rk3188-cru";
44 reg = <0x20000000 0x1000>;
45 rockchip,grf = <&grf>;
46
47 #clock-cells = <1>;
48 #reset-cells = <1>;
49 };
50
51Example: UART controller node that consumes the clock generated by the clock
52 controller:
53
54 uart0: serial@10124000 {
55 compatible = "snps,dw-apb-uart";
56 reg = <0x10124000 0x400>;
57 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
58 reg-shift = <2>;
59 reg-io-width = <1>;
60 clocks = <&cru SCLK_UART0>;
61 };
diff --git a/Documentation/devicetree/bindings/clock/rockchip,rk3288-cru.txt b/Documentation/devicetree/bindings/clock/rockchip,rk3288-cru.txt
new file mode 100644
index 000000000000..c9fbb76573e1
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/rockchip,rk3288-cru.txt
@@ -0,0 +1,61 @@
1* Rockchip RK3288 Clock and Reset Unit
2
3The RK3288 clock controller generates and supplies clock to various
4controllers within the SoC and also implements a reset controller for SoC
5peripherals.
6
7Required Properties:
8
9- compatible: should be "rockchip,rk3288-cru"
10- reg: physical base address of the controller and length of memory mapped
11 region.
12- #clock-cells: should be 1.
13- #reset-cells: should be 1.
14
15Optional Properties:
16
17- rockchip,grf: phandle to the syscon managing the "general register files"
18 If missing pll rates are not changable, due to the missing pll lock status.
19
20Each clock is assigned an identifier and client nodes can use this identifier
21to specify the clock which they consume. All available clocks are defined as
22preprocessor macros in the dt-bindings/clock/rk3288-cru.h headers and can be
23used in device tree sources. Similar macros exist for the reset sources in
24these files.
25
26External clocks:
27
28There are several clocks that are generated outside the SoC. It is expected
29that they are defined using standard clock bindings with following
30clock-output-names:
31 - "xin24m" - crystal input - required,
32 - "xin32k" - rtc clock - optional,
33 - "ext_i2s" - external I2S clock - optional,
34 - "ext_hsadc" - external HSADC clock - optional,
35 - "ext_edp_24m" - external display port clock - optional,
36 - "ext_vip" - external VIP clock - optional,
37 - "ext_isp" - external ISP clock - optional,
38 - "ext_jtag" - external JTAG clock - optional
39
40Example: Clock controller node:
41
42 cru: cru@20000000 {
43 compatible = "rockchip,rk3188-cru";
44 reg = <0x20000000 0x1000>;
45 rockchip,grf = <&grf>;
46
47 #clock-cells = <1>;
48 #reset-cells = <1>;
49 };
50
51Example: UART controller node that consumes the clock generated by the clock
52 controller:
53
54 uart0: serial@10124000 {
55 compatible = "snps,dw-apb-uart";
56 reg = <0x10124000 0x400>;
57 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
58 reg-shift = <2>;
59 reg-io-width = <1>;
60 clocks = <&cru SCLK_UART0>;
61 };
diff --git a/Documentation/devicetree/bindings/clock/rockchip.txt b/Documentation/devicetree/bindings/clock/rockchip.txt
index a891c823ed44..22f6769e5d4a 100644
--- a/Documentation/devicetree/bindings/clock/rockchip.txt
+++ b/Documentation/devicetree/bindings/clock/rockchip.txt
@@ -6,6 +6,9 @@ This binding uses the common clock binding[1].
6 6
7== Gate clocks == 7== Gate clocks ==
8 8
9These bindings are deprecated!
10Please use the soc specific CRU bindings instead.
11
9The gate registers form a continuos block which makes the dt node 12The gate registers form a continuos block which makes the dt node
10structure a matter of taste, as either all gates can be put into 13structure a matter of taste, as either all gates can be put into
11one gate clock spanning all registers or they can be divided into 14one gate clock spanning all registers or they can be divided into
diff --git a/Documentation/devicetree/bindings/clock/st/st,clkgen-divmux.txt b/Documentation/devicetree/bindings/clock/st/st,clkgen-divmux.txt
index ae56315fcec5..6247652044a0 100644
--- a/Documentation/devicetree/bindings/clock/st/st,clkgen-divmux.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,clkgen-divmux.txt
@@ -24,26 +24,26 @@ Required properties:
24 24
25Example: 25Example:
26 26
27 clockgenA@fd345000 { 27 clockgen-a@fd345000 {
28 reg = <0xfd345000 0xb50>; 28 reg = <0xfd345000 0xb50>;
29 29
30 CLK_M_A1_DIV1: CLK_M_A1_DIV1 { 30 clk_m_a1_div1: clk-m-a1-div1 {
31 #clock-cells = <1>; 31 #clock-cells = <1>;
32 compatible = "st,clkgena-divmux-c32-odf1", 32 compatible = "st,clkgena-divmux-c32-odf1",
33 "st,clkgena-divmux"; 33 "st,clkgena-divmux";
34 34
35 clocks = <&CLK_M_A1_OSC_PREDIV>, 35 clocks = <&clk_m_a1_osc_prediv>,
36 <&CLK_M_A1_PLL0 1>, /* PLL0 PHI1 */ 36 <&clk_m_a1_pll0 1>, /* PLL0 PHI1 */
37 <&CLK_M_A1_PLL1 1>; /* PLL1 PHI1 */ 37 <&clk_m_a1_pll1 1>; /* PLL1 PHI1 */
38 38
39 clock-output-names = "CLK_M_RX_ICN_TS", 39 clock-output-names = "clk-m-rx-icn-ts",
40 "CLK_M_RX_ICN_VDP_0", 40 "clk-m-rx-icn-vdp-0",
41 "", /* Unused */ 41 "", /* unused */
42 "CLK_M_PRV_T1_BUS", 42 "clk-m-prv-t1-bus",
43 "CLK_M_ICN_REG_12", 43 "clk-m-icn-reg-12",
44 "CLK_M_ICN_REG_10", 44 "clk-m-icn-reg-10",
45 "", /* Unused */ 45 "", /* unused */
46 "CLK_M_ICN_ST231"; 46 "clk-m-icn-st231";
47 }; 47 };
48 }; 48 };
49 49
diff --git a/Documentation/devicetree/bindings/clock/st/st,clkgen-mux.txt b/Documentation/devicetree/bindings/clock/st/st,clkgen-mux.txt
index 943e0808e212..f1fa91c68768 100644
--- a/Documentation/devicetree/bindings/clock/st/st,clkgen-mux.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,clkgen-mux.txt
@@ -17,7 +17,7 @@ Required properties:
17 "st,stih416-clkgenf-vcc-sd", "st,clkgen-mux" 17 "st,stih416-clkgenf-vcc-sd", "st,clkgen-mux"
18 "st,stih415-clkgen-a9-mux", "st,clkgen-mux" 18 "st,stih415-clkgen-a9-mux", "st,clkgen-mux"
19 "st,stih416-clkgen-a9-mux", "st,clkgen-mux" 19 "st,stih416-clkgen-a9-mux", "st,clkgen-mux"
20 20 "st,stih407-clkgen-a9-mux", "st,clkgen-mux"
21 21
22- #clock-cells : from common clock binding; shall be set to 0. 22- #clock-cells : from common clock binding; shall be set to 0.
23 23
@@ -27,10 +27,10 @@ Required properties:
27 27
28Example: 28Example:
29 29
30 CLK_M_HVA: CLK_M_HVA { 30 clk_m_hva: clk-m-hva@fd690868 {
31 #clock-cells = <0>; 31 #clock-cells = <0>;
32 compatible = "st,stih416-clkgenf-vcc-hva", "st,clkgen-mux"; 32 compatible = "st,stih416-clkgenf-vcc-hva", "st,clkgen-mux";
33 reg = <0xfd690868 4>; 33 reg = <0xfd690868 4>;
34 34
35 clocks = <&CLOCKGEN_F 1>, <&CLK_M_A1_DIV0 3>; 35 clocks = <&clockgen_f 1>, <&clk_m_a1_div0 3>;
36 }; 36 };
diff --git a/Documentation/devicetree/bindings/clock/st/st,clkgen-pll.txt b/Documentation/devicetree/bindings/clock/st/st,clkgen-pll.txt
index 81eb3855ab92..efb51cf0c845 100644
--- a/Documentation/devicetree/bindings/clock/st/st,clkgen-pll.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,clkgen-pll.txt
@@ -19,11 +19,14 @@ Required properties:
19 "st,stih415-plls-c32-ddr", "st,clkgen-plls-c32" 19 "st,stih415-plls-c32-ddr", "st,clkgen-plls-c32"
20 "st,stih416-plls-c32-a9", "st,clkgen-plls-c32" 20 "st,stih416-plls-c32-a9", "st,clkgen-plls-c32"
21 "st,stih416-plls-c32-ddr", "st,clkgen-plls-c32" 21 "st,stih416-plls-c32-ddr", "st,clkgen-plls-c32"
22 "st,stih407-plls-c32-a0", "st,clkgen-plls-c32"
23 "st,stih407-plls-c32-a9", "st,clkgen-plls-c32"
24 "st,stih407-plls-c32-c0_0", "st,clkgen-plls-c32"
25 "st,stih407-plls-c32-c0_1", "st,clkgen-plls-c32"
22 26
23 "st,stih415-gpu-pll-c32", "st,clkgengpu-pll-c32" 27 "st,stih415-gpu-pll-c32", "st,clkgengpu-pll-c32"
24 "st,stih416-gpu-pll-c32", "st,clkgengpu-pll-c32" 28 "st,stih416-gpu-pll-c32", "st,clkgengpu-pll-c32"
25 29
26
27- #clock-cells : From common clock binding; shall be set to 1. 30- #clock-cells : From common clock binding; shall be set to 1.
28 31
29- clocks : From common clock binding 32- clocks : From common clock binding
@@ -32,17 +35,17 @@ Required properties:
32 35
33Example: 36Example:
34 37
35 clockgenA@fee62000 { 38 clockgen-a@fee62000 {
36 reg = <0xfee62000 0xb48>; 39 reg = <0xfee62000 0xb48>;
37 40
38 CLK_S_A0_PLL: CLK_S_A0_PLL { 41 clk_s_a0_pll: clk-s-a0-pll {
39 #clock-cells = <1>; 42 #clock-cells = <1>;
40 compatible = "st,clkgena-plls-c65"; 43 compatible = "st,clkgena-plls-c65";
41 44
42 clocks = <&CLK_SYSIN>; 45 clocks = <&clk_sysin>;
43 46
44 clock-output-names = "CLK_S_A0_PLL0_HS", 47 clock-output-names = "clk-s-a0-pll0-hs",
45 "CLK_S_A0_PLL0_LS", 48 "clk-s-a0-pll0-ls",
46 "CLK_S_A0_PLL1"; 49 "clk-s-a0-pll1";
47 }; 50 };
48 }; 51 };
diff --git a/Documentation/devicetree/bindings/clock/st/st,clkgen-prediv.txt b/Documentation/devicetree/bindings/clock/st/st,clkgen-prediv.txt
index 566c9d79ed32..604766c2619e 100644
--- a/Documentation/devicetree/bindings/clock/st/st,clkgen-prediv.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,clkgen-prediv.txt
@@ -20,17 +20,17 @@ Required properties:
20 20
21Example: 21Example:
22 22
23 clockgenA@fd345000 { 23 clockgen-a@fd345000 {
24 reg = <0xfd345000 0xb50>; 24 reg = <0xfd345000 0xb50>;
25 25
26 CLK_M_A2_OSC_PREDIV: CLK_M_A2_OSC_PREDIV { 26 clk_m_a2_osc_prediv: clk-m-a2-osc-prediv {
27 #clock-cells = <0>; 27 #clock-cells = <0>;
28 compatible = "st,clkgena-prediv-c32", 28 compatible = "st,clkgena-prediv-c32",
29 "st,clkgena-prediv"; 29 "st,clkgena-prediv";
30 30
31 clocks = <&CLK_SYSIN>; 31 clocks = <&clk_sysin>;
32 32
33 clock-output-names = "CLK_M_A2_OSC_PREDIV"; 33 clock-output-names = "clk-m-a2-osc-prediv";
34 }; 34 };
35 }; 35 };
36 36
diff --git a/Documentation/devicetree/bindings/clock/st/st,clkgen-vcc.txt b/Documentation/devicetree/bindings/clock/st/st,clkgen-vcc.txt
index 4e3ff28b04c3..109b3eddcb17 100644
--- a/Documentation/devicetree/bindings/clock/st/st,clkgen-vcc.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,clkgen-vcc.txt
@@ -32,22 +32,30 @@ Required properties:
32 32
33Example: 33Example:
34 34
35 CLOCKGEN_C_VCC: CLOCKGEN_C_VCC { 35 clockgen_c_vcc: clockgen-c-vcc@0xfe8308ac {
36 #clock-cells = <1>; 36 #clock-cells = <1>;
37 compatible = "st,stih416-clkgenc", "st,clkgen-vcc"; 37 compatible = "st,stih416-clkgenc", "st,clkgen-vcc";
38 reg = <0xfe8308ac 12>; 38 reg = <0xfe8308ac 12>;
39 39
40 clocks = <&CLK_S_VCC_HD>, <&CLOCKGEN_C 1>, 40 clocks = <&clk_s_vcc_hd>,
41 <&CLK_S_TMDS_FROMPHY>, <&CLOCKGEN_C 2>; 41 <&clockgen_c 1>,
42 42 <&clk_s_tmds_fromphy>,
43 clock-output-names = 43 <&clockgen_c 2>;
44 "CLK_S_PIX_HDMI", "CLK_S_PIX_DVO", 44
45 "CLK_S_OUT_DVO", "CLK_S_PIX_HD", 45 clock-output-names = "clk-s-pix-hdmi",
46 "CLK_S_HDDAC", "CLK_S_DENC", 46 "clk-s-pix-dvo",
47 "CLK_S_SDDAC", "CLK_S_PIX_MAIN", 47 "clk-s-out-dvo",
48 "CLK_S_PIX_AUX", "CLK_S_STFE_FRC_0", 48 "clk-s-pix-hd",
49 "CLK_S_REF_MCRU", "CLK_S_SLAVE_MCRU", 49 "clk-s-hddac",
50 "CLK_S_TMDS_HDMI", "CLK_S_HDMI_REJECT_PLL", 50 "clk-s-denc",
51 "CLK_S_THSENS"; 51 "clk-s-sddac",
52 "clk-s-pix-main",
53 "clk-s-pix-aux",
54 "clk-s-stfe-frc-0",
55 "clk-s-ref-mcru",
56 "clk-s-slave-mcru",
57 "clk-s-tmds-hdmi",
58 "clk-s-hdmi-reject-pll",
59 "clk-s-thsens";
52 }; 60 };
53 61
diff --git a/Documentation/devicetree/bindings/clock/st/st,clkgen.txt b/Documentation/devicetree/bindings/clock/st/st,clkgen.txt
index 49ec5ae18b5b..78978f1f5158 100644
--- a/Documentation/devicetree/bindings/clock/st/st,clkgen.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,clkgen.txt
@@ -24,60 +24,77 @@ address is common of all subnode.
24 quadfs_node { 24 quadfs_node {
25 ... 25 ...
26 }; 26 };
27
28 mux_node {
29 ...
30 };
31
32 vcc_node {
33 ...
34 };
35
36 flexgen_node {
37 ...
38 };
27 ... 39 ...
28 }; 40 };
29 41
30This binding uses the common clock binding[1]. 42This binding uses the common clock binding[1].
31Each subnode should use the binding discribe in [2]..[4] 43Each subnode should use the binding discribe in [2]..[7]
32 44
33[1] Documentation/devicetree/bindings/clock/clock-bindings.txt 45[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
34[2] Documentation/devicetree/bindings/clock/st,quadfs.txt 46[2] Documentation/devicetree/bindings/clock/st,clkgen-divmux.txt
35[3] Documentation/devicetree/bindings/clock/st,quadfs.txt 47[3] Documentation/devicetree/bindings/clock/st,clkgen-mux.txt
36[4] Documentation/devicetree/bindings/clock/st,quadfs.txt 48[4] Documentation/devicetree/bindings/clock/st,clkgen-pll.txt
49[5] Documentation/devicetree/bindings/clock/st,clkgen-prediv.txt
50[6] Documentation/devicetree/bindings/clock/st,vcc.txt
51[7] Documentation/devicetree/bindings/clock/st,quadfs.txt
52[8] Documentation/devicetree/bindings/clock/st,flexgen.txt
53
37 54
38Required properties: 55Required properties:
39- reg : A Base address and length of the register set. 56- reg : A Base address and length of the register set.
40 57
41Example: 58Example:
42 59
43 clockgenA@fee62000 { 60 clockgen-a@fee62000 {
44 61
45 reg = <0xfee62000 0xb48>; 62 reg = <0xfee62000 0xb48>;
46 63
47 CLK_S_A0_PLL: CLK_S_A0_PLL { 64 clk_s_a0_pll: clk-s-a0-pll {
48 #clock-cells = <1>; 65 #clock-cells = <1>;
49 compatible = "st,clkgena-plls-c65"; 66 compatible = "st,clkgena-plls-c65";
50 67
51 clocks = <&CLK_SYSIN>; 68 clocks = <&clk-sysin>;
52 69
53 clock-output-names = "CLK_S_A0_PLL0_HS", 70 clock-output-names = "clk-s-a0-pll0-hs",
54 "CLK_S_A0_PLL0_LS", 71 "clk-s-a0-pll0-ls",
55 "CLK_S_A0_PLL1"; 72 "clk-s-a0-pll1";
56 }; 73 };
57 74
58 CLK_S_A0_OSC_PREDIV: CLK_S_A0_OSC_PREDIV { 75 clk_s_a0_osc_prediv: clk-s-a0-osc-prediv {
59 #clock-cells = <0>; 76 #clock-cells = <0>;
60 compatible = "st,clkgena-prediv-c65", 77 compatible = "st,clkgena-prediv-c65",
61 "st,clkgena-prediv"; 78 "st,clkgena-prediv";
62 79
63 clocks = <&CLK_SYSIN>; 80 clocks = <&clk_sysin>;
64 81
65 clock-output-names = "CLK_S_A0_OSC_PREDIV"; 82 clock-output-names = "clk-s-a0-osc-prediv";
66 }; 83 };
67 84
68 CLK_S_A0_HS: CLK_S_A0_HS { 85 clk_s_a0_hs: clk-s-a0-hs {
69 #clock-cells = <1>; 86 #clock-cells = <1>;
70 compatible = "st,clkgena-divmux-c65-hs", 87 compatible = "st,clkgena-divmux-c65-hs",
71 "st,clkgena-divmux"; 88 "st,clkgena-divmux";
72 89
73 clocks = <&CLK_S_A0_OSC_PREDIV>, 90 clocks = <&clk-s_a0_osc_prediv>,
74 <&CLK_S_A0_PLL 0>, /* PLL0 HS */ 91 <&clk-s_a0_pll 0>, /* pll0 hs */
75 <&CLK_S_A0_PLL 2>; /* PLL1 */ 92 <&clk-s_a0_pll 2>; /* pll1 */
76 93
77 clock-output-names = "CLK_S_FDMA_0", 94 clock-output-names = "clk-s-fdma-0",
78 "CLK_S_FDMA_1", 95 "clk-s-fdma-1",
79 ""; /* CLK_S_JIT_SENSE */ 96 ""; /* clk-s-jit-sense */
80 /* Fourth output unused */ 97 /* fourth output unused */
81 }; 98 };
82 }; 99 };
83 100
diff --git a/Documentation/devicetree/bindings/clock/st/st,flexgen.txt b/Documentation/devicetree/bindings/clock/st/st,flexgen.txt
new file mode 100644
index 000000000000..1d3ace088172
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/st/st,flexgen.txt
@@ -0,0 +1,119 @@
1Binding for a type of flexgen structure found on certain
2STMicroelectronics consumer electronics SoC devices
3
4This structure includes:
5- a clock cross bar (represented by a mux element)
6- a pre and final dividers (represented by a divider and gate elements)
7
8Flexgen structure is a part of Clockgen[1].
9
10Please find an example below:
11
12 Clockgen block diagram
13 -------------------------------------------------------------------
14 | Flexgen stucture |
15 | --------------------------------------------- |
16 | | ------- -------- -------- | |
17clk_sysin | | | | | | | | |
18---|-----------------|-->| | | | | | | |
19 | | | | | | | | | | |
20 | | ------- | | | |Pre | |Final | | |
21 | | |PLL0 | | | | |Dividers| |Dividers| | |
22 | |->| | | | | | x32 | | x32 | | |
23 | | | odf_0|----|-->| | | | | | | |
24 | | | | | | | | | | | | |
25 | | | | | | | | | | | | |
26 | | | | | | | | | | | | |
27 | | | | | | | | | | | | |
28 | | ------- | | | | | | | | |
29 | | | | | | | | | | |
30 | | ------- | | Clock | | | | | | |
31 | | |PLL1 | | | | | | | | | |
32 | |->| | | | Cross | | | | | | |
33 | | | odf_0|----|-->| | | | | | CLK_DIV[31:0]
34 | | | | | | Bar |====>| |====>| |===|=========>
35 | | | | | | | | | | | | |
36 | | | | | | | | | | | | |
37 | | | | | | | | | | | | |
38 | | ------- | | | | | | | | |
39 | | | | | | | | | | |
40 | | ------- | | | | | | | | |
41 | | |QUADFS | | | | | | | | | |
42 | |->| ch0|----|-->| | | | | | | |
43 | | | | | | | | | | | |
44 | | ch1|----|-->| | | | | | | |
45 | | | | | | | | | | | |
46 | | ch2|----|-->| | | DIV | | DIV | | |
47 | | | | | | | 1 to | | 1 to | | |
48 | | ch3|----|-->| | | 1024 | | 64 | | |
49 | ------- | | | | | | | | |
50 | | ------- -------- -------- | |
51 | -------------------------------------------- |
52 | |
53 -------------------------------------------------------------------
54
55This binding uses the common clock binding[2].
56
57[1] Documentation/devicetree/bindings/clock/st/st,clkgen.txt
58[2] Documentation/devicetree/bindings/clock/clock-bindings.txt
59
60Required properties:
61- compatible : shall be:
62 "st,flexgen"
63
64- #clock-cells : from common clock binding; shall be set to 1 (multiple clock
65 outputs).
66
67- clocks : must be set to the parent's phandle. it's could be output clocks of
68 a quadsfs or/and a pll or/and clk_sysin (up to 7 clocks)
69
70- clock-output-names : List of strings used to name the clock outputs.
71
72Example:
73
74 clk_s_c0_flexgen: clk-s-c0-flexgen {
75
76 #clock-cells = <1>;
77 compatible = "st,flexgen";
78
79 clocks = <&clk_s_c0_pll0 0>,
80 <&clk_s_c0_pll1 0>,
81 <&clk_s_c0_quadfs 0>,
82 <&clk_s_c0_quadfs 1>,
83 <&clk_s_c0_quadfs 2>,
84 <&clk_s_c0_quadfs 3>,
85 <&clk_sysin>;
86
87 clock-output-names = "clk-icn-gpu",
88 "clk-fdma",
89 "clk-nand",
90 "clk-hva",
91 "clk-proc-stfe",
92 "clk-proc-tp",
93 "clk-rx-icn-dmu",
94 "clk-rx-icn-hva",
95 "clk-icn-cpu",
96 "clk-tx-icn-dmu",
97 "clk-mmc-0",
98 "clk-mmc-1",
99 "clk-jpegdec",
100 "clk-ext2fa9",
101 "clk-ic-bdisp-0",
102 "clk-ic-bdisp-1",
103 "clk-pp-dmu",
104 "clk-vid-dmu",
105 "clk-dss-lpc",
106 "clk-st231-aud-0",
107 "clk-st231-gp-1",
108 "clk-st231-dmu",
109 "clk-icn-lmi",
110 "clk-tx-icn-disp-1",
111 "clk-icn-sbc",
112 "clk-stfe-frc2",
113 "clk-eth-phy",
114 "clk-eth-ref-phyclk",
115 "clk-flash-promip",
116 "clk-main-disp",
117 "clk-aux-disp",
118 "clk-compo-dvp";
119 };
diff --git a/Documentation/devicetree/bindings/clock/st/st,quadfs.txt b/Documentation/devicetree/bindings/clock/st/st,quadfs.txt
index ec86d62ca283..cedeb9cc8208 100644
--- a/Documentation/devicetree/bindings/clock/st/st,quadfs.txt
+++ b/Documentation/devicetree/bindings/clock/st/st,quadfs.txt
@@ -15,6 +15,9 @@ Required properties:
15 "st,stih416-quadfs432", "st,quadfs" 15 "st,stih416-quadfs432", "st,quadfs"
16 "st,stih416-quadfs660-E", "st,quadfs" 16 "st,stih416-quadfs660-E", "st,quadfs"
17 "st,stih416-quadfs660-F", "st,quadfs" 17 "st,stih416-quadfs660-F", "st,quadfs"
18 "st,stih407-quadfs660-C", "st,quadfs"
19 "st,stih407-quadfs660-D", "st,quadfs"
20
18 21
19- #clock-cells : from common clock binding; shall be set to 1. 22- #clock-cells : from common clock binding; shall be set to 1.
20 23
@@ -32,14 +35,14 @@ Required properties:
32 35
33Example: 36Example:
34 37
35 CLOCKGEN_E: CLOCKGEN_E { 38 clockgen_e: clockgen-e@fd3208bc {
36 #clock-cells = <1>; 39 #clock-cells = <1>;
37 compatible = "st,stih416-quadfs660-E", "st,quadfs"; 40 compatible = "st,stih416-quadfs660-E", "st,quadfs";
38 reg = <0xfd3208bc 0xB0>; 41 reg = <0xfd3208bc 0xB0>;
39 42
40 clocks = <&CLK_SYSIN>; 43 clocks = <&clk_sysin>;
41 clock-output-names = "CLK_M_PIX_MDTP_0", 44 clock-output-names = "clk-m-pix-mdtp-0",
42 "CLK_M_PIX_MDTP_1", 45 "clk-m-pix-mdtp-1",
43 "CLK_M_PIX_MDTP_2", 46 "clk-m-pix-mdtp-2",
44 "CLK_M_MPELPC"; 47 "clk-m-mpelpc";
45 }; 48 };
diff --git a/Documentation/devicetree/bindings/clock/sunxi.txt b/Documentation/devicetree/bindings/clock/sunxi.txt
index b9ec668bfe62..d3a5c3c6d677 100644
--- a/Documentation/devicetree/bindings/clock/sunxi.txt
+++ b/Documentation/devicetree/bindings/clock/sunxi.txt
@@ -9,11 +9,13 @@ Required properties:
9 "allwinner,sun4i-a10-osc-clk" - for a gatable oscillator 9 "allwinner,sun4i-a10-osc-clk" - for a gatable oscillator
10 "allwinner,sun4i-a10-pll1-clk" - for the main PLL clock and PLL4 10 "allwinner,sun4i-a10-pll1-clk" - for the main PLL clock and PLL4
11 "allwinner,sun6i-a31-pll1-clk" - for the main PLL clock on A31 11 "allwinner,sun6i-a31-pll1-clk" - for the main PLL clock on A31
12 "allwinner,sun8i-a23-pll1-clk" - for the main PLL clock on A23
12 "allwinner,sun4i-a10-pll5-clk" - for the PLL5 clock 13 "allwinner,sun4i-a10-pll5-clk" - for the PLL5 clock
13 "allwinner,sun4i-a10-pll6-clk" - for the PLL6 clock 14 "allwinner,sun4i-a10-pll6-clk" - for the PLL6 clock
14 "allwinner,sun6i-a31-pll6-clk" - for the PLL6 clock on A31 15 "allwinner,sun6i-a31-pll6-clk" - for the PLL6 clock on A31
15 "allwinner,sun4i-a10-cpu-clk" - for the CPU multiplexer clock 16 "allwinner,sun4i-a10-cpu-clk" - for the CPU multiplexer clock
16 "allwinner,sun4i-a10-axi-clk" - for the AXI clock 17 "allwinner,sun4i-a10-axi-clk" - for the AXI clock
18 "allwinner,sun8i-a23-axi-clk" - for the AXI clock on A23
17 "allwinner,sun4i-a10-axi-gates-clk" - for the AXI gates 19 "allwinner,sun4i-a10-axi-gates-clk" - for the AXI gates
18 "allwinner,sun4i-a10-ahb-clk" - for the AHB clock 20 "allwinner,sun4i-a10-ahb-clk" - for the AHB clock
19 "allwinner,sun4i-a10-ahb-gates-clk" - for the AHB gates on A10 21 "allwinner,sun4i-a10-ahb-gates-clk" - for the AHB gates on A10
@@ -23,13 +25,16 @@ Required properties:
23 "allwinner,sun6i-a31-ar100-clk" - for the AR100 on A31 25 "allwinner,sun6i-a31-ar100-clk" - for the AR100 on A31
24 "allwinner,sun6i-a31-ahb1-mux-clk" - for the AHB1 multiplexer on A31 26 "allwinner,sun6i-a31-ahb1-mux-clk" - for the AHB1 multiplexer on A31
25 "allwinner,sun6i-a31-ahb1-gates-clk" - for the AHB1 gates on A31 27 "allwinner,sun6i-a31-ahb1-gates-clk" - for the AHB1 gates on A31
28 "allwinner,sun8i-a23-ahb1-gates-clk" - for the AHB1 gates on A23
26 "allwinner,sun4i-a10-apb0-clk" - for the APB0 clock 29 "allwinner,sun4i-a10-apb0-clk" - for the APB0 clock
27 "allwinner,sun6i-a31-apb0-clk" - for the APB0 clock on A31 30 "allwinner,sun6i-a31-apb0-clk" - for the APB0 clock on A31
31 "allwinner,sun8i-a23-apb0-clk" - for the APB0 clock on A23
28 "allwinner,sun4i-a10-apb0-gates-clk" - for the APB0 gates on A10 32 "allwinner,sun4i-a10-apb0-gates-clk" - for the APB0 gates on A10
29 "allwinner,sun5i-a13-apb0-gates-clk" - for the APB0 gates on A13 33 "allwinner,sun5i-a13-apb0-gates-clk" - for the APB0 gates on A13
30 "allwinner,sun5i-a10s-apb0-gates-clk" - for the APB0 gates on A10s 34 "allwinner,sun5i-a10s-apb0-gates-clk" - for the APB0 gates on A10s
31 "allwinner,sun6i-a31-apb0-gates-clk" - for the APB0 gates on A31 35 "allwinner,sun6i-a31-apb0-gates-clk" - for the APB0 gates on A31
32 "allwinner,sun7i-a20-apb0-gates-clk" - for the APB0 gates on A20 36 "allwinner,sun7i-a20-apb0-gates-clk" - for the APB0 gates on A20
37 "allwinner,sun8i-a23-apb0-gates-clk" - for the APB0 gates on A23
33 "allwinner,sun4i-a10-apb1-clk" - for the APB1 clock 38 "allwinner,sun4i-a10-apb1-clk" - for the APB1 clock
34 "allwinner,sun4i-a10-apb1-mux-clk" - for the APB1 clock muxing 39 "allwinner,sun4i-a10-apb1-mux-clk" - for the APB1 clock muxing
35 "allwinner,sun4i-a10-apb1-gates-clk" - for the APB1 gates on A10 40 "allwinner,sun4i-a10-apb1-gates-clk" - for the APB1 gates on A10
@@ -37,8 +42,10 @@ Required properties:
37 "allwinner,sun5i-a10s-apb1-gates-clk" - for the APB1 gates on A10s 42 "allwinner,sun5i-a10s-apb1-gates-clk" - for the APB1 gates on A10s
38 "allwinner,sun6i-a31-apb1-gates-clk" - for the APB1 gates on A31 43 "allwinner,sun6i-a31-apb1-gates-clk" - for the APB1 gates on A31
39 "allwinner,sun7i-a20-apb1-gates-clk" - for the APB1 gates on A20 44 "allwinner,sun7i-a20-apb1-gates-clk" - for the APB1 gates on A20
45 "allwinner,sun8i-a23-apb1-gates-clk" - for the APB1 gates on A23
40 "allwinner,sun6i-a31-apb2-div-clk" - for the APB2 gates on A31 46 "allwinner,sun6i-a31-apb2-div-clk" - for the APB2 gates on A31
41 "allwinner,sun6i-a31-apb2-gates-clk" - for the APB2 gates on A31 47 "allwinner,sun6i-a31-apb2-gates-clk" - for the APB2 gates on A31
48 "allwinner,sun8i-a23-apb2-gates-clk" - for the APB2 gates on A23
42 "allwinner,sun4i-a10-mod0-clk" - for the module 0 family of clocks 49 "allwinner,sun4i-a10-mod0-clk" - for the module 0 family of clocks
43 "allwinner,sun7i-a20-out-clk" - for the external output clocks 50 "allwinner,sun7i-a20-out-clk" - for the external output clocks
44 "allwinner,sun7i-a20-gmac-clk" - for the GMAC clock module on A20/A31 51 "allwinner,sun7i-a20-gmac-clk" - for the GMAC clock module on A20/A31
diff --git a/Documentation/devicetree/bindings/crypto/amd-ccp.txt b/Documentation/devicetree/bindings/crypto/amd-ccp.txt
new file mode 100644
index 000000000000..8c61183b41e0
--- /dev/null
+++ b/Documentation/devicetree/bindings/crypto/amd-ccp.txt
@@ -0,0 +1,19 @@
1* AMD Cryptographic Coprocessor driver (ccp)
2
3Required properties:
4- compatible: Should be "amd,ccp-seattle-v1a"
5- reg: Address and length of the register set for the device
6- interrupt-parent: Should be the phandle for the interrupt controller
7 that services interrupts for this device
8- interrupts: Should contain the CCP interrupt
9
10Optional properties:
11- dma-coherent: Present if dma operations are coherent
12
13Example:
14 ccp@e0100000 {
15 compatible = "amd,ccp-seattle-v1a";
16 reg = <0 0xe0100000 0 0x10000>;
17 interrupt-parent = <&gic>;
18 interrupts = <0 3 4>;
19 };
diff --git a/Documentation/devicetree/bindings/crypto/qcom-qce.txt b/Documentation/devicetree/bindings/crypto/qcom-qce.txt
new file mode 100644
index 000000000000..fdd53b184ba8
--- /dev/null
+++ b/Documentation/devicetree/bindings/crypto/qcom-qce.txt
@@ -0,0 +1,25 @@
1Qualcomm crypto engine driver
2
3Required properties:
4
5- compatible : should be "qcom,crypto-v5.1"
6- reg : specifies base physical address and size of the registers map
7- clocks : phandle to clock-controller plus clock-specifier pair
8- clock-names : "iface" clocks register interface
9 "bus" clocks data transfer interface
10 "core" clocks rest of the crypto block
11- dmas : DMA specifiers for tx and rx dma channels. For more see
12 Documentation/devicetree/bindings/dma/dma.txt
13- dma-names : DMA request names should be "rx" and "tx"
14
15Example:
16 crypto@fd45a000 {
17 compatible = "qcom,crypto-v5.1";
18 reg = <0xfd45a000 0x6000>;
19 clocks = <&gcc GCC_CE2_AHB_CLK>,
20 <&gcc GCC_CE2_AXI_CLK>,
21 <&gcc GCC_CE2_CLK>;
22 clock-names = "iface", "bus", "core";
23 dmas = <&cryptobam 2>, <&cryptobam 3>;
24 dma-names = "rx", "tx";
25 };
diff --git a/Documentation/devicetree/bindings/extcon/extcon-sm5502.txt b/Documentation/devicetree/bindings/extcon/extcon-sm5502.txt
new file mode 100644
index 000000000000..4ecda224955f
--- /dev/null
+++ b/Documentation/devicetree/bindings/extcon/extcon-sm5502.txt
@@ -0,0 +1,23 @@
1
2* SM5502 MUIC (Micro-USB Interface Controller) device
3
4The Silicon Mitus SM5502 is a MUIC (Micro-USB Interface Controller) device
5which can detect the state of external accessory when external accessory is
6attached or detached and button is pressed or released. It is interfaced to
7the host controller using an I2C interface.
8
9Required properties:
10- compatible: Should be "siliconmitus,sm5502-muic"
11- reg: Specifies the I2C slave address of the MUIC block. It should be 0x25
12- interrupt-parent: Specifies the phandle of the interrupt controller to which
13 the interrupts from sm5502 are delivered to.
14- interrupts: Interrupt specifiers for detection interrupt sources.
15
16Example:
17
18 sm5502@25 {
19 compatible = "siliconmitus,sm5502-muic";
20 interrupt-parent = <&gpx1>;
21 interrupts = <5 0>;
22 reg = <0x25>;
23 };
diff --git a/Documentation/devicetree/bindings/hwmon/ibmpowernv.txt b/Documentation/devicetree/bindings/hwmon/ibmpowernv.txt
new file mode 100644
index 000000000000..f93242be60a1
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/ibmpowernv.txt
@@ -0,0 +1,23 @@
1IBM POWERNV platform sensors
2----------------------------
3
4Required node properties:
5- compatible: must be one of
6 "ibm,opal-sensor-cooling-fan"
7 "ibm,opal-sensor-amb-temp"
8 "ibm,opal-sensor-power-supply"
9 "ibm,opal-sensor-power"
10- sensor-id: an opaque id provided by the firmware to the kernel, identifies a
11 given sensor and its attribute data
12
13Example sensors node:
14
15cooling-fan#8-data {
16 sensor-id = <0x7052107>;
17 compatible = "ibm,opal-sensor-cooling-fan";
18};
19
20amb-temp#1-thrs {
21 sensor-id = <0x5096000>;
22 compatible = "ibm,opal-sensor-amb-temp";
23};
diff --git a/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt b/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt
index b117b2e9e1a7..2391e5c41999 100644
--- a/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt
+++ b/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt
@@ -3,6 +3,7 @@ NTC Thermistor hwmon sensors
3 3
4Requires node properties: 4Requires node properties:
5- "compatible" value : one of 5- "compatible" value : one of
6 "epcos,b57330v2103"
6 "murata,ncp15wb473" 7 "murata,ncp15wb473"
7 "murata,ncp18wb473" 8 "murata,ncp18wb473"
8 "murata,ncp21wb473" 9 "murata,ncp21wb473"
diff --git a/Documentation/devicetree/bindings/hwmon/pwm-fan.txt b/Documentation/devicetree/bindings/hwmon/pwm-fan.txt
new file mode 100644
index 000000000000..610757ce4492
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/pwm-fan.txt
@@ -0,0 +1,12 @@
1Bindings for a fan connected to the PWM lines
2
3Required properties:
4- compatible : "pwm-fan"
5- pwms : the PWM that is used to control the PWM fan
6
7Example:
8 pwm-fan {
9 compatible = "pwm-fan";
10 status = "okay";
11 pwms = <&pwm 0 10000 0>;
12 };
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt
index bef86e57c388..37803eb5521e 100644
--- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt
+++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt
@@ -50,6 +50,7 @@ epson,rx8581 I2C-BUS INTERFACE REAL TIME CLOCK MODULE
50fsl,mag3110 MAG3110: Xtrinsic High Accuracy, 3D Magnetometer 50fsl,mag3110 MAG3110: Xtrinsic High Accuracy, 3D Magnetometer
51fsl,mc13892 MC13892: Power Management Integrated Circuit (PMIC) for i.MX35/51 51fsl,mc13892 MC13892: Power Management Integrated Circuit (PMIC) for i.MX35/51
52fsl,mma8450 MMA8450Q: Xtrinsic Low-power, 3-axis Xtrinsic Accelerometer 52fsl,mma8450 MMA8450Q: Xtrinsic Low-power, 3-axis Xtrinsic Accelerometer
53fsl,mma8452 MMA8452Q: 3-axis 12-bit / 8-bit Digital Accelerometer
53fsl,mpr121 MPR121: Proximity Capacitive Touch Sensor Controller 54fsl,mpr121 MPR121: Proximity Capacitive Touch Sensor Controller
54fsl,sgtl5000 SGTL5000: Ultra Low-Power Audio Codec 55fsl,sgtl5000 SGTL5000: Ultra Low-Power Audio Codec
55gmt,g751 G751: Digital Temperature Sensor and Thermal Watchdog with Two-Wire Interface 56gmt,g751 G751: Digital Temperature Sensor and Thermal Watchdog with Two-Wire Interface
@@ -83,5 +84,6 @@ stm,m41t80 M41T80 - SERIAL ACCESS RTC WITH ALARMS
83taos,tsl2550 Ambient Light Sensor with SMBUS/Two Wire Serial Interface 84taos,tsl2550 Ambient Light Sensor with SMBUS/Two Wire Serial Interface
84ti,tsc2003 I2C Touch-Screen Controller 85ti,tsc2003 I2C Touch-Screen Controller
85ti,tmp102 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface 86ti,tmp102 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface
87ti,tmp103 Low Power Digital Temperature Sensor with SMBUS/Two Wire Serial Interface
86ti,tmp275 Digital Temperature Sensor 88ti,tmp275 Digital Temperature Sensor
87winbond,wpct301 i2c trusted platform module (TPM) 89winbond,wpct301 i2c trusted platform module (TPM)
diff --git a/Documentation/devicetree/bindings/iio/adc/max1027-adc.txt b/Documentation/devicetree/bindings/iio/adc/max1027-adc.txt
new file mode 100644
index 000000000000..a8770cc6bcad
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/adc/max1027-adc.txt
@@ -0,0 +1,22 @@
1* Maxim 1027/1029/1031 Analog to Digital Converter (ADC)
2
3Required properties:
4 - compatible: Should be "maxim,max1027" or "maxim,max1029" or "maxim,max1031"
5 - reg: SPI chip select number for the device
6 - interrupt-parent: phandle to the parent interrupt controller
7 see: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
8 - interrupts: IRQ line for the ADC
9 see: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
10
11Recommended properties:
12- spi-max-frequency: Definition as per
13 Documentation/devicetree/bindings/spi/spi-bus.txt
14
15Example:
16adc@0 {
17 compatible = "maxim,max1027";
18 reg = <0>;
19 interrupt-parent = <&gpio5>;
20 interrupts = <15 IRQ_TYPE_EDGE_RISING>;
21 spi-max-frequency = <1000000>;
22};
diff --git a/Documentation/devicetree/bindings/iio/magnetometer/hmc5843.txt b/Documentation/devicetree/bindings/iio/magnetometer/hmc5843.txt
index 90d5f34db04e..8e191eef014e 100644
--- a/Documentation/devicetree/bindings/iio/magnetometer/hmc5843.txt
+++ b/Documentation/devicetree/bindings/iio/magnetometer/hmc5843.txt
@@ -3,6 +3,10 @@
3Required properties: 3Required properties:
4 4
5 - compatible : should be "honeywell,hmc5843" 5 - compatible : should be "honeywell,hmc5843"
6 Other models which are supported with driver are:
7 "honeywell,hmc5883"
8 "honeywell,hmc5883l"
9 "honeywell,hmc5983"
6 - reg : the I2C address of the magnetometer - typically 0x1e 10 - reg : the I2C address of the magnetometer - typically 0x1e
7 11
8Optional properties: 12Optional properties:
diff --git a/Documentation/devicetree/bindings/iio/st-sensors.txt b/Documentation/devicetree/bindings/iio/st-sensors.txt
new file mode 100644
index 000000000000..a7a0a15913ad
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/st-sensors.txt
@@ -0,0 +1,54 @@
1STMicroelectronics MEMS sensors
2
3The STMicroelectronics sensor devices are pretty straight-forward I2C or
4SPI devices, all sharing the same device tree descriptions no matter what
5type of sensor it is.
6
7Required properties:
8- compatible: see the list of valid compatible strings below
9- reg: the I2C or SPI address the device will respond to
10
11Optional properties:
12- vdd-supply: an optional regulator that needs to be on to provide VDD
13 power to the sensor.
14- vddio-supply: an optional regulator that needs to be on to provide the
15 VDD IO power to the sensor.
16- st,drdy-int-pin: the pin on the package that will be used to signal
17 "data ready" (valid values: 1 or 2). This property is not configurable
18 on all sensors.
19
20Sensors may also have applicable pin control settings, those use the
21standard bindings from pinctrl/pinctrl-bindings.txt.
22
23Valid compatible strings:
24
25Accelerometers:
26- st,lsm303dlh-accel
27- st,lsm303dlhc-accel
28- st,lis3dh-accel
29- st,lsm330d-accel
30- st,lsm330dl-accel
31- st,lsm330dlc-accel
32- st,lis331dlh-accel
33- st,lsm303dl-accel
34- st,lsm303dlm-accel
35- st,lsm330-accel
36
37Gyroscopes:
38- st,l3g4200d-gyro
39- st,lsm330d-gyro
40- st,lsm330dl-gyro
41- st,lsm330dlc-gyro
42- st,l3gd20-gyro
43- st,l3g4is-gyro
44- st,lsm330-gyro
45
46Magnetometers:
47- st,lsm303dlhc-magn
48- st,lsm303dlm-magn
49- st,lis3mdl-magn
50
51Pressure sensors:
52- st,lps001wp-press
53- st,lps25h-press
54- st,lps331ap-press
diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.txt b/Documentation/devicetree/bindings/iommu/arm,smmu.txt
index f284b99402bc..2d0f7cd867ea 100644
--- a/Documentation/devicetree/bindings/iommu/arm,smmu.txt
+++ b/Documentation/devicetree/bindings/iommu/arm,smmu.txt
@@ -42,12 +42,6 @@ conditions.
42 42
43** System MMU optional properties: 43** System MMU optional properties:
44 44
45- smmu-parent : When multiple SMMUs are chained together, this
46 property can be used to provide a phandle to the
47 parent SMMU (that is the next SMMU on the path going
48 from the mmu-masters towards memory) node for this
49 SMMU.
50
51- calxeda,smmu-secure-config-access : Enable proper handling of buggy 45- calxeda,smmu-secure-config-access : Enable proper handling of buggy
52 implementations that always use secure access to 46 implementations that always use secure access to
53 SMMU configuration registers. In this case non-secure 47 SMMU configuration registers. In this case non-secure
diff --git a/Documentation/devicetree/bindings/iommu/iommu.txt b/Documentation/devicetree/bindings/iommu/iommu.txt
new file mode 100644
index 000000000000..5a8b4624defc
--- /dev/null
+++ b/Documentation/devicetree/bindings/iommu/iommu.txt
@@ -0,0 +1,182 @@
1This document describes the generic device tree binding for IOMMUs and their
2master(s).
3
4
5IOMMU device node:
6==================
7
8An IOMMU can provide the following services:
9
10* Remap address space to allow devices to access physical memory ranges that
11 they otherwise wouldn't be capable of accessing.
12
13 Example: 32-bit DMA to 64-bit physical addresses
14
15* Implement scatter-gather at page level granularity so that the device does
16 not have to.
17
18* Provide system protection against "rogue" DMA by forcing all accesses to go
19 through the IOMMU and faulting when encountering accesses to unmapped
20 address regions.
21
22* Provide address space isolation between multiple contexts.
23
24 Example: Virtualization
25
26Device nodes compatible with this binding represent hardware with some of the
27above capabilities.
28
29IOMMUs can be single-master or multiple-master. Single-master IOMMU devices
30typically have a fixed association to the master device, whereas multiple-
31master IOMMU devices can translate accesses from more than one master.
32
33The device tree node of the IOMMU device's parent bus must contain a valid
34"dma-ranges" property that describes how the physical address space of the
35IOMMU maps to memory. An empty "dma-ranges" property means that there is a
361:1 mapping from IOMMU to memory.
37
38Required properties:
39--------------------
40- #iommu-cells: The number of cells in an IOMMU specifier needed to encode an
41 address.
42
43The meaning of the IOMMU specifier is defined by the device tree binding of
44the specific IOMMU. Below are a few examples of typical use-cases:
45
46- #iommu-cells = <0>: Single master IOMMU devices are not configurable and
47 therefore no additional information needs to be encoded in the specifier.
48 This may also apply to multiple master IOMMU devices that do not allow the
49 association of masters to be configured. Note that an IOMMU can by design
50 be multi-master yet only expose a single master in a given configuration.
51 In such cases the number of cells will usually be 1 as in the next case.
52- #iommu-cells = <1>: Multiple master IOMMU devices may need to be configured
53 in order to enable translation for a given master. In such cases the single
54 address cell corresponds to the master device's ID. In some cases more than
55 one cell can be required to represent a single master ID.
56- #iommu-cells = <4>: Some IOMMU devices allow the DMA window for masters to
57 be configured. The first cell of the address in this may contain the master
58 device's ID for example, while the second cell could contain the start of
59 the DMA window for the given device. The length of the DMA window is given
60 by the third and fourth cells.
61
62Note that these are merely examples and real-world use-cases may use different
63definitions to represent their individual needs. Always refer to the specific
64IOMMU binding for the exact meaning of the cells that make up the specifier.
65
66
67IOMMU master node:
68==================
69
70Devices that access memory through an IOMMU are called masters. A device can
71have multiple master interfaces (to one or more IOMMU devices).
72
73Required properties:
74--------------------
75- iommus: A list of phandle and IOMMU specifier pairs that describe the IOMMU
76 master interfaces of the device. One entry in the list describes one master
77 interface of the device.
78
79When an "iommus" property is specified in a device tree node, the IOMMU will
80be used for address translation. If a "dma-ranges" property exists in the
81device's parent node it will be ignored. An exception to this rule is if the
82referenced IOMMU is disabled, in which case the "dma-ranges" property of the
83parent shall take effect. Note that merely disabling a device tree node does
84not guarantee that the IOMMU is really disabled since the hardware may not
85have a means to turn off translation. But it is invalid in such cases to
86disable the IOMMU's device tree node in the first place because it would
87prevent any driver from properly setting up the translations.
88
89
90Notes:
91======
92
93One possible extension to the above is to use an "iommus" property along with
94a "dma-ranges" property in a bus device node (such as PCI host bridges). This
95can be useful to describe how children on the bus relate to the IOMMU if they
96are not explicitly listed in the device tree (e.g. PCI devices). However, the
97requirements of that use-case haven't been fully determined yet. Implementing
98this is therefore not recommended without further discussion and extension of
99this binding.
100
101
102Examples:
103=========
104
105Single-master IOMMU:
106--------------------
107
108 iommu {
109 #iommu-cells = <0>;
110 };
111
112 master {
113 iommus = <&{/iommu}>;
114 };
115
116Multiple-master IOMMU with fixed associations:
117----------------------------------------------
118
119 /* multiple-master IOMMU */
120 iommu {
121 /*
122 * Masters are statically associated with this IOMMU and share
123 * the same address translations because the IOMMU does not
124 * have sufficient information to distinguish between masters.
125 *
126 * Consequently address translation is always on or off for
127 * all masters at any given point in time.
128 */
129 #iommu-cells = <0>;
130 };
131
132 /* static association with IOMMU */
133 master@1 {
134 reg = <1>;
135 iommus = <&{/iommu}>;
136 };
137
138 /* static association with IOMMU */
139 master@2 {
140 reg = <2>;
141 iommus = <&{/iommu}>;
142 };
143
144Multiple-master IOMMU:
145----------------------
146
147 iommu {
148 /* the specifier represents the ID of the master */
149 #iommu-cells = <1>;
150 };
151
152 master@1 {
153 /* device has master ID 42 in the IOMMU */
154 iommus = <&{/iommu} 42>;
155 };
156
157 master@2 {
158 /* device has master IDs 23 and 24 in the IOMMU */
159 iommus = <&{/iommu} 23>, <&{/iommu} 24>;
160 };
161
162Multiple-master IOMMU with configurable DMA window:
163---------------------------------------------------
164
165 / {
166 iommu {
167 /*
168 * One cell for the master ID and one cell for the
169 * address of the DMA window. The length of the DMA
170 * window is encoded in two cells.
171 *
172 * The DMA window is the range addressable by the
173 * master (i.e. the I/O virtual address space).
174 */
175 #iommu-cells = <4>;
176 };
177
178 master {
179 /* master ID 42, 4 GiB DMA window starting at 0 */
180 iommus = <&{/iommu} 42 0 0x1 0x0>;
181 };
182 };
diff --git a/Documentation/devicetree/bindings/mfd/palmas.txt b/Documentation/devicetree/bindings/mfd/palmas.txt
index e5f0f8303461..eda898978d33 100644
--- a/Documentation/devicetree/bindings/mfd/palmas.txt
+++ b/Documentation/devicetree/bindings/mfd/palmas.txt
@@ -6,6 +6,7 @@ twl6037 (palmas)
6tps65913 (palmas) 6tps65913 (palmas)
7tps65914 (palmas) 7tps65914 (palmas)
8tps659038 8tps659038
9tps65917
9 10
10Required properties: 11Required properties:
11- compatible : Should be from the list 12- compatible : Should be from the list
@@ -16,6 +17,7 @@ Required properties:
16 ti,tps65914 17 ti,tps65914
17 ti,tps80036 18 ti,tps80036
18 ti,tps659038 19 ti,tps659038
20 ti,tps65917
19and also the generic series names 21and also the generic series names
20 ti,palmas 22 ti,palmas
21- interrupt-controller : palmas has its own internal IRQs 23- interrupt-controller : palmas has its own internal IRQs
diff --git a/Documentation/devicetree/bindings/phy/berlin-sata-phy.txt b/Documentation/devicetree/bindings/phy/berlin-sata-phy.txt
new file mode 100644
index 000000000000..88f8c23384c0
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/berlin-sata-phy.txt
@@ -0,0 +1,34 @@
1Berlin SATA PHY
2---------------
3
4Required properties:
5- compatible: should be "marvell,berlin2q-sata-phy"
6- address-cells: should be 1
7- size-cells: should be 0
8- phy-cells: from the generic PHY bindings, must be 1
9- reg: address and length of the register
10- clocks: reference to the clock entry
11
12Sub-nodes:
13Each PHY should be represented as a sub-node.
14
15Sub-nodes required properties:
16- reg: the PHY number
17
18Example:
19 sata_phy: phy@f7e900a0 {
20 compatible = "marvell,berlin2q-sata-phy";
21 reg = <0xf7e900a0 0x200>;
22 clocks = <&chip CLKID_SATA>;
23 #address-cells = <1>;
24 #size-cells = <0>;
25 #phy-cells = <1>;
26
27 sata-phy@0 {
28 reg = <0>;
29 };
30
31 sata-phy@1 {
32 reg = <1>;
33 };
34 };
diff --git a/Documentation/devicetree/bindings/phy/hix5hd2-phy.txt b/Documentation/devicetree/bindings/phy/hix5hd2-phy.txt
new file mode 100644
index 000000000000..296168b74d24
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/hix5hd2-phy.txt
@@ -0,0 +1,22 @@
1Hisilicon hix5hd2 SATA PHY
2-----------------------
3
4Required properties:
5- compatible: should be "hisilicon,hix5hd2-sata-phy"
6- reg: offset and length of the PHY registers
7- #phy-cells: must be 0
8Refer to phy/phy-bindings.txt for the generic PHY binding properties
9
10Optional Properties:
11- hisilicon,peripheral-syscon: phandle of syscon used to control peripheral.
12- hisilicon,power-reg: offset and bit number within peripheral-syscon,
13 register of controlling sata power supply.
14
15Example:
16 sata_phy: phy@f9900000 {
17 compatible = "hisilicon,hix5hd2-sata-phy";
18 reg = <0xf9900000 0x10000>;
19 #phy-cells = <0>;
20 hisilicon,peripheral-syscon = <&peripheral_ctrl>;
21 hisilicon,power-reg = <0x8 10>;
22 };
diff --git a/Documentation/devicetree/bindings/phy/phy-bindings.txt b/Documentation/devicetree/bindings/phy/phy-bindings.txt
index 8ae844fc0c60..2aa1840200ed 100644
--- a/Documentation/devicetree/bindings/phy/phy-bindings.txt
+++ b/Documentation/devicetree/bindings/phy/phy-bindings.txt
@@ -10,6 +10,10 @@ Required Properties:
10 provider can use the values in cells to find the appropriate 10 provider can use the values in cells to find the appropriate
11 PHY. 11 PHY.
12 12
13Optional Properties:
14phy-supply: Phandle to a regulator that provides power to the PHY. This
15 regulator will be managed during the PHY power on/off sequence.
16
13For example: 17For example:
14 18
15phys: phy { 19phys: phy {
diff --git a/Documentation/devicetree/bindings/phy/phy-miphy365x.txt b/Documentation/devicetree/bindings/phy/phy-miphy365x.txt
new file mode 100644
index 000000000000..42c880886cf7
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/phy-miphy365x.txt
@@ -0,0 +1,76 @@
1STMicroelectronics STi MIPHY365x PHY binding
2============================================
3
4This binding describes a miphy device that is used to control PHY hardware
5for SATA and PCIe.
6
7Required properties (controller (parent) node):
8- compatible : Should be "st,miphy365x-phy"
9- st,syscfg : Should be a phandle of the system configuration register group
10 which contain the SATA, PCIe mode setting bits
11
12Required nodes : A sub-node is required for each channel the controller
13 provides. Address range information including the usual
14 'reg' and 'reg-names' properties are used inside these
15 nodes to describe the controller's topology. These nodes
16 are translated by the driver's .xlate() function.
17
18Required properties (port (child) node):
19- #phy-cells : Should be 1 (See second example)
20 Cell after port phandle is device type from:
21 - MIPHY_TYPE_SATA
22 - MIPHY_TYPE_PCI
23- reg : Address and length of register sets for each device in
24 "reg-names"
25- reg-names : The names of the register addresses corresponding to the
26 registers filled in "reg":
27 - sata: For SATA devices
28 - pcie: For PCIe devices
29 - syscfg: To specify the syscfg based config register
30
31Optional properties (port (child) node):
32- st,sata-gen : Generation of locally attached SATA IP. Expected values
33 are {1,2,3). If not supplied generation 1 hardware will
34 be expected
35- st,pcie-tx-pol-inv : Bool property to invert the polarity PCIe Tx (Txn/Txp)
36- st,sata-tx-pol-inv : Bool property to invert the polarity SATA Tx (Txn/Txp)
37
38Example:
39
40 miphy365x_phy: miphy365x@fe382000 {
41 compatible = "st,miphy365x-phy";
42 st,syscfg = <&syscfg_rear>;
43 #address-cells = <1>;
44 #size-cells = <1>;
45 ranges;
46
47 phy_port0: port@fe382000 {
48 reg = <0xfe382000 0x100>, <0xfe394000 0x100>, <0x824 0x4>;
49 reg-names = "sata", "pcie", "syscfg";
50 #phy-cells = <1>;
51 st,sata-gen = <3>;
52 };
53
54 phy_port1: port@fe38a000 {
55 reg = <0xfe38a000 0x100>, <0xfe804000 0x100>, <0x828 0x4>;;
56 reg-names = "sata", "pcie", "syscfg";
57 #phy-cells = <1>;
58 st,pcie-tx-pol-inv;
59 };
60 };
61
62Specifying phy control of devices
63=================================
64
65Device nodes should specify the configuration required in their "phys"
66property, containing a phandle to the phy port node and a device type.
67
68Example:
69
70#include <dt-bindings/phy/phy-miphy365x.h>
71
72 sata0: sata@fe380000 {
73 ...
74 phys = <&phy_port0 MIPHY_TYPE_SATA>;
75 ...
76 };
diff --git a/Documentation/devicetree/bindings/phy/qcom-apq8064-sata-phy.txt b/Documentation/devicetree/bindings/phy/qcom-apq8064-sata-phy.txt
new file mode 100644
index 000000000000..952f6c96bab9
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/qcom-apq8064-sata-phy.txt
@@ -0,0 +1,24 @@
1Qualcomm APQ8064 SATA PHY Controller
2------------------------------------
3
4SATA PHY nodes are defined to describe on-chip SATA Physical layer controllers.
5Each SATA PHY controller should have its own node.
6
7Required properties:
8- compatible: compatible list, contains "qcom,apq8064-sata-phy".
9- reg: offset and length of the SATA PHY register set;
10- #phy-cells: must be zero
11- clocks: a list of phandles and clock-specifier pairs, one for each entry in
12 clock-names.
13- clock-names: must be "cfg" for phy config clock.
14
15Example:
16 sata_phy: sata-phy@1b400000 {
17 compatible = "qcom,apq8064-sata-phy";
18 reg = <0x1b400000 0x200>;
19
20 clocks = <&gcc SATA_PHY_CFG_CLK>;
21 clock-names = "cfg";
22
23 #phy-cells = <0>;
24 };
diff --git a/Documentation/devicetree/bindings/phy/qcom-ipq806x-sata-phy.txt b/Documentation/devicetree/bindings/phy/qcom-ipq806x-sata-phy.txt
new file mode 100644
index 000000000000..76bfbd056202
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/qcom-ipq806x-sata-phy.txt
@@ -0,0 +1,23 @@
1Qualcomm IPQ806x SATA PHY Controller
2------------------------------------
3
4SATA PHY nodes are defined to describe on-chip SATA Physical layer controllers.
5Each SATA PHY controller should have its own node.
6
7Required properties:
8- compatible: compatible list, contains "qcom,ipq806x-sata-phy"
9- reg: offset and length of the SATA PHY register set;
10- #phy-cells: must be zero
11- clocks: must be exactly one entry
12- clock-names: must be "cfg"
13
14Example:
15 sata_phy: sata-phy@1b400000 {
16 compatible = "qcom,ipq806x-sata-phy";
17 reg = <0x1b400000 0x200>;
18
19 clocks = <&gcc SATA_PHY_CFG_CLK>;
20 clock-names = "cfg";
21
22 #phy-cells = <0>;
23 };
diff --git a/Documentation/devicetree/bindings/phy/samsung-phy.txt b/Documentation/devicetree/bindings/phy/samsung-phy.txt
index 2049261d8c31..6099a5c94283 100644
--- a/Documentation/devicetree/bindings/phy/samsung-phy.txt
+++ b/Documentation/devicetree/bindings/phy/samsung-phy.txt
@@ -26,6 +26,7 @@ Samsung S5P/EXYNOS SoC series USB PHY
26 26
27Required properties: 27Required properties:
28- compatible : should be one of the listed compatibles: 28- compatible : should be one of the listed compatibles:
29 - "samsung,exynos3250-usb2-phy"
29 - "samsung,exynos4210-usb2-phy" 30 - "samsung,exynos4210-usb2-phy"
30 - "samsung,exynos4x12-usb2-phy" 31 - "samsung,exynos4x12-usb2-phy"
31 - "samsung,exynos5250-usb2-phy" 32 - "samsung,exynos5250-usb2-phy"
@@ -46,6 +47,7 @@ and Exynos 4212) it is as follows:
46 1 - USB host ("host"), 47 1 - USB host ("host"),
47 2 - HSIC0 ("hsic0"), 48 2 - HSIC0 ("hsic0"),
48 3 - HSIC1 ("hsic1"), 49 3 - HSIC1 ("hsic1"),
50Exynos3250 has only USB device phy available as phy 0.
49 51
50Exynos 4210 and Exynos 4212 use mode switching and require that mode switch 52Exynos 4210 and Exynos 4212 use mode switching and require that mode switch
51register is supplied. 53register is supplied.
diff --git a/Documentation/devicetree/bindings/phy/ti-phy.txt b/Documentation/devicetree/bindings/phy/ti-phy.txt
index 9ce458f32945..305e3df3d9b1 100644
--- a/Documentation/devicetree/bindings/phy/ti-phy.txt
+++ b/Documentation/devicetree/bindings/phy/ti-phy.txt
@@ -9,15 +9,17 @@ Required properties:
9 e.g. USB2_PHY on OMAP5. 9 e.g. USB2_PHY on OMAP5.
10 "ti,control-phy-pipe3" - if it has DPLL and individual Rx & Tx power control 10 "ti,control-phy-pipe3" - if it has DPLL and individual Rx & Tx power control
11 e.g. USB3 PHY and SATA PHY on OMAP5. 11 e.g. USB3 PHY and SATA PHY on OMAP5.
12 "ti,control-phy-pcie" - for pcie to support external clock for pcie and to
13 set PCS delay value.
14 e.g. PCIE PHY in DRA7x
12 "ti,control-phy-usb2-dra7" - if it has power down register like USB2 PHY on 15 "ti,control-phy-usb2-dra7" - if it has power down register like USB2 PHY on
13 DRA7 platform. 16 DRA7 platform.
14 "ti,control-phy-usb2-am437" - if it has power down register like USB2 PHY on 17 "ti,control-phy-usb2-am437" - if it has power down register like USB2 PHY on
15 AM437 platform. 18 AM437 platform.
16 - reg : Address and length of the register set for the device. It contains 19 - reg : register ranges as listed in the reg-names property
17 the address of "otghs_control" for control-phy-otghs or "power" register 20 - reg-names: "otghs_control" for control-phy-otghs
18 for other types. 21 "power", "pcie_pcs" and "control_sma" for control-phy-pcie
19 - reg-names: should be "otghs_control" control-phy-otghs and "power" for 22 "power" for all other types
20 other types.
21 23
22omap_control_usb: omap-control-usb@4a002300 { 24omap_control_usb: omap-control-usb@4a002300 {
23 compatible = "ti,control-phy-otghs"; 25 compatible = "ti,control-phy-otghs";
@@ -56,8 +58,8 @@ usb2phy@4a0ad080 {
56TI PIPE3 PHY 58TI PIPE3 PHY
57 59
58Required properties: 60Required properties:
59 - compatible: Should be "ti,phy-usb3" or "ti,phy-pipe3-sata". 61 - compatible: Should be "ti,phy-usb3", "ti,phy-pipe3-sata" or
60 "ti,omap-usb3" is deprecated. 62 "ti,phy-pipe3-pcie. "ti,omap-usb3" is deprecated.
61 - reg : Address and length of the register set for the device. 63 - reg : Address and length of the register set for the device.
62 - reg-names: The names of the register addresses corresponding to the registers 64 - reg-names: The names of the register addresses corresponding to the registers
63 filled in "reg". 65 filled in "reg".
@@ -69,10 +71,17 @@ Required properties:
69 * "wkupclk" - wakeup clock. 71 * "wkupclk" - wakeup clock.
70 * "sysclk" - system clock. 72 * "sysclk" - system clock.
71 * "refclk" - reference clock. 73 * "refclk" - reference clock.
74 * "dpll_ref" - external dpll ref clk
75 * "dpll_ref_m2" - external dpll ref clk
76 * "phy-div" - divider for apll
77 * "div-clk" - apll clock
72 78
73Optional properties: 79Optional properties:
74 - ctrl-module : phandle of the control module used by PHY driver to power on 80 - ctrl-module : phandle of the control module used by PHY driver to power on
75 the PHY. 81 the PHY.
82 - id: If there are multiple instance of the same type, in order to
83 differentiate between each instance "id" can be used (e.g., multi-lane PCIe
84 PHY). If "id" is not provided, it is set to default value of '1'.
76 85
77This is usually a subnode of ocp2scp to which it is connected. 86This is usually a subnode of ocp2scp to which it is connected.
78 87
diff --git a/Documentation/devicetree/bindings/regulator/act8865-regulator.txt b/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
index bef1fbb647ca..865614b34d6f 100644
--- a/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
+++ b/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
@@ -1,13 +1,16 @@
1ACT8865 regulator 1ACT88xx regulators
2------------------- 2-------------------
3 3
4Required properties: 4Required properties:
5- compatible: "active-semi,act8865" 5- compatible: "active-semi,act8846" or "active-semi,act8865"
6- reg: I2C slave address 6- reg: I2C slave address
7 7
8Any standard regulator properties can be used to configure the single regulator. 8Any standard regulator properties can be used to configure the single regulator.
9 9
10The valid names for regulators are: 10The valid names for regulators are:
11 - for act8846:
12 REG1, REG2, REG3, REG4, REG5, REG6, REG7, REG8, REG9, REG10, REG11, REG12
13 - for act8865:
11 DCDC_REG1, DCDC_REG2, DCDC_REG3, LDO_REG1, LDO_REG2, LDO_REG3, LDO_REG4. 14 DCDC_REG1, DCDC_REG2, DCDC_REG3, LDO_REG1, LDO_REG2, LDO_REG3, LDO_REG4.
12 15
13Example: 16Example:
diff --git a/Documentation/devicetree/bindings/regulator/palmas-pmic.txt b/Documentation/devicetree/bindings/regulator/palmas-pmic.txt
index 42e6b6bc48ff..725393c8a7f2 100644
--- a/Documentation/devicetree/bindings/regulator/palmas-pmic.txt
+++ b/Documentation/devicetree/bindings/regulator/palmas-pmic.txt
@@ -7,6 +7,7 @@ Required properties:
7 ti,twl6037-pmic 7 ti,twl6037-pmic
8 ti,tps65913-pmic 8 ti,tps65913-pmic
9 ti,tps65914-pmic 9 ti,tps65914-pmic
10 ti,tps65917-pmic
10and also the generic series names 11and also the generic series names
11 ti,palmas-pmic 12 ti,palmas-pmic
12- interrupt-parent : The parent interrupt controller which is palmas. 13- interrupt-parent : The parent interrupt controller which is palmas.
diff --git a/Documentation/devicetree/bindings/regulator/tps65218.txt b/Documentation/devicetree/bindings/regulator/tps65218.txt
new file mode 100644
index 000000000000..fccc1d24af58
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/tps65218.txt
@@ -0,0 +1,23 @@
1TPS65218 family of regulators
2
3Required properties:
4For tps65218 regulators/LDOs
5- compatible:
6 - "ti,tps65218-dcdc1" for DCDC1
7 - "ti,tps65218-dcdc2" for DCDC2
8 - "ti,tps65218-dcdc3" for DCDC3
9 - "ti,tps65218-dcdc4" for DCDC4
10 - "ti,tps65218-dcdc5" for DCDC5
11 - "ti,tps65218-dcdc6" for DCDC6
12 - "ti,tps65218-ldo1" for LDO1
13
14Optional properties:
15- Any optional property defined in bindings/regulator/regulator.txt
16
17Example:
18
19 xyz: regulator@0 {
20 compatible = "ti,tps65218-dcdc1";
21 regulator-min-microvolt = <1000000>;
22 regulator-max-microvolt = <3000000>;
23 };
diff --git a/Documentation/devicetree/bindings/serial/efm32-uart.txt b/Documentation/devicetree/bindings/serial/efm32-uart.txt
index 3ca01336b837..8adbab268ca3 100644
--- a/Documentation/devicetree/bindings/serial/efm32-uart.txt
+++ b/Documentation/devicetree/bindings/serial/efm32-uart.txt
@@ -6,7 +6,7 @@ Required properties:
6- interrupts : Should contain uart interrupt 6- interrupts : Should contain uart interrupt
7 7
8Optional properties: 8Optional properties:
9- efm32,location : Decides the location of the USART I/O pins. 9- energymicro,location : Decides the location of the USART I/O pins.
10 Allowed range : [0 .. 5] 10 Allowed range : [0 .. 5]
11 Default: 0 11 Default: 0
12 12
@@ -16,5 +16,5 @@ uart@0x4000c400 {
16 compatible = "energymicro,efm32-uart"; 16 compatible = "energymicro,efm32-uart";
17 reg = <0x4000c400 0x400>; 17 reg = <0x4000c400 0x400>;
18 interrupts = <15>; 18 interrupts = <15>;
19 efm32,location = <0>; 19 energymicro,location = <0>;
20}; 20};
diff --git a/Documentation/devicetree/bindings/serial/fsl-lpuart.txt b/Documentation/devicetree/bindings/serial/fsl-lpuart.txt
index a1d1205d8185..c95005efbcb8 100644
--- a/Documentation/devicetree/bindings/serial/fsl-lpuart.txt
+++ b/Documentation/devicetree/bindings/serial/fsl-lpuart.txt
@@ -1,7 +1,11 @@
1* Freescale low power universal asynchronous receiver/transmitter (lpuart) 1* Freescale low power universal asynchronous receiver/transmitter (lpuart)
2 2
3Required properties: 3Required properties:
4- compatible : Should be "fsl,<soc>-lpuart" 4- compatible :
5 - "fsl,vf610-lpuart" for lpuart compatible with the one integrated
6 on Vybrid vf610 SoC with 8-bit register organization
7 - "fsl,ls1021a-lpuart" for lpuart compatible with the one integrated
8 on LS1021A SoC with 32-bit big-endian register organization
5- reg : Address and length of the register set for the device 9- reg : Address and length of the register set for the device
6- interrupts : Should contain uart interrupt 10- interrupts : Should contain uart interrupt
7- clocks : phandle + clock specifier pairs, one for each entry in clock-names 11- clocks : phandle + clock specifier pairs, one for each entry in clock-names
diff --git a/Documentation/devicetree/bindings/serial/samsung_uart.txt b/Documentation/devicetree/bindings/serial/samsung_uart.txt
index 2c8a17cf5cb5..e85f37ec33f0 100644
--- a/Documentation/devicetree/bindings/serial/samsung_uart.txt
+++ b/Documentation/devicetree/bindings/serial/samsung_uart.txt
@@ -1,14 +1,58 @@
1* Samsung's UART Controller 1* Samsung's UART Controller
2 2
3The Samsung's UART controller is used for interfacing SoC with serial communicaion 3The Samsung's UART controller is used for interfacing SoC with serial
4devices. 4communicaion devices.
5 5
6Required properties: 6Required properties:
7- compatible: should be 7- compatible: should be one of following:
8 - "samsung,exynos4210-uart", for UART's compatible with Exynos4210 uart ports. 8 - "samsung,exynos4210-uart" - Exynos4210 SoC,
9 - "samsung,s3c2410-uart" - compatible with ports present on S3C2410 SoC,
10 - "samsung,s3c2412-uart" - compatible with ports present on S3C2412 SoC,
11 - "samsung,s3c2440-uart" - compatible with ports present on S3C2440 SoC,
12 - "samsung,s3c6400-uart" - compatible with ports present on S3C6400 SoC,
13 - "samsung,s5pv210-uart" - compatible with ports present on S5PV210 SoC.
9 14
10- reg: base physical address of the controller and length of memory mapped 15- reg: base physical address of the controller and length of memory mapped
11 region. 16 region.
12 17
13- interrupts: interrupt number to the cpu. The interrupt specifier format depends 18- interrupts: a single interrupt signal to SoC interrupt controller,
14 on the interrupt controller parent. 19 according to interrupt bindings documentation [1].
20
21- clock-names: input names of clocks used by the controller:
22 - "uart" - controller bus clock,
23 - "clk_uart_baudN" - Nth baud base clock input (N = 0, 1, ...),
24 according to SoC User's Manual (only N = 0 is allowedfor SoCs without
25 internal baud clock mux).
26- clocks: phandles and specifiers for all clocks specified in "clock-names"
27 property, in the same order, according to clock bindings documentation [2].
28
29[1] Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
30[2] Documentation/devicetree/bindings/clock/clock-bindings.txt
31
32Optional properties:
33- samsung,uart-fifosize: The fifo size supported by the UART channel
34
35Note: Each Samsung UART should have an alias correctly numbered in the
36"aliases" node, according to serialN format, where N is the port number
37(non-negative decimal integer) as specified by User's Manual of respective
38SoC.
39
40Example:
41 aliases {
42 serial0 = &uart0;
43 serial1 = &uart1;
44 serial2 = &uart2;
45 };
46
47Example:
48 uart1: serial@7f005400 {
49 compatible = "samsung,s3c6400-uart";
50 reg = <0x7f005400 0x100>;
51 interrupt-parent = <&vic1>;
52 interrupts = <6>;
53 clock-names = "uart", "clk_uart_baud2",
54 "clk_uart_baud3";
55 clocks = <&clocks PCLK_UART1>, <&clocks PCLK_UART1>,
56 <&clocks SCLK_UART>;
57 samsung,uart-fifosize = <16>;
58 };
diff --git a/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt b/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt
index f13f1c5be91c..7f76214f728a 100644
--- a/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt
+++ b/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt
@@ -4,9 +4,18 @@ Required properties:
4- compatible : "snps,dw-apb-uart" 4- compatible : "snps,dw-apb-uart"
5- reg : offset and length of the register set for the device. 5- reg : offset and length of the register set for the device.
6- interrupts : should contain uart interrupt. 6- interrupts : should contain uart interrupt.
7
8Clock handling:
9The clock rate of the input clock needs to be supplied by one of
7- clock-frequency : the input clock frequency for the UART. 10- clock-frequency : the input clock frequency for the UART.
11- clocks : phandle to the input clock
12
13The supplying peripheral clock can also be handled, needing a second property
14- clock-names: tuple listing input clock names.
15 Required elements: "baudclk", "apb_pclk"
8 16
9Optional properties: 17Optional properties:
18- resets : phandle to the parent reset controller.
10- reg-shift : quantity to shift the register offsets by. If this property is 19- reg-shift : quantity to shift the register offsets by. If this property is
11 not present then the register offsets are not shifted. 20 not present then the register offsets are not shifted.
12- reg-io-width : the size (in bytes) of the IO accesses that should be 21- reg-io-width : the size (in bytes) of the IO accesses that should be
@@ -23,3 +32,26 @@ Example:
23 reg-shift = <2>; 32 reg-shift = <2>;
24 reg-io-width = <4>; 33 reg-io-width = <4>;
25 }; 34 };
35
36Example with one clock:
37
38 uart@80230000 {
39 compatible = "snps,dw-apb-uart";
40 reg = <0x80230000 0x100>;
41 clocks = <&baudclk>;
42 interrupts = <10>;
43 reg-shift = <2>;
44 reg-io-width = <4>;
45 };
46
47Example with two clocks:
48
49 uart@80230000 {
50 compatible = "snps,dw-apb-uart";
51 reg = <0x80230000 0x100>;
52 clocks = <&baudclk>, <&apb_pclk>;
53 clock-names = "baudclk", "apb_pclk";
54 interrupts = <10>;
55 reg-shift = <2>;
56 reg-io-width = <4>;
57 };
diff --git a/Documentation/devicetree/bindings/spi/efm32-spi.txt b/Documentation/devicetree/bindings/spi/efm32-spi.txt
index 130cd17e3680..750e29aff9bc 100644
--- a/Documentation/devicetree/bindings/spi/efm32-spi.txt
+++ b/Documentation/devicetree/bindings/spi/efm32-spi.txt
@@ -10,11 +10,12 @@ Required properties:
10- cs-gpios: see spi-bus.txt 10- cs-gpios: see spi-bus.txt
11 11
12Recommended properties : 12Recommended properties :
13- efm32,location: Value to write to the ROUTE register's LOCATION bitfield to 13- energymicro,location: Value to write to the ROUTE register's LOCATION
14 configure the pinmux for the device, see datasheet for values. 14 bitfield to configure the pinmux for the device, see
15 If "efm32,location" property is not provided, keeping what is 15 datasheet for values.
16 already configured in the hardware, so its either the reset 16 If this property is not provided, keeping what is
17 default 0 or whatever the bootloader did. 17 already configured in the hardware, so its either the
18 reset default 0 or whatever the bootloader did.
18 19
19Example: 20Example:
20 21
@@ -26,7 +27,7 @@ spi1: spi@0x4000c400 { /* USART1 */
26 interrupts = <15 16>; 27 interrupts = <15 16>;
27 clocks = <&cmu 20>; 28 clocks = <&cmu 20>;
28 cs-gpios = <&gpio 51 1>; // D3 29 cs-gpios = <&gpio 51 1>; // D3
29 efm32,location = <1>; 30 energymicro,location = <1>;
30 status = "ok"; 31 status = "ok";
31 32
32 ks8851@0 { 33 ks8851@0 {
diff --git a/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt b/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
index bee6ff204baf..e2c88df2cc15 100644
--- a/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
+++ b/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
@@ -7,7 +7,11 @@ SPI in master mode supports up to 50MHz, up to four chip selects, programmable
7data path from 4 bits to 32 bits and numerous protocol variants. 7data path from 4 bits to 32 bits and numerous protocol variants.
8 8
9Required properties: 9Required properties:
10- compatible: Should contain "qcom,spi-qup-v2.1.1" or "qcom,spi-qup-v2.2.1" 10- compatible: Should contain:
11 "qcom,spi-qup-v1.1.1" for 8660, 8960 and 8064.
12 "qcom,spi-qup-v2.1.1" for 8974 and later
13 "qcom,spi-qup-v2.2.1" for 8974 v2 and later.
14
11- reg: Should contain base register location and length 15- reg: Should contain base register location and length
12- interrupts: Interrupt number used by this controller 16- interrupts: Interrupt number used by this controller
13 17
diff --git a/Documentation/devicetree/bindings/spi/snps,dw-apb-ssi.txt b/Documentation/devicetree/bindings/spi/snps,dw-apb-ssi.txt
new file mode 100644
index 000000000000..bd99193e87b9
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/snps,dw-apb-ssi.txt
@@ -0,0 +1,28 @@
1Synopsys DesignWare AMBA 2.0 Synchronous Serial Interface.
2
3Required properties:
4- compatible : "snps,dw-apb-ssi"
5- reg : The register base for the controller.
6- interrupts : One interrupt, used by the controller.
7- #address-cells : <1>, as required by generic SPI binding.
8- #size-cells : <0>, also as required by generic SPI binding.
9
10Optional properties:
11- cs-gpios : Specifies the gpio pis to be used for chipselects.
12- num-cs : The number of chipselects. If omitted, this will default to 4.
13
14Child nodes as per the generic SPI binding.
15
16Example:
17
18 spi@fff00000 {
19 compatible = "snps,dw-apb-ssi";
20 reg = <0xfff00000 0x1000>;
21 interrupts = <0 154 4>;
22 #address-cells = <1>;
23 #size-cells = <0>;
24 num-cs = <2>;
25 cs-gpios = <&gpio0 13 0>,
26 <&gpio0 14 0>;
27 };
28
diff --git a/Documentation/devicetree/bindings/spi/spi-davinci.txt b/Documentation/devicetree/bindings/spi/spi-davinci.txt
index 6d0ac8d0ad9b..f80887bca0d6 100644
--- a/Documentation/devicetree/bindings/spi/spi-davinci.txt
+++ b/Documentation/devicetree/bindings/spi/spi-davinci.txt
@@ -8,7 +8,8 @@ Required properties:
8 - "ti,dm6441-spi" for SPI used similar to that on DM644x SoC family 8 - "ti,dm6441-spi" for SPI used similar to that on DM644x SoC family
9 - "ti,da830-spi" for SPI used similar to that on DA8xx SoC family 9 - "ti,da830-spi" for SPI used similar to that on DA8xx SoC family
10- reg: Offset and length of SPI controller register space 10- reg: Offset and length of SPI controller register space
11- num-cs: Number of chip selects 11- num-cs: Number of chip selects. This includes internal as well as
12 GPIO chip selects.
12- ti,davinci-spi-intr-line: interrupt line used to connect the SPI 13- ti,davinci-spi-intr-line: interrupt line used to connect the SPI
13 IP to the interrupt controller within the SoC. Possible values 14 IP to the interrupt controller within the SoC. Possible values
14 are 0 and 1. Manual says one of the two possible interrupt 15 are 0 and 1. Manual says one of the two possible interrupt
@@ -17,6 +18,12 @@ Required properties:
17- interrupts: interrupt number mapped to CPU. 18- interrupts: interrupt number mapped to CPU.
18- clocks: spi clk phandle 19- clocks: spi clk phandle
19 20
21Optional:
22- cs-gpios: gpio chip selects
23 For example to have 3 internal CS and 2 GPIO CS, user could define
24 cs-gpios = <0>, <0>, <0>, <&gpio1 30 0>, <&gpio1 31 0>;
25 where first three are internal CS and last two are GPIO CS.
26
20Example of a NOR flash slave device (n25q032) connected to DaVinci 27Example of a NOR flash slave device (n25q032) connected to DaVinci
21SPI controller device over the SPI bus. 28SPI controller device over the SPI bus.
22 29
diff --git a/Documentation/devicetree/bindings/spi/spi-rockchip.txt b/Documentation/devicetree/bindings/spi/spi-rockchip.txt
new file mode 100644
index 000000000000..7bab35575817
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/spi-rockchip.txt
@@ -0,0 +1,37 @@
1* Rockchip SPI Controller
2
3The Rockchip SPI controller is used to interface with various devices such as flash
4and display controllers using the SPI communication interface.
5
6Required Properties:
7
8- compatible: should be one of the following.
9 "rockchip,rk3066-spi" for rk3066.
10 "rockchip,rk3188-spi", "rockchip,rk3066-spi" for rk3188.
11 "rockchip,rk3288-spi", "rockchip,rk3066-spi" for rk3288.
12- reg: physical base address of the controller and length of memory mapped
13 region.
14- interrupts: The interrupt number to the cpu. The interrupt specifier format
15 depends on the interrupt controller.
16- clocks: Must contain an entry for each entry in clock-names.
17- clock-names: Shall be "spiclk" for the transfer-clock, and "apb_pclk" for
18 the peripheral clock.
19- dmas: DMA specifiers for tx and rx dma. See the DMA client binding,
20 Documentation/devicetree/bindings/dma/dma.txt
21- dma-names: DMA request names should include "tx" and "rx" if present.
22- #address-cells: should be 1.
23- #size-cells: should be 0.
24
25Example:
26
27 spi0: spi@ff110000 {
28 compatible = "rockchip,rk3066-spi";
29 reg = <0xff110000 0x1000>;
30 dmas = <&pdma1 11>, <&pdma1 12>;
31 dma-names = "tx", "rx";
32 #address-cells = <1>;
33 #size-cells = <0>;
34 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
35 clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
36 clock-names = "spiclk", "apb_pclk";
37 };
diff --git a/Documentation/devicetree/bindings/spi/spi-samsung.txt b/Documentation/devicetree/bindings/spi/spi-samsung.txt
index 86aa061f069f..792efbaedc54 100644
--- a/Documentation/devicetree/bindings/spi/spi-samsung.txt
+++ b/Documentation/devicetree/bindings/spi/spi-samsung.txt
@@ -18,14 +18,11 @@ Required SoC Specific Properties:
18- interrupts: The interrupt number to the cpu. The interrupt specifier format 18- interrupts: The interrupt number to the cpu. The interrupt specifier format
19 depends on the interrupt controller. 19 depends on the interrupt controller.
20 20
21[PRELIMINARY: the dma channel allocation will change once there are 21- dmas : Two or more DMA channel specifiers following the convention outlined
22official DMA bindings] 22 in bindings/dma/dma.txt
23 23
24- tx-dma-channel: The dma channel specifier for tx operations. The format of 24- dma-names: Names for the dma channels. There must be at least one channel
25 the dma specifier depends on the dma controller. 25 named "tx" for transmit and named "rx" for receive.
26
27- rx-dma-channel: The dma channel specifier for rx operations. The format of
28 the dma specifier depends on the dma controller.
29 26
30Required Board Specific Properties: 27Required Board Specific Properties:
31 28
@@ -42,15 +39,13 @@ Optional Board Specific Properties:
42- num-cs: Specifies the number of chip select lines supported. If 39- num-cs: Specifies the number of chip select lines supported. If
43 not specified, the default number of chip select lines is set to 1. 40 not specified, the default number of chip select lines is set to 1.
44 41
42- cs-gpios: should specify GPIOs used for chipselects (see spi-bus.txt)
43
45SPI Controller specific data in SPI slave nodes: 44SPI Controller specific data in SPI slave nodes:
46 45
47- The spi slave nodes should provide the following information which is required 46- The spi slave nodes should provide the following information which is required
48 by the spi controller. 47 by the spi controller.
49 48
50 - cs-gpio: A gpio specifier that specifies the gpio line used as
51 the slave select line by the spi controller. The format of the gpio
52 specifier depends on the gpio controller.
53
54 - samsung,spi-feedback-delay: The sampling phase shift to be applied on the 49 - samsung,spi-feedback-delay: The sampling phase shift to be applied on the
55 miso line (to account for any lag in the miso line). The following are the 50 miso line (to account for any lag in the miso line). The following are the
56 valid values. 51 valid values.
@@ -74,8 +69,11 @@ Example:
74 compatible = "samsung,exynos4210-spi"; 69 compatible = "samsung,exynos4210-spi";
75 reg = <0x12d20000 0x100>; 70 reg = <0x12d20000 0x100>;
76 interrupts = <0 66 0>; 71 interrupts = <0 66 0>;
77 tx-dma-channel = <&pdma0 5>; 72 dmas = <&pdma0 5
78 rx-dma-channel = <&pdma0 4>; 73 &pdma0 4>;
74 dma-names = "tx", "rx";
75 #address-cells = <1>;
76 #size-cells = <0>;
79 }; 77 };
80 78
81- Board Specific Portion: 79- Board Specific Portion:
@@ -85,6 +83,7 @@ Example:
85 #size-cells = <0>; 83 #size-cells = <0>;
86 pinctrl-names = "default"; 84 pinctrl-names = "default";
87 pinctrl-0 = <&spi0_bus>; 85 pinctrl-0 = <&spi0_bus>;
86 cs-gpios = <&gpa2 5 0>;
88 87
89 w25q80bw@0 { 88 w25q80bw@0 {
90 #address-cells = <1>; 89 #address-cells = <1>;
@@ -94,7 +93,6 @@ Example:
94 spi-max-frequency = <10000>; 93 spi-max-frequency = <10000>;
95 94
96 controller-data { 95 controller-data {
97 cs-gpio = <&gpa2 5 1 0 3>;
98 samsung,spi-feedback-delay = <0>; 96 samsung,spi-feedback-delay = <0>;
99 }; 97 };
100 98
diff --git a/Documentation/devicetree/bindings/usb/ci-hdrc-imx.txt b/Documentation/devicetree/bindings/usb/ci-hdrc-imx.txt
index a6a32cb7f777..1bae71e9ad47 100644
--- a/Documentation/devicetree/bindings/usb/ci-hdrc-imx.txt
+++ b/Documentation/devicetree/bindings/usb/ci-hdrc-imx.txt
@@ -4,6 +4,7 @@ Required properties:
4- compatible: Should be "fsl,imx27-usb" 4- compatible: Should be "fsl,imx27-usb"
5- reg: Should contain registers location and length 5- reg: Should contain registers location and length
6- interrupts: Should contain controller interrupt 6- interrupts: Should contain controller interrupt
7- fsl,usbphy: phandle of usb phy that connects to the port
7 8
8Recommended properies: 9Recommended properies:
9- phy_type: the type of the phy connected to the core. Should be one 10- phy_type: the type of the phy connected to the core. Should be one
@@ -12,7 +13,6 @@ Recommended properies:
12- dr_mode: One of "host", "peripheral" or "otg". Defaults to "otg" 13- dr_mode: One of "host", "peripheral" or "otg". Defaults to "otg"
13 14
14Optional properties: 15Optional properties:
15- fsl,usbphy: phandler of usb phy that connects to the only one port
16- fsl,usbmisc: phandler of non-core register device, with one argument 16- fsl,usbmisc: phandler of non-core register device, with one argument
17 that indicate usb controller index 17 that indicate usb controller index
18- vbus-supply: regulator for vbus 18- vbus-supply: regulator for vbus
diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt b/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt
index ba797d3e6326..c9205fbf26e2 100644
--- a/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt
+++ b/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt
@@ -20,6 +20,12 @@ Required properties :
20 Present if phy_type == utmi. 20 Present if phy_type == utmi.
21 - ulpi-link: The clock Tegra provides to the ULPI PHY (cdev2). 21 - ulpi-link: The clock Tegra provides to the ULPI PHY (cdev2).
22 Present if phy_type == ulpi, and ULPI link mode is in use. 22 Present if phy_type == ulpi, and ULPI link mode is in use.
23 - resets : Must contain an entry for each entry in reset-names.
24 See ../reset/reset.txt for details.
25 - reset-names : Must include the following entries:
26 - usb: The PHY's own reset signal.
27 - utmi-pads: The reset of the PHY containing the chip-wide UTMI pad control
28 registers. Required even if phy_type == ulpi.
23 29
24Required properties for phy_type == ulpi: 30Required properties for phy_type == ulpi:
25 - nvidia,phy-reset-gpio : The GPIO used to reset the PHY. 31 - nvidia,phy-reset-gpio : The GPIO used to reset the PHY.
@@ -56,6 +62,8 @@ Optional properties:
56 host means this is a host controller 62 host means this is a host controller
57 peripheral means it is device controller 63 peripheral means it is device controller
58 otg means it can operate as either ("on the go") 64 otg means it can operate as either ("on the go")
65 - nvidia,has-utmi-pad-registers : boolean indicates whether this controller
66 contains the UTMI pad control registers common to all USB controllers.
59 67
60VBUS control (required for dr_mode == otg, optional for dr_mode == host): 68VBUS control (required for dr_mode == otg, optional for dr_mode == host):
61 - vbus-supply: regulator for VBUS 69 - vbus-supply: regulator for VBUS
diff --git a/Documentation/devicetree/bindings/usb/usb-xhci.txt b/Documentation/devicetree/bindings/usb/usb-xhci.txt
index 5a79377c6a96..86f67f0886bc 100644
--- a/Documentation/devicetree/bindings/usb/usb-xhci.txt
+++ b/Documentation/devicetree/bindings/usb/usb-xhci.txt
@@ -9,8 +9,9 @@ Required properties:
9 register set for the device. 9 register set for the device.
10 - interrupts: one XHCI interrupt should be described here. 10 - interrupts: one XHCI interrupt should be described here.
11 11
12Optional property: 12Optional properties:
13 - clocks: reference to a clock 13 - clocks: reference to a clock
14 - usb3-lpm-capable: determines if platform is USB3 LPM capable
14 15
15Example: 16Example:
16 usb@f0931000 { 17 usb@f0931000 {
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 46a311e728a8..97c9c06132c4 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -42,6 +42,7 @@ dmo Data Modul AG
42ebv EBV Elektronik 42ebv EBV Elektronik
43edt Emerging Display Technologies 43edt Emerging Display Technologies
44emmicro EM Microelectronic 44emmicro EM Microelectronic
45epcos EPCOS AG
45epfl Ecole Polytechnique Fédérale de Lausanne 46epfl Ecole Polytechnique Fédérale de Lausanne
46epson Seiko Epson Corp. 47epson Seiko Epson Corp.
47est ESTeem Wireless Modems 48est ESTeem Wireless Modems