Re: [PATCH 06/10] dt-bindings: arm: sunxi: Expand MBUS binding

From: Rob Herring
Date: Wed Sep 29 2021 - 09:47:01 EST


On Tue, 28 Sep 2021 23:42:50 -0500, Samuel Holland wrote:
> The MBUS provides more than address translation and bandwidth control.
> It also provides a PMU to measure bandwidth usage by certain masters,
> and it provides notification via IRQ when they are active or idle.
>
> The MBUS is also tightly integrated with the DRAM controller to provide
> a Memory Dynamic Frequency Scaling (MDFS) feature. In view of this, the
> MBUS binding needs to represent the hardware resources needed for MDFS,
> which include the clocks and MMIO range of the adjacent DRAM controller.
>
> Add the additional resources for the H3 and A64 compatibles, and a new
> example showing how they are used.
>
> Signed-off-by: Samuel Holland <samuel@xxxxxxxxxxxx>
> ---
> .../arm/sunxi/allwinner,sun4i-a10-mbus.yaml | 75 ++++++++++++++++++-
> 1 file changed, 72 insertions(+), 3 deletions(-)
>

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/1534210


dram-controller@1c62000: 'clock-names' is a required property
arch/arm64/boot/dts/allwinner/sun50i-a64-amarula-relic.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-oceanic-5205-5inmfd.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino-emmc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-lts.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab-early-adopter.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-teres-i.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus-v1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-it.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h5-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus-v1.2.dt.yaml
arch/arm/boot/dts/sun8i-h3-beelink-x2.dt.yaml
arch/arm/boot/dts/sun8i-h3-emlid-neutis-n5h3-devboard.dt.yaml
arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h3-mapleboard-mp130.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-duo2.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-2.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-lite.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-one.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-zero-plus2.dt.yaml
arch/arm/boot/dts/sun8i-h3-rervision-dvk.dt.yaml
arch/arm/boot/dts/sun8i-h3-zeropi.dt.yaml

dram-controller@1c62000: clocks: [[2, 112]] is too short
arch/arm64/boot/dts/allwinner/sun50i-a64-amarula-relic.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-oceanic-5205-5inmfd.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino-emmc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-lts.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab-early-adopter.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-teres-i.dt.yaml

dram-controller@1c62000: clocks: [[3, 113]] is too short
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus-v1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-it.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h5-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus-v1.2.dt.yaml
arch/arm/boot/dts/sun8i-h3-beelink-x2.dt.yaml
arch/arm/boot/dts/sun8i-h3-emlid-neutis-n5h3-devboard.dt.yaml
arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h3-mapleboard-mp130.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-duo2.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-2.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-lite.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-one.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-zero-plus2.dt.yaml
arch/arm/boot/dts/sun8i-h3-rervision-dvk.dt.yaml
arch/arm/boot/dts/sun8i-h3-zeropi.dt.yaml

dram-controller@1c62000: reg: [[29761536, 4096]] is too short
arch/arm64/boot/dts/allwinner/sun50i-a64-amarula-relic.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-oceanic-5205-5inmfd.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino-emmc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-lts.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab-early-adopter.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-teres-i.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus-v1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-it.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h5-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus-v1.2.dt.yaml
arch/arm/boot/dts/sun8i-h3-beelink-x2.dt.yaml
arch/arm/boot/dts/sun8i-h3-emlid-neutis-n5h3-devboard.dt.yaml
arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h3-mapleboard-mp130.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-duo2.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-2.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-lite.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-one.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-zero-plus2.dt.yaml
arch/arm/boot/dts/sun8i-h3-rervision-dvk.dt.yaml
arch/arm/boot/dts/sun8i-h3-zeropi.dt.yaml

dram-controller@1c62000: 'reg-names' is a required property
arch/arm64/boot/dts/allwinner/sun50i-a64-amarula-relic.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-oceanic-5205-5inmfd.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino-emmc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-lts.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab-early-adopter.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-a64-teres-i.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-bananapi-m2-plus-v1.2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h3-it.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h5-cc.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dt.yaml
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus-v1.2.dt.yaml
arch/arm/boot/dts/sun8i-h3-beelink-x2.dt.yaml
arch/arm/boot/dts/sun8i-h3-emlid-neutis-n5h3-devboard.dt.yaml
arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dt.yaml
arch/arm/boot/dts/sun8i-h3-mapleboard-mp130.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-duo2.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-neo.dt.yaml
arch/arm/boot/dts/sun8i-h3-nanopi-r1.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-2.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-lite.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-one.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-plus.dt.yaml
arch/arm/boot/dts/sun8i-h3-orangepi-zero-plus2.dt.yaml
arch/arm/boot/dts/sun8i-h3-rervision-dvk.dt.yaml
arch/arm/boot/dts/sun8i-h3-zeropi.dt.yaml