[PATCH 05/12] dt-bindings: clock: sunxi-ng: add bindings for R329 CCUs

Jernej Škrabec jernej.skrabec at gmail.com
Tue May 3 12:55:08 PDT 2022


Dne ponedeljek, 02. maj 2022 ob 23:34:27 CEST je Rob Herring napisal(a):
> On Fri, Apr 22, 2022 at 11:41:08PM +0800, icenowy at outlook.com wrote:
> > From: Icenowy Zheng <icenowy at aosc.io>
> > 
> > R329 has a CPUX CCU and a R-CCU, with all PLLs in R-CCU.
> > 
> > Add bindings for them, with R-CCU only taking 3 oscillators as input and
> > main CCU taking oscillators + PLLs as input.
> > 
> > Signed-off-by: Icenowy Zheng <icenowy at aosc.io>
> > ---
> >  .../clock/allwinner,sun4i-a10-ccu.yaml        | 62 ++++++++++++++--
> >  include/dt-bindings/clock/sun50i-r329-ccu.h   | 73 +++++++++++++++++++
> >  include/dt-bindings/clock/sun50i-r329-r-ccu.h | 45 ++++++++++++
> >  include/dt-bindings/reset/sun50i-r329-ccu.h   | 45 ++++++++++++
> >  include/dt-bindings/reset/sun50i-r329-r-ccu.h | 24 ++++++
> >  5 files changed, 241 insertions(+), 8 deletions(-)
> >  create mode 100644 include/dt-bindings/clock/sun50i-r329-ccu.h
> >  create mode 100644 include/dt-bindings/clock/sun50i-r329-r-ccu.h
> >  create mode 100644 include/dt-bindings/reset/sun50i-r329-ccu.h
> >  create mode 100644 include/dt-bindings/reset/sun50i-r329-r-ccu.h
> > 
> > diff --git a/Documentation/devicetree/bindings/clock/allwinner,sun4i-a10-
ccu.yaml b/Documentation/devicetree/bindings/clock/allwinner,sun4i-a10-
ccu.yaml
> > index 15ed64d35261..c7a429e55483 100644
> > --- a/Documentation/devicetree/bindings/clock/allwinner,sun4i-a10-ccu.yaml
> > +++ b/Documentation/devicetree/bindings/clock/allwinner,sun4i-a10-ccu.yaml
> > @@ -45,6 +45,8 @@ properties:
> >        - allwinner,sun50i-h6-r-ccu
> >        - allwinner,sun50i-h616-ccu
> >        - allwinner,sun50i-h616-r-ccu
> > +      - allwinner,sun50i-r329-ccu
> > +      - allwinner,sun50i-r329-r-ccu
> >        - allwinner,suniv-f1c100s-ccu
> >        - nextthing,gr8-ccu
> >  
> > @@ -106,6 +108,7 @@ else:
> >            - allwinner,sun50i-a100-ccu
> >            - allwinner,sun50i-h6-ccu
> >            - allwinner,sun50i-h616-ccu
> > +          - allwinner,sun50i-r329-r-ccu
> >  
> >    then:
> >      properties:
> > @@ -118,14 +121,57 @@ else:
> >          maxItems: 3
> >  
> >    else:
> > -    properties:
> > -      clocks:
> > -        minItems: 2
> > -        maxItems: 2
> > -
> > -      clock-names:
> > -        minItems: 2
> > -        maxItems: 2
> > +    if:
> > +      properties:
> > +        compatible:
> > +          const: allwinner,sun50i-r329-ccu
> > +    then:
> > +      properties:
> > +        clocks:
> > +          minItems: 13
> > +          maxItems: 13
> 
> This is (or should be) implied by the size of 'items'. Did you find that 
> to not be the case?
> 
> > +          items:
> > +            - description: High Frequency Oscillator (usually at 24MHz)
> > +            - description: Low Frequency Oscillator (usually at 32kHz)
> > +            - description: Internal Oscillator
> > +            - description: CPUX PLL
> > +            - description: Peripherals PLL
> > +            - description: Peripherals PLL (2x)
> > +            - description: Peripherals PLL derivated 800MHz clock
> > +            - description: Audio PLL 0
> > +            - description: Audio PLL 0 (/2)
> > +            - description: Audio PLL 0 (/5)
> > +            - description: Audio PLL 1
> > +            - description: Audio PLL 1 (2x)
> > +            - description: Audio PLL 1 (4x)
> 
> > diff --git a/include/dt-bindings/clock/sun50i-r329-ccu.h b/include/dt-
bindings/clock/sun50i-r329-ccu.h
> > new file mode 100644
> > index 000000000000..116f8d13a9b3
> > --- /dev/null
> > +++ b/include/dt-bindings/clock/sun50i-r329-ccu.h
> > @@ -0,0 +1,73 @@
> > +/* SPDX-License-Identifier: GPL-2.0 */
> > +/*
> > + * Copyright (c) 2021 Sipeed
> 
> It's 2022.
> 
> > diff --git a/include/dt-bindings/clock/sun50i-r329-r-ccu.h b/include/dt-
bindings/clock/sun50i-r329-r-ccu.h
> > new file mode 100644
> > index 000000000000..c327d1a1b602
> > --- /dev/null
> > +++ b/include/dt-bindings/clock/sun50i-r329-r-ccu.h
> > @@ -0,0 +1,45 @@
> > +/* SPDX-License-Identifier: GPL-2.0 */
> 
> > diff --git a/include/dt-bindings/reset/sun50i-r329-ccu.h b/include/dt-
bindings/reset/sun50i-r329-ccu.h
> > new file mode 100644
> > index 000000000000..bb704a82443f
> > --- /dev/null
> > +++ b/include/dt-bindings/reset/sun50i-r329-ccu.h
> > @@ -0,0 +1,45 @@
> > +/* SPDX-License-Identifier: (GPL-2.0+ or MIT) */
> 
> > diff --git a/include/dt-bindings/reset/sun50i-r329-r-ccu.h b/include/dt-
bindings/reset/sun50i-r329-r-ccu.h
> > new file mode 100644
> > index 000000000000..40644f2f21c6
> > --- /dev/null
> > +++ b/include/dt-bindings/reset/sun50i-r329-r-ccu.h
> > @@ -0,0 +1,24 @@
> > +/* SPDX-License-Identifier: (GPL-2.0+ or MIT) */
> 
> Why the different licenses? GPL-2.0 OR BSD-2-Clause is preferred. MIT is 
> fine if that's what matches the dts files.

Yes, most, if not all, DT files for Allwinner are dual licensed under GPL2+ and 
MIT. There are still some files under include/dt-bindings which are dual 
licensed under GPL2+ and X11, but I believe those files are for older SoCs.

Best regards,
Jernej





More information about the linux-arm-kernel mailing list