On Wed, 19 Mar 2025 15:04:43 +0800, jiebing chen wrote: > Add s4 audio base driver. > > Signed-off-by: jiebing chen <jiebing.chen@xxxxxxxxxxx> > --- > Changes in v4: > - fix dtb check warning > - add maxItems of power domain for dt-bindings > - fixed audio clock pads regmap base and reg offset > - use dapm widget to control tocodec bclk and mclk enable > - Link to v3: https://lore.kernel.org/r/20250228-audio_drvier-v3-0-dbfd30507e4c@xxxxxxxxxxx > > Changes in v3: > - remove g12a tocodec switch event > - Modify the incorrect title for dt-bindings > - Link to v2: https://lore.kernel.org/r/20250214-audio_drvier-v2-0-37881fa37c9e@xxxxxxxxxxx > > Changes in v2: > - remove tdm pad control and change tocodec base on g12a > - change hifipll rate to support 24bit > - add s4 audio clock > - Link to v1: https://lore.kernel.org/r/20250113-audio_drvier-v1-0-8c14770f38a0@xxxxxxxxxxx > > --- > jiebing chen (6): > dt-bindings: clock: meson: Add audio power domain for s4 soc > dt-bindings: clock: axg-audio: Add mclk and sclk pad clock ids > dt-bindings: Asoc: axg-audio: Add s4 audio tocodec > ASoC: meson: g12a-toacodec: Add s4 tocodec driver > clk: meson: axg-audio: Add the mclk pad div for s4 chip > arm64: dts: amlogic: Add Amlogic S4 Audio > > .../bindings/clock/amlogic,axg-audio-clkc.yaml | 20 +- > .../bindings/sound/amlogic,g12a-toacodec.yaml | 1 + > .../boot/dts/amlogic/meson-s4-s805x2-aq222.dts | 219 ++++++++++ > arch/arm64/boot/dts/amlogic/meson-s4.dtsi | 372 ++++++++++++++++- > drivers/clk/meson/axg-audio.c | 441 ++++++++++++++++++++- > drivers/clk/meson/axg-audio.h | 6 + > include/dt-bindings/clock/axg-audio-clkc.h | 11 + > sound/soc/meson/g12a-toacodec.c | 46 +++ > 8 files changed, 1111 insertions(+), 5 deletions(-) > --- > base-commit: 6ecd20965bdc21b265a0671ccf36d9ad8043f5ab > change-id: 20250110-audio_drvier-07a5381c494b > > Best regards, > -- > jiebing chen <jiebing.chen@xxxxxxxxxxx> > > > My bot found new DTB warnings on the .dts files added or changed in this series. Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings are fixed by another series. Ultimately, it is up to the platform maintainer whether these warnings are acceptable or not. No need to reply unless the platform maintainer has comments. If you already ran DT checks and didn't see these error(s), then make sure dt-schema is up to date: pip3 install dtschema --upgrade New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/amlogic/' for 20250319-audio_drvier-v4-0-686867fad719@xxxxxxxxxxx: arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-s4-s805x2-aq222.dtb: sound: 'anyOf' conditional failed, one must be fixed: 'clocks' is a required property '#clock-cells' is a required property from schema $id: http://devicetree.org/schemas/clock/clock.yaml# arch/arm64/boot/dts/amlogic/meson-axg-s400.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4-cm4io.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-dreambox-one.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-a311d-khadas-vim3.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j100.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-gsking-x.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-a311d-bananapi-m2s.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-2.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4-mnt-reform2.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-dreambox-two.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-bananapi-m5.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12a-u200.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-bananapi-m2-pro.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-s922x-bananapi-m2s.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2l.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-odroid-hc4.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-s922x-khadas-vim3.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-axg-jethome-jethub-j110-rev-3.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-gtking-pro.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2-plus.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-gtking.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml# arch/arm64/boot/dts/amlogic/meson-g12b-ugoos-am6.dtb: clock-controller@0: reg: [[0, 0, 0, 180]] is too short from schema $id: http://devicetree.org/schemas/clock/amlogic,axg-audio-clkc.yaml#