Re: [PATCH 08/10] ARM: dts: NSP: Add a default compatible for switch node

From: Florian Fainelli
Date: Tue Nov 10 2020 - 17:40:51 EST


On 11/10/20 2:37 PM, Vladimir Oltean wrote:
> On Mon, Nov 09, 2020 at 07:31:11PM -0800, Florian Fainelli wrote:
>> Provide a default compatible string which is based on the 58522 SRAB
>> compatible, this allows us to have sane defaults and silences the
>> following warnings:
>>
>> arch/arm/boot/dts/bcm958522er.dt.yaml:
>> ethernet-switch@36000: compatible: 'oneOf' conditional failed,
>> one
>> must be fixed:
>> ['brcm,bcm5301x-srab'] is too short
>> 'brcm,bcm5325' was expected
>> 'brcm,bcm53115' was expected
>> 'brcm,bcm53125' was expected
>> 'brcm,bcm53128' was expected
>> 'brcm,bcm5365' was expected
>> 'brcm,bcm5395' was expected
>> 'brcm,bcm5389' was expected
>> 'brcm,bcm5397' was expected
>> 'brcm,bcm5398' was expected
>> 'brcm,bcm11360-srab' was expected
>> 'brcm,bcm5301x-srab' is not one of ['brcm,bcm53010-srab',
>> 'brcm,bcm53011-srab', 'brcm,bcm53012-srab', 'brcm,bcm53018-srab',
>> 'brcm,bcm53019-srab']
>> 'brcm,bcm5301x-srab' is not one of ['brcm,bcm11404-srab',
>> 'brcm,bcm11407-srab', 'brcm,bcm11409-srab', 'brcm,bcm58310-srab',
>> 'brcm,bcm58311-srab', 'brcm,bcm58313-srab']
>> 'brcm,bcm5301x-srab' is not one of ['brcm,bcm58522-srab',
>> 'brcm,bcm58523-srab', 'brcm,bcm58525-srab', 'brcm,bcm58622-srab',
>> 'brcm,bcm58623-srab', 'brcm,bcm58625-srab', 'brcm,bcm88312-srab']
>> 'brcm,bcm5301x-srab' is not one of ['brcm,bcm3384-switch',
>> 'brcm,bcm6328-switch', 'brcm,bcm6368-switch']
>> From schema:
>> Documentation/devicetree/bindings/net/dsa/b53.yaml
>>
>> Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
>> ---
>> arch/arm/boot/dts/bcm-nsp.dtsi | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/bcm-nsp.dtsi b/arch/arm/boot/dts/bcm-nsp.dtsi
>> index 09fd7e55c069..8453865d1439 100644
>> --- a/arch/arm/boot/dts/bcm-nsp.dtsi
>> +++ b/arch/arm/boot/dts/bcm-nsp.dtsi
>> @@ -386,7 +386,7 @@ ccbtimer1: timer@35000 {
>> };
>>
>> srab: ethernet-switch@36000 {
>> - compatible = "brcm,nsp-srab";
>> + compatible = "brcm,bcm58522-srab", "brcm,nsp-srab";
>> reg = <0x36000 0x1000>,
>> <0x3f308 0x8>,
>> <0x3f410 0xc>;
>> --
>> 2.25.1
>>
>
> I am not getting this.
> The line:
> #include "bcm-nsp.dtsi"
>
> can be found in:
>
> arch/arm/boot/dts/bcm988312hr.dts
> arch/arm/boot/dts/bcm958625hr.dts
> arch/arm/boot/dts/bcm958622hr.dts
> arch/arm/boot/dts/bcm958625k.dts
> arch/arm/boot/dts/bcm958522er.dts
> arch/arm/boot/dts/bcm958525er.dts
> arch/arm/boot/dts/bcm958623hr.dts
> arch/arm/boot/dts/bcm958525xmc.dts
>
>
> The pattern for the other DTS files that include this seems to be to
> overwrite the compatible locally in bcm958522er.dts, like this:
>
> &srab {
> compatible = "brcm,bcm58522-srab", "brcm,nsp-srab";
> };
>
> Is there a reason why you are choosing to put an SoC specific compatible
> in the common bcm-nsp.dtsi?

It is necessary to silence the warnings provided in the commit message
even when the srab node is disabled, since the dt_binding_check rule
will check all of the nodes matching the pattern. If there is a better
way to do this, I would gladly do it differently.
--
Florian