diff options
Diffstat (limited to 'Documentation/devicetree')
21 files changed, 382 insertions, 20 deletions
diff --git a/Documentation/devicetree/bindings/clock/exynos4415-clock.txt b/Documentation/devicetree/bindings/clock/exynos4415-clock.txt new file mode 100644 index 000000000000..847d98bae8cf --- /dev/null +++ b/Documentation/devicetree/bindings/clock/exynos4415-clock.txt | |||
@@ -0,0 +1,38 @@ | |||
1 | * Samsung Exynos4415 Clock Controller | ||
2 | |||
3 | The Exynos4415 clock controller generates and supplies clock to various | ||
4 | consumer devices within the Exynos4415 SoC. | ||
5 | |||
6 | Required properties: | ||
7 | |||
8 | - compatible: should be one of the following: | ||
9 | - "samsung,exynos4415-cmu" - for the main system clocks controller | ||
10 | (CMU_LEFTBUS, CMU_RIGHTBUS, CMU_TOP, CMU_CPU clock domains). | ||
11 | - "samsung,exynos4415-cmu-dmc" - for the Exynos4415 SoC DRAM Memory | ||
12 | Controller (DMC) domain clock controller. | ||
13 | |||
14 | - reg: physical base address of the controller and length of memory mapped | ||
15 | region. | ||
16 | |||
17 | - #clock-cells: should be 1. | ||
18 | |||
19 | Each clock is assigned an identifier and client nodes can use this identifier | ||
20 | to specify the clock which they consume. | ||
21 | |||
22 | All available clocks are defined as preprocessor macros in | ||
23 | dt-bindings/clock/exynos4415.h header and can be used in device | ||
24 | tree sources. | ||
25 | |||
26 | Example 1: An example of a clock controller node is listed below. | ||
27 | |||
28 | cmu: clock-controller@10030000 { | ||
29 | compatible = "samsung,exynos4415-cmu"; | ||
30 | reg = <0x10030000 0x18000>; | ||
31 | #clock-cells = <1>; | ||
32 | }; | ||
33 | |||
34 | cmu-dmc: clock-controller@105C0000 { | ||
35 | compatible = "samsung,exynos4415-cmu-dmc"; | ||
36 | reg = <0x105C0000 0x3000>; | ||
37 | #clock-cells = <1>; | ||
38 | }; | ||
diff --git a/Documentation/devicetree/bindings/clock/exynos7-clock.txt b/Documentation/devicetree/bindings/clock/exynos7-clock.txt new file mode 100644 index 000000000000..6d3d5f80c1c3 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/exynos7-clock.txt | |||
@@ -0,0 +1,93 @@ | |||
1 | * Samsung Exynos7 Clock Controller | ||
2 | |||
3 | Exynos7 clock controller has various blocks which are instantiated | ||
4 | independently from the device-tree. These clock controllers | ||
5 | generate and supply clocks to various hardware blocks within | ||
6 | the SoC. | ||
7 | |||
8 | Each clock is assigned an identifier and client nodes can use | ||
9 | this identifier to specify the clock which they consume. All | ||
10 | available clocks are defined as preprocessor macros in | ||
11 | dt-bindings/clock/exynos7-clk.h header and can be used in | ||
12 | device tree sources. | ||
13 | |||
14 | External clocks: | ||
15 | |||
16 | There are several clocks that are generated outside the SoC. It | ||
17 | is expected that they are defined using standard clock bindings | ||
18 | with following clock-output-names: | ||
19 | |||
20 | - "fin_pll" - PLL input clock from XXTI | ||
21 | |||
22 | Required Properties for Clock Controller: | ||
23 | |||
24 | - compatible: clock controllers will use one of the following | ||
25 | compatible strings to indicate the clock controller | ||
26 | functionality. | ||
27 | |||
28 | - "samsung,exynos7-clock-topc" | ||
29 | - "samsung,exynos7-clock-top0" | ||
30 | - "samsung,exynos7-clock-top1" | ||
31 | - "samsung,exynos7-clock-ccore" | ||
32 | - "samsung,exynos7-clock-peric0" | ||
33 | - "samsung,exynos7-clock-peric1" | ||
34 | - "samsung,exynos7-clock-peris" | ||
35 | - "samsung,exynos7-clock-fsys0" | ||
36 | - "samsung,exynos7-clock-fsys1" | ||
37 | |||
38 | - reg: physical base address of the controller and the length of | ||
39 | memory mapped region. | ||
40 | |||
41 | - #clock-cells: should be 1. | ||
42 | |||
43 | - clocks: list of clock identifiers which are fed as the input to | ||
44 | the given clock controller. Please refer the next section to | ||
45 | find the input clocks for a given controller. | ||
46 | |||
47 | - clock-names: list of names of clocks which are fed as the input | ||
48 | to the given clock controller. | ||
49 | |||
50 | Input clocks for top0 clock controller: | ||
51 | - fin_pll | ||
52 | - dout_sclk_bus0_pll | ||
53 | - dout_sclk_bus1_pll | ||
54 | - dout_sclk_cc_pll | ||
55 | - dout_sclk_mfc_pll | ||
56 | |||
57 | Input clocks for top1 clock controller: | ||
58 | - fin_pll | ||
59 | - dout_sclk_bus0_pll | ||
60 | - dout_sclk_bus1_pll | ||
61 | - dout_sclk_cc_pll | ||
62 | - dout_sclk_mfc_pll | ||
63 | |||
64 | Input clocks for ccore clock controller: | ||
65 | - fin_pll | ||
66 | - dout_aclk_ccore_133 | ||
67 | |||
68 | Input clocks for peric0 clock controller: | ||
69 | - fin_pll | ||
70 | - dout_aclk_peric0_66 | ||
71 | - sclk_uart0 | ||
72 | |||
73 | Input clocks for peric1 clock controller: | ||
74 | - fin_pll | ||
75 | - dout_aclk_peric1_66 | ||
76 | - sclk_uart1 | ||
77 | - sclk_uart2 | ||
78 | - sclk_uart3 | ||
79 | |||
80 | Input clocks for peris clock controller: | ||
81 | - fin_pll | ||
82 | - dout_aclk_peris_66 | ||
83 | |||
84 | Input clocks for fsys0 clock controller: | ||
85 | - fin_pll | ||
86 | - dout_aclk_fsys0_200 | ||
87 | - dout_sclk_mmc2 | ||
88 | |||
89 | Input clocks for fsys1 clock controller: | ||
90 | - fin_pll | ||
91 | - dout_aclk_fsys1_200 | ||
92 | - dout_sclk_mmc0 | ||
93 | - dout_sclk_mmc1 | ||
diff --git a/Documentation/devicetree/bindings/clock/marvell,mmp2.txt b/Documentation/devicetree/bindings/clock/marvell,mmp2.txt new file mode 100644 index 000000000000..af376a01f2b7 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/marvell,mmp2.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Marvell MMP2 Clock Controller | ||
2 | |||
3 | The MMP2 clock subsystem generates and supplies clock to various | ||
4 | controllers within the MMP2 SoC. | ||
5 | |||
6 | Required Properties: | ||
7 | |||
8 | - compatible: should be one of the following. | ||
9 | - "marvell,mmp2-clock" - controller compatible with MMP2 SoC. | ||
10 | |||
11 | - reg: physical base address of the clock subsystem and length of memory mapped | ||
12 | region. There are 3 places in SOC has clock control logic: | ||
13 | "mpmu", "apmu", "apbc". So three reg spaces need to be defined. | ||
14 | |||
15 | - #clock-cells: should be 1. | ||
16 | - #reset-cells: should be 1. | ||
17 | |||
18 | Each clock is assigned an identifier and client nodes use this identifier | ||
19 | to specify the clock which they consume. | ||
20 | |||
21 | All these identifier could be found in <dt-bindings/clock/marvell-mmp2.h>. | ||
diff --git a/Documentation/devicetree/bindings/clock/marvell,pxa168.txt b/Documentation/devicetree/bindings/clock/marvell,pxa168.txt new file mode 100644 index 000000000000..c62eb1d173a6 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/marvell,pxa168.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Marvell PXA168 Clock Controller | ||
2 | |||
3 | The PXA168 clock subsystem generates and supplies clock to various | ||
4 | controllers within the PXA168 SoC. | ||
5 | |||
6 | Required Properties: | ||
7 | |||
8 | - compatible: should be one of the following. | ||
9 | - "marvell,pxa168-clock" - controller compatible with PXA168 SoC. | ||
10 | |||
11 | - reg: physical base address of the clock subsystem and length of memory mapped | ||
12 | region. There are 3 places in SOC has clock control logic: | ||
13 | "mpmu", "apmu", "apbc". So three reg spaces need to be defined. | ||
14 | |||
15 | - #clock-cells: should be 1. | ||
16 | - #reset-cells: should be 1. | ||
17 | |||
18 | Each clock is assigned an identifier and client nodes use this identifier | ||
19 | to specify the clock which they consume. | ||
20 | |||
21 | All these identifier could be found in <dt-bindings/clock/marvell,pxa168.h>. | ||
diff --git a/Documentation/devicetree/bindings/clock/marvell,pxa910.txt b/Documentation/devicetree/bindings/clock/marvell,pxa910.txt new file mode 100644 index 000000000000..d9f41f3c03a0 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/marvell,pxa910.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Marvell PXA910 Clock Controller | ||
2 | |||
3 | The PXA910 clock subsystem generates and supplies clock to various | ||
4 | controllers within the PXA910 SoC. | ||
5 | |||
6 | Required Properties: | ||
7 | |||
8 | - compatible: should be one of the following. | ||
9 | - "marvell,pxa910-clock" - controller compatible with PXA910 SoC. | ||
10 | |||
11 | - reg: physical base address of the clock subsystem and length of memory mapped | ||
12 | region. There are 4 places in SOC has clock control logic: | ||
13 | "mpmu", "apmu", "apbc", "apbcp". So four reg spaces need to be defined. | ||
14 | |||
15 | - #clock-cells: should be 1. | ||
16 | - #reset-cells: should be 1. | ||
17 | |||
18 | Each clock is assigned an identifier and client nodes use this identifier | ||
19 | to specify the clock which they consume. | ||
20 | |||
21 | All these identifier could be found in <dt-bindings/clock/marvell-pxa910.h>. | ||
diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-div6-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-div6-clocks.txt index 952e373178d2..054f65f9319c 100644 --- a/Documentation/devicetree/bindings/clock/renesas,cpg-div6-clocks.txt +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-div6-clocks.txt | |||
@@ -7,11 +7,16 @@ to 64. | |||
7 | Required Properties: | 7 | Required Properties: |
8 | 8 | ||
9 | - compatible: Must be one of the following | 9 | - compatible: Must be one of the following |
10 | - "renesas,r8a73a4-div6-clock" for R8A73A4 (R-Mobile APE6) DIV6 clocks | ||
11 | - "renesas,r8a7740-div6-clock" for R8A7740 (R-Mobile A1) DIV6 clocks | ||
10 | - "renesas,r8a7790-div6-clock" for R8A7790 (R-Car H2) DIV6 clocks | 12 | - "renesas,r8a7790-div6-clock" for R8A7790 (R-Car H2) DIV6 clocks |
11 | - "renesas,r8a7791-div6-clock" for R8A7791 (R-Car M2) DIV6 clocks | 13 | - "renesas,r8a7791-div6-clock" for R8A7791 (R-Car M2) DIV6 clocks |
14 | - "renesas,sh73a0-div6-clock" for SH73A0 (SH-Mobile AG5) DIV6 clocks | ||
12 | - "renesas,cpg-div6-clock" for generic DIV6 clocks | 15 | - "renesas,cpg-div6-clock" for generic DIV6 clocks |
13 | - reg: Base address and length of the memory resource used by the DIV6 clock | 16 | - reg: Base address and length of the memory resource used by the DIV6 clock |
14 | - clocks: Reference to the parent clock | 17 | - clocks: Reference to the parent clock(s); either one, four, or eight |
18 | clocks must be specified. For clocks with multiple parents, invalid | ||
19 | settings must be specified as "<0>". | ||
15 | - #clock-cells: Must be 0 | 20 | - #clock-cells: Must be 0 |
16 | - clock-output-names: The name of the clock as a free-form string | 21 | - clock-output-names: The name of the clock as a free-form string |
17 | 22 | ||
@@ -19,10 +24,11 @@ Required Properties: | |||
19 | Example | 24 | Example |
20 | ------- | 25 | ------- |
21 | 26 | ||
22 | sd2_clk: sd2_clk@e6150078 { | 27 | sdhi2_clk: sdhi2_clk@e615007c { |
23 | compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock"; | 28 | compatible = "renesas,r8a73a4-div6-clock", "renesas,cpg-div6-clock"; |
24 | reg = <0 0xe6150078 0 4>; | 29 | reg = <0 0xe615007c 0 4>; |
25 | clocks = <&pll1_div2_clk>; | 30 | clocks = <&pll1_div2_clk>, <&cpg_clocks R8A73A4_CLK_PLL2S>, |
31 | <0>, <&extal2_clk>; | ||
26 | #clock-cells = <0>; | 32 | #clock-cells = <0>; |
27 | clock-output-names = "sd2"; | 33 | clock-output-names = "sdhi2ck"; |
28 | }; | 34 | }; |
diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt index a5f52238c80d..2e18676bd4b5 100644 --- a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt | |||
@@ -26,11 +26,11 @@ Required Properties: | |||
26 | must appear in the same order as the output clocks. | 26 | must appear in the same order as the output clocks. |
27 | - #clock-cells: Must be 1 | 27 | - #clock-cells: Must be 1 |
28 | - clock-output-names: The name of the clocks as free-form strings | 28 | - clock-output-names: The name of the clocks as free-form strings |
29 | - renesas,clock-indices: Indices of the gate clocks into the group (0 to 31) | 29 | - clock-indices: Indices of the gate clocks into the group (0 to 31) |
30 | 30 | ||
31 | The clocks, clock-output-names and renesas,clock-indices properties contain one | 31 | The clocks, clock-output-names and clock-indices properties contain one entry |
32 | entry per gate clock. The MSTP groups are sparsely populated. Unimplemented | 32 | per gate clock. The MSTP groups are sparsely populated. Unimplemented gate |
33 | gate clocks must not be declared. | 33 | clocks must not be declared. |
34 | 34 | ||
35 | 35 | ||
36 | Example | 36 | Example |
diff --git a/Documentation/devicetree/bindings/clock/sunxi.txt b/Documentation/devicetree/bindings/clock/sunxi.txt index ed116df9c3e7..67b2b99f2b33 100644 --- a/Documentation/devicetree/bindings/clock/sunxi.txt +++ b/Documentation/devicetree/bindings/clock/sunxi.txt | |||
@@ -10,14 +10,17 @@ Required properties: | |||
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,sun8i-a23-pll1-clk" - for the main PLL clock on A23 |
13 | "allwinner,sun9i-a80-pll4-clk" - for the peripheral PLLs on A80 | ||
13 | "allwinner,sun4i-a10-pll5-clk" - for the PLL5 clock | 14 | "allwinner,sun4i-a10-pll5-clk" - for the PLL5 clock |
14 | "allwinner,sun4i-a10-pll6-clk" - for the PLL6 clock | 15 | "allwinner,sun4i-a10-pll6-clk" - for the PLL6 clock |
15 | "allwinner,sun6i-a31-pll6-clk" - for the PLL6 clock on A31 | 16 | "allwinner,sun6i-a31-pll6-clk" - for the PLL6 clock on A31 |
17 | "allwinner,sun9i-a80-gt-clk" - for the GT bus clock on A80 | ||
16 | "allwinner,sun4i-a10-cpu-clk" - for the CPU multiplexer clock | 18 | "allwinner,sun4i-a10-cpu-clk" - for the CPU multiplexer clock |
17 | "allwinner,sun4i-a10-axi-clk" - for the AXI clock | 19 | "allwinner,sun4i-a10-axi-clk" - for the AXI clock |
18 | "allwinner,sun8i-a23-axi-clk" - for the AXI clock on A23 | 20 | "allwinner,sun8i-a23-axi-clk" - for the AXI clock on A23 |
19 | "allwinner,sun4i-a10-axi-gates-clk" - for the AXI gates | 21 | "allwinner,sun4i-a10-axi-gates-clk" - for the AXI gates |
20 | "allwinner,sun4i-a10-ahb-clk" - for the AHB clock | 22 | "allwinner,sun4i-a10-ahb-clk" - for the AHB clock |
23 | "allwinner,sun9i-a80-ahb-clk" - for the AHB bus clocks on A80 | ||
21 | "allwinner,sun4i-a10-ahb-gates-clk" - for the AHB gates on A10 | 24 | "allwinner,sun4i-a10-ahb-gates-clk" - for the AHB gates on A10 |
22 | "allwinner,sun5i-a13-ahb-gates-clk" - for the AHB gates on A13 | 25 | "allwinner,sun5i-a13-ahb-gates-clk" - for the AHB gates on A13 |
23 | "allwinner,sun5i-a10s-ahb-gates-clk" - for the AHB gates on A10s | 26 | "allwinner,sun5i-a10s-ahb-gates-clk" - for the AHB gates on A10s |
@@ -26,24 +29,29 @@ Required properties: | |||
26 | "allwinner,sun6i-a31-ahb1-mux-clk" - for the AHB1 multiplexer on A31 | 29 | "allwinner,sun6i-a31-ahb1-mux-clk" - for the AHB1 multiplexer on A31 |
27 | "allwinner,sun6i-a31-ahb1-gates-clk" - for the AHB1 gates on A31 | 30 | "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 | 31 | "allwinner,sun8i-a23-ahb1-gates-clk" - for the AHB1 gates on A23 |
32 | "allwinner,sun9i-a80-ahb0-gates-clk" - for the AHB0 gates on A80 | ||
33 | "allwinner,sun9i-a80-ahb1-gates-clk" - for the AHB1 gates on A80 | ||
34 | "allwinner,sun9i-a80-ahb2-gates-clk" - for the AHB2 gates on A80 | ||
29 | "allwinner,sun4i-a10-apb0-clk" - for the APB0 clock | 35 | "allwinner,sun4i-a10-apb0-clk" - for the APB0 clock |
30 | "allwinner,sun6i-a31-apb0-clk" - for the APB0 clock on A31 | 36 | "allwinner,sun6i-a31-apb0-clk" - for the APB0 clock on A31 |
31 | "allwinner,sun8i-a23-apb0-clk" - for the APB0 clock on A23 | 37 | "allwinner,sun8i-a23-apb0-clk" - for the APB0 clock on A23 |
38 | "allwinner,sun9i-a80-apb0-clk" - for the APB0 bus clock on A80 | ||
32 | "allwinner,sun4i-a10-apb0-gates-clk" - for the APB0 gates on A10 | 39 | "allwinner,sun4i-a10-apb0-gates-clk" - for the APB0 gates on A10 |
33 | "allwinner,sun5i-a13-apb0-gates-clk" - for the APB0 gates on A13 | 40 | "allwinner,sun5i-a13-apb0-gates-clk" - for the APB0 gates on A13 |
34 | "allwinner,sun5i-a10s-apb0-gates-clk" - for the APB0 gates on A10s | 41 | "allwinner,sun5i-a10s-apb0-gates-clk" - for the APB0 gates on A10s |
35 | "allwinner,sun6i-a31-apb0-gates-clk" - for the APB0 gates on A31 | 42 | "allwinner,sun6i-a31-apb0-gates-clk" - for the APB0 gates on A31 |
36 | "allwinner,sun7i-a20-apb0-gates-clk" - for the APB0 gates on A20 | 43 | "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 | 44 | "allwinner,sun8i-a23-apb0-gates-clk" - for the APB0 gates on A23 |
45 | "allwinner,sun9i-a80-apb0-gates-clk" - for the APB0 gates on A80 | ||
38 | "allwinner,sun4i-a10-apb1-clk" - for the APB1 clock | 46 | "allwinner,sun4i-a10-apb1-clk" - for the APB1 clock |
39 | "allwinner,sun4i-a10-apb1-mux-clk" - for the APB1 clock muxing | 47 | "allwinner,sun9i-a80-apb1-clk" - for the APB1 bus clock on A80 |
40 | "allwinner,sun4i-a10-apb1-gates-clk" - for the APB1 gates on A10 | 48 | "allwinner,sun4i-a10-apb1-gates-clk" - for the APB1 gates on A10 |
41 | "allwinner,sun5i-a13-apb1-gates-clk" - for the APB1 gates on A13 | 49 | "allwinner,sun5i-a13-apb1-gates-clk" - for the APB1 gates on A13 |
42 | "allwinner,sun5i-a10s-apb1-gates-clk" - for the APB1 gates on A10s | 50 | "allwinner,sun5i-a10s-apb1-gates-clk" - for the APB1 gates on A10s |
43 | "allwinner,sun6i-a31-apb1-gates-clk" - for the APB1 gates on A31 | 51 | "allwinner,sun6i-a31-apb1-gates-clk" - for the APB1 gates on A31 |
44 | "allwinner,sun7i-a20-apb1-gates-clk" - for the APB1 gates on A20 | 52 | "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 | 53 | "allwinner,sun8i-a23-apb1-gates-clk" - for the APB1 gates on A23 |
46 | "allwinner,sun6i-a31-apb2-div-clk" - for the APB2 gates on A31 | 54 | "allwinner,sun9i-a80-apb1-gates-clk" - for the APB1 gates on A80 |
47 | "allwinner,sun6i-a31-apb2-gates-clk" - for the APB2 gates on A31 | 55 | "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 | 56 | "allwinner,sun8i-a23-apb2-gates-clk" - for the APB2 gates on A23 |
49 | "allwinner,sun5i-a13-mbus-clk" - for the MBUS clock on A13 | 57 | "allwinner,sun5i-a13-mbus-clk" - for the MBUS clock on A13 |
@@ -63,8 +71,9 @@ Required properties for all clocks: | |||
63 | multiplexed clocks, the list order must match the hardware | 71 | multiplexed clocks, the list order must match the hardware |
64 | programming order. | 72 | programming order. |
65 | - #clock-cells : from common clock binding; shall be set to 0 except for | 73 | - #clock-cells : from common clock binding; shall be set to 0 except for |
66 | "allwinner,*-gates-clk", "allwinner,sun4i-pll5-clk" and | 74 | the following compatibles where it shall be set to 1: |
67 | "allwinner,sun4i-pll6-clk" where it shall be set to 1 | 75 | "allwinner,*-gates-clk", "allwinner,sun4i-pll5-clk", |
76 | "allwinner,sun4i-pll6-clk", "allwinner,sun6i-a31-pll6-clk" | ||
68 | - clock-output-names : shall be the corresponding names of the outputs. | 77 | - clock-output-names : shall be the corresponding names of the outputs. |
69 | If the clock module only has one output, the name shall be the | 78 | If the clock module only has one output, the name shall be the |
70 | module name. | 79 | module name. |
@@ -79,6 +88,12 @@ Clock consumers should specify the desired clocks they use with a | |||
79 | "clocks" phandle cell. Consumers that are using a gated clock should | 88 | "clocks" phandle cell. Consumers that are using a gated clock should |
80 | provide an additional ID in their clock property. This ID is the | 89 | provide an additional ID in their clock property. This ID is the |
81 | offset of the bit controlling this particular gate in the register. | 90 | offset of the bit controlling this particular gate in the register. |
91 | For the other clocks with "#clock-cells" = 1, the additional ID shall | ||
92 | refer to the index of the output. | ||
93 | |||
94 | For "allwinner,sun6i-a31-pll6-clk", there are 2 outputs. The first output | ||
95 | is the normal PLL6 output, or "pll6". The second output is rate doubled | ||
96 | PLL6, or "pll6x2". | ||
82 | 97 | ||
83 | For example: | 98 | For example: |
84 | 99 | ||
@@ -106,6 +121,14 @@ pll5: clk@01c20020 { | |||
106 | clock-output-names = "pll5_ddr", "pll5_other"; | 121 | clock-output-names = "pll5_ddr", "pll5_other"; |
107 | }; | 122 | }; |
108 | 123 | ||
124 | pll6: clk@01c20028 { | ||
125 | #clock-cells = <1>; | ||
126 | compatible = "allwinner,sun6i-a31-pll6-clk"; | ||
127 | reg = <0x01c20028 0x4>; | ||
128 | clocks = <&osc24M>; | ||
129 | clock-output-names = "pll6", "pll6x2"; | ||
130 | }; | ||
131 | |||
109 | cpu: cpu@01c20054 { | 132 | cpu: cpu@01c20054 { |
110 | #clock-cells = <0>; | 133 | #clock-cells = <0>; |
111 | compatible = "allwinner,sun4i-a10-cpu-clk"; | 134 | compatible = "allwinner,sun4i-a10-cpu-clk"; |
diff --git a/Documentation/devicetree/bindings/mailbox/mailbox.txt b/Documentation/devicetree/bindings/mailbox/mailbox.txt new file mode 100644 index 000000000000..1a2cd3d266db --- /dev/null +++ b/Documentation/devicetree/bindings/mailbox/mailbox.txt | |||
@@ -0,0 +1,38 @@ | |||
1 | * Generic Mailbox Controller and client driver bindings | ||
2 | |||
3 | Generic binding to provide a way for Mailbox controller drivers to | ||
4 | assign appropriate mailbox channel to client drivers. | ||
5 | |||
6 | * Mailbox Controller | ||
7 | |||
8 | Required property: | ||
9 | - #mbox-cells: Must be at least 1. Number of cells in a mailbox | ||
10 | specifier. | ||
11 | |||
12 | Example: | ||
13 | mailbox: mailbox { | ||
14 | ... | ||
15 | #mbox-cells = <1>; | ||
16 | }; | ||
17 | |||
18 | |||
19 | * Mailbox Client | ||
20 | |||
21 | Required property: | ||
22 | - mboxes: List of phandle and mailbox channel specifiers. | ||
23 | |||
24 | Optional property: | ||
25 | - mbox-names: List of identifier strings for each mailbox channel | ||
26 | required by the client. The use of this property | ||
27 | is discouraged in favor of using index in list of | ||
28 | 'mboxes' while requesting a mailbox. Instead the | ||
29 | platforms may define channel indices, in DT headers, | ||
30 | to something legible. | ||
31 | |||
32 | Example: | ||
33 | pwr_cntrl: power { | ||
34 | ... | ||
35 | mbox-names = "pwr-ctrl", "rpc"; | ||
36 | mboxes = <&mailbox 0 | ||
37 | &mailbox 1>; | ||
38 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/smsc-lan91c111.txt b/Documentation/devicetree/bindings/net/smsc-lan91c111.txt index 0f8487b88822..e77e167593db 100644 --- a/Documentation/devicetree/bindings/net/smsc-lan91c111.txt +++ b/Documentation/devicetree/bindings/net/smsc-lan91c111.txt | |||
@@ -11,3 +11,5 @@ Optional properties: | |||
11 | are supported on the device. Valid value for SMSC LAN91c111 are | 11 | are supported on the device. Valid value for SMSC LAN91c111 are |
12 | 1, 2 or 4. If it's omitted or invalid, the size would be 2 meaning | 12 | 1, 2 or 4. If it's omitted or invalid, the size would be 2 meaning |
13 | 16-bit access only. | 13 | 16-bit access only. |
14 | - power-gpios: GPIO to control the PWRDWN pin | ||
15 | - reset-gpios: GPIO to control the RESET pin | ||
diff --git a/Documentation/devicetree/bindings/pwm/pwm-fsl-ftm.txt b/Documentation/devicetree/bindings/pwm/pwm-fsl-ftm.txt index 0bda229a6171..3899d6a557c1 100644 --- a/Documentation/devicetree/bindings/pwm/pwm-fsl-ftm.txt +++ b/Documentation/devicetree/bindings/pwm/pwm-fsl-ftm.txt | |||
@@ -1,5 +1,20 @@ | |||
1 | Freescale FlexTimer Module (FTM) PWM controller | 1 | Freescale FlexTimer Module (FTM) PWM controller |
2 | 2 | ||
3 | The same FTM PWM device can have a different endianness on different SoCs. The | ||
4 | device tree provides a property to describing this so that an operating system | ||
5 | device driver can handle all variants of the device. Refer to the table below | ||
6 | for the endianness of the FTM PWM block as integrated into the existing SoCs: | ||
7 | |||
8 | SoC | FTM-PWM endianness | ||
9 | --------+------------------- | ||
10 | Vybrid | LE | ||
11 | LS1 | BE | ||
12 | LS2 | LE | ||
13 | |||
14 | Please see ../regmap/regmap.txt for more detail about how to specify endian | ||
15 | modes in device tree. | ||
16 | |||
17 | |||
3 | Required properties: | 18 | Required properties: |
4 | - compatible: Should be "fsl,vf610-ftm-pwm". | 19 | - compatible: Should be "fsl,vf610-ftm-pwm". |
5 | - reg: Physical base address and length of the controller's registers | 20 | - reg: Physical base address and length of the controller's registers |
@@ -16,7 +31,8 @@ Required properties: | |||
16 | - pinctrl-names: Must contain a "default" entry. | 31 | - pinctrl-names: Must contain a "default" entry. |
17 | - pinctrl-NNN: One property must exist for each entry in pinctrl-names. | 32 | - pinctrl-NNN: One property must exist for each entry in pinctrl-names. |
18 | See pinctrl/pinctrl-bindings.txt for details of the property values. | 33 | See pinctrl/pinctrl-bindings.txt for details of the property values. |
19 | 34 | - big-endian: Boolean property, required if the FTM PWM registers use a big- | |
35 | endian rather than little-endian layout. | ||
20 | 36 | ||
21 | Example: | 37 | Example: |
22 | 38 | ||
@@ -32,4 +48,5 @@ pwm0: pwm@40038000 { | |||
32 | <&clks VF610_CLK_FTM0_EXT_FIX_EN>; | 48 | <&clks VF610_CLK_FTM0_EXT_FIX_EN>; |
33 | pinctrl-names = "default"; | 49 | pinctrl-names = "default"; |
34 | pinctrl-0 = <&pinctrl_pwm0_1>; | 50 | pinctrl-0 = <&pinctrl_pwm0_1>; |
51 | big-endian; | ||
35 | }; | 52 | }; |
diff --git a/Documentation/devicetree/bindings/pwm/pwm-rockchip.txt b/Documentation/devicetree/bindings/pwm/pwm-rockchip.txt index d47d15a6a298..b8be3d09ee26 100644 --- a/Documentation/devicetree/bindings/pwm/pwm-rockchip.txt +++ b/Documentation/devicetree/bindings/pwm/pwm-rockchip.txt | |||
@@ -7,8 +7,8 @@ Required properties: | |||
7 | "rockchip,vop-pwm": found integrated in VOP on RK3288 SoC | 7 | "rockchip,vop-pwm": found integrated in VOP on RK3288 SoC |
8 | - reg: physical base address and length of the controller's registers | 8 | - reg: physical base address and length of the controller's registers |
9 | - clocks: phandle and clock specifier of the PWM reference clock | 9 | - clocks: phandle and clock specifier of the PWM reference clock |
10 | - #pwm-cells: should be 2. See pwm.txt in this directory for a | 10 | - #pwm-cells: must be 2 (rk2928) or 3 (rk3288). See pwm.txt in this directory |
11 | description of the cell format. | 11 | for a description of the cell format. |
12 | 12 | ||
13 | Example: | 13 | Example: |
14 | 14 | ||
diff --git a/Documentation/devicetree/bindings/sound/sgtl5000.txt b/Documentation/devicetree/bindings/sound/sgtl5000.txt index 955df60a118c..d556dcb8816b 100644 --- a/Documentation/devicetree/bindings/sound/sgtl5000.txt +++ b/Documentation/devicetree/bindings/sound/sgtl5000.txt | |||
@@ -7,10 +7,20 @@ Required properties: | |||
7 | 7 | ||
8 | - clocks : the clock provider of SYS_MCLK | 8 | - clocks : the clock provider of SYS_MCLK |
9 | 9 | ||
10 | - VDDA-supply : the regulator provider of VDDA | ||
11 | |||
12 | - VDDIO-supply: the regulator provider of VDDIO | ||
13 | |||
14 | Optional properties: | ||
15 | |||
16 | - VDDD-supply : the regulator provider of VDDD | ||
17 | |||
10 | Example: | 18 | Example: |
11 | 19 | ||
12 | codec: sgtl5000@0a { | 20 | codec: sgtl5000@0a { |
13 | compatible = "fsl,sgtl5000"; | 21 | compatible = "fsl,sgtl5000"; |
14 | reg = <0x0a>; | 22 | reg = <0x0a>; |
15 | clocks = <&clks 150>; | 23 | clocks = <&clks 150>; |
24 | VDDA-supply = <®_3p3v>; | ||
25 | VDDIO-supply = <®_3p3v>; | ||
16 | }; | 26 | }; |
diff --git a/Documentation/devicetree/bindings/submitting-patches.txt b/Documentation/devicetree/bindings/submitting-patches.txt index 042a0273b8ba..b7ba01ad1426 100644 --- a/Documentation/devicetree/bindings/submitting-patches.txt +++ b/Documentation/devicetree/bindings/submitting-patches.txt | |||
@@ -12,6 +12,9 @@ I. For patch submitters | |||
12 | 12 | ||
13 | devicetree@vger.kernel.org | 13 | devicetree@vger.kernel.org |
14 | 14 | ||
15 | 3) The Documentation/ portion of the patch should come in the series before | ||
16 | the code implementing the binding. | ||
17 | |||
15 | II. For kernel maintainers | 18 | II. For kernel maintainers |
16 | 19 | ||
17 | 1) If you aren't comfortable reviewing a given binding, reply to it and ask | 20 | 1) If you aren't comfortable reviewing a given binding, reply to it and ask |
diff --git a/Documentation/devicetree/bindings/thermal/imx-thermal.txt b/Documentation/devicetree/bindings/thermal/imx-thermal.txt index 1f0f67234a91..3c67bd50aa10 100644 --- a/Documentation/devicetree/bindings/thermal/imx-thermal.txt +++ b/Documentation/devicetree/bindings/thermal/imx-thermal.txt | |||
@@ -1,7 +1,10 @@ | |||
1 | * Temperature Monitor (TEMPMON) on Freescale i.MX SoCs | 1 | * Temperature Monitor (TEMPMON) on Freescale i.MX SoCs |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "fsl,imx6q-thermal" | 4 | - compatible : "fsl,imx6q-tempmon" for i.MX6Q, "fsl,imx6sx-tempmon" for i.MX6SX. |
5 | i.MX6SX has two more IRQs than i.MX6Q, one is IRQ_LOW and the other is IRQ_PANIC, | ||
6 | when temperature is below than low threshold, IRQ_LOW will be triggered, when temperature | ||
7 | is higher than panic threshold, system will auto reboot by SRC module. | ||
5 | - fsl,tempmon : phandle pointer to system controller that contains TEMPMON | 8 | - fsl,tempmon : phandle pointer to system controller that contains TEMPMON |
6 | control registers, e.g. ANATOP on imx6q. | 9 | control registers, e.g. ANATOP on imx6q. |
7 | - fsl,tempmon-data : phandle pointer to fuse controller that contains TEMPMON | 10 | - fsl,tempmon-data : phandle pointer to fuse controller that contains TEMPMON |
diff --git a/Documentation/devicetree/bindings/thermal/rcar-thermal.txt b/Documentation/devicetree/bindings/thermal/rcar-thermal.txt index 0ef00be44b01..43404b197933 100644 --- a/Documentation/devicetree/bindings/thermal/rcar-thermal.txt +++ b/Documentation/devicetree/bindings/thermal/rcar-thermal.txt | |||
@@ -7,7 +7,10 @@ Required properties: | |||
7 | - "renesas,thermal-r8a73a4" (R-Mobile AP6) | 7 | - "renesas,thermal-r8a73a4" (R-Mobile AP6) |
8 | - "renesas,thermal-r8a7779" (R-Car H1) | 8 | - "renesas,thermal-r8a7779" (R-Car H1) |
9 | - "renesas,thermal-r8a7790" (R-Car H2) | 9 | - "renesas,thermal-r8a7790" (R-Car H2) |
10 | - "renesas,thermal-r8a7791" (R-Car M2) | 10 | - "renesas,thermal-r8a7791" (R-Car M2-W) |
11 | - "renesas,thermal-r8a7792" (R-Car V2H) | ||
12 | - "renesas,thermal-r8a7793" (R-Car M2-N) | ||
13 | - "renesas,thermal-r8a7794" (R-Car E2) | ||
11 | - reg : Address range of the thermal registers. | 14 | - reg : Address range of the thermal registers. |
12 | The 1st reg will be recognized as common register | 15 | The 1st reg will be recognized as common register |
13 | if it has "interrupts". | 16 | if it has "interrupts". |
diff --git a/Documentation/devicetree/bindings/watchdog/cadence-wdt.txt b/Documentation/devicetree/bindings/watchdog/cadence-wdt.txt new file mode 100644 index 000000000000..c3a36ee45552 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/cadence-wdt.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | Zynq Watchdog Device Tree Bindings | ||
2 | ------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : Should be "cdns,wdt-r1p2". | ||
6 | - clocks : This is pclk (APB clock). | ||
7 | - interrupts : This is wd_irq - watchdog timeout interrupt. | ||
8 | - interrupt-parent : Must be core interrupt controller. | ||
9 | |||
10 | Optional properties | ||
11 | - reset-on-timeout : If this property exists, then a reset is done | ||
12 | when watchdog times out. | ||
13 | - timeout-sec : Watchdog timeout value (in seconds). | ||
14 | |||
15 | Example: | ||
16 | watchdog@f8005000 { | ||
17 | compatible = "cdns,wdt-r1p2"; | ||
18 | clocks = <&clkc 45>; | ||
19 | interrupt-parent = <&intc>; | ||
20 | interrupts = <0 9 1>; | ||
21 | reg = <0xf8005000 0x1000>; | ||
22 | reset-on-timeout; | ||
23 | timeout-sec = <10>; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt index e52ba2da868c..8dab6fd024aa 100644 --- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt +++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt | |||
@@ -7,7 +7,8 @@ Required properties: | |||
7 | 7 | ||
8 | Optional property: | 8 | Optional property: |
9 | - big-endian: If present the watchdog device's registers are implemented | 9 | - big-endian: If present the watchdog device's registers are implemented |
10 | in big endian mode, otherwise in little mode. | 10 | in big endian mode, otherwise in native mode(same with CPU), for more |
11 | detail please see: Documentation/devicetree/bindings/regmap/regmap.txt. | ||
11 | 12 | ||
12 | Examples: | 13 | Examples: |
13 | 14 | ||
diff --git a/Documentation/devicetree/bindings/watchdog/meson6-wdt.txt b/Documentation/devicetree/bindings/watchdog/meson6-wdt.txt new file mode 100644 index 000000000000..9200fc2d508c --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/meson6-wdt.txt | |||
@@ -0,0 +1,13 @@ | |||
1 | Meson SoCs Watchdog timer | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "amlogic,meson6-wdt" | ||
6 | - reg : Specifies base physical address and size of the registers. | ||
7 | |||
8 | Example: | ||
9 | |||
10 | wdt: watchdog@c1109900 { | ||
11 | compatible = "amlogic,meson6-wdt"; | ||
12 | reg = <0xc1109900 0x8>; | ||
13 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/qcom-wdt.txt b/Documentation/devicetree/bindings/watchdog/qcom-wdt.txt new file mode 100644 index 000000000000..4726924d034e --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/qcom-wdt.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | Qualcomm Krait Processor Sub-system (KPSS) Watchdog | ||
2 | --------------------------------------------------- | ||
3 | |||
4 | Required properties : | ||
5 | - compatible : shall contain only one of the following: | ||
6 | |||
7 | "qcom,kpss-wdt-msm8960" | ||
8 | "qcom,kpss-wdt-apq8064" | ||
9 | "qcom,kpss-wdt-ipq8064" | ||
10 | |||
11 | - reg : shall contain base register location and length | ||
12 | - clocks : shall contain the input clock | ||
13 | |||
14 | Optional properties : | ||
15 | - timeout-sec : shall contain the default watchdog timeout in seconds, | ||
16 | if unset, the default timeout is 30 seconds | ||
17 | |||
18 | Example: | ||
19 | watchdog@208a038 { | ||
20 | compatible = "qcom,kpss-wdt-ipq8064"; | ||
21 | reg = <0x0208a038 0x40>; | ||
22 | clocks = <&sleep_clk>; | ||
23 | timeout-sec = <10>; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/samsung-wdt.txt b/Documentation/devicetree/bindings/watchdog/samsung-wdt.txt index cfff37511aac..8f3d96af81d7 100644 --- a/Documentation/devicetree/bindings/watchdog/samsung-wdt.txt +++ b/Documentation/devicetree/bindings/watchdog/samsung-wdt.txt | |||
@@ -9,6 +9,7 @@ Required properties: | |||
9 | (a) "samsung,s3c2410-wdt" for Exynos4 and previous SoCs | 9 | (a) "samsung,s3c2410-wdt" for Exynos4 and previous SoCs |
10 | (b) "samsung,exynos5250-wdt" for Exynos5250 | 10 | (b) "samsung,exynos5250-wdt" for Exynos5250 |
11 | (c) "samsung,exynos5420-wdt" for Exynos5420 | 11 | (c) "samsung,exynos5420-wdt" for Exynos5420 |
12 | (c) "samsung,exynos7-wdt" for Exynos7 | ||
12 | 13 | ||
13 | - reg : base physical address of the controller and length of memory mapped | 14 | - reg : base physical address of the controller and length of memory mapped |
14 | region. | 15 | region. |