[PATCH 05/10] mips: dts: ralink: mt7621: fix some dtc warnings

Sergio Paracuellos sergio.paracuellos at gmail.com
Wed Sep 14 02:14:22 PDT 2022


Hi Arinc,

On Wed, Sep 14, 2022 at 10:55 AM Arınç ÜNAL <arinc.unal at arinc9.com> wrote:
>
> Fix the dtc warnings below.
>
> /cpus/cpu at 0: failed to match any schema with compatible: ['mips,mips1004Kc']
> /cpus/cpu at 1: failed to match any schema with compatible: ['mips,mips1004Kc']
> uartlite at c00: $nodename:0: 'uartlite at c00' does not match '^serial(@.*)?$'
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/serial/8250.yaml
> uartlite at c00: Unevaluated properties are not allowed ('clock-names' was unexpected)
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/serial/8250.yaml
> sdhci at 1e130000: $nodename:0: 'sdhci at 1e130000' does not match '^mmc(@.*)?$'
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/mmc/mtk-sd.yaml
> sdhci at 1e130000: Unevaluated properties are not allowed ('bus-width', 'cap-mmc-highspeed', 'cap-sd-highspeed', 'disable-wp', 'max-frequency', 'vmmc-supply', 'vqmmc-supply' were unexpected)
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/mmc/mtk-sd.yaml
> xhci at 1e1c0000: $nodename:0: 'xhci at 1e1c0000' does not match '^usb(@.*)?'
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml
> xhci at 1e1c0000: compatible: ['mediatek,mt8173-xhci'] is too short
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml
> switch0 at 0: $nodename:0: 'switch0 at 0' does not match '^(ethernet-)?switch(@.*)?$'
>         From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
> port at 1: status:0: 'off' is not one of ['okay', 'disabled', 'reserved']
>         From schema: /home/arinc9/.local/lib/python3.10/site-packages/dtschema/schemas/dt-core.yaml
> port at 2: status:0: 'off' is not one of ['okay', 'disabled', 'reserved']
>         From schema: /home/arinc9/.local/lib/python3.10/site-packages/dtschema/schemas/dt-core.yaml
> port at 3: status:0: 'off' is not one of ['okay', 'disabled', 'reserved']
>         From schema: /home/arinc9/.local/lib/python3.10/site-packages/dtschema/schemas/dt-core.yaml
>
> - Remove "mips,mips1004Kc" compatible string from the cpu nodes. This
> doesn't exist anywhere.
> - Change "memc: syscon at 5000" to "memc: memory-controller at 5000".
> - Change "uartlite: uartlite at c00" to "serial0: serial at c00" and remove the
> aliases node.
> - Remove "clock-names" from the serial0 node. The property doesn't exist on
> the 8250.yaml schema.
> - Change "sdhci: sdhci at 1e130000" to "mmc: mmc at 1e130000".
> - Change "xhci: xhci at 1e1c0000" to "usb: usb at 1e1c0000".
> - Add "mediatek,mtk-xhci" as the second compatible string on the usb node.
> - Change "switch0: switch0 at 0" to "switch0: switch at 0"
> - Change "off" to "disabled" for disabled nodes.
>
> Remaining warnings are caused by the lack of json-schema documentation.
>
> /cpuintc: failed to match any schema with compatible: ['mti,cpu-interrupt-controller']
> /palmbus at 1e000000/wdt at 100: failed to match any schema with compatible: ['mediatek,mt7621-wdt']
> /palmbus at 1e000000/i2c at 900: failed to match any schema with compatible: ['mediatek,mt7621-i2c']
> /palmbus at 1e000000/spi at b00: failed to match any schema with compatible: ['ralink,mt7621-spi']
> /ethernet at 1e100000: failed to match any schema with compatible: ['mediatek,mt7621-eth']
>
> Signed-off-by: Arınç ÜNAL <arinc.unal at arinc9.com>
> ---
>  .../boot/dts/ralink/mt7621-gnubee-gb-pc1.dts  |  2 +-
>  .../boot/dts/ralink/mt7621-gnubee-gb-pc2.dts  |  2 +-
>  arch/mips/boot/dts/ralink/mt7621.dtsi         | 32 +++++++------------
>  3 files changed, 14 insertions(+), 22 deletions(-)
>
> diff --git a/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dts b/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dts
> index 24eebc5a85b1..6ecb8165efe8 100644
> --- a/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dts
> +++ b/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dts
> @@ -53,7 +53,7 @@ system {
>         };
>  };
>
> -&sdhci {
> +&mmc {
>         status = "okay";
>  };
>
> diff --git a/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc2.dts b/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc2.dts
> index 34006e667780..2e534ea5bab7 100644
> --- a/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc2.dts
> +++ b/arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc2.dts
> @@ -37,7 +37,7 @@ key-reset {
>         };
>  };
>
> -&sdhci {
> +&mmc {
>         status = "okay";
>  };
>
> diff --git a/arch/mips/boot/dts/ralink/mt7621.dtsi b/arch/mips/boot/dts/ralink/mt7621.dtsi
> index ee46ace0bcc1..9302bdc04510 100644
> --- a/arch/mips/boot/dts/ralink/mt7621.dtsi
> +++ b/arch/mips/boot/dts/ralink/mt7621.dtsi
> @@ -15,13 +15,11 @@ cpus {
>
>                 cpu at 0 {
>                         device_type = "cpu";
> -                       compatible = "mips,mips1004Kc";
>                         reg = <0>;
>                 };
>
>                 cpu at 1 {
>                         device_type = "cpu";
> -                       compatible = "mips,mips1004Kc";
>                         reg = <1>;
>                 };
>         };

Instead of removing this, since compatible is correct here, I think a
cpus yaml file needs to be added to properly define mips CPU's but
compatible strings using all around the sources are a bit messy. Take
a look of how is this done for arm [0]

> @@ -33,11 +31,6 @@ cpuintc: cpuintc {
>                 compatible = "mti,cpu-interrupt-controller";
>         };
>
> -       aliases {
> -               serial0 = &uartlite;
> -       };
> -
> -
>         mmc_fixed_3v3: regulator-3v3 {
>                 compatible = "regulator-fixed";
>                 regulator-name = "mmc_power";
> @@ -110,17 +103,16 @@ i2c: i2c at 900 {
>                         pinctrl-0 = <&i2c_pins>;
>                 };
>
> -               memc: syscon at 5000 {
> +               memc: memory-controller at 5000 {
>                         compatible = "mediatek,mt7621-memc", "syscon";
>                         reg = <0x5000 0x1000>;
>                 };
>

I think syscon nodes need to use 'syscon' in the node name, but I am
not 100% sure.

> -               uartlite: uartlite at c00 {
> +               serial0: serial at c00 {
>                         compatible = "ns16550a";
>                         reg = <0xc00 0x100>;
>
>                         clocks = <&sysc MT7621_CLK_UART1>;
> -                       clock-names = "uart1";
>
>                         interrupt-parent = <&gic>;
>                         interrupts = <GIC_SHARED 26 IRQ_TYPE_LEVEL_HIGH>;
> @@ -236,7 +228,7 @@ pinmux {
>                 };
>         };
>
> -       sdhci: sdhci at 1e130000 {
> +       mmc: mmc at 1e130000 {
>                 status = "disabled";
>
>                 compatible = "mediatek,mt7620-mmc";
> @@ -262,8 +254,8 @@ sdhci: sdhci at 1e130000 {
>                 interrupts = <GIC_SHARED 20 IRQ_TYPE_LEVEL_HIGH>;
>         };
>
> -       xhci: xhci at 1e1c0000 {
> -               compatible = "mediatek,mt8173-xhci";
> +       usb: usb at 1e1c0000 {
> +               compatible = "mediatek,mt8173-xhci", "mediatek,mtk-xhci";
>                 reg = <0x1e1c0000 0x1000
>                        0x1e1d0700 0x0100>;
>                 reg-names = "mac", "ippc";
> @@ -338,7 +330,7 @@ fixed-link {
>                 gmac1: mac at 1 {
>                         compatible = "mediatek,eth-mac";
>                         reg = <1>;
> -                       status = "off";
> +                       status = "disabled";
>                         phy-mode = "rgmii-rxid";
>                 };
>
> @@ -346,7 +338,7 @@ mdio: mdio-bus {
>                         #address-cells = <1>;
>                         #size-cells = <0>;
>
> -                       switch0: switch0 at 0 {
> +                       switch0: switch at 0 {
>                                 compatible = "mediatek,mt7621";
>                                 reg = <0>;
>                                 mediatek,mcm;
> @@ -362,31 +354,31 @@ ports {
>                                         #size-cells = <0>;
>
>                                         port at 0 {
> -                                               status = "off";
> +                                               status = "disabled";
>                                                 reg = <0>;
>                                                 label = "lan0";
>                                         };
>
>                                         port at 1 {
> -                                               status = "off";
> +                                               status = "disabled";
>                                                 reg = <1>;
>                                                 label = "lan1";
>                                         };
>
>                                         port at 2 {
> -                                               status = "off";
> +                                               status = "disabled";
>                                                 reg = <2>;
>                                                 label = "lan2";
>                                         };
>
>                                         port at 3 {
> -                                               status = "off";
> +                                               status = "disabled";
>                                                 reg = <3>;
>                                                 label = "lan3";
>                                         };
>
>                                         port at 4 {
> -                                               status = "off";
> +                                               status = "disabled";
>                                                 reg = <4>;
>                                                 label = "lan4";
>                                         };
> --
> 2.34.1
>

Best regards,
    Sergio Paracuellos

[0]: https://elixir.bootlin.com/linux/v6.0-rc5/source/Documentation/devicetree/bindings/arm/cpus.yaml



More information about the linux-arm-kernel mailing list