Message ID | 20220822184701.25246-2-Sergey.Semin@baikalelectronics.ru (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v5,01/20] dt-bindings: imx6q-pcie: Fix clock names for imx6sx and imx8mq | expand |
On Mon, 22 Aug 2022 21:46:42 +0300, Serge Semin wrote: > Originally as it was defined the legacy bindings the pcie_inbound_axi and > pcie_aux clock names were supposed to be used in the fsl,imx6sx-pcie and > fsl,imx8mq-pcie devices respectively. But the bindings conversion has been > incorrectly so now the fourth clock name is defined as "pcie_inbound_axi > for imx6sx-pcie, pcie_aux for imx8mq-pcie", which is completely wrong. > Let's fix that by conditionally apply the clock-names constraints based on > the compatible string content. > > Fixes: 751ca492f131 ("dt-bindings: PCI: imx6: convert the imx pcie controller to dtschema") > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > --- > > Changelog v5: > - This is a new patch added on the v5 release of the patchset. > --- > .../bindings/pci/fsl,imx6q-pcie.yaml | 47 +++++++++++++++++-- > 1 file changed, 42 insertions(+), 5 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/ pcie@1ffc000: Unevaluated properties are not allowed ('disable-gpio' was unexpected) arch/arm/boot/dts/imx6dl-emcon-avari.dtb arch/arm/boot/dts/imx6q-emcon-avari.dtb pcie@33800000: clock-names:1: 'pcie_bus' was expected arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33800000: clock-names:2: 'pcie_phy' was expected arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: clock-names:3: 'pcie_aux' was expected arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33800000: power-domains: [[102]] is too short arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb pcie@33800000: power-domains: [[103]] is too short arch/arm/boot/dts/imx7d-colibri-emmc-iris.dtb arch/arm/boot/dts/imx7d-colibri-iris.dtb pcie@33800000: power-domains: [[104]] is too short arch/arm/boot/dts/imx7d-colibri-aster.dtb arch/arm/boot/dts/imx7d-colibri-emmc-aster.dtb arch/arm/boot/dts/imx7d-colibri-emmc-iris-v2.dtb arch/arm/boot/dts/imx7d-colibri-iris-v2.dtb pcie@33800000: power-domains: [[106]] is too short arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb pcie@33800000: power-domains: [[107]] is too short arch/arm/boot/dts/imx7d-colibri-emmc-eval-v3.dtb arch/arm/boot/dts/imx7d-colibri-eval-v3.dtb pcie@33800000: power-domains: [[108]] is too short arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: power-domains: [[124]] is too short arch/arm64/boot/dts/freescale/imx8mq-librem5-r2.dtb pcie@33800000: power-domains: [[125]] is too short arch/arm64/boot/dts/freescale/imx8mq-librem5-r3.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r4.dtb pcie@33800000: power-domains: [[55]] is too short arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dtb pcie@33800000: power-domains: [[59]] is too short arch/arm/boot/dts/imx7d-cl-som-imx7.dtb pcie@33800000: power-domains: [[61]] is too short arch/arm/boot/dts/imx7d-sbc-imx7.dtb pcie@33800000: power-domains: [[63]] is too short arch/arm/boot/dts/imx7d-zii-rmu2.dtb pcie@33800000: power-domains: [[64]] is too short arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm/boot/dts/imx7d-remarkable2.dtb pcie@33800000: power-domains: [[67]] is too short arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb pcie@33800000: power-domains: [[68]] is too short arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm/boot/dts/imx7d-meerkat96.dtb pcie@33800000: power-domains: [[70]] is too short arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-phanbell.dtb arch/arm64/boot/dts/freescale/imx8mq-pico-pi.dtb pcie@33800000: power-domains: [[72]] is too short arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb pcie@33800000: power-domains: [[73]] is too short arch/arm/boot/dts/imx7d-flex-concentrator.dtb arch/arm/boot/dts/imx7d-flex-concentrator-mfg.dtb arch/arm/boot/dts/imx7d-smegw01.dtb pcie@33800000: power-domains: [[76]] is too short arch/arm64/boot/dts/freescale/imx8mm-emcon-avari.dtb arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb pcie@33800000: power-domains: [[77]] is too short arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb pcie@33800000: power-domains: [[78]] is too short arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dtb pcie@33800000: power-domains: [[79]] is too short arch/arm64/boot/dts/freescale/imx8mq-hummingboard-pulse.dtb pcie@33800000: power-domains: [[80]] is too short arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb pcie@33800000: power-domains: [[81]] is too short arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mq-evk.dtb pcie@33800000: power-domains: [[82]] is too short arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-thor96.dtb pcie@33800000: power-domains: [[84]] is too short arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb pcie@33800000: power-domains: [[86]] is too short arch/arm/boot/dts/imx7d-nitrogen7.dtb arch/arm/boot/dts/imx7d-pico-nymph.dtb pcie@33800000: power-domains: [[87]] is too short arch/arm/boot/dts/imx7d-sdb-reva.dtb pcie@33800000: power-domains: [[88]] is too short arch/arm/boot/dts/imx7d-pico-dwarf.dtb arch/arm/boot/dts/imx7d-pico-hobbit.dtb arch/arm/boot/dts/imx7d-sdb.dtb arch/arm/boot/dts/imx7d-sdb-sht11.dtb pcie@33800000: power-domains: [[89]] is too short arch/arm/boot/dts/imx7d-pico-pi.dtb arch/arm/boot/dts/imx7d-zii-rpu2.dtb pcie@33800000: power-domains: [[92]] is too short arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb pcie@33800000: power-domains: [[96]] is too short arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm/boot/dts/imx7d-mba7.dtb pcie@33800000: power-domains: [[97]] is too short arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dtb pcie@33800000: power-domains: [[98]] is too short arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33800000: reset-names:0: 'pciephy' was expected arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-emcon-avari.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dtb arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dtb arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dtb arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: reset-names:1: 'apps' was expected arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-emcon-avari.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dtb arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dtb arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dtb arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: reset-names: ['apps', 'turnoff'] is too short arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-emcon-avari.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dtb arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dtb arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dtb arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: resets: [[25, 28], [25, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dtb pcie@33800000: resets: [[26, 28], [26, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb pcie@33800000: resets: [[27, 28], [27, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb pcie@33800000: resets: [[28, 28], [28, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-emcon-avari.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb pcie@33800000: resets: [[29, 28], [29, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dtb pcie@33800000: resets: [[31, 28], [31, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb pcie@33800000: resets: [[33, 28], [33, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb pcie@33800000: resets: [[39, 28], [39, 29]] is too short arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: Unevaluated properties are not allowed ('epdev_on-supply', 'hard-wired', 'power-domains' were unexpected) arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb pcie@33800000: Unevaluated properties are not allowed ('power-domains', 'reset-names', 'resets' were unexpected) arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dtb arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dtb arch/arm64/boot/dts/freescale/imx8mm-ddr4-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-emcon-avari.dtb arch/arm64/boot/dts/freescale/imx8mm-evk.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dtb arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dtb arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dtb arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dtb arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dtb arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dtb arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw71xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7902.dtb arch/arm64/boot/dts/freescale/imx8mm-venice-gw7903.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dtb arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dtb pcie@33800000: Unevaluated properties are not allowed ('power-domains' was unexpected) arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-hummingboard-pulse.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r2.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r3.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r4.dtb arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dtb arch/arm64/boot/dts/freescale/imx8mq-phanbell.dtb arch/arm64/boot/dts/freescale/imx8mq-pico-pi.dtb arch/arm64/boot/dts/freescale/imx8mq-thor96.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb arch/arm/boot/dts/imx7d-cl-som-imx7.dtb arch/arm/boot/dts/imx7d-colibri-aster.dtb arch/arm/boot/dts/imx7d-colibri-emmc-aster.dtb arch/arm/boot/dts/imx7d-colibri-emmc-eval-v3.dtb arch/arm/boot/dts/imx7d-colibri-emmc-iris.dtb arch/arm/boot/dts/imx7d-colibri-emmc-iris-v2.dtb arch/arm/boot/dts/imx7d-colibri-eval-v3.dtb arch/arm/boot/dts/imx7d-colibri-iris.dtb arch/arm/boot/dts/imx7d-colibri-iris-v2.dtb arch/arm/boot/dts/imx7d-flex-concentrator.dtb arch/arm/boot/dts/imx7d-flex-concentrator-mfg.dtb arch/arm/boot/dts/imx7d-mba7.dtb arch/arm/boot/dts/imx7d-meerkat96.dtb arch/arm/boot/dts/imx7d-nitrogen7.dtb arch/arm/boot/dts/imx7d-pico-dwarf.dtb arch/arm/boot/dts/imx7d-pico-hobbit.dtb arch/arm/boot/dts/imx7d-pico-nymph.dtb arch/arm/boot/dts/imx7d-pico-pi.dtb arch/arm/boot/dts/imx7d-remarkable2.dtb arch/arm/boot/dts/imx7d-sbc-imx7.dtb arch/arm/boot/dts/imx7d-sdb.dtb arch/arm/boot/dts/imx7d-sdb-reva.dtb arch/arm/boot/dts/imx7d-sdb-sht11.dtb arch/arm/boot/dts/imx7d-smegw01.dtb arch/arm/boot/dts/imx7d-zii-rmu2.dtb arch/arm/boot/dts/imx7d-zii-rpu2.dtb pcie@33c00000: 'bus-range' is a required property arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33c00000: clock-names:1: 'pcie_bus' was expected arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33c00000: clock-names:3: 'pcie_aux' was expected arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33c00000: power-domains: [[102]] is too short arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb pcie@33c00000: power-domains: [[124]] is too short arch/arm64/boot/dts/freescale/imx8mq-librem5-r2.dtb pcie@33c00000: power-domains: [[125]] is too short arch/arm64/boot/dts/freescale/imx8mq-librem5-r3.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r4.dtb pcie@33c00000: power-domains: [[70]] is too short arch/arm64/boot/dts/freescale/imx8mq-phanbell.dtb arch/arm64/boot/dts/freescale/imx8mq-pico-pi.dtb pcie@33c00000: power-domains: [[78]] is too short arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dtb pcie@33c00000: power-domains: [[79]] is too short arch/arm64/boot/dts/freescale/imx8mq-hummingboard-pulse.dtb pcie@33c00000: power-domains: [[80]] is too short arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb pcie@33c00000: power-domains: [[81]] is too short arch/arm64/boot/dts/freescale/imx8mq-evk.dtb pcie@33c00000: power-domains: [[82]] is too short arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-thor96.dtb pcie@33c00000: power-domains: [[92]] is too short arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb pcie@33c00000: power-domains: [[97]] is too short arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dtb pcie@33c00000: power-domains: [[98]] is too short arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb pcie@33c00000: Unevaluated properties are not allowed ('epdev_on-supply', 'hard-wired', 'power-domains' were unexpected) arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb pcie@33c00000: Unevaluated properties are not allowed ('power-domains' was unexpected) arch/arm64/boot/dts/freescale/imx8mq-evk.dtb arch/arm64/boot/dts/freescale/imx8mq-hummingboard-pulse.dtb arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r2.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r3.dtb arch/arm64/boot/dts/freescale/imx8mq-librem5-r4.dtb arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dtb arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dtb arch/arm64/boot/dts/freescale/imx8mq-phanbell.dtb arch/arm64/boot/dts/freescale/imx8mq-pico-pi.dtb arch/arm64/boot/dts/freescale/imx8mq-thor96.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dtb arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-zest.dtb
Hi Alexander, On Thu, Aug 25, 2022 at 09:55:56AM +0200, Alexander Stein wrote: > Hello Serge, > > Am Montag, 22. August 2022, 20:46:42 CEST schrieb Serge Semin: > > Originally as it was defined the legacy bindings the pcie_inbound_axi and > > pcie_aux clock names were supposed to be used in the fsl,imx6sx-pcie and > > fsl,imx8mq-pcie devices respectively. But the bindings conversion has been > > incorrectly so now the fourth clock name is defined as "pcie_inbound_axi > > for imx6sx-pcie, pcie_aux for imx8mq-pcie", which is completely wrong. > > Let's fix that by conditionally apply the clock-names constraints based on > > the compatible string content. > > > > Fixes: 751ca492f131 ("dt-bindings: PCI: imx6: convert the imx pcie > > controller to dtschema") > > Signed-off-by: Serge Semin > > <Sergey.Semin@baikalelectronics.ru> > > > > --- > > > > Changelog v5: > > - This is a new patch added on the v5 release of the patchset. > > --- > > .../bindings/pci/fsl,imx6q-pcie.yaml | 47 +++++++++++++++++-- > > 1 file changed, 42 insertions(+), 5 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml > > b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml index > > 376e739bcad4..ebfe75f1576e 100644 > > --- a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml > > +++ b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml > > @@ -16,6 +16,47 @@ description: |+ > > > > allOf: > > - $ref: /schemas/pci/snps,dw-pcie.yaml# > > + - if: > > + properties: > > + compatible: > > + contains: > > + const: fsl,imx6sx-pcie > > + then: > > + properties: > > + clock-names: > > + items: > > + - const: pcie > > + - const: pcie_bus > > + - const: pcie_phy > > + - const: pcie_inbound_axi > > + - if: > > + properties: > > + compatible: > > + contains: > > + const: fsl,imx8mq-pcie > > + then: > > + properties: > > + clock-names: > > + items: > > + - const: pcie > > + - const: pcie_bus > > + - const: pcie_phy > > + - const: pcie_aux > > + - if: > > + properties: > > + compatible: > > + not: > > + contains: > > + enum: > > + - fsl,imx6sx-pcie > > + - fsl,imx8mq-pcie > > I'm not so sure about this list essentially copying the (for now) two > compatibles from above, but no hard from my side. I have a quite similar patch > nesting the following structure: > if imx6sx > then > <4 clocks including pcie_inbound_axi> > else if imx8mq > then > <4 clocks including pcie_aux> > else > <3 clocks> The schema above looks a bit different in your case: + if: + then: + else: + if: + then: + else: Anyway the main point is each new statement adds one more indentation level, which in case of updating the schema with new clocks setup will get to be even more right shifted. Note for that reason you'd need to fully update the last else block. So the corresponding patch will get to be bulky and less readable. Another point for my approach is that the if-else-if-else-etc statement much harder to read than just multiple if-statements combined in the allOf property. IMO that's why more often you get to see the allOf-if-if-etc pattern than the allOf-if-else-if-else one. > > In the end I'm fine with both approaches, whatever DT bindings maintainer find > superior. > Acked-by: Alexander Stein <alexander.stein@ew.tq-group.com> Thanks. -Sergey > > > > + then: > > + properties: > > + clock-names: > > + items: > > + - const: pcie > > + - const: pcie_bus > > + - const: pcie_phy > > > > properties: > > compatible: > > @@ -57,11 +98,7 @@ properties: > > > > clock-names: > > minItems: 3 > > - items: > > - - const: pcie > > - - const: pcie_bus > > - - const: pcie_phy > > - - const: pcie_inbound_axi for imx6sx-pcie, pcie_aux for imx8mq-pcie > > + maxItems: 4 > > > > num-lanes: > > const: 1 > > > >
diff --git a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml index 376e739bcad4..ebfe75f1576e 100644 --- a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml +++ b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml @@ -16,6 +16,47 @@ description: |+ allOf: - $ref: /schemas/pci/snps,dw-pcie.yaml# + - if: + properties: + compatible: + contains: + const: fsl,imx6sx-pcie + then: + properties: + clock-names: + items: + - const: pcie + - const: pcie_bus + - const: pcie_phy + - const: pcie_inbound_axi + - if: + properties: + compatible: + contains: + const: fsl,imx8mq-pcie + then: + properties: + clock-names: + items: + - const: pcie + - const: pcie_bus + - const: pcie_phy + - const: pcie_aux + - if: + properties: + compatible: + not: + contains: + enum: + - fsl,imx6sx-pcie + - fsl,imx8mq-pcie + then: + properties: + clock-names: + items: + - const: pcie + - const: pcie_bus + - const: pcie_phy properties: compatible: @@ -57,11 +98,7 @@ properties: clock-names: minItems: 3 - items: - - const: pcie - - const: pcie_bus - - const: pcie_phy - - const: pcie_inbound_axi for imx6sx-pcie, pcie_aux for imx8mq-pcie + maxItems: 4 num-lanes: const: 1
Originally as it was defined the legacy bindings the pcie_inbound_axi and pcie_aux clock names were supposed to be used in the fsl,imx6sx-pcie and fsl,imx8mq-pcie devices respectively. But the bindings conversion has been incorrectly so now the fourth clock name is defined as "pcie_inbound_axi for imx6sx-pcie, pcie_aux for imx8mq-pcie", which is completely wrong. Let's fix that by conditionally apply the clock-names constraints based on the compatible string content. Fixes: 751ca492f131 ("dt-bindings: PCI: imx6: convert the imx pcie controller to dtschema") Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> --- Changelog v5: - This is a new patch added on the v5 release of the patchset. --- .../bindings/pci/fsl,imx6q-pcie.yaml | 47 +++++++++++++++++-- 1 file changed, 42 insertions(+), 5 deletions(-)