aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-10-15 01:05:03 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-10-15 01:05:03 -0400
commitc0fa2373f8cfed90437d8d7b17e0b1a84009a10a (patch)
tree43fb2edd0c11874d0b2e56714e53894d10321e19 /Documentation
parentfcc3a5d277571bc6048e7b4ef8cd391b935de629 (diff)
parent98d147f50eb0ce4328e013f5f2c076896003c761 (diff)
Merge tag 'clk-for-linus-3.18' of git://git.linaro.org/people/mike.turquette/linux
Pull clock tree updates from Mike Turquette: "The clk tree changes for 3.18 are dominated by clock drivers. Mostly fixes and enhancements to existing drivers as well as new drivers. This tag contains a bit more arch code than I usually take due to some OMAP2+ changes. Additionally it contains the restart notifier handlers which are merged as a dependency into several trees. The PXA changes are the only messy part. Due to having a stable tree I had to revert one patch and follow up with one more fix near the tip of this tag. Some dead code is introduced but it will soon become live code after 3.18-rc1 is released as the rest of the PXA family is converted over to the common clock framework. Another trend in this tag is that multiple vendors have started to push the complexity of changing their CPU frequency into the clock driver, whereas this used to be done in CPUfreq drivers. Changes to the clk core include a generic gpio-clock type and a clk_set_phase() function added to the top-level clk.h api. Due to some confusion on the fbdev mailing list the kernel boot parameters documentation was updated to further explain the clk_ignore_unused parameter, which is often required by users of the simplefb driver. Finally some fixes to the locking around the clock debugfs stuff was done to prevent deadlocks when interacting with other subsystems." * tag 'clk-for-linus-3.18' of git://git.linaro.org/people/mike.turquette/linux: (99 commits) clk: pxa clocks build system fix Revert "arm: pxa: Transition pxa27x to clk framework" clk: samsung: register restart handlers for s3c2412 and s3c2443 clk: rockchip: add restart handler clk: rockchip: rk3288: i2s_frac adds flag to set parent's rate doc/kernel-parameters.txt: clarify clk_ignore_unused arm: pxa: Transition pxa27x to clk framework dts: add devicetree bindings for pxa27x clocks clk: add pxa27x clock drivers arm: pxa: add clock pll selection bits clk: dts: document pxa clock binding clk: add pxa clocks infrastructure clk: gpio-gate: Ensure gpiod_ APIs are prototyped clk: ti: dra7-atl-clock: Mark the device as pm_runtime_irq_safe clk: ti: LLVMLinux: Move __init outside of type definition clk: ti: consider the fact that of_clk_get() might return an error clk: ti: dra7-atl-clock: fix a memory leak clk: ti: change clock init to use generic of_clk_init clk: hix5hd2: add I2C clocks clk: hix5hd2: add watchdog0 clocks ...
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/devicetree/bindings/clock/exynos3250-clock.txt10
-rw-r--r--Documentation/devicetree/bindings/clock/gpio-gate-clock.txt21
-rw-r--r--Documentation/devicetree/bindings/clock/maxim,max77686.txt16
-rw-r--r--Documentation/devicetree/bindings/clock/maxim,max77802.txt44
-rw-r--r--Documentation/devicetree/bindings/clock/pxa-clock.txt16
-rw-r--r--Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt1
-rw-r--r--Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt1
-rw-r--r--Documentation/devicetree/bindings/clock/sunxi.txt4
-rw-r--r--Documentation/kernel-parameters.txt14
9 files changed, 117 insertions, 10 deletions
diff --git a/Documentation/devicetree/bindings/clock/exynos3250-clock.txt b/Documentation/devicetree/bindings/clock/exynos3250-clock.txt
index aadc9c59e2d1..f57d9dd9ea85 100644
--- a/Documentation/devicetree/bindings/clock/exynos3250-clock.txt
+++ b/Documentation/devicetree/bindings/clock/exynos3250-clock.txt
@@ -7,6 +7,8 @@ Required Properties:
7 7
8- compatible: should be one of the following. 8- compatible: should be one of the following.
9 - "samsung,exynos3250-cmu" - controller compatible with Exynos3250 SoC. 9 - "samsung,exynos3250-cmu" - controller compatible with Exynos3250 SoC.
10 - "samsung,exynos3250-cmu-dmc" - controller compatible with
11 Exynos3250 SoC for Dynamic Memory Controller domain.
10 12
11- reg: physical base address of the controller and length of memory mapped 13- reg: physical base address of the controller and length of memory mapped
12 region. 14 region.
@@ -20,7 +22,7 @@ All available clocks are defined as preprocessor macros in
20dt-bindings/clock/exynos3250.h header and can be used in device 22dt-bindings/clock/exynos3250.h header and can be used in device
21tree sources. 23tree sources.
22 24
23Example 1: An example of a clock controller node is listed below. 25Example 1: Examples of clock controller nodes are listed below.
24 26
25 cmu: clock-controller@10030000 { 27 cmu: clock-controller@10030000 {
26 compatible = "samsung,exynos3250-cmu"; 28 compatible = "samsung,exynos3250-cmu";
@@ -28,6 +30,12 @@ Example 1: An example of a clock controller node is listed below.
28 #clock-cells = <1>; 30 #clock-cells = <1>;
29 }; 31 };
30 32
33 cmu_dmc: clock-controller@105C0000 {
34 compatible = "samsung,exynos3250-cmu-dmc";
35 reg = <0x105C0000 0x2000>;
36 #clock-cells = <1>;
37 };
38
31Example 2: UART controller node that consumes the clock generated by the clock 39Example 2: UART controller node that consumes the clock generated by the clock
32 controller. Refer to the standard clock bindings for information 40 controller. Refer to the standard clock bindings for information
33 about 'clocks' and 'clock-names' property. 41 about 'clocks' and 'clock-names' property.
diff --git a/Documentation/devicetree/bindings/clock/gpio-gate-clock.txt b/Documentation/devicetree/bindings/clock/gpio-gate-clock.txt
new file mode 100644
index 000000000000..d3379ff9b84b
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/gpio-gate-clock.txt
@@ -0,0 +1,21 @@
1Binding for simple gpio gated clock.
2
3This binding uses the common clock binding[1].
4
5[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
6
7Required properties:
8- compatible : shall be "gpio-gate-clock".
9- #clock-cells : from common clock binding; shall be set to 0.
10- enable-gpios : GPIO reference for enabling and disabling the clock.
11
12Optional properties:
13- clocks: Maximum of one parent clock is supported.
14
15Example:
16 clock {
17 compatible = "gpio-gate-clock";
18 clocks = <&parentclk>;
19 #clock-cells = <0>;
20 enable-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
21 };
diff --git a/Documentation/devicetree/bindings/clock/maxim,max77686.txt b/Documentation/devicetree/bindings/clock/maxim,max77686.txt
index 96ce71bbd745..9c40739a661a 100644
--- a/Documentation/devicetree/bindings/clock/maxim,max77686.txt
+++ b/Documentation/devicetree/bindings/clock/maxim,max77686.txt
@@ -9,13 +9,21 @@ The MAX77686 contains three 32.768khz clock outputs that can be controlled
9Following properties should be presend in main device node of the MFD chip. 9Following properties should be presend in main device node of the MFD chip.
10 10
11Required properties: 11Required properties:
12- #clock-cells: simple one-cell clock specifier format is used, where the 12
13 only cell is used as an index of the clock inside the provider. Following 13- #clock-cells: from common clock binding; shall be set to 1.
14 indices are allowed: 14
15Optional properties:
16- clock-output-names: From common clock binding.
17
18Each clock is assigned an identifier and client nodes can use this identifier
19to specify the clock which they consume. Following indices are allowed:
15 - 0: 32khz_ap clock, 20 - 0: 32khz_ap clock,
16 - 1: 32khz_cp clock, 21 - 1: 32khz_cp clock,
17 - 2: 32khz_pmic clock. 22 - 2: 32khz_pmic clock.
18 23
24Clocks are defined as preprocessor macros in dt-bindings/clock/maxim,max77686.h
25header and can be used in device tree sources.
26
19Example: Node of the MFD chip 27Example: Node of the MFD chip
20 28
21 max77686: max77686@09 { 29 max77686: max77686@09 {
@@ -34,5 +42,5 @@ Example: Clock consumer node
34 compatible = "bar,foo"; 42 compatible = "bar,foo";
35 /* ... */ 43 /* ... */
36 clock-names = "my-clock"; 44 clock-names = "my-clock";
37 clocks = <&max77686 2>; 45 clocks = <&max77686 MAX77686_CLK_PMIC>;
38 }; 46 };
diff --git a/Documentation/devicetree/bindings/clock/maxim,max77802.txt b/Documentation/devicetree/bindings/clock/maxim,max77802.txt
new file mode 100644
index 000000000000..c6dc7835f06c
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/maxim,max77802.txt
@@ -0,0 +1,44 @@
1Binding for Maxim MAX77802 32k clock generator block
2
3This is a part of device tree bindings of MAX77802 multi-function device.
4More information can be found in bindings/mfd/max77802.txt file.
5
6The MAX77802 contains two 32.768khz clock outputs that can be controlled
7(gated/ungated) over I2C.
8
9Following properties should be present in main device node of the MFD chip.
10
11Required properties:
12- #clock-cells: From common clock binding; shall be set to 1.
13
14Optional properties:
15- clock-output-names: From common clock binding.
16
17Each clock is assigned an identifier and client nodes can use this identifier
18to specify the clock which they consume. Following indices are allowed:
19 - 0: 32khz_ap clock,
20 - 1: 32khz_cp clock.
21
22Clocks are defined as preprocessor macros in dt-bindings/clock/maxim,max77802.h
23header and can be used in device tree sources.
24
25Example: Node of the MFD chip
26
27 max77802: max77802@09 {
28 compatible = "maxim,max77802";
29 interrupt-parent = <&wakeup_eint>;
30 interrupts = <26 0>;
31 reg = <0x09>;
32 #clock-cells = <1>;
33
34 /* ... */
35 };
36
37Example: Clock consumer node
38
39 foo@0 {
40 compatible = "bar,foo";
41 /* ... */
42 clock-names = "my-clock";
43 clocks = <&max77802 MAX77802_CLK_32K_AP>;
44 };
diff --git a/Documentation/devicetree/bindings/clock/pxa-clock.txt b/Documentation/devicetree/bindings/clock/pxa-clock.txt
new file mode 100644
index 000000000000..4b4a9024bd99
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/pxa-clock.txt
@@ -0,0 +1,16 @@
1* Clock bindings for Marvell PXA chips
2
3Required properties:
4- compatible: Should be "marvell,pxa-clocks"
5- #clock-cells: Should be <1>
6
7The clock consumer should specify the desired clock by having the clock
8ID in its "clocks" phandle cell (see include/.../pxa-clock.h).
9
10Examples:
11
12pxa2xx_clks: pxa2xx_clks@41300004 {
13 compatible = "marvell,pxa-clocks";
14 #clock-cells = <1>;
15 status = "okay";
16};
diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt
index 8f1424f0fa43..a5f52238c80d 100644
--- a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt
+++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt
@@ -15,6 +15,7 @@ Required Properties:
15 - "renesas,r8a7779-mstp-clocks" for R8A7779 (R-Car H1) MSTP gate clocks 15 - "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 16 - "renesas,r8a7790-mstp-clocks" for R8A7790 (R-Car H2) MSTP gate clocks
17 - "renesas,r8a7791-mstp-clocks" for R8A7791 (R-Car M2) MSTP gate clocks 17 - "renesas,r8a7791-mstp-clocks" for R8A7791 (R-Car M2) MSTP gate clocks
18 - "renesas,r8a7794-mstp-clocks" for R8A7794 (R-Car E2) MSTP gate clocks
18 - "renesas,sh73a0-mstp-clocks" for SH73A0 (SH-MobileAG5) MSTP gate clocks 19 - "renesas,sh73a0-mstp-clocks" for SH73A0 (SH-MobileAG5) MSTP gate clocks
19 - "renesas,cpg-mstp-clock" for generic MSTP gate clocks 20 - "renesas,cpg-mstp-clock" for generic MSTP gate clocks
20 - reg: Base address and length of the I/O mapped registers used by the MSTP 21 - reg: Base address and length of the I/O mapped registers used by the MSTP
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 7b41c2fe54db..e6ad35b894f9 100644
--- a/Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt
+++ b/Documentation/devicetree/bindings/clock/renesas,rcar-gen2-cpg-clocks.txt
@@ -8,6 +8,7 @@ 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,r8a7794-cpg-clocks" for the r8a7794 CPG
11 - "renesas,rcar-gen2-cpg-clocks" for the generic R-Car Gen2 CPG 12 - "renesas,rcar-gen2-cpg-clocks" for the generic R-Car Gen2 CPG
12 13
13 - reg: Base address and length of the memory resource used by the CPG 14 - reg: Base address and length of the memory resource used by the CPG
diff --git a/Documentation/devicetree/bindings/clock/sunxi.txt b/Documentation/devicetree/bindings/clock/sunxi.txt
index d3a5c3c6d677..ed116df9c3e7 100644
--- a/Documentation/devicetree/bindings/clock/sunxi.txt
+++ b/Documentation/devicetree/bindings/clock/sunxi.txt
@@ -46,7 +46,11 @@ Required properties:
46 "allwinner,sun6i-a31-apb2-div-clk" - for the APB2 gates on A31 46 "allwinner,sun6i-a31-apb2-div-clk" - for the APB2 gates on A31
47 "allwinner,sun6i-a31-apb2-gates-clk" - for the APB2 gates on A31 47 "allwinner,sun6i-a31-apb2-gates-clk" - for the APB2 gates on A31
48 "allwinner,sun8i-a23-apb2-gates-clk" - for the APB2 gates on A23 48 "allwinner,sun8i-a23-apb2-gates-clk" - for the APB2 gates on A23
49 "allwinner,sun5i-a13-mbus-clk" - for the MBUS clock on A13
50 "allwinner,sun4i-a10-mmc-output-clk" - for the MMC output clock on A10
51 "allwinner,sun4i-a10-mmc-sample-clk" - for the MMC sample clock on A10
49 "allwinner,sun4i-a10-mod0-clk" - for the module 0 family of clocks 52 "allwinner,sun4i-a10-mod0-clk" - for the module 0 family of clocks
53 "allwinner,sun8i-a23-mbus-clk" - for the MBUS clock on A23
50 "allwinner,sun7i-a20-out-clk" - for the external output clocks 54 "allwinner,sun7i-a20-out-clk" - for the external output clocks
51 "allwinner,sun7i-a20-gmac-clk" - for the GMAC clock module on A20/A31 55 "allwinner,sun7i-a20-gmac-clk" - for the GMAC clock module on A20/A31
52 "allwinner,sun4i-a10-usb-clk" - for usb gates + resets on A10 / A20 56 "allwinner,sun4i-a10-usb-clk" - for usb gates + resets on A10 / A20
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 04e9f5505faa..b62bdcb1eb39 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -605,11 +605,15 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
605 See Documentation/s390/CommonIO for details. 605 See Documentation/s390/CommonIO for details.
606 clk_ignore_unused 606 clk_ignore_unused
607 [CLK] 607 [CLK]
608 Keep all clocks already enabled by bootloader on, 608 Prevents the clock framework from automatically gating
609 even if no driver has claimed them. This is useful 609 clocks that have not been explicitly enabled by a Linux
610 for debug and development, but should not be 610 device driver but are enabled in hardware at reset or
611 needed on a platform with proper driver support. 611 by the bootloader/firmware. Note that this does not
612 For more information, see Documentation/clk.txt. 612 force such clocks to be always-on nor does it reserve
613 those clocks in any way. This parameter is useful for
614 debug and development, but should not be needed on a
615 platform with proper driver support. For more
616 information, see Documentation/clk.txt.
613 617
614 clock= [BUGS=X86-32, HW] gettimeofday clocksource override. 618 clock= [BUGS=X86-32, HW] gettimeofday clocksource override.
615 [Deprecated] 619 [Deprecated]