Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: clock: u8500: Add clkout clock bindings

This adds device tree bindings for the externally routed clocks
CLKOUT1 and CLKOUT2 clocks found in the DB8500.

Cc: devicetree@vger.kernel.org
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20220414221751.323525-2-linus.walleij@linaro.org
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>

authored by

Linus Walleij and committed by
Stephen Boyd
7335631f 31231092

+74
+57
Documentation/devicetree/bindings/clock/stericsson,u8500-clks.yaml
··· 109 109 110 110 additionalProperties: false 111 111 112 + clkout-clock: 113 + description: A subnode with three clock cells for externally routed clocks, 114 + output clocks. These are two PRCMU-internal clocks that can be divided and 115 + muxed out on the pads of the DB8500 SoC. 116 + type: object 117 + 118 + properties: 119 + '#clock-cells': 120 + description: 121 + The first cell indicates which output clock we are using, 122 + possible values are 0 (CLKOUT1) and 1 (CLKOUT2). 123 + The second cell indicates which clock we want to use as source, 124 + possible values are 0 thru 7, see the defines for the different 125 + source clocks. 126 + The third cell is a divider, legal values are 1 thru 63. 127 + const: 3 128 + 129 + additionalProperties: false 130 + 112 131 required: 113 132 - compatible 114 133 - reg ··· 138 119 - smp-twd-clock 139 120 140 121 additionalProperties: false 122 + 123 + examples: 124 + - | 125 + #include <dt-bindings/clock/ste-db8500-clkout.h> 126 + clocks@8012 { 127 + compatible = "stericsson,u8500-clks"; 128 + reg = <0x8012f000 0x1000>, <0x8011f000 0x1000>, 129 + <0x8000f000 0x1000>, <0xa03ff000 0x1000>, 130 + <0xa03cf000 0x1000>; 131 + 132 + prcmu_clk: prcmu-clock { 133 + #clock-cells = <1>; 134 + }; 135 + 136 + prcc_pclk: prcc-periph-clock { 137 + #clock-cells = <2>; 138 + }; 139 + 140 + prcc_kclk: prcc-kernel-clock { 141 + #clock-cells = <2>; 142 + }; 143 + 144 + prcc_reset: prcc-reset-controller { 145 + #reset-cells = <2>; 146 + }; 147 + 148 + rtc_clk: rtc32k-clock { 149 + #clock-cells = <0>; 150 + }; 151 + 152 + smp_twd_clk: smp-twd-clock { 153 + #clock-cells = <0>; 154 + }; 155 + 156 + clkout_clk: clkout-clock { 157 + #clock-cells = <3>; 158 + }; 159 + };
+17
include/dt-bindings/clock/ste-db8500-clkout.h
··· 1 + /* SPDX-License-Identifier: GPL-2.0 */ 2 + #ifndef __STE_CLK_DB8500_CLKOUT_H__ 3 + #define __STE_CLK_DB8500_CLKOUT_H__ 4 + 5 + #define DB8500_CLKOUT_1 0 6 + #define DB8500_CLKOUT_2 1 7 + 8 + #define DB8500_CLKOUT_SRC_CLK38M 0 9 + #define DB8500_CLKOUT_SRC_ACLK 1 10 + #define DB8500_CLKOUT_SRC_SYSCLK 2 11 + #define DB8500_CLKOUT_SRC_LCDCLK 3 12 + #define DB8500_CLKOUT_SRC_SDMMCCLK 4 13 + #define DB8500_CLKOUT_SRC_TVCLK 5 14 + #define DB8500_CLKOUT_SRC_TIMCLK 6 15 + #define DB8500_CLKOUT_SRC_CLK009 7 16 + 17 + #endif