On Mon, Oct 28, 2024 at 03:07:18PM +0100, Andrea della Porta wrote: > Add device tree bindings for the clock generator found in RP1 multi > function device, and relative entries in MAINTAINERS file. > > Signed-off-by: Andrea della Porta <andrea.porta@xxxxxxxx> > --- > .../clock/raspberrypi,rp1-clocks.yaml | 62 +++++++++++++++++++ > MAINTAINERS | 6 ++ > .../clock/raspberrypi,rp1-clocks.h | 61 ++++++++++++++++++ > 3 files changed, 129 insertions(+) > create mode 100644 Documentation/devicetree/bindings/clock/raspberrypi,rp1-clocks.yaml > create mode 100644 include/dt-bindings/clock/raspberrypi,rp1-clocks.h > > diff --git a/Documentation/devicetree/bindings/clock/raspberrypi,rp1-clocks.yaml b/Documentation/devicetree/bindings/clock/raspberrypi,rp1-clocks.yaml > new file mode 100644 > index 000000000000..a123dd619f8e > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/raspberrypi,rp1-clocks.yaml > @@ -0,0 +1,62 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/clock/raspberrypi,rp1-clocks.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: RaspberryPi RP1 clock generator > + > +maintainers: > + - Andrea della Porta <andrea.porta@xxxxxxxx> > + > +description: | > + The RP1 contains a clock generator designed as three PLLs (CORE, AUDIO, > + VIDEO), and each PLL output can be programmed though dividers to generate > + the clocks to drive the sub-peripherals embedded inside the chipset. > + > + Link to datasheet: > + https://datasheets.raspberrypi.com/rp1/rp1-peripherals.pdf > + > +properties: > + compatible: > + const: raspberrypi,rp1-clocks > + > + reg: > + maxItems: 1 > + > + '#clock-cells': > + description: > + The index in the assigned-clocks is mapped to the output clock as per > + definitions in include/dt-bindings/clock/raspberrypi,rp1-clocks.h. You still describe how current driver matches assigned-clocks to your output clocks. That's not the property of clock-cells and that's not how assigned-clocks work. There are no assigned clocks in your DTS, so this is really irrelevant (or not correct, choose). > + const: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + const: xosc What is the purpose of clock-names if you do not use it? Drop. > + > +required: > + - compatible > + - reg > + - '#clock-cells' > + - clocks > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/raspberrypi,rp1-clocks.h> > + > + rp1 { > + #address-cells = <2>; > + #size-cells = <2>; > + > + clocks@c040018000 { > + compatible = "raspberrypi,rp1-clocks"; > + reg = <0xc0 0x40018000 0x0 0x10038>; > + #clock-cells = <1>; > + clocks = <&clk_rp1_xosc>; > + clock-names = "xosc"; Only one space after '='. Best regards, Krzysztof