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

dt-bindings: rtc: sun6i: Add H616, R329, and D1 support

These new RTC variants all have a single alarm, like the R40 variant.

For the new SoCs, start requiring a complete list of input clocks. The
H616 has three required clocks. The R329 also has three required clocks
(but one is different), plus an optional crystal oscillator input. The
D1 RTC is identical to the one in the R329.

And since these new SoCs will have a well-defined output clock order as
well, they do not need the clock-output-names property.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Maxime Ripard <maxime@cerno.tech>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20220203021736.13434-3-samuel@sholland.org

authored by

Samuel Holland and committed by
Alexandre Belloni
8487614a f720002d

+83 -3
+73 -3
Documentation/devicetree/bindings/rtc/allwinner,sun6i-a31-rtc.yaml
··· 24 24 - allwinner,sun8i-v3-rtc 25 25 - allwinner,sun50i-h5-rtc 26 26 - allwinner,sun50i-h6-rtc 27 + - allwinner,sun50i-h616-rtc 28 + - allwinner,sun50i-r329-rtc 27 29 - items: 28 30 - const: allwinner,sun50i-a64-rtc 29 31 - const: allwinner,sun8i-h3-rtc 32 + - items: 33 + - const: allwinner,sun20i-d1-rtc 34 + - const: allwinner,sun50i-r329-rtc 30 35 31 36 reg: 32 37 maxItems: 1 ··· 43 38 - description: RTC Alarm 1 44 39 45 40 clocks: 46 - maxItems: 1 41 + minItems: 1 42 + maxItems: 4 43 + 44 + clock-names: 45 + minItems: 1 46 + maxItems: 4 47 47 48 48 clock-output-names: 49 49 minItems: 1 ··· 108 98 properties: 109 99 compatible: 110 100 contains: 111 - const: allwinner,sun8i-r40-rtc 101 + const: allwinner,sun50i-h616-rtc 102 + 103 + then: 104 + properties: 105 + clocks: 106 + minItems: 3 107 + maxItems: 3 108 + items: 109 + - description: Bus clock for register access 110 + - description: 24 MHz oscillator 111 + - description: 32 kHz clock from the CCU 112 + 113 + clock-names: 114 + minItems: 3 115 + maxItems: 3 116 + items: 117 + - const: bus 118 + - const: hosc 119 + - const: pll-32k 120 + 121 + required: 122 + - clocks 123 + - clock-names 124 + 125 + - if: 126 + properties: 127 + compatible: 128 + contains: 129 + const: allwinner,sun50i-r329-rtc 130 + 131 + then: 132 + properties: 133 + clocks: 134 + minItems: 3 135 + maxItems: 4 136 + items: 137 + - description: Bus clock for register access 138 + - description: 24 MHz oscillator 139 + - description: AHB parent for internal SPI clock 140 + - description: External 32768 Hz oscillator 141 + 142 + clock-names: 143 + minItems: 3 144 + maxItems: 4 145 + items: 146 + - const: bus 147 + - const: hosc 148 + - const: ahb 149 + - const: ext-osc32k 150 + 151 + required: 152 + - clocks 153 + - clock-names 154 + 155 + - if: 156 + properties: 157 + compatible: 158 + contains: 159 + enum: 160 + - allwinner,sun8i-r40-rtc 161 + - allwinner,sun50i-h616-rtc 162 + - allwinner,sun50i-r329-rtc 112 163 113 164 then: 114 165 properties: ··· 188 117 - compatible 189 118 - reg 190 119 - interrupts 191 - - clock-output-names 192 120 193 121 additionalProperties: false 194 122
+10
include/dt-bindings/clock/sun6i-rtc.h
··· 1 + /* SPDX-License-Identifier: (GPL-2.0+ or MIT) */ 2 + 3 + #ifndef _DT_BINDINGS_CLK_SUN6I_RTC_H_ 4 + #define _DT_BINDINGS_CLK_SUN6I_RTC_H_ 5 + 6 + #define CLK_OSC32K 0 7 + #define CLK_OSC32K_FANOUT 1 8 + #define CLK_IOSC 2 9 + 10 + #endif /* _DT_BINDINGS_CLK_SUN6I_RTC_H_ */