On Tue, May 19, 2020 at 4:42 PM Lubomir Rintel <lkundrak@xxxxx> wrote: > > This describes the bindings for a controller that generates master and bit > clocks for the I2S interface. > > Signed-off-by: Lubomir Rintel <lkundrak@xxxxx> > > --- > Changes since v1: > - Fix commit message wording > - Define MMP2_CLK_AUDIO_NR_CLKS > - Make clock ids start at 0, not 1 > - Fix dt-bindings/clock/marvell,mmp2-audio.h file name > - Rename node from "clocks" to "clock-controller" > > .../clock/marvell,mmp2-audio-clock.yaml | 74 +++++++++++++++++++ > .../dt-bindings/clock/marvell,mmp2-audio.h | 10 +++ > 2 files changed, 84 insertions(+) > create mode 100644 Documentation/devicetree/bindings/clock/marvell,mmp2-audio-clock.yaml > create mode 100644 include/dt-bindings/clock/marvell,mmp2-audio.h > > diff --git a/Documentation/devicetree/bindings/clock/marvell,mmp2-audio-clock.yaml b/Documentation/devicetree/bindings/clock/marvell,mmp2-audio-clock.yaml > new file mode 100644 > index 000000000000..ab6e82d1d3a9 > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/marvell,mmp2-audio-clock.yaml > @@ -0,0 +1,74 @@ > +# SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/clock/marvell,mmp2-audio-clock.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Marvell MMP2 Audio Clock Controller > + > +maintainers: > + - Lubomir Rintel <lkundrak@xxxxx> > + > +description: | > + The audio clock controller generates and supplies the clocks to the audio > + codec. > + > + Each clock is assigned an identifier and client nodes use this identifier > + to specify the clock which they consume. > + > + All these identifiers could be found in > + <dt-bindings/clock/marvell,mmp2-audio.h>. > + > +properties: > + compatible: > + enum: > + - marvell,mmp2-audio-clock > + > + reg: > + maxItems: 1 > + > + clocks: > + items: > + - description: Audio subsystem clock > + - description: The crystal oscillator clock > + - description: First I2S clock > + - description: Second I2S clock > + > + clock-names: > + items: > + - const: audio > + - const: vctcxo > + - const: i2s0 > + - const: i2s1 > + > + '#clock-cells': > + const: 1 > + > + power-domains: > + maxItems: 1 > + > +required: > + - compatible > + - reg > + - clocks > + - clock-names > + - '#clock-cells' > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/marvell,mmp2-audio.h> > + #include <dt-bindings/power/marvell,mmp2.h> > + > + clock-controller@d42a0c30 { > + compatible = "marvell,mmp2-audio-clock"; > + reg = <0xd42a0c30 0x10>; > + clock-names = "audio", "vctcxo", "i2s0", "i2s1"; > + clocks = <&soc_clocks MMP2_CLK_AUDIO>, > + <&soc_clocks MMP2_CLK_VCTCXO>, > + <&soc_clocks MMP2_CLK_I2S0>, > + <&soc_clocks MMP2_CLK_I2S1>; This now breaks linux-next. I think the above defines are missing their include. My testing wasn't happy either because it couldn't find marvell,mmp2.h. I guess that's somewhere in linux-next and now we're on to the secondary issue. Once that's fixed, then the schema checks will actually run (hint: make sure they pass). Please get this fixed or revert before it is sent to Linus. Maybe we can have an rc1 without the schema broken. Rob