On Fri, Jan 03, 2025 at 09:56:35PM +0000, Haylen Chu wrote: > Add documentation to describe Spacemit K1 system controller registers. > > Signed-off-by: Haylen Chu <heylenay@xxxxxxx> > --- > .../soc/spacemit/spacemit,k1-syscon.yaml | 52 +++++++++++++++++++ > 1 file changed, 52 insertions(+) > create mode 100644 Documentation/devicetree/bindings/soc/spacemit/spacemit,k1-syscon.yaml > > diff --git a/Documentation/devicetree/bindings/soc/spacemit/spacemit,k1-syscon.yaml b/Documentation/devicetree/bindings/soc/spacemit/spacemit,k1-syscon.yaml > new file mode 100644 > index 000000000000..79c4a74ff30e > --- /dev/null > +++ b/Documentation/devicetree/bindings/soc/spacemit/spacemit,k1-syscon.yaml > @@ -0,0 +1,52 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/soc/spacemit/spacemit,k1-syscon.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Spacemit K1 SoC System Controller > + > +maintainers: > + - Haylen Chu <heylenay@xxxxxxx> > + > +description: > + The Spacemit K1 SoC system controller provides access to shared register files > + for related SoC modules, such as clock controller and reset controller. > + > +properties: > + compatible: > + items: > + - enum: > + - spacemit,k1-apbc-syscon > + - spacemit,k1-apbs-syscon > + - spacemit,k1-apmu-syscon > + - spacemit,k1-mpmu-syscon > + - const: syscon > + - const: simple-mfd > + > + reg: > + maxItems: 1 > + > + clock-controller: > + $ref: /schemas/clock/spacemit,k1-ccu.yaml# > + type: object So now we see the full picture and it leads to questions. 1. Why spacemit,k1-apbc-syscon with spacemit,k1-ccu-apmu child is a correct combination? 2. Why having this split in the first place? Please confirm that clock controller is really, really a separate device and its child in datasheet. IOW, fake child for your Linux is a no-go. Fake child while devices are independent is another no-go. Actual answer for 1+2 above would be to fold the child into parent, assuming clock controller split is fake in terms of datasheet. If it is real device, then allOf:if:then: narrowing the compatibles of child might not be worth the complexity. 3. Why using different naming, look: spacemit,k1-XXXX-syscon spacemit,k1-ccu-XXXX Best regards, Krzysztof