lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 15 Sep 2022 09:24:39 +0300 From: Arınç ÜNAL <arinc.unal@...nc9.com> To: Sergio Paracuellos <sergio.paracuellos@...il.com> Cc: Thomas Bogendoerfer <tsbogend@...ha.franken.de>, Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>, Rob Herring <robh+dt@...nel.org>, Matthias Brugger <matthias.bgg@...il.com>, Andrew Lunn <andrew@...n.ch>, Vivien Didelot <vivien.didelot@...il.com>, Florian Fainelli <f.fainelli@...il.com>, Vladimir Oltean <olteanv@...il.com>, "David S . Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Sean Wang <sean.wang@...iatek.com>, Landen Chao <Landen.Chao@...iatek.com>, DENG Qingfang <dqfext@...il.com>, erkin.bozoglu@...ont.com, netdev <netdev@...r.kernel.org>, "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" <devicetree@...r.kernel.org>, linux-arm-kernel@...ts.infradead.org, "moderated list:ARM/Mediatek SoC support" <linux-mediatek@...ts.infradead.org>, linux-kernel <linux-kernel@...r.kernel.org>, "open list:MIPS" <linux-mips@...r.kernel.org> Subject: Re: [PATCH 05/10] mips: dts: ralink: mt7621: fix some dtc warnings On 15.09.2022 08:59, Sergio Paracuellos wrote: > On Thu, Sep 15, 2022 at 5:30 AM Sergio Paracuellos > <sergio.paracuellos@...il.com> wrote: >> >> On Wed, Sep 14, 2022 at 12:46 PM Arınç ÜNAL <arinc.unal@...nc9.com> wrote: >>> >>> Hi Sergio, >>> >>> On 14.09.2022 12:14, Sergio Paracuellos wrote: >>>> Hi Arinc, >>>> >>>> On Wed, Sep 14, 2022 at 10:55 AM Arınç ÜNAL <arinc.unal@...nc9.com> wrote: >>>>> >>>>> Fix the dtc warnings below. >>>>> >>>>> /cpus/cpu@0: failed to match any schema with compatible: ['mips,mips1004Kc'] >>>>> /cpus/cpu@1: failed to match any schema with compatible: ['mips,mips1004Kc'] >>>>> uartlite@c00: $nodename:0: 'uartlite@...' does not match '^serial(@.*)?$' >>>>> From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/serial/8250.yaml >>>>> uartlite@c00: Unevaluated properties are not allowed ('clock-names' was unexpected) >>>>> From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/serial/8250.yaml >>>>> sdhci@...30000: $nodename:0: 'sdhci@...30000' does not match '^mmc(@.*)?$' >>>>> From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/mmc/mtk-sd.yaml >>>>> sdhci@...30000: 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@...c0000: $nodename:0: 'xhci@...c0000' does not match '^usb(@.*)?' >>>>> From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml >>>>> xhci@...c0000: compatible: ['mediatek,mt8173-xhci'] is too short >>>>> From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml >>>>> switch0@0: $nodename:0: 'switch0@0' does not match '^(ethernet-)?switch(@.*)?$' >>>>> From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml >>>>> port@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@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@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@...0" to "memc: memory-controller@...0". >>>>> - Change "uartlite: uartlite@c00" to "serial0: serial@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@...30000" to "mmc: mmc@...30000". >>>>> - Change "xhci: xhci@...c0000" to "usb: usb@...c0000". >>>>> - Add "mediatek,mtk-xhci" as the second compatible string on the usb node. >>>>> - Change "switch0: switch0@0" to "switch0: switch@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@...00000/wdt@100: failed to match any schema with compatible: ['mediatek,mt7621-wdt'] >>>>> /palmbus@...00000/i2c@900: failed to match any schema with compatible: ['mediatek,mt7621-i2c'] >>>>> /palmbus@...00000/spi@b00: failed to match any schema with compatible: ['ralink,mt7621-spi'] >>>>> /ethernet@...00000: failed to match any schema with compatible: ['mediatek,mt7621-eth'] >>>>> >>>>> Signed-off-by: Arınç ÜNAL <arinc.unal@...nc9.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@0 { >>>>> device_type = "cpu"; >>>>> - compatible = "mips,mips1004Kc"; >>>>> reg = <0>; >>>>> }; >>>>> >>>>> cpu@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] >>> >>> I did investigate the arm bindings beforehand. I've seen that some of >>> the strings are also checked by code. I don't see the mips strings used >>> anywhere but DTs so I had decided to remove it here. I guess we can make >>> a basic binding to list the mips processor cores. >> >> At the very least I do think a compatible string should exist for cpu >> nodes :). And because of the mess with MIPS cpu nodes in dts files all >> around I think we should only add this 'compatible' as a requirement >> and mark 'reg' and 'device_type' as optionals. > > I have just sent a patch to start from containing all compatible > strings I have found in the 'arch/mips/boot/dts' folder: > > https://lore.kernel.org/linux-devicetree/20220915055514.463241-1-sergio.paracuellos@gmail.com/T/#u Awesome, I'll keep the string on v2. > >> >>> >>> What do you think Thomas? >>> >>>> >>>>> @@ -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@900 { >>>>> pinctrl-0 = <&i2c_pins>; >>>>> }; >>>>> >>>>> - memc: syscon@...0 { >>>>> + memc: memory-controller@...0 { >>>>> 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. >>> >>> I've tested this patch series on my GB-PC2, it currently works fine. >>> Also, DT binding for MT7621 memory controller uses memory-controller on >>> the example so I guess it's fine? >> >> I know that works fine but when the node is a syscon it is good to >> have that syscon in the node name (I don't know if having it is a rule >> or something, I guess no). In any case I agree that binding and dts >> should match. Understood, I'll keep it syscon in v2. Arınç
Powered by blists - more mailing lists