diff options
author | David S. Miller <davem@davemloft.net> | 2015-03-03 21:16:48 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-03-03 21:16:48 -0500 |
commit | 71a83a6db6138b9d41d8a0b6b91cb59f6dc4742c (patch) | |
tree | f74b6e4e48257ec6ce40b95645ecb8533b9cc1f8 /Documentation/devicetree/bindings | |
parent | b97526f3ff95f92b107f0fb52cbb8627e395429b (diff) | |
parent | a6c5170d1edea97c538c81e377e56c7b5c5b7e63 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
drivers/net/ethernet/rocker/rocker.c
The rocker commit was two overlapping changes, one to rename
the ->vport member to ->pport, and another making the bitmask
expression use '1ULL' instead of plain '1'.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/devicetree/bindings')
36 files changed, 771 insertions, 71 deletions
diff --git a/Documentation/devicetree/bindings/clock/exynos7-clock.txt b/Documentation/devicetree/bindings/clock/exynos7-clock.txt index 6d3d5f80c1c3..6bf1e7493f61 100644 --- a/Documentation/devicetree/bindings/clock/exynos7-clock.txt +++ b/Documentation/devicetree/bindings/clock/exynos7-clock.txt | |||
@@ -34,6 +34,8 @@ Required Properties for Clock Controller: | |||
34 | - "samsung,exynos7-clock-peris" | 34 | - "samsung,exynos7-clock-peris" |
35 | - "samsung,exynos7-clock-fsys0" | 35 | - "samsung,exynos7-clock-fsys0" |
36 | - "samsung,exynos7-clock-fsys1" | 36 | - "samsung,exynos7-clock-fsys1" |
37 | - "samsung,exynos7-clock-mscl" | ||
38 | - "samsung,exynos7-clock-aud" | ||
37 | 39 | ||
38 | - reg: physical base address of the controller and the length of | 40 | - reg: physical base address of the controller and the length of |
39 | memory mapped region. | 41 | memory mapped region. |
@@ -53,6 +55,7 @@ Input clocks for top0 clock controller: | |||
53 | - dout_sclk_bus1_pll | 55 | - dout_sclk_bus1_pll |
54 | - dout_sclk_cc_pll | 56 | - dout_sclk_cc_pll |
55 | - dout_sclk_mfc_pll | 57 | - dout_sclk_mfc_pll |
58 | - dout_sclk_aud_pll | ||
56 | 59 | ||
57 | Input clocks for top1 clock controller: | 60 | Input clocks for top1 clock controller: |
58 | - fin_pll | 61 | - fin_pll |
@@ -76,6 +79,14 @@ Input clocks for peric1 clock controller: | |||
76 | - sclk_uart1 | 79 | - sclk_uart1 |
77 | - sclk_uart2 | 80 | - sclk_uart2 |
78 | - sclk_uart3 | 81 | - sclk_uart3 |
82 | - sclk_spi0 | ||
83 | - sclk_spi1 | ||
84 | - sclk_spi2 | ||
85 | - sclk_spi3 | ||
86 | - sclk_spi4 | ||
87 | - sclk_i2s1 | ||
88 | - sclk_pcm1 | ||
89 | - sclk_spdif | ||
79 | 90 | ||
80 | Input clocks for peris clock controller: | 91 | Input clocks for peris clock controller: |
81 | - fin_pll | 92 | - fin_pll |
@@ -91,3 +102,7 @@ Input clocks for fsys1 clock controller: | |||
91 | - dout_aclk_fsys1_200 | 102 | - dout_aclk_fsys1_200 |
92 | - dout_sclk_mmc0 | 103 | - dout_sclk_mmc0 |
93 | - dout_sclk_mmc1 | 104 | - dout_sclk_mmc1 |
105 | |||
106 | Input clocks for aud clock controller: | ||
107 | - fin_pll | ||
108 | - fout_aud_pll | ||
diff --git a/Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt b/Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt index ded5d6212c84..c6620bc96703 100644 --- a/Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt +++ b/Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt | |||
@@ -1,4 +1,4 @@ | |||
1 | NVIDIA Tegra124 Clock And Reset Controller | 1 | NVIDIA Tegra124 and Tegra132 Clock And Reset Controller |
2 | 2 | ||
3 | This binding uses the common clock binding: | 3 | This binding uses the common clock binding: |
4 | Documentation/devicetree/bindings/clock/clock-bindings.txt | 4 | Documentation/devicetree/bindings/clock/clock-bindings.txt |
@@ -7,14 +7,16 @@ The CAR (Clock And Reset) Controller on Tegra is the HW module responsible | |||
7 | for muxing and gating Tegra's clocks, and setting their rates. | 7 | for muxing and gating Tegra's clocks, and setting their rates. |
8 | 8 | ||
9 | Required properties : | 9 | Required properties : |
10 | - compatible : Should be "nvidia,tegra124-car" | 10 | - compatible : Should be "nvidia,tegra124-car" or "nvidia,tegra132-car" |
11 | - reg : Should contain CAR registers location and length | 11 | - reg : Should contain CAR registers location and length |
12 | - clocks : Should contain phandle and clock specifiers for two clocks: | 12 | - clocks : Should contain phandle and clock specifiers for two clocks: |
13 | the 32 KHz "32k_in", and the board-specific oscillator "osc". | 13 | the 32 KHz "32k_in", and the board-specific oscillator "osc". |
14 | - #clock-cells : Should be 1. | 14 | - #clock-cells : Should be 1. |
15 | In clock consumers, this cell represents the clock ID exposed by the | 15 | In clock consumers, this cell represents the clock ID exposed by the |
16 | CAR. The assignments may be found in header file | 16 | CAR. The assignments may be found in the header files |
17 | <dt-bindings/clock/tegra124-car.h>. | 17 | <dt-bindings/clock/tegra124-car-common.h> (which covers IDs common |
18 | to Tegra124 and Tegra132) and <dt-bindings/clock/tegra124-car.h> | ||
19 | (for Tegra124-specific clocks). | ||
18 | - #reset-cells : Should be 1. | 20 | - #reset-cells : Should be 1. |
19 | In clock consumers, this cell represents the bit number in the CAR's | 21 | In clock consumers, this cell represents the bit number in the CAR's |
20 | array of CLK_RST_CONTROLLER_RST_DEVICES_* registers. | 22 | array of CLK_RST_CONTROLLER_RST_DEVICES_* registers. |
diff --git a/Documentation/devicetree/bindings/clock/qcom,lcc.txt b/Documentation/devicetree/bindings/clock/qcom,lcc.txt new file mode 100644 index 000000000000..dd755be63a01 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/qcom,lcc.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | Qualcomm LPASS Clock & Reset Controller Binding | ||
2 | ------------------------------------------------ | ||
3 | |||
4 | Required properties : | ||
5 | - compatible : shall contain only one of the following: | ||
6 | |||
7 | "qcom,lcc-msm8960" | ||
8 | "qcom,lcc-apq8064" | ||
9 | "qcom,lcc-ipq8064" | ||
10 | |||
11 | - reg : shall contain base register location and length | ||
12 | - #clock-cells : shall contain 1 | ||
13 | - #reset-cells : shall contain 1 | ||
14 | |||
15 | Example: | ||
16 | clock-controller@28000000 { | ||
17 | compatible = "qcom,lcc-ipq8064"; | ||
18 | reg = <0x28000000 0x1000>; | ||
19 | #clock-cells = <1>; | ||
20 | #reset-cells = <1>; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/clock/qoriq-clock.txt b/Documentation/devicetree/bindings/clock/qoriq-clock.txt index 266ff9d23229..df4a259a6898 100644 --- a/Documentation/devicetree/bindings/clock/qoriq-clock.txt +++ b/Documentation/devicetree/bindings/clock/qoriq-clock.txt | |||
@@ -1,6 +1,6 @@ | |||
1 | * Clock Block on Freescale CoreNet Platforms | 1 | * Clock Block on Freescale QorIQ Platforms |
2 | 2 | ||
3 | Freescale CoreNet chips take primary clocking input from the external | 3 | Freescale qoriq chips take primary clocking input from the external |
4 | SYSCLK signal. The SYSCLK input (frequency) is multiplied using | 4 | SYSCLK signal. The SYSCLK input (frequency) is multiplied using |
5 | multiple phase locked loops (PLL) to create a variety of frequencies | 5 | multiple phase locked loops (PLL) to create a variety of frequencies |
6 | which can then be passed to a variety of internal logic, including | 6 | which can then be passed to a variety of internal logic, including |
@@ -29,6 +29,7 @@ Required properties: | |||
29 | * "fsl,t4240-clockgen" | 29 | * "fsl,t4240-clockgen" |
30 | * "fsl,b4420-clockgen" | 30 | * "fsl,b4420-clockgen" |
31 | * "fsl,b4860-clockgen" | 31 | * "fsl,b4860-clockgen" |
32 | * "fsl,ls1021a-clockgen" | ||
32 | Chassis clock strings include: | 33 | Chassis clock strings include: |
33 | * "fsl,qoriq-clockgen-1.0": for chassis 1.0 clocks | 34 | * "fsl,qoriq-clockgen-1.0": for chassis 1.0 clocks |
34 | * "fsl,qoriq-clockgen-2.0": for chassis 2.0 clocks | 35 | * "fsl,qoriq-clockgen-2.0": for chassis 2.0 clocks |
diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt index 2e18676bd4b5..0a80fa70ca26 100644 --- a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt | |||
@@ -11,6 +11,7 @@ Required Properties: | |||
11 | 11 | ||
12 | - compatible: Must be one of the following | 12 | - compatible: Must be one of the following |
13 | - "renesas,r7s72100-mstp-clocks" for R7S72100 (RZ) MSTP gate clocks | 13 | - "renesas,r7s72100-mstp-clocks" for R7S72100 (RZ) MSTP gate clocks |
14 | - "renesas,r8a73a4-mstp-clocks" for R8A73A4 (R-Mobile APE6) MSTP gate clocks | ||
14 | - "renesas,r8a7740-mstp-clocks" for R8A7740 (R-Mobile A1) MSTP gate clocks | 15 | - "renesas,r8a7740-mstp-clocks" for R8A7740 (R-Mobile A1) MSTP gate clocks |
15 | - "renesas,r8a7779-mstp-clocks" for R8A7779 (R-Car H1) MSTP gate clocks | 16 | - "renesas,r8a7779-mstp-clocks" for R8A7779 (R-Car H1) MSTP gate clocks |
16 | - "renesas,r8a7790-mstp-clocks" for R8A7790 (R-Car H2) MSTP gate clocks | 17 | - "renesas,r8a7790-mstp-clocks" for R8A7790 (R-Car H2) MSTP gate clocks |
diff --git a/Documentation/devicetree/bindings/clock/renesas,r8a73a4-cpg-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,r8a73a4-cpg-clocks.txt new file mode 100644 index 000000000000..ece92393e80d --- /dev/null +++ b/Documentation/devicetree/bindings/clock/renesas,r8a73a4-cpg-clocks.txt | |||
@@ -0,0 +1,33 @@ | |||
1 | * Renesas R8A73A4 Clock Pulse Generator (CPG) | ||
2 | |||
3 | The CPG generates core clocks for the R8A73A4 SoC. It includes five PLLs | ||
4 | and several fixed ratio dividers. | ||
5 | |||
6 | Required Properties: | ||
7 | |||
8 | - compatible: Must be "renesas,r8a73a4-cpg-clocks" | ||
9 | |||
10 | - reg: Base address and length of the memory resource used by the CPG | ||
11 | |||
12 | - clocks: Reference to the parent clocks ("extal1" and "extal2") | ||
13 | |||
14 | - #clock-cells: Must be 1 | ||
15 | |||
16 | - clock-output-names: The names of the clocks. Supported clocks are "main", | ||
17 | "pll0", "pll1", "pll2", "pll2s", "pll2h", "z", "z2", "i", "m3", "b", | ||
18 | "m1", "m2", "zx", "zs", and "hp". | ||
19 | |||
20 | |||
21 | Example | ||
22 | ------- | ||
23 | |||
24 | cpg_clocks: cpg_clocks@e6150000 { | ||
25 | compatible = "renesas,r8a73a4-cpg-clocks"; | ||
26 | reg = <0 0xe6150000 0 0x10000>; | ||
27 | clocks = <&extal1_clk>, <&extal2_clk>; | ||
28 | #clock-cells = <1>; | ||
29 | clock-output-names = "main", "pll0", "pll1", "pll2", | ||
30 | "pll2s", "pll2h", "z", "z2", | ||
31 | "i", "m3", "b", "m1", "m2", | ||
32 | "zx", "zs", "hp"; | ||
33 | }; | ||
diff --git a/Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt index e6ad35b894f9..b02944fba9de 100644 --- a/Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt +++ b/Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt | |||
@@ -8,15 +8,18 @@ Required Properties: | |||
8 | - compatible: Must be one of | 8 | - compatible: Must be one of |
9 | - "renesas,r8a7790-cpg-clocks" for the r8a7790 CPG | 9 | - "renesas,r8a7790-cpg-clocks" for the r8a7790 CPG |
10 | - "renesas,r8a7791-cpg-clocks" for the r8a7791 CPG | 10 | - "renesas,r8a7791-cpg-clocks" for the r8a7791 CPG |
11 | - "renesas,r8a7793-cpg-clocks" for the r8a7793 CPG | ||
11 | - "renesas,r8a7794-cpg-clocks" for the r8a7794 CPG | 12 | - "renesas,r8a7794-cpg-clocks" for the r8a7794 CPG |
12 | - "renesas,rcar-gen2-cpg-clocks" for the generic R-Car Gen2 CPG | 13 | - "renesas,rcar-gen2-cpg-clocks" for the generic R-Car Gen2 CPG |
13 | 14 | ||
14 | - reg: Base address and length of the memory resource used by the CPG | 15 | - reg: Base address and length of the memory resource used by the CPG |
15 | 16 | ||
16 | - clocks: Reference to the parent clock | 17 | - clocks: References to the parent clocks: first to the EXTAL clock, second |
18 | to the USB_EXTAL clock | ||
17 | - #clock-cells: Must be 1 | 19 | - #clock-cells: Must be 1 |
18 | - clock-output-names: The names of the clocks. Supported clocks are "main", | 20 | - clock-output-names: The names of the clocks. Supported clocks are "main", |
19 | "pll0", "pll1", "pll3", "lb", "qspi", "sdh", "sd0", "sd1" and "z" | 21 | "pll0", "pll1", "pll3", "lb", "qspi", "sdh", "sd0", "sd1", "z", "rcan", and |
22 | "adsp" | ||
20 | 23 | ||
21 | 24 | ||
22 | Example | 25 | Example |
@@ -26,8 +29,9 @@ Example | |||
26 | compatible = "renesas,r8a7790-cpg-clocks", | 29 | compatible = "renesas,r8a7790-cpg-clocks", |
27 | "renesas,rcar-gen2-cpg-clocks"; | 30 | "renesas,rcar-gen2-cpg-clocks"; |
28 | reg = <0 0xe6150000 0 0x1000>; | 31 | reg = <0 0xe6150000 0 0x1000>; |
29 | clocks = <&extal_clk>; | 32 | clocks = <&extal_clk &usb_extal_clk>; |
30 | #clock-cells = <1>; | 33 | #clock-cells = <1>; |
31 | clock-output-names = "main", "pll0, "pll1", "pll3", | 34 | clock-output-names = "main", "pll0, "pll1", "pll3", |
32 | "lb", "qspi", "sdh", "sd0", "sd1", "z"; | 35 | "lb", "qspi", "sdh", "sd0", "sd1", "z", |
36 | "rcan", "adsp"; | ||
33 | }; | 37 | }; |
diff --git a/Documentation/devicetree/bindings/clock/sunxi.txt b/Documentation/devicetree/bindings/clock/sunxi.txt index 67b2b99f2b33..60b44285250d 100644 --- a/Documentation/devicetree/bindings/clock/sunxi.txt +++ b/Documentation/devicetree/bindings/clock/sunxi.txt | |||
@@ -26,7 +26,7 @@ Required properties: | |||
26 | "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 |
27 | "allwinner,sun7i-a20-ahb-gates-clk" - for the AHB gates on A20 | 27 | "allwinner,sun7i-a20-ahb-gates-clk" - for the AHB gates on A20 |
28 | "allwinner,sun6i-a31-ar100-clk" - for the AR100 on A31 | 28 | "allwinner,sun6i-a31-ar100-clk" - for the AR100 on A31 |
29 | "allwinner,sun6i-a31-ahb1-mux-clk" - for the AHB1 multiplexer on A31 | 29 | "allwinner,sun6i-a31-ahb1-clk" - for the AHB1 clock on A31 |
30 | "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 |
31 | "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 | 32 | "allwinner,sun9i-a80-ahb0-gates-clk" - for the AHB0 gates on A80 |
@@ -55,9 +55,11 @@ Required properties: | |||
55 | "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 |
56 | "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 |
57 | "allwinner,sun5i-a13-mbus-clk" - for the MBUS clock on A13 | 57 | "allwinner,sun5i-a13-mbus-clk" - for the MBUS clock on A13 |
58 | "allwinner,sun4i-a10-mmc-output-clk" - for the MMC output clock on A10 | 58 | "allwinner,sun4i-a10-mmc-clk" - for the MMC clock |
59 | "allwinner,sun4i-a10-mmc-sample-clk" - for the MMC sample clock on A10 | 59 | "allwinner,sun9i-a80-mmc-clk" - for mmc module clocks on A80 |
60 | "allwinner,sun9i-a80-mmc-config-clk" - for mmc gates + resets on A80 | ||
60 | "allwinner,sun4i-a10-mod0-clk" - for the module 0 family of clocks | 61 | "allwinner,sun4i-a10-mod0-clk" - for the module 0 family of clocks |
62 | "allwinner,sun9i-a80-mod0-clk" - for module 0 (storage) clocks on A80 | ||
61 | "allwinner,sun8i-a23-mbus-clk" - for the MBUS clock on A23 | 63 | "allwinner,sun8i-a23-mbus-clk" - for the MBUS clock on A23 |
62 | "allwinner,sun7i-a20-out-clk" - for the external output clocks | 64 | "allwinner,sun7i-a20-out-clk" - for the external output clocks |
63 | "allwinner,sun7i-a20-gmac-clk" - for the GMAC clock module on A20/A31 | 65 | "allwinner,sun7i-a20-gmac-clk" - for the GMAC clock module on A20/A31 |
@@ -73,7 +75,9 @@ Required properties for all clocks: | |||
73 | - #clock-cells : from common clock binding; shall be set to 0 except for | 75 | - #clock-cells : from common clock binding; shall be set to 0 except for |
74 | the following compatibles where it shall be set to 1: | 76 | the following compatibles where it shall be set to 1: |
75 | "allwinner,*-gates-clk", "allwinner,sun4i-pll5-clk", | 77 | "allwinner,*-gates-clk", "allwinner,sun4i-pll5-clk", |
76 | "allwinner,sun4i-pll6-clk", "allwinner,sun6i-a31-pll6-clk" | 78 | "allwinner,sun4i-pll6-clk", "allwinner,sun6i-a31-pll6-clk", |
79 | "allwinner,*-usb-clk", "allwinner,*-mmc-clk", | ||
80 | "allwinner,*-mmc-config-clk" | ||
77 | - clock-output-names : shall be the corresponding names of the outputs. | 81 | - clock-output-names : shall be the corresponding names of the outputs. |
78 | If the clock module only has one output, the name shall be the | 82 | If the clock module only has one output, the name shall be the |
79 | module name. | 83 | module name. |
@@ -81,6 +85,10 @@ Required properties for all clocks: | |||
81 | And "allwinner,*-usb-clk" clocks also require: | 85 | And "allwinner,*-usb-clk" clocks also require: |
82 | - reset-cells : shall be set to 1 | 86 | - reset-cells : shall be set to 1 |
83 | 87 | ||
88 | The "allwinner,sun9i-a80-mmc-config-clk" clock also requires: | ||
89 | - #reset-cells : shall be set to 1 | ||
90 | - resets : shall be the reset control phandle for the mmc block. | ||
91 | |||
84 | For "allwinner,sun7i-a20-gmac-clk", the parent clocks shall be fixed rate | 92 | For "allwinner,sun7i-a20-gmac-clk", the parent clocks shall be fixed rate |
85 | dummy clocks at 25 MHz and 125 MHz, respectively. See example. | 93 | dummy clocks at 25 MHz and 125 MHz, respectively. See example. |
86 | 94 | ||
@@ -95,6 +103,14 @@ 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 | 103 | is the normal PLL6 output, or "pll6". The second output is rate doubled |
96 | PLL6, or "pll6x2". | 104 | PLL6, or "pll6x2". |
97 | 105 | ||
106 | The "allwinner,*-mmc-clk" clocks have three different outputs: the | ||
107 | main clock, with the ID 0, and the output and sample clocks, with the | ||
108 | IDs 1 and 2, respectively. | ||
109 | |||
110 | The "allwinner,sun9i-a80-mmc-config-clk" clock has one clock/reset output | ||
111 | per mmc controller. The number of outputs is determined by the size of | ||
112 | the address block, which is related to the overall mmc block. | ||
113 | |||
98 | For example: | 114 | For example: |
99 | 115 | ||
100 | osc24M: clk@01c20050 { | 116 | osc24M: clk@01c20050 { |
@@ -138,11 +154,11 @@ cpu: cpu@01c20054 { | |||
138 | }; | 154 | }; |
139 | 155 | ||
140 | mmc0_clk: clk@01c20088 { | 156 | mmc0_clk: clk@01c20088 { |
141 | #clock-cells = <0>; | 157 | #clock-cells = <1>; |
142 | compatible = "allwinner,sun4i-mod0-clk"; | 158 | compatible = "allwinner,sun4i-a10-mmc-clk"; |
143 | reg = <0x01c20088 0x4>; | 159 | reg = <0x01c20088 0x4>; |
144 | clocks = <&osc24M>, <&pll6 1>, <&pll5 1>; | 160 | clocks = <&osc24M>, <&pll6 1>, <&pll5 1>; |
145 | clock-output-names = "mmc0"; | 161 | clock-output-names = "mmc0", "mmc0_output", "mmc0_sample"; |
146 | }; | 162 | }; |
147 | 163 | ||
148 | mii_phy_tx_clk: clk@2 { | 164 | mii_phy_tx_clk: clk@2 { |
@@ -170,3 +186,16 @@ gmac_clk: clk@01c20164 { | |||
170 | clocks = <&mii_phy_tx_clk>, <&gmac_int_tx_clk>; | 186 | clocks = <&mii_phy_tx_clk>, <&gmac_int_tx_clk>; |
171 | clock-output-names = "gmac"; | 187 | clock-output-names = "gmac"; |
172 | }; | 188 | }; |
189 | |||
190 | mmc_config_clk: clk@01c13000 { | ||
191 | compatible = "allwinner,sun9i-a80-mmc-config-clk"; | ||
192 | reg = <0x01c13000 0x10>; | ||
193 | clocks = <&ahb0_gates 8>; | ||
194 | clock-names = "ahb"; | ||
195 | resets = <&ahb0_resets 8>; | ||
196 | reset-names = "ahb"; | ||
197 | #clock-cells = <1>; | ||
198 | #reset-cells = <1>; | ||
199 | clock-output-names = "mmc0_config", "mmc1_config", | ||
200 | "mmc2_config", "mmc3_config"; | ||
201 | }; | ||
diff --git a/Documentation/devicetree/bindings/clock/ti,cdce706.txt b/Documentation/devicetree/bindings/clock/ti,cdce706.txt new file mode 100644 index 000000000000..616836e7e1e2 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/ti,cdce706.txt | |||
@@ -0,0 +1,42 @@ | |||
1 | Bindings for Texas Instruments CDCE706 programmable 3-PLL clock | ||
2 | synthesizer/multiplier/divider. | ||
3 | |||
4 | Reference: http://www.ti.com/lit/ds/symlink/cdce706.pdf | ||
5 | |||
6 | I2C device node required properties: | ||
7 | - compatible: shall be "ti,cdce706". | ||
8 | - reg: i2c device address, shall be in range [0x68...0x6b]. | ||
9 | - #clock-cells: from common clock binding; shall be set to 1. | ||
10 | - clocks: from common clock binding; list of parent clock | ||
11 | handles, shall be reference clock(s) connected to CLK_IN0 | ||
12 | and CLK_IN1 pins. | ||
13 | - clock-names: shall be clk_in0 and/or clk_in1. Use clk_in0 | ||
14 | in case of crystal oscillator or differential signal input | ||
15 | configuration. Use clk_in0 and clk_in1 in case of independent | ||
16 | single-ended LVCMOS inputs configuration. | ||
17 | |||
18 | Example: | ||
19 | |||
20 | clocks { | ||
21 | clk54: clk54 { | ||
22 | #clock-cells = <0>; | ||
23 | compatible = "fixed-clock"; | ||
24 | clock-frequency = <54000000>; | ||
25 | }; | ||
26 | }; | ||
27 | ... | ||
28 | i2c0: i2c-master@0d090000 { | ||
29 | ... | ||
30 | cdce706: clock-synth@69 { | ||
31 | compatible = "ti,cdce706"; | ||
32 | #clock-cells = <1>; | ||
33 | reg = <0x69>; | ||
34 | clocks = <&clk54>; | ||
35 | clock-names = "clk_in0"; | ||
36 | }; | ||
37 | }; | ||
38 | ... | ||
39 | simple-audio-card,codec { | ||
40 | ... | ||
41 | clocks = <&cdce706 4>; | ||
42 | }; | ||
diff --git a/Documentation/devicetree/bindings/clock/ti/fapll.txt b/Documentation/devicetree/bindings/clock/ti/fapll.txt new file mode 100644 index 000000000000..c19b3f253b8c --- /dev/null +++ b/Documentation/devicetree/bindings/clock/ti/fapll.txt | |||
@@ -0,0 +1,33 @@ | |||
1 | Binding for Texas Instruments FAPLL clock. | ||
2 | |||
3 | Binding status: Unstable - ABI compatibility may be broken in the future | ||
4 | |||
5 | This binding uses the common clock binding[1]. It assumes a | ||
6 | register-mapped FAPLL with usually two selectable input clocks | ||
7 | (reference clock and bypass clock), and one or more child | ||
8 | syntesizers. | ||
9 | |||
10 | [1] Documentation/devicetree/bindings/clock/clock-bindings.txt | ||
11 | |||
12 | Required properties: | ||
13 | - compatible : shall be "ti,dm816-fapll-clock" | ||
14 | - #clock-cells : from common clock binding; shall be set to 0. | ||
15 | - clocks : link phandles of parent clocks (clk-ref and clk-bypass) | ||
16 | - reg : address and length of the register set for controlling the FAPLL. | ||
17 | |||
18 | Examples: | ||
19 | main_fapll: main_fapll { | ||
20 | #clock-cells = <1>; | ||
21 | compatible = "ti,dm816-fapll-clock"; | ||
22 | reg = <0x400 0x40>; | ||
23 | clocks = <&sys_clkin_ck &sys_clkin_ck>; | ||
24 | clock-indices = <1>, <2>, <3>, <4>, <5>, | ||
25 | <6>, <7>; | ||
26 | clock-output-names = "main_pll_clk1", | ||
27 | "main_pll_clk2", | ||
28 | "main_pll_clk3", | ||
29 | "main_pll_clk4", | ||
30 | "main_pll_clk5", | ||
31 | "main_pll_clk6", | ||
32 | "main_pll_clk7"; | ||
33 | }; | ||
diff --git a/Documentation/devicetree/bindings/dma/img-mdc-dma.txt b/Documentation/devicetree/bindings/dma/img-mdc-dma.txt new file mode 100644 index 000000000000..28c1341db346 --- /dev/null +++ b/Documentation/devicetree/bindings/dma/img-mdc-dma.txt | |||
@@ -0,0 +1,57 @@ | |||
1 | * IMG Multi-threaded DMA Controller (MDC) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Must be "img,pistachio-mdc-dma". | ||
5 | - reg: Must contain the base address and length of the MDC registers. | ||
6 | - interrupts: Must contain all the per-channel DMA interrupts. | ||
7 | - clocks: Must contain an entry for each entry in clock-names. | ||
8 | See ../clock/clock-bindings.txt for details. | ||
9 | - clock-names: Must include the following entries: | ||
10 | - sys: MDC system interface clock. | ||
11 | - img,cr-periph: Must contain a phandle to the peripheral control syscon | ||
12 | node which contains the DMA request to channel mapping registers. | ||
13 | - img,max-burst-multiplier: Must be the maximum supported burst size multiplier. | ||
14 | The maximum burst size is this value multiplied by the hardware-reported bus | ||
15 | width. | ||
16 | - #dma-cells: Must be 3: | ||
17 | - The first cell is the peripheral's DMA request line. | ||
18 | - The second cell is a bitmap specifying to which channels the DMA request | ||
19 | line may be mapped (i.e. bit N set indicates channel N is usable). | ||
20 | - The third cell is the thread ID to be used by the channel. | ||
21 | |||
22 | Optional properties: | ||
23 | - dma-channels: Number of supported DMA channels, up to 32. If not specified | ||
24 | the number reported by the hardware is used. | ||
25 | |||
26 | Example: | ||
27 | |||
28 | mdc: dma-controller@18143000 { | ||
29 | compatible = "img,pistachio-mdc-dma"; | ||
30 | reg = <0x18143000 0x1000>; | ||
31 | interrupts = <GIC_SHARED 27 IRQ_TYPE_LEVEL_HIGH>, | ||
32 | <GIC_SHARED 28 IRQ_TYPE_LEVEL_HIGH>, | ||
33 | <GIC_SHARED 29 IRQ_TYPE_LEVEL_HIGH>, | ||
34 | <GIC_SHARED 30 IRQ_TYPE_LEVEL_HIGH>, | ||
35 | <GIC_SHARED 31 IRQ_TYPE_LEVEL_HIGH>, | ||
36 | <GIC_SHARED 32 IRQ_TYPE_LEVEL_HIGH>, | ||
37 | <GIC_SHARED 33 IRQ_TYPE_LEVEL_HIGH>, | ||
38 | <GIC_SHARED 34 IRQ_TYPE_LEVEL_HIGH>, | ||
39 | <GIC_SHARED 35 IRQ_TYPE_LEVEL_HIGH>, | ||
40 | <GIC_SHARED 36 IRQ_TYPE_LEVEL_HIGH>, | ||
41 | <GIC_SHARED 37 IRQ_TYPE_LEVEL_HIGH>, | ||
42 | <GIC_SHARED 38 IRQ_TYPE_LEVEL_HIGH>; | ||
43 | clocks = <&system_clk>; | ||
44 | clock-names = "sys"; | ||
45 | |||
46 | img,max-burst-multiplier = <16>; | ||
47 | img,cr-periph = <&cr_periph>; | ||
48 | |||
49 | #dma-cells = <3>; | ||
50 | }; | ||
51 | |||
52 | spi@18100f00 { | ||
53 | ... | ||
54 | dmas = <&mdc 9 0xffffffff 0>, <&mdc 10 0xffffffff 0>; | ||
55 | dma-names = "tx", "rx"; | ||
56 | ... | ||
57 | }; | ||
diff --git a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt index f7e21b1c2a05..09daeef1ff22 100644 --- a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt +++ b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt | |||
@@ -5,9 +5,6 @@ controller instances named DMAC capable of serving multiple clients. Channels | |||
5 | can be dedicated to specific clients or shared between a large number of | 5 | can be dedicated to specific clients or shared between a large number of |
6 | clients. | 6 | clients. |
7 | 7 | ||
8 | DMA clients are connected to the DMAC ports referenced by an 8-bit identifier | ||
9 | called MID/RID. | ||
10 | |||
11 | Each DMA client is connected to one dedicated port of the DMAC, identified by | 8 | Each DMA client is connected to one dedicated port of the DMAC, identified by |
12 | an 8-bit port number called the MID/RID. A DMA controller can thus serve up to | 9 | an 8-bit port number called the MID/RID. A DMA controller can thus serve up to |
13 | 256 clients in total. When the number of hardware channels is lower than the | 10 | 256 clients in total. When the number of hardware channels is lower than the |
diff --git a/Documentation/devicetree/bindings/dma/snps-dma.txt b/Documentation/devicetree/bindings/dma/snps-dma.txt index d58675ea1abf..c261598164a7 100644 --- a/Documentation/devicetree/bindings/dma/snps-dma.txt +++ b/Documentation/devicetree/bindings/dma/snps-dma.txt | |||
@@ -38,7 +38,7 @@ Example: | |||
38 | chan_allocation_order = <1>; | 38 | chan_allocation_order = <1>; |
39 | chan_priority = <1>; | 39 | chan_priority = <1>; |
40 | block_size = <0xfff>; | 40 | block_size = <0xfff>; |
41 | data_width = <3 3 0 0>; | 41 | data_width = <3 3>; |
42 | }; | 42 | }; |
43 | 43 | ||
44 | DMA clients connected to the Designware DMA controller must use the format | 44 | DMA clients connected to the Designware DMA controller must use the format |
diff --git a/Documentation/devicetree/bindings/i2c/brcm,iproc-i2c.txt b/Documentation/devicetree/bindings/i2c/brcm,iproc-i2c.txt new file mode 100644 index 000000000000..81f982ccca31 --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/brcm,iproc-i2c.txt | |||
@@ -0,0 +1,37 @@ | |||
1 | Broadcom iProc I2C controller | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: | ||
6 | Must be "brcm,iproc-i2c" | ||
7 | |||
8 | - reg: | ||
9 | Define the base and range of the I/O address space that contain the iProc | ||
10 | I2C controller registers | ||
11 | |||
12 | - interrupts: | ||
13 | Should contain the I2C interrupt | ||
14 | |||
15 | - clock-frequency: | ||
16 | This is the I2C bus clock. Need to be either 100000 or 400000 | ||
17 | |||
18 | - #address-cells: | ||
19 | Always 1 (for I2C addresses) | ||
20 | |||
21 | - #size-cells: | ||
22 | Always 0 | ||
23 | |||
24 | Example: | ||
25 | i2c0: i2c@18008000 { | ||
26 | compatible = "brcm,iproc-i2c"; | ||
27 | reg = <0x18008000 0x100>; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | interrupts = <GIC_SPI 85 IRQ_TYPE_NONE>; | ||
31 | clock-frequency = <100000>; | ||
32 | |||
33 | codec: wm8750@1a { | ||
34 | compatible = "wlf,wm8750"; | ||
35 | reg = <0x1a>; | ||
36 | }; | ||
37 | }; | ||
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt index 34a3fb6f8488..cf53d5fba20a 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt | |||
@@ -16,6 +16,9 @@ Required Properties: | |||
16 | Optional Properties: | 16 | Optional Properties: |
17 | 17 | ||
18 | - reset-gpios: Reference to the GPIO connected to the reset input. | 18 | - reset-gpios: Reference to the GPIO connected to the reset input. |
19 | - i2c-mux-idle-disconnect: Boolean; if defined, forces mux to disconnect all | ||
20 | children in idle state. This is necessary for example, if there are several | ||
21 | multiplexers on the bus and the devices behind them use same I2C addresses. | ||
19 | 22 | ||
20 | 23 | ||
21 | Example: | 24 | Example: |
diff --git a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt b/Documentation/devicetree/bindings/i2c/i2c-ocores.txt index 1637c298a1b3..17bef9a34e50 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-ocores.txt | |||
@@ -4,24 +4,60 @@ Required properties: | |||
4 | - compatible : "opencores,i2c-ocores" or "aeroflexgaisler,i2cmst" | 4 | - compatible : "opencores,i2c-ocores" or "aeroflexgaisler,i2cmst" |
5 | - reg : bus address start and address range size of device | 5 | - reg : bus address start and address range size of device |
6 | - interrupts : interrupt number | 6 | - interrupts : interrupt number |
7 | - clock-frequency : frequency of bus clock in Hz | 7 | - clocks : handle to the controller clock; see the note below. |
8 | Mutually exclusive with opencores,ip-clock-frequency | ||
9 | - opencores,ip-clock-frequency: frequency of the controller clock in Hz; | ||
10 | see the note below. Mutually exclusive with clocks | ||
8 | - #address-cells : should be <1> | 11 | - #address-cells : should be <1> |
9 | - #size-cells : should be <0> | 12 | - #size-cells : should be <0> |
10 | 13 | ||
11 | Optional properties: | 14 | Optional properties: |
15 | - clock-frequency : frequency of bus clock in Hz; see the note below. | ||
16 | Defaults to 100 KHz when the property is not specified | ||
12 | - reg-shift : device register offsets are shifted by this value | 17 | - reg-shift : device register offsets are shifted by this value |
13 | - reg-io-width : io register width in bytes (1, 2 or 4) | 18 | - reg-io-width : io register width in bytes (1, 2 or 4) |
14 | - regstep : deprecated, use reg-shift above | 19 | - regstep : deprecated, use reg-shift above |
15 | 20 | ||
16 | Example: | 21 | Note |
22 | clock-frequency property is meant to control the bus frequency for i2c bus | ||
23 | drivers, but it was incorrectly used to specify i2c controller input clock | ||
24 | frequency. So the following rules are set to fix this situation: | ||
25 | - if clock-frequency is present and neither opencores,ip-clock-frequency nor | ||
26 | clocks are, then clock-frequency specifies i2c controller clock frequency. | ||
27 | This is to keep backwards compatibility with setups using old DTB. i2c bus | ||
28 | frequency is fixed at 100 KHz. | ||
29 | - if clocks is present it specifies i2c controller clock. clock-frequency | ||
30 | property specifies i2c bus frequency. | ||
31 | - if opencores,ip-clock-frequency is present it specifies i2c controller | ||
32 | clock frequency. clock-frequency property specifies i2c bus frequency. | ||
17 | 33 | ||
34 | Examples: | ||
35 | |||
36 | i2c0: ocores@a0000000 { | ||
37 | #address-cells = <1>; | ||
38 | #size-cells = <0>; | ||
39 | compatible = "opencores,i2c-ocores"; | ||
40 | reg = <0xa0000000 0x8>; | ||
41 | interrupts = <10>; | ||
42 | opencores,ip-clock-frequency = <20000000>; | ||
43 | |||
44 | reg-shift = <0>; /* 8 bit registers */ | ||
45 | reg-io-width = <1>; /* 8 bit read/write */ | ||
46 | |||
47 | dummy@60 { | ||
48 | compatible = "dummy"; | ||
49 | reg = <0x60>; | ||
50 | }; | ||
51 | }; | ||
52 | or | ||
18 | i2c0: ocores@a0000000 { | 53 | i2c0: ocores@a0000000 { |
19 | #address-cells = <1>; | 54 | #address-cells = <1>; |
20 | #size-cells = <0>; | 55 | #size-cells = <0>; |
21 | compatible = "opencores,i2c-ocores"; | 56 | compatible = "opencores,i2c-ocores"; |
22 | reg = <0xa0000000 0x8>; | 57 | reg = <0xa0000000 0x8>; |
23 | interrupts = <10>; | 58 | interrupts = <10>; |
24 | clock-frequency = <20000000>; | 59 | clocks = <&osc>; |
60 | clock-frequency = <400000>; /* i2c bus frequency 400 KHz */ | ||
25 | 61 | ||
26 | reg-shift = <0>; /* 8 bit registers */ | 62 | reg-shift = <0>; /* 8 bit registers */ |
27 | reg-io-width = <1>; /* 8 bit read/write */ | 63 | reg-io-width = <1>; /* 8 bit read/write */ |
diff --git a/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt b/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt index dde6c22ce91a..f0d71bc52e64 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt | |||
@@ -21,6 +21,17 @@ Required on RK3066, RK3188 : | |||
21 | Optional properties : | 21 | Optional properties : |
22 | 22 | ||
23 | - clock-frequency : SCL frequency to use (in Hz). If omitted, 100kHz is used. | 23 | - clock-frequency : SCL frequency to use (in Hz). If omitted, 100kHz is used. |
24 | - i2c-scl-rising-time-ns : Number of nanoseconds the SCL signal takes to rise | ||
25 | (t(r) in I2C specification). If not specified this is assumed to be | ||
26 | the maximum the specification allows(1000 ns for Standard-mode, | ||
27 | 300 ns for Fast-mode) which might cause slightly slower communication. | ||
28 | - i2c-scl-falling-time-ns : Number of nanoseconds the SCL signal takes to fall | ||
29 | (t(f) in the I2C specification). If not specified this is assumed to | ||
30 | be the maximum the specification allows (300 ns) which might cause | ||
31 | slightly slower communication. | ||
32 | - i2c-sda-falling-time-ns : Number of nanoseconds the SDA signal takes to fall | ||
33 | (t(f) in the I2C specification). If not specified we'll use the SCL | ||
34 | value since they are the same in nearly all cases. | ||
24 | 35 | ||
25 | Example: | 36 | Example: |
26 | 37 | ||
@@ -39,4 +50,7 @@ i2c0: i2c@2002d000 { | |||
39 | 50 | ||
40 | clock-names = "i2c"; | 51 | clock-names = "i2c"; |
41 | clocks = <&cru PCLK_I2C0>; | 52 | clocks = <&cru PCLK_I2C0>; |
53 | |||
54 | i2c-scl-rising-time-ns = <800>; | ||
55 | i2c-scl-falling-time-ns = <100>; | ||
42 | }; | 56 | }; |
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt index 4dcd88d5f7ca..aaa8325004d2 100644 --- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt +++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt | |||
@@ -61,9 +61,8 @@ fsl,sgtl5000 SGTL5000: Ultra Low-Power Audio Codec | |||
61 | gmt,g751 G751: Digital Temperature Sensor and Thermal Watchdog with Two-Wire Interface | 61 | gmt,g751 G751: Digital Temperature Sensor and Thermal Watchdog with Two-Wire Interface |
62 | infineon,slb9635tt Infineon SLB9635 (Soft-) I2C TPM (old protocol, max 100khz) | 62 | infineon,slb9635tt Infineon SLB9635 (Soft-) I2C TPM (old protocol, max 100khz) |
63 | infineon,slb9645tt Infineon SLB9645 I2C TPM (new protocol, max 400khz) | 63 | infineon,slb9645tt Infineon SLB9645 I2C TPM (new protocol, max 400khz) |
64 | isl,isl12057 Intersil ISL12057 I2C RTC Chip | 64 | isil,isl12057 Intersil ISL12057 I2C RTC Chip |
65 | isil,isl29028 (deprecated, use isl) | 65 | isil,isl29028 Intersil ISL29028 Ambient Light and Proximity Sensor |
66 | isl,isl29028 Intersil ISL29028 Ambient Light and Proximity Sensor | ||
67 | maxim,ds1050 5 Bit Programmable, Pulse-Width Modulator | 66 | maxim,ds1050 5 Bit Programmable, Pulse-Width Modulator |
68 | maxim,max1237 Low-Power, 4-/12-Channel, 2-Wire Serial, 12-Bit ADCs | 67 | maxim,max1237 Low-Power, 4-/12-Channel, 2-Wire Serial, 12-Bit ADCs |
69 | maxim,max6625 9-Bit/12-Bit Temperature Sensors with I²C-Compatible Serial Interface | 68 | maxim,max6625 9-Bit/12-Bit Temperature Sensors with I²C-Compatible Serial Interface |
diff --git a/Documentation/devicetree/bindings/mfd/da9063.txt b/Documentation/devicetree/bindings/mfd/da9063.txt new file mode 100644 index 000000000000..42c6fa6f1c9a --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/da9063.txt | |||
@@ -0,0 +1,93 @@ | |||
1 | * Dialog DA9063 Power Management Integrated Circuit (PMIC) | ||
2 | |||
3 | DA9093 consists of a large and varied group of sub-devices (I2C Only): | ||
4 | |||
5 | Device Supply Names Description | ||
6 | ------ ------------ ----------- | ||
7 | da9063-regulator : : LDOs & BUCKs | ||
8 | da9063-rtc : : Real-Time Clock | ||
9 | da9063-watchdog : : Watchdog | ||
10 | |||
11 | ====== | ||
12 | |||
13 | Required properties: | ||
14 | |||
15 | - compatible : Should be "dlg,da9063" | ||
16 | - reg : Specifies the I2C slave address (this defaults to 0x58 but it can be | ||
17 | modified to match the chip's OTP settings). | ||
18 | - interrupt-parent : Specifies the reference to the interrupt controller for | ||
19 | the DA9063. | ||
20 | - interrupts : IRQ line information. | ||
21 | - interrupt-controller | ||
22 | |||
23 | Sub-nodes: | ||
24 | |||
25 | - regulators : This node defines the settings for the LDOs and BUCKs. The | ||
26 | DA9063 regulators are bound using their names listed below: | ||
27 | |||
28 | bcore1 : BUCK CORE1 | ||
29 | bcore2 : BUCK CORE2 | ||
30 | bpro : BUCK PRO | ||
31 | bmem : BUCK MEM | ||
32 | bio : BUCK IO | ||
33 | bperi : BUCK PERI | ||
34 | ldo1 : LDO_1 | ||
35 | ldo2 : LDO_2 | ||
36 | ldo3 : LDO_3 | ||
37 | ldo4 : LDO_4 | ||
38 | ldo5 : LDO_5 | ||
39 | ldo6 : LDO_6 | ||
40 | ldo7 : LDO_7 | ||
41 | ldo8 : LDO_8 | ||
42 | ldo9 : LDO_9 | ||
43 | ldo10 : LDO_10 | ||
44 | ldo11 : LDO_11 | ||
45 | |||
46 | The component follows the standard regulator framework and the bindings | ||
47 | details of individual regulator device can be found in: | ||
48 | Documentation/devicetree/bindings/regulator/regulator.txt | ||
49 | |||
50 | - rtc : This node defines settings for the Real-Time Clock associated with | ||
51 | the DA9063. There are currently no entries in this binding, however | ||
52 | compatible = "dlg,da9063-rtc" should be added if a node is created. | ||
53 | |||
54 | - watchdog : This node defines settings for the Watchdog timer associated | ||
55 | with the DA9063. There are currently no entries in this binding, however | ||
56 | compatible = "dlg,da9063-watchdog" should be added if a node is created. | ||
57 | |||
58 | |||
59 | Example: | ||
60 | |||
61 | pmic0: da9063@58 { | ||
62 | compatible = "dlg,da9063" | ||
63 | reg = <0x58>; | ||
64 | interrupt-parent = <&gpio6>; | ||
65 | interrupts = <11 IRQ_TYPE_LEVEL_LOW>; | ||
66 | interrupt-controller; | ||
67 | |||
68 | rtc { | ||
69 | compatible = "dlg,da9063-rtc"; | ||
70 | }; | ||
71 | |||
72 | wdt { | ||
73 | compatible = "dlg,da9063-watchdog"; | ||
74 | }; | ||
75 | |||
76 | regulators { | ||
77 | DA9063_BCORE1: bcore1 { | ||
78 | regulator-name = "BCORE1"; | ||
79 | regulator-min-microvolt = <300000>; | ||
80 | regulator-max-microvolt = <1570000>; | ||
81 | regulator-min-microamp = <500000>; | ||
82 | regulator-max-microamp = <2000000>; | ||
83 | regulator-boot-on; | ||
84 | }; | ||
85 | DA9063_LDO11: ldo11 { | ||
86 | regulator-name = "LDO_11"; | ||
87 | regulator-min-microvolt = <900000>; | ||
88 | regulator-max-microvolt = <3600000>; | ||
89 | regulator-boot-on; | ||
90 | }; | ||
91 | }; | ||
92 | }; | ||
93 | |||
diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt new file mode 100644 index 000000000000..85e31980017a --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt | |||
@@ -0,0 +1,70 @@ | |||
1 | Qualcomm Resource Power Manager (RPM) | ||
2 | |||
3 | This driver is used to interface with the Resource Power Manager (RPM) found in | ||
4 | various Qualcomm platforms. The RPM allows each component in the system to vote | ||
5 | for state of the system resources, such as clocks, regulators and bus | ||
6 | frequencies. | ||
7 | |||
8 | - compatible: | ||
9 | Usage: required | ||
10 | Value type: <string> | ||
11 | Definition: must be one of: | ||
12 | "qcom,rpm-apq8064" | ||
13 | "qcom,rpm-msm8660" | ||
14 | "qcom,rpm-msm8960" | ||
15 | |||
16 | - reg: | ||
17 | Usage: required | ||
18 | Value type: <prop-encoded-array> | ||
19 | Definition: base address and size of the RPM's message ram | ||
20 | |||
21 | - interrupts: | ||
22 | Usage: required | ||
23 | Value type: <prop-encoded-array> | ||
24 | Definition: three entries specifying the RPM's: | ||
25 | 1. acknowledgement interrupt | ||
26 | 2. error interrupt | ||
27 | 3. wakeup interrupt | ||
28 | |||
29 | - interrupt-names: | ||
30 | Usage: required | ||
31 | Value type: <string-array> | ||
32 | Definition: must be the three strings "ack", "err" and "wakeup", in order | ||
33 | |||
34 | - #address-cells: | ||
35 | Usage: required | ||
36 | Value type: <u32> | ||
37 | Definition: must be 1 | ||
38 | |||
39 | - #size-cells: | ||
40 | Usage: required | ||
41 | Value type: <u32> | ||
42 | Definition: must be 0 | ||
43 | |||
44 | - qcom,ipc: | ||
45 | Usage: required | ||
46 | Value type: <prop-encoded-array> | ||
47 | |||
48 | Definition: three entries specifying the outgoing ipc bit used for | ||
49 | signaling the RPM: | ||
50 | - phandle to a syscon node representing the apcs registers | ||
51 | - u32 representing offset to the register within the syscon | ||
52 | - u32 representing the ipc bit within the register | ||
53 | |||
54 | |||
55 | = EXAMPLE | ||
56 | |||
57 | #include <dt-bindings/mfd/qcom-rpm.h> | ||
58 | |||
59 | rpm@108000 { | ||
60 | compatible = "qcom,rpm-msm8960"; | ||
61 | reg = <0x108000 0x1000>; | ||
62 | qcom,ipc = <&apcs 0x8 2>; | ||
63 | |||
64 | interrupts = <0 19 0>, <0 21 0>, <0 22 0>; | ||
65 | interrupt-names = "ack", "err", "wakeup"; | ||
66 | |||
67 | #address-cells = <1>; | ||
68 | #size-cells = <0>; | ||
69 | }; | ||
70 | |||
diff --git a/Documentation/devicetree/bindings/mips/cavium/cib.txt b/Documentation/devicetree/bindings/mips/cavium/cib.txt new file mode 100644 index 000000000000..f39a1aa2852b --- /dev/null +++ b/Documentation/devicetree/bindings/mips/cavium/cib.txt | |||
@@ -0,0 +1,43 @@ | |||
1 | * Cavium Interrupt Bus widget | ||
2 | |||
3 | Properties: | ||
4 | - compatible: "cavium,octeon-7130-cib" | ||
5 | |||
6 | Compatibility with cn70XX SoCs. | ||
7 | |||
8 | - interrupt-controller: This is an interrupt controller. | ||
9 | |||
10 | - reg: Two elements consisting of the addresses of the RAW and EN | ||
11 | registers of the CIB block | ||
12 | |||
13 | - cavium,max-bits: The index (zero based) of the highest numbered bit | ||
14 | in the CIB block. | ||
15 | |||
16 | - interrupt-parent: Always the CIU on the SoC. | ||
17 | |||
18 | - interrupts: The CIU line to which the CIB block is connected. | ||
19 | |||
20 | - #interrupt-cells: Must be <2>. The first cell is the bit within the | ||
21 | CIB. The second cell specifies the triggering semantics of the | ||
22 | line. | ||
23 | |||
24 | Example: | ||
25 | |||
26 | interrupt-controller@107000000e000 { | ||
27 | compatible = "cavium,octeon-7130-cib"; | ||
28 | reg = <0x10700 0x0000e000 0x0 0x8>, /* RAW */ | ||
29 | <0x10700 0x0000e100 0x0 0x8>; /* EN */ | ||
30 | cavium,max-bits = <23>; | ||
31 | |||
32 | interrupt-controller; | ||
33 | interrupt-parent = <&ciu>; | ||
34 | interrupts = <1 24>; | ||
35 | /* Interrupts are specified by two parts: | ||
36 | * 1) Bit number in the CIB* registers | ||
37 | * 2) Triggering (1 - edge rising | ||
38 | * 2 - edge falling | ||
39 | * 4 - level active high | ||
40 | * 8 - level active low) | ||
41 | */ | ||
42 | #interrupt-cells = <2>; | ||
43 | }; | ||
diff --git a/Documentation/devicetree/bindings/mmc/sunxi-mmc.txt b/Documentation/devicetree/bindings/mmc/sunxi-mmc.txt index 91b3a3467150..4bf41d833804 100644 --- a/Documentation/devicetree/bindings/mmc/sunxi-mmc.txt +++ b/Documentation/devicetree/bindings/mmc/sunxi-mmc.txt | |||
@@ -10,8 +10,8 @@ Absolute maximum transfer rate is 200MB/s | |||
10 | Required properties: | 10 | Required properties: |
11 | - compatible : "allwinner,sun4i-a10-mmc" or "allwinner,sun5i-a13-mmc" | 11 | - compatible : "allwinner,sun4i-a10-mmc" or "allwinner,sun5i-a13-mmc" |
12 | - reg : mmc controller base registers | 12 | - reg : mmc controller base registers |
13 | - clocks : a list with 2 phandle + clock specifier pairs | 13 | - clocks : a list with 4 phandle + clock specifier pairs |
14 | - clock-names : must contain "ahb" and "mmc" | 14 | - clock-names : must contain "ahb", "mmc", "output" and "sample" |
15 | - interrupts : mmc controller interrupt | 15 | - interrupts : mmc controller interrupt |
16 | 16 | ||
17 | Optional properties: | 17 | Optional properties: |
@@ -25,8 +25,8 @@ Examples: | |||
25 | mmc0: mmc@01c0f000 { | 25 | mmc0: mmc@01c0f000 { |
26 | compatible = "allwinner,sun5i-a13-mmc"; | 26 | compatible = "allwinner,sun5i-a13-mmc"; |
27 | reg = <0x01c0f000 0x1000>; | 27 | reg = <0x01c0f000 0x1000>; |
28 | clocks = <&ahb_gates 8>, <&mmc0_clk>; | 28 | clocks = <&ahb_gates 8>, <&mmc0_clk>, <&mmc0_output_clk>, <&mmc0_sample_clk>; |
29 | clock-names = "ahb", "mod"; | 29 | clock-names = "ahb", "mod", "output", "sample"; |
30 | interrupts = <0 32 4>; | 30 | interrupts = <0 32 4>; |
31 | status = "disabled"; | 31 | status = "disabled"; |
32 | }; | 32 | }; |
diff --git a/Documentation/devicetree/bindings/mtd/atmel-nand.txt b/Documentation/devicetree/bindings/mtd/atmel-nand.txt index 1fe6dde98499..7d4c8eb775a5 100644 --- a/Documentation/devicetree/bindings/mtd/atmel-nand.txt +++ b/Documentation/devicetree/bindings/mtd/atmel-nand.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | Atmel NAND flash | 1 | Atmel NAND flash |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "atmel,at91rm9200-nand". | 4 | - compatible : should be "atmel,at91rm9200-nand" or "atmel,sama5d4-nand". |
5 | - reg : should specify localbus address and size used for the chip, | 5 | - reg : should specify localbus address and size used for the chip, |
6 | and hardware ECC controller if available. | 6 | and hardware ECC controller if available. |
7 | If the hardware ECC is PMECC, it should contain address and size for | 7 | If the hardware ECC is PMECC, it should contain address and size for |
diff --git a/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt b/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt index 823d13412195..4461dc71cb10 100644 --- a/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt +++ b/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * Freescale Quad Serial Peripheral Interface(QuadSPI) | 1 | * Freescale Quad Serial Peripheral Interface(QuadSPI) |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "fsl,vf610-qspi" | 4 | - compatible : Should be "fsl,vf610-qspi" or "fsl,imx6sx-qspi" |
5 | - reg : the first contains the register location and length, | 5 | - reg : the first contains the register location and length, |
6 | the second contains the memory mapping address and length | 6 | the second contains the memory mapping address and length |
7 | - reg-names: Should contain the reg names "QuadSPI" and "QuadSPI-memory" | 7 | - reg-names: Should contain the reg names "QuadSPI" and "QuadSPI-memory" |
diff --git a/Documentation/devicetree/bindings/mtd/gpmi-nand.txt b/Documentation/devicetree/bindings/mtd/gpmi-nand.txt index a011fdf61dbf..d02acaff3c35 100644 --- a/Documentation/devicetree/bindings/mtd/gpmi-nand.txt +++ b/Documentation/devicetree/bindings/mtd/gpmi-nand.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * Freescale General-Purpose Media Interface (GPMI) | 1 | * Freescale General-Purpose Media Interface (GPMI) |
2 | 2 | ||
3 | The GPMI nand controller provides an interface to control the | 3 | The GPMI nand controller provides an interface to control the |
4 | NAND flash chips. We support only one NAND chip now. | 4 | NAND flash chips. |
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | - compatible : should be "fsl,<chip>-gpmi-nand" | 7 | - compatible : should be "fsl,<chip>-gpmi-nand" |
diff --git a/Documentation/devicetree/bindings/mtd/hisi504-nand.txt b/Documentation/devicetree/bindings/mtd/hisi504-nand.txt new file mode 100644 index 000000000000..2e35f0662912 --- /dev/null +++ b/Documentation/devicetree/bindings/mtd/hisi504-nand.txt | |||
@@ -0,0 +1,47 @@ | |||
1 | Hisilicon Hip04 Soc NAND controller DT binding | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: Should be "hisilicon,504-nfc". | ||
6 | - reg: The first contains base physical address and size of | ||
7 | NAND controller's registers. The second contains base | ||
8 | physical address and size of NAND controller's buffer. | ||
9 | - interrupts: Interrupt number for nfc. | ||
10 | - nand-bus-width: See nand.txt. | ||
11 | - nand-ecc-mode: Support none and hw ecc mode. | ||
12 | - #address-cells: Partition address, should be set 1. | ||
13 | - #size-cells: Partition size, should be set 1. | ||
14 | |||
15 | Optional properties: | ||
16 | |||
17 | - nand-ecc-strength: Number of bits to correct per ECC step. | ||
18 | - nand-ecc-step-size: Number of data bytes covered by a single ECC step. | ||
19 | |||
20 | The following ECC strength and step size are currently supported: | ||
21 | |||
22 | - nand-ecc-strength = <16>, nand-ecc-step-size = <1024> | ||
23 | |||
24 | Flash chip may optionally contain additional sub-nodes describing partitions of | ||
25 | the address space. See partition.txt for more detail. | ||
26 | |||
27 | Example: | ||
28 | |||
29 | nand: nand@4020000 { | ||
30 | compatible = "hisilicon,504-nfc"; | ||
31 | reg = <0x4020000 0x10000>, <0x5000000 0x1000>; | ||
32 | interrupts = <0 379 4>; | ||
33 | nand-bus-width = <8>; | ||
34 | nand-ecc-mode = "hw"; | ||
35 | nand-ecc-strength = <16>; | ||
36 | nand-ecc-step-size = <1024>; | ||
37 | #address-cells = <1>; | ||
38 | #size-cells = <1>; | ||
39 | |||
40 | partition@0 { | ||
41 | label = "nand_text"; | ||
42 | reg = <0x00000000 0x00400000>; | ||
43 | }; | ||
44 | |||
45 | ... | ||
46 | |||
47 | }; | ||
diff --git a/Documentation/devicetree/bindings/mtd/mtd-physmap.txt b/Documentation/devicetree/bindings/mtd/mtd-physmap.txt index 6b9f680cb579..4a0a48bf4ecb 100644 --- a/Documentation/devicetree/bindings/mtd/mtd-physmap.txt +++ b/Documentation/devicetree/bindings/mtd/mtd-physmap.txt | |||
@@ -36,6 +36,11 @@ are defined: | |||
36 | - vendor-id : Contains the flash chip's vendor id (1 byte). | 36 | - vendor-id : Contains the flash chip's vendor id (1 byte). |
37 | - device-id : Contains the flash chip's device id (1 byte). | 37 | - device-id : Contains the flash chip's device id (1 byte). |
38 | 38 | ||
39 | For ROM compatible devices (and ROM fallback from cfi-flash), the following | ||
40 | additional (optional) property is defined: | ||
41 | |||
42 | - erase-size : The chip's physical erase block size in bytes. | ||
43 | |||
39 | The device tree may optionally contain sub-nodes describing partitions of the | 44 | The device tree may optionally contain sub-nodes describing partitions of the |
40 | address space. See partition.txt for more detail. | 45 | address space. See partition.txt for more detail. |
41 | 46 | ||
diff --git a/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt b/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt index 33df3932168e..8db32384a486 100644 --- a/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt +++ b/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt | |||
@@ -27,6 +27,8 @@ property is used. | |||
27 | - amd,serdes-cdr-rate: CDR rate speed selection | 27 | - amd,serdes-cdr-rate: CDR rate speed selection |
28 | - amd,serdes-pq-skew: PQ (data sampling) skew | 28 | - amd,serdes-pq-skew: PQ (data sampling) skew |
29 | - amd,serdes-tx-amp: TX amplitude boost | 29 | - amd,serdes-tx-amp: TX amplitude boost |
30 | - amd,serdes-dfe-tap-config: DFE taps available to run | ||
31 | - amd,serdes-dfe-tap-enable: DFE taps to enable | ||
30 | 32 | ||
31 | Example: | 33 | Example: |
32 | xgbe_phy@e1240800 { | 34 | xgbe_phy@e1240800 { |
@@ -41,4 +43,6 @@ Example: | |||
41 | amd,serdes-cdr-rate = <2>, <2>, <7>; | 43 | amd,serdes-cdr-rate = <2>, <2>, <7>; |
42 | amd,serdes-pq-skew = <10>, <10>, <30>; | 44 | amd,serdes-pq-skew = <10>, <10>, <30>; |
43 | amd,serdes-tx-amp = <15>, <15>, <10>; | 45 | amd,serdes-tx-amp = <15>, <15>, <10>; |
46 | amd,serdes-dfe-tap-config = <3>, <3>, <1>; | ||
47 | amd,serdes-dfe-tap-enable = <0>, <0>, <127>; | ||
44 | }; | 48 | }; |
diff --git a/Documentation/devicetree/bindings/pwm/img-pwm.txt b/Documentation/devicetree/bindings/pwm/img-pwm.txt new file mode 100644 index 000000000000..fade5f26fcac --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/img-pwm.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | *Imagination Technologies PWM DAC driver | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "img,pistachio-pwm" | ||
5 | - reg: Should contain physical base address and length of pwm registers. | ||
6 | - clocks: Must contain an entry for each entry in clock-names. | ||
7 | See ../clock/clock-bindings.txt for details. | ||
8 | - clock-names: Must include the following entries. | ||
9 | - pwm: PWM operating clock. | ||
10 | - sys: PWM system interface clock. | ||
11 | - #pwm-cells: Should be 2. See pwm.txt in this directory for the | ||
12 | description of the cells format. | ||
13 | - img,cr-periph: Must contain a phandle to the peripheral control | ||
14 | syscon node which contains PWM control registers. | ||
15 | |||
16 | Example: | ||
17 | pwm: pwm@18101300 { | ||
18 | compatible = "img,pistachio-pwm"; | ||
19 | reg = <0x18101300 0x100>; | ||
20 | clocks = <&pwm_clk>, <&system_clk>; | ||
21 | clock-names = "pwm", "sys"; | ||
22 | #pwm-cells = <2>; | ||
23 | img,cr-periph = <&cr_periph>; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/pwm/pwm-sun4i.txt b/Documentation/devicetree/bindings/pwm/pwm-sun4i.txt new file mode 100644 index 000000000000..ae0273e19506 --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/pwm-sun4i.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | Allwinner sun4i and sun7i SoC PWM controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be one of: | ||
5 | - "allwinner,sun4i-a10-pwm" | ||
6 | - "allwinner,sun7i-a20-pwm" | ||
7 | - reg: physical base address and length of the controller's registers | ||
8 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of | ||
9 | the cells format. | ||
10 | - clocks: From common clock binding, handle to the parent clock. | ||
11 | |||
12 | Example: | ||
13 | |||
14 | pwm: pwm@01c20e00 { | ||
15 | compatible = "allwinner,sun7i-a20-pwm"; | ||
16 | reg = <0x01c20e00 0xc>; | ||
17 | clocks = <&osc24M>; | ||
18 | #pwm-cells = <3>; | ||
19 | status = "disabled"; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/thermal/exynos-thermal.txt b/Documentation/devicetree/bindings/thermal/exynos-thermal.txt index ae738f562acc..695150a4136b 100644 --- a/Documentation/devicetree/bindings/thermal/exynos-thermal.txt +++ b/Documentation/devicetree/bindings/thermal/exynos-thermal.txt | |||
@@ -12,6 +12,7 @@ | |||
12 | "samsung,exynos5420-tmu-ext-triminfo" for TMU channels 2, 3 and 4 | 12 | "samsung,exynos5420-tmu-ext-triminfo" for TMU channels 2, 3 and 4 |
13 | Exynos5420 (Must pass triminfo base and triminfo clock) | 13 | Exynos5420 (Must pass triminfo base and triminfo clock) |
14 | "samsung,exynos5440-tmu" | 14 | "samsung,exynos5440-tmu" |
15 | "samsung,exynos7-tmu" | ||
15 | - interrupt-parent : The phandle for the interrupt controller | 16 | - interrupt-parent : The phandle for the interrupt controller |
16 | - reg : Address range of the thermal registers. For soc's which has multiple | 17 | - reg : Address range of the thermal registers. For soc's which has multiple |
17 | instances of TMU and some registers are shared across all TMU's like | 18 | instances of TMU and some registers are shared across all TMU's like |
@@ -32,13 +33,28 @@ | |||
32 | - clocks : The main clocks for TMU device | 33 | - clocks : The main clocks for TMU device |
33 | -- 1. operational clock for TMU channel | 34 | -- 1. operational clock for TMU channel |
34 | -- 2. optional clock to access the shared registers of TMU channel | 35 | -- 2. optional clock to access the shared registers of TMU channel |
36 | -- 3. optional special clock for functional operation | ||
35 | - clock-names : Thermal system clock name | 37 | - clock-names : Thermal system clock name |
36 | -- "tmu_apbif" operational clock for current TMU channel | 38 | -- "tmu_apbif" operational clock for current TMU channel |
37 | -- "tmu_triminfo_apbif" clock to access the shared triminfo register | 39 | -- "tmu_triminfo_apbif" clock to access the shared triminfo register |
38 | for current TMU channel | 40 | for current TMU channel |
41 | -- "tmu_sclk" clock for functional operation of the current TMU | ||
42 | channel | ||
39 | - vtmu-supply: This entry is optional and provides the regulator node supplying | 43 | - vtmu-supply: This entry is optional and provides the regulator node supplying |
40 | voltage to TMU. If needed this entry can be placed inside | 44 | voltage to TMU. If needed this entry can be placed inside |
41 | board/platform specific dts file. | 45 | board/platform specific dts file. |
46 | Following properties are mandatory (depending on SoC): | ||
47 | - samsung,tmu_gain: Gain value for internal TMU operation. | ||
48 | - samsung,tmu_reference_voltage: Value of TMU IP block's reference voltage | ||
49 | - samsung,tmu_noise_cancel_mode: Mode for noise cancellation | ||
50 | - samsung,tmu_efuse_value: Default level of temperature - it is needed when | ||
51 | in factory fusing produced wrong value | ||
52 | - samsung,tmu_min_efuse_value: Minimum temperature fused value | ||
53 | - samsung,tmu_max_efuse_value: Maximum temperature fused value | ||
54 | - samsung,tmu_first_point_trim: First point trimming value | ||
55 | - samsung,tmu_second_point_trim: Second point trimming value | ||
56 | - samsung,tmu_default_temp_offset: Default temperature offset | ||
57 | - samsung,tmu_cal_type: Callibration type | ||
42 | 58 | ||
43 | Example 1): | 59 | Example 1): |
44 | 60 | ||
@@ -51,6 +67,7 @@ Example 1): | |||
51 | clock-names = "tmu_apbif"; | 67 | clock-names = "tmu_apbif"; |
52 | status = "disabled"; | 68 | status = "disabled"; |
53 | vtmu-supply = <&tmu_regulator_node>; | 69 | vtmu-supply = <&tmu_regulator_node>; |
70 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
54 | }; | 71 | }; |
55 | 72 | ||
56 | Example 2): | 73 | Example 2): |
@@ -61,6 +78,7 @@ Example 2): | |||
61 | interrupts = <0 58 0>; | 78 | interrupts = <0 58 0>; |
62 | clocks = <&clock 21>; | 79 | clocks = <&clock 21>; |
63 | clock-names = "tmu_apbif"; | 80 | clock-names = "tmu_apbif"; |
81 | #include "exynos5440-tmu-sensor-conf.dtsi" | ||
64 | }; | 82 | }; |
65 | 83 | ||
66 | Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | 84 | Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") |
@@ -70,6 +88,7 @@ Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | |||
70 | interrupts = <0 184 0>; | 88 | interrupts = <0 184 0>; |
71 | clocks = <&clock 318>, <&clock 318>; | 89 | clocks = <&clock 318>, <&clock 318>; |
72 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 90 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
91 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
73 | }; | 92 | }; |
74 | 93 | ||
75 | tmu_cpu3: tmu@1006c000 { | 94 | tmu_cpu3: tmu@1006c000 { |
@@ -78,6 +97,7 @@ Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | |||
78 | interrupts = <0 185 0>; | 97 | interrupts = <0 185 0>; |
79 | clocks = <&clock 318>, <&clock 319>; | 98 | clocks = <&clock 318>, <&clock 319>; |
80 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 99 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
100 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
81 | }; | 101 | }; |
82 | 102 | ||
83 | tmu_gpu: tmu@100a0000 { | 103 | tmu_gpu: tmu@100a0000 { |
@@ -86,6 +106,7 @@ Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | |||
86 | interrupts = <0 215 0>; | 106 | interrupts = <0 215 0>; |
87 | clocks = <&clock 319>, <&clock 318>; | 107 | clocks = <&clock 319>, <&clock 318>; |
88 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 108 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
109 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
89 | }; | 110 | }; |
90 | 111 | ||
91 | Note: For multi-instance tmu each instance should have an alias correctly | 112 | Note: For multi-instance tmu each instance should have an alias correctly |
diff --git a/Documentation/devicetree/bindings/thermal/thermal.txt b/Documentation/devicetree/bindings/thermal/thermal.txt index f5db6b72a36f..29fe0bfae38e 100644 --- a/Documentation/devicetree/bindings/thermal/thermal.txt +++ b/Documentation/devicetree/bindings/thermal/thermal.txt | |||
@@ -251,24 +251,24 @@ ocp { | |||
251 | }; | 251 | }; |
252 | 252 | ||
253 | thermal-zones { | 253 | thermal-zones { |
254 | cpu-thermal: cpu-thermal { | 254 | cpu_thermal: cpu-thermal { |
255 | polling-delay-passive = <250>; /* milliseconds */ | 255 | polling-delay-passive = <250>; /* milliseconds */ |
256 | polling-delay = <1000>; /* milliseconds */ | 256 | polling-delay = <1000>; /* milliseconds */ |
257 | 257 | ||
258 | thermal-sensors = <&bandgap0>; | 258 | thermal-sensors = <&bandgap0>; |
259 | 259 | ||
260 | trips { | 260 | trips { |
261 | cpu-alert0: cpu-alert { | 261 | cpu_alert0: cpu-alert0 { |
262 | temperature = <90000>; /* millicelsius */ | 262 | temperature = <90000>; /* millicelsius */ |
263 | hysteresis = <2000>; /* millicelsius */ | 263 | hysteresis = <2000>; /* millicelsius */ |
264 | type = "active"; | 264 | type = "active"; |
265 | }; | 265 | }; |
266 | cpu-alert1: cpu-alert { | 266 | cpu_alert1: cpu-alert1 { |
267 | temperature = <100000>; /* millicelsius */ | 267 | temperature = <100000>; /* millicelsius */ |
268 | hysteresis = <2000>; /* millicelsius */ | 268 | hysteresis = <2000>; /* millicelsius */ |
269 | type = "passive"; | 269 | type = "passive"; |
270 | }; | 270 | }; |
271 | cpu-crit: cpu-crit { | 271 | cpu_crit: cpu-crit { |
272 | temperature = <125000>; /* millicelsius */ | 272 | temperature = <125000>; /* millicelsius */ |
273 | hysteresis = <2000>; /* millicelsius */ | 273 | hysteresis = <2000>; /* millicelsius */ |
274 | type = "critical"; | 274 | type = "critical"; |
@@ -277,17 +277,17 @@ thermal-zones { | |||
277 | 277 | ||
278 | cooling-maps { | 278 | cooling-maps { |
279 | map0 { | 279 | map0 { |
280 | trip = <&cpu-alert0>; | 280 | trip = <&cpu_alert0>; |
281 | cooling-device = <&fan0 THERMAL_NO_LIMITS 4>; | 281 | cooling-device = <&fan0 THERMAL_NO_LIMIT 4>; |
282 | }; | 282 | }; |
283 | map1 { | 283 | map1 { |
284 | trip = <&cpu-alert1>; | 284 | trip = <&cpu_alert1>; |
285 | cooling-device = <&fan0 5 THERMAL_NO_LIMITS>; | 285 | cooling-device = <&fan0 5 THERMAL_NO_LIMIT>; |
286 | }; | 286 | }; |
287 | map2 { | 287 | map2 { |
288 | trip = <&cpu-alert1>; | 288 | trip = <&cpu_alert1>; |
289 | cooling-device = | 289 | cooling-device = |
290 | <&cpu0 THERMAL_NO_LIMITS THERMAL_NO_LIMITS>; | 290 | <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; |
291 | }; | 291 | }; |
292 | }; | 292 | }; |
293 | }; | 293 | }; |
@@ -298,13 +298,13 @@ used to monitor the zone 'cpu-thermal' using its sole sensor. A fan | |||
298 | device (fan0) is controlled via I2C bus 1, at address 0x48, and has ten | 298 | device (fan0) is controlled via I2C bus 1, at address 0x48, and has ten |
299 | different cooling states 0-9. It is used to remove the heat out of | 299 | different cooling states 0-9. It is used to remove the heat out of |
300 | the thermal zone 'cpu-thermal' using its cooling states | 300 | the thermal zone 'cpu-thermal' using its cooling states |
301 | from its minimum to 4, when it reaches trip point 'cpu-alert0' | 301 | from its minimum to 4, when it reaches trip point 'cpu_alert0' |
302 | at 90C, as an example of active cooling. The same cooling device is used at | 302 | at 90C, as an example of active cooling. The same cooling device is used at |
303 | 'cpu-alert1', but from 5 to its maximum state. The cpu@0 device is also | 303 | 'cpu_alert1', but from 5 to its maximum state. The cpu@0 device is also |
304 | linked to the same thermal zone, 'cpu-thermal', as a passive cooling device, | 304 | linked to the same thermal zone, 'cpu-thermal', as a passive cooling device, |
305 | using all its cooling states at trip point 'cpu-alert1', | 305 | using all its cooling states at trip point 'cpu_alert1', |
306 | which is a trip point at 100C. On the thermal zone 'cpu-thermal', at the | 306 | which is a trip point at 100C. On the thermal zone 'cpu-thermal', at the |
307 | temperature of 125C, represented by the trip point 'cpu-crit', the silicon | 307 | temperature of 125C, represented by the trip point 'cpu_crit', the silicon |
308 | is not reliable anymore. | 308 | is not reliable anymore. |
309 | 309 | ||
310 | (b) - IC with several internal sensors | 310 | (b) - IC with several internal sensors |
@@ -329,7 +329,7 @@ ocp { | |||
329 | }; | 329 | }; |
330 | 330 | ||
331 | thermal-zones { | 331 | thermal-zones { |
332 | cpu-thermal: cpu-thermal { | 332 | cpu_thermal: cpu-thermal { |
333 | polling-delay-passive = <250>; /* milliseconds */ | 333 | polling-delay-passive = <250>; /* milliseconds */ |
334 | polling-delay = <1000>; /* milliseconds */ | 334 | polling-delay = <1000>; /* milliseconds */ |
335 | 335 | ||
@@ -338,12 +338,12 @@ thermal-zones { | |||
338 | 338 | ||
339 | trips { | 339 | trips { |
340 | /* each zone within the SoC may have its own trips */ | 340 | /* each zone within the SoC may have its own trips */ |
341 | cpu-alert: cpu-alert { | 341 | cpu_alert: cpu-alert { |
342 | temperature = <100000>; /* millicelsius */ | 342 | temperature = <100000>; /* millicelsius */ |
343 | hysteresis = <2000>; /* millicelsius */ | 343 | hysteresis = <2000>; /* millicelsius */ |
344 | type = "passive"; | 344 | type = "passive"; |
345 | }; | 345 | }; |
346 | cpu-crit: cpu-crit { | 346 | cpu_crit: cpu-crit { |
347 | temperature = <125000>; /* millicelsius */ | 347 | temperature = <125000>; /* millicelsius */ |
348 | hysteresis = <2000>; /* millicelsius */ | 348 | hysteresis = <2000>; /* millicelsius */ |
349 | type = "critical"; | 349 | type = "critical"; |
@@ -356,7 +356,7 @@ thermal-zones { | |||
356 | }; | 356 | }; |
357 | }; | 357 | }; |
358 | 358 | ||
359 | gpu-thermal: gpu-thermal { | 359 | gpu_thermal: gpu-thermal { |
360 | polling-delay-passive = <120>; /* milliseconds */ | 360 | polling-delay-passive = <120>; /* milliseconds */ |
361 | polling-delay = <1000>; /* milliseconds */ | 361 | polling-delay = <1000>; /* milliseconds */ |
362 | 362 | ||
@@ -365,12 +365,12 @@ thermal-zones { | |||
365 | 365 | ||
366 | trips { | 366 | trips { |
367 | /* each zone within the SoC may have its own trips */ | 367 | /* each zone within the SoC may have its own trips */ |
368 | gpu-alert: gpu-alert { | 368 | gpu_alert: gpu-alert { |
369 | temperature = <90000>; /* millicelsius */ | 369 | temperature = <90000>; /* millicelsius */ |
370 | hysteresis = <2000>; /* millicelsius */ | 370 | hysteresis = <2000>; /* millicelsius */ |
371 | type = "passive"; | 371 | type = "passive"; |
372 | }; | 372 | }; |
373 | gpu-crit: gpu-crit { | 373 | gpu_crit: gpu-crit { |
374 | temperature = <105000>; /* millicelsius */ | 374 | temperature = <105000>; /* millicelsius */ |
375 | hysteresis = <2000>; /* millicelsius */ | 375 | hysteresis = <2000>; /* millicelsius */ |
376 | type = "critical"; | 376 | type = "critical"; |
@@ -383,7 +383,7 @@ thermal-zones { | |||
383 | }; | 383 | }; |
384 | }; | 384 | }; |
385 | 385 | ||
386 | dsp-thermal: dsp-thermal { | 386 | dsp_thermal: dsp-thermal { |
387 | polling-delay-passive = <50>; /* milliseconds */ | 387 | polling-delay-passive = <50>; /* milliseconds */ |
388 | polling-delay = <1000>; /* milliseconds */ | 388 | polling-delay = <1000>; /* milliseconds */ |
389 | 389 | ||
@@ -392,12 +392,12 @@ thermal-zones { | |||
392 | 392 | ||
393 | trips { | 393 | trips { |
394 | /* each zone within the SoC may have its own trips */ | 394 | /* each zone within the SoC may have its own trips */ |
395 | dsp-alert: gpu-alert { | 395 | dsp_alert: dsp-alert { |
396 | temperature = <90000>; /* millicelsius */ | 396 | temperature = <90000>; /* millicelsius */ |
397 | hysteresis = <2000>; /* millicelsius */ | 397 | hysteresis = <2000>; /* millicelsius */ |
398 | type = "passive"; | 398 | type = "passive"; |
399 | }; | 399 | }; |
400 | dsp-crit: gpu-crit { | 400 | dsp_crit: gpu-crit { |
401 | temperature = <135000>; /* millicelsius */ | 401 | temperature = <135000>; /* millicelsius */ |
402 | hysteresis = <2000>; /* millicelsius */ | 402 | hysteresis = <2000>; /* millicelsius */ |
403 | type = "critical"; | 403 | type = "critical"; |
@@ -457,7 +457,7 @@ ocp { | |||
457 | }; | 457 | }; |
458 | 458 | ||
459 | thermal-zones { | 459 | thermal-zones { |
460 | cpu-thermal: cpu-thermal { | 460 | cpu_thermal: cpu-thermal { |
461 | polling-delay-passive = <250>; /* milliseconds */ | 461 | polling-delay-passive = <250>; /* milliseconds */ |
462 | polling-delay = <1000>; /* milliseconds */ | 462 | polling-delay = <1000>; /* milliseconds */ |
463 | 463 | ||
@@ -508,7 +508,7 @@ with many sensors and many cooling devices. | |||
508 | /* | 508 | /* |
509 | * An IC with several temperature sensor. | 509 | * An IC with several temperature sensor. |
510 | */ | 510 | */ |
511 | adc-dummy: sensor@0x50 { | 511 | adc_dummy: sensor@0x50 { |
512 | ... | 512 | ... |
513 | #thermal-sensor-cells = <1>; /* sensor internal ID */ | 513 | #thermal-sensor-cells = <1>; /* sensor internal ID */ |
514 | }; | 514 | }; |
@@ -520,7 +520,7 @@ thermal-zones { | |||
520 | polling-delay = <2500>; /* milliseconds */ | 520 | polling-delay = <2500>; /* milliseconds */ |
521 | 521 | ||
522 | /* sensor ID */ | 522 | /* sensor ID */ |
523 | thermal-sensors = <&adc-dummy 4>; | 523 | thermal-sensors = <&adc_dummy 4>; |
524 | 524 | ||
525 | trips { | 525 | trips { |
526 | ... | 526 | ... |
@@ -531,14 +531,14 @@ thermal-zones { | |||
531 | }; | 531 | }; |
532 | }; | 532 | }; |
533 | 533 | ||
534 | board-thermal: board-thermal { | 534 | board_thermal: board-thermal { |
535 | polling-delay-passive = <1000>; /* milliseconds */ | 535 | polling-delay-passive = <1000>; /* milliseconds */ |
536 | polling-delay = <2500>; /* milliseconds */ | 536 | polling-delay = <2500>; /* milliseconds */ |
537 | 537 | ||
538 | /* sensor ID */ | 538 | /* sensor ID */ |
539 | thermal-sensors = <&adc-dummy 0>, /* pcb top edge */ | 539 | thermal-sensors = <&adc_dummy 0>, /* pcb top edge */ |
540 | <&adc-dummy 1>, /* lcd */ | 540 | <&adc_dummy 1>, /* lcd */ |
541 | <&adc-dymmy 2>; /* back cover */ | 541 | <&adc_dummy 2>; /* back cover */ |
542 | /* | 542 | /* |
543 | * An array of coefficients describing the sensor | 543 | * An array of coefficients describing the sensor |
544 | * linear relation. E.g.: | 544 | * linear relation. E.g.: |
@@ -548,22 +548,22 @@ thermal-zones { | |||
548 | 548 | ||
549 | trips { | 549 | trips { |
550 | /* Trips are based on resulting linear equation */ | 550 | /* Trips are based on resulting linear equation */ |
551 | cpu-trip: cpu-trip { | 551 | cpu_trip: cpu-trip { |
552 | temperature = <60000>; /* millicelsius */ | 552 | temperature = <60000>; /* millicelsius */ |
553 | hysteresis = <2000>; /* millicelsius */ | 553 | hysteresis = <2000>; /* millicelsius */ |
554 | type = "passive"; | 554 | type = "passive"; |
555 | }; | 555 | }; |
556 | gpu-trip: gpu-trip { | 556 | gpu_trip: gpu-trip { |
557 | temperature = <55000>; /* millicelsius */ | 557 | temperature = <55000>; /* millicelsius */ |
558 | hysteresis = <2000>; /* millicelsius */ | 558 | hysteresis = <2000>; /* millicelsius */ |
559 | type = "passive"; | 559 | type = "passive"; |
560 | } | 560 | } |
561 | lcd-trip: lcp-trip { | 561 | lcd_trip: lcp-trip { |
562 | temperature = <53000>; /* millicelsius */ | 562 | temperature = <53000>; /* millicelsius */ |
563 | hysteresis = <2000>; /* millicelsius */ | 563 | hysteresis = <2000>; /* millicelsius */ |
564 | type = "passive"; | 564 | type = "passive"; |
565 | }; | 565 | }; |
566 | crit-trip: crit-trip { | 566 | crit_trip: crit-trip { |
567 | temperature = <68000>; /* millicelsius */ | 567 | temperature = <68000>; /* millicelsius */ |
568 | hysteresis = <2000>; /* millicelsius */ | 568 | hysteresis = <2000>; /* millicelsius */ |
569 | type = "critical"; | 569 | type = "critical"; |
@@ -572,17 +572,17 @@ thermal-zones { | |||
572 | 572 | ||
573 | cooling-maps { | 573 | cooling-maps { |
574 | map0 { | 574 | map0 { |
575 | trip = <&cpu-trip>; | 575 | trip = <&cpu_trip>; |
576 | cooling-device = <&cpu0 0 2>; | 576 | cooling-device = <&cpu0 0 2>; |
577 | contribution = <55>; | 577 | contribution = <55>; |
578 | }; | 578 | }; |
579 | map1 { | 579 | map1 { |
580 | trip = <&gpu-trip>; | 580 | trip = <&gpu_trip>; |
581 | cooling-device = <&gpu0 0 2>; | 581 | cooling-device = <&gpu0 0 2>; |
582 | contribution = <20>; | 582 | contribution = <20>; |
583 | }; | 583 | }; |
584 | map2 { | 584 | map2 { |
585 | trip = <&lcd-trip>; | 585 | trip = <&lcd_trip>; |
586 | cooling-device = <&lcd0 5 10>; | 586 | cooling-device = <&lcd0 5 10>; |
587 | contribution = <15>; | 587 | contribution = <15>; |
588 | }; | 588 | }; |
diff --git a/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt b/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt index 37afec194949..198794963786 100644 --- a/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt +++ b/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt | |||
@@ -13,6 +13,11 @@ Required Properties: | |||
13 | by the GPIO flags. | 13 | by the GPIO flags. |
14 | - hw_margin_ms: Maximum time to reset watchdog circuit (milliseconds). | 14 | - hw_margin_ms: Maximum time to reset watchdog circuit (milliseconds). |
15 | 15 | ||
16 | Optional Properties: | ||
17 | - always-running: If the watchdog timer cannot be disabled, add this flag to | ||
18 | have the driver keep toggling the signal without a client. It will only cease | ||
19 | to toggle the signal when the device is open and the timeout elapsed. | ||
20 | |||
16 | Example: | 21 | Example: |
17 | watchdog: watchdog { | 22 | watchdog: watchdog { |
18 | /* ADM706 */ | 23 | /* ADM706 */ |
diff --git a/Documentation/devicetree/bindings/watchdog/imgpdc-wdt.txt b/Documentation/devicetree/bindings/watchdog/imgpdc-wdt.txt new file mode 100644 index 000000000000..b2fa11fd43de --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/imgpdc-wdt.txt | |||
@@ -0,0 +1,19 @@ | |||
1 | *ImgTec PowerDown Controller (PDC) Watchdog Timer (WDT) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should be "img,pdc-wdt" | ||
5 | - reg : Should contain WDT registers location and length | ||
6 | - clocks: Must contain an entry for each entry in clock-names. | ||
7 | - clock-names: Should contain "wdt" and "sys"; the watchdog counter | ||
8 | clock and register interface clock respectively. | ||
9 | - interrupts : Should contain WDT interrupt | ||
10 | |||
11 | Examples: | ||
12 | |||
13 | watchdog@18102100 { | ||
14 | compatible = "img,pdc-wdt"; | ||
15 | reg = <0x18102100 0x100>; | ||
16 | clocks = <&pdc_wdt_clk>, <&sys_clk>; | ||
17 | clock-names = "wdt", "sys"; | ||
18 | interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>; | ||
19 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/ingenic,jz4740-wdt.txt b/Documentation/devicetree/bindings/watchdog/ingenic,jz4740-wdt.txt new file mode 100644 index 000000000000..e27763ef0049 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/ingenic,jz4740-wdt.txt | |||
@@ -0,0 +1,12 @@ | |||
1 | Ingenic Watchdog Timer (WDT) Controller for JZ4740 | ||
2 | |||
3 | Required properties: | ||
4 | compatible: "ingenic,jz4740-watchdog" | ||
5 | reg: Register address and length for watchdog registers | ||
6 | |||
7 | Example: | ||
8 | |||
9 | watchdog: jz4740-watchdog@0x10002000 { | ||
10 | compatible = "ingenic,jz4740-watchdog"; | ||
11 | reg = <0x10002000 0x100>; | ||
12 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt new file mode 100644 index 000000000000..af9eb5b8a253 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt | |||
@@ -0,0 +1,13 @@ | |||
1 | Mediatek SoCs Watchdog timer | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "mediatek,mt6589-wdt" | ||
6 | - reg : Specifies base physical address and size of the registers. | ||
7 | |||
8 | Example: | ||
9 | |||
10 | wdt: watchdog@010000000 { | ||
11 | compatible = "mediatek,mt6589-wdt"; | ||
12 | reg = <0x10000000 0x18>; | ||
13 | }; | ||