[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y2plydHIPxmt6Azn@localhost.localdomain>
Date: Tue, 8 Nov 2022 15:20:57 +0100
From: Lorenzo Bianconi <lorenzo@...nel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Cc: Lorenzo Bianconi <lorenzo.bianconi@...hat.com>,
netdev@...r.kernel.org, nbd@....name, john@...ozen.org,
sean.wang@...iatek.com, Mark-MC.Lee@...iatek.com,
davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, matthias.bgg@...il.com,
linux-mediatek@...ts.infradead.org, Bo.Jiao@...iatek.com,
sujuan.chen@...iatek.com, ryder.Lee@...iatek.com,
evelyn.tsai@...iatek.com, devicetree@...r.kernel.org,
robh+dt@...nel.org, daniel@...rotopia.org,
krzysztof.kozlowski+dt@...aro.org
Subject: Re: [PATCH v3 net-next 2/8] dt-bindings: net: mediatek: add WED RX
binding for MT7986 eth driver
> On 03/11/2022 19:29, Lorenzo Bianconi wrote:
> >> On 03/11/2022 13:51, Lorenzo Bianconi wrote:
> >>>>> diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-boot.yaml b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-boot.yaml
> >>>>> new file mode 100644
> >>>>> index 000000000000..6c3c514c48ef
> >>>>> --- /dev/null
> >>>>> +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-boot.yaml
> >
> > Regarding "mediatek,mt7986-wed" compatible string it has been added to
> > mt7986a.dtsi in the commit below:
> >
> > commit 00b9903996b3e1e287c748928606d738944e45de
> > Author: Lorenzo Bianconi <lorenzo@...nel.org>
> > Date: Tue Sep 20 12:11:13 2022 +0200
> >
> > arm64: dts: mediatek: mt7986: add support for Wireless Ethernet Dispatch
> >
> >>>>
> >>>> arm is only for top-level stuff. Choose appropriate subsystem, soc as
> >>>> last resort.
> >>>
> >>> these chips are used only for networking so is net folder fine?
> >>
> >> So this is some MMIO and no actual device? Then rather soc.
> >
> > ack, I will move them there
> >
> >>
> >>>
> >>>>
> >>>>> @@ -0,0 +1,47 @@
> >>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> >>>>> +%YAML 1.2
> >>>>> +---
> >>>>> +$id: http://devicetree.org/schemas/arm/mediatek/mediatek,mt7986-wo-boot.yaml#
> >>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >>>>> +
> >>>>> +title:
> >>>>> + MediaTek Wireless Ethernet Dispatch WO boot controller interface for MT7986
> >>>>> +
> >>>>> +maintainers:
> >>>>> + - Lorenzo Bianconi <lorenzo@...nel.org>
> >>>>> + - Felix Fietkau <nbd@....name>
> >>>>> +
> >>>>> +description:
> >>>>> + The mediatek wo-boot provides a configuration interface for WED WO
> >>>>> + boot controller on MT7986 soc.
> >>>>
> >>>> And what is "WED WO boot controller?
> >>>
> >>> WED WO is a chip used for networking packet processing offloaded to the Soc
> >>> (e.g. packet reordering). WED WO boot is the memory used to store start address
> >>> of wo firmware. Anyway I will let Sujuan comment on this.
> >>
> >> A bit more should be in description.
> >
> > I will let Sujuan adding more details (since I do not have them :))
> >
> >>
> >>>
> >>>>
> >>>>> +
> >>>>> +properties:
> >>>>> + compatible:
> >>>>> + items:
> >>>>> + - enum:
> >>>>> + - mediatek,mt7986-wo-boot
> >>>>> + - const: syscon
> >>>>> +
> >>>>> + reg:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> + interrupts:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> +required:
> >>>>> + - compatible
> >>>>> + - reg
> >>>>> +
> >>>>> +additionalProperties: false
> >>>>> +
> >>>>> +examples:
> >>>>> + - |
> >>>>> + soc {
> >>>>> + #address-cells = <2>;
> >>>>> + #size-cells = <2>;
> >>>>> +
> >>>>> + wo_boot: syscon@...94000 {
> >>>>> + compatible = "mediatek,mt7986-wo-boot", "syscon";
> >>>>> + reg = <0 0x15194000 0 0x1000>;
> >>>>> + };
> >>>>> + };
> >>>>> diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-ccif.yaml b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-ccif.yaml
> >>>>> new file mode 100644
> >>>>> index 000000000000..6357a206587a
> >>>>> --- /dev/null
> >>>>> +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-ccif.yaml
> >>>>> @@ -0,0 +1,50 @@
> >>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> >>>>> +%YAML 1.2
> >>>>> +---
> >>>>> +$id: http://devicetree.org/schemas/arm/mediatek/mediatek,mt7986-wo-ccif.yaml#
> >>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >>>>> +
> >>>>> +title: MediaTek Wireless Ethernet Dispatch WO controller interface for MT7986
> >>>>> +
> >>>>> +maintainers:
> >>>>> + - Lorenzo Bianconi <lorenzo@...nel.org>
> >>>>> + - Felix Fietkau <nbd@....name>
> >>>>> +
> >>>>> +description:
> >>>>> + The mediatek wo-ccif provides a configuration interface for WED WO
> >>>>> + controller on MT7986 soc.
> >>>>
> >>>> All previous comments apply.
> >>>>
> >>>>> +
> >>>>> +properties:
> >>>>> + compatible:
> >>>>> + items:
> >>>>> + - enum:
> >>>>> + - mediatek,mt7986-wo-ccif
> >>>>> + - const: syscon
> >>>>> +
> >>>>> + reg:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> + interrupts:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> +required:
> >>>>> + - compatible
> >>>>> + - reg
> >>>>> + - interrupts
> >>>>> +
> >>>>> +additionalProperties: false
> >>>>> +
> >>>>> +examples:
> >>>>> + - |
> >>>>> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> >>>>> + #include <dt-bindings/interrupt-controller/irq.h>
> >>>>> + soc {
> >>>>> + #address-cells = <2>;
> >>>>> + #size-cells = <2>;
> >>>>> +
> >>>>> + wo_ccif0: syscon@...a5000 {
> >>>>> + compatible = "mediatek,mt7986-wo-ccif", "syscon";
> >>>>> + reg = <0 0x151a5000 0 0x1000>;
> >>>>> + interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>;
> >>>>> + };
> >>>>> + };
> >>>>> diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-dlm.yaml b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-dlm.yaml
> >>>>> new file mode 100644
> >>>>> index 000000000000..a499956d9e07
> >>>>> --- /dev/null
> >>>>> +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7986-wo-dlm.yaml
> >>>>> @@ -0,0 +1,50 @@
> >>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> >>>>> +%YAML 1.2
> >>>>> +---
> >>>>> +$id: http://devicetree.org/schemas/arm/mediatek/mediatek,mt7986-wo-dlm.yaml#
> >>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >>>>> +
> >>>>> +title: MediaTek Wireless Ethernet Dispatch WO hw rx ring interface for MT7986
> >>>>> +
> >>>>> +maintainers:
> >>>>> + - Lorenzo Bianconi <lorenzo@...nel.org>
> >>>>> + - Felix Fietkau <nbd@....name>
> >>>>> +
> >>>>> +description:
> >>>>> + The mediatek wo-dlm provides a configuration interface for WED WO
> >>>>> + rx ring on MT7986 soc.
> >>>>> +
> >>>>> +properties:
> >>>>> + compatible:
> >>>>> + const: mediatek,mt7986-wo-dlm
> >>>>> +
> >>>>> + reg:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> + resets:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> + reset-names:
> >>>>> + maxItems: 1
> >>>>> +
> >>>>> +required:
> >>>>> + - compatible
> >>>>> + - reg
> >>>>> + - resets
> >>>>> + - reset-names
> >>>>> +
> >>>>> +additionalProperties: false
> >>>>> +
> >>>>> +examples:
> >>>>> + - |
> >>>>> + soc {
> >>>>> + #address-cells = <2>;
> >>>>> + #size-cells = <2>;
> >>>>> +
> >>>>> + wo_dlm0: wo-dlm@...e8000 {
> >>>>
> >>>> Node names should be generic.
> >>>> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
> >>>
> >>> DLM is a chip used to store the data rx ring of wo firmware. I do not have a
> >>> better node name (naming is always hard). Can you please suggest a better name?
> >>
> >> The problem is that you added three new devices which seem to be for the
> >> same device - WED. It looks like some hacky way of avoid proper hardware
> >> description - let's model everything as MMIO and syscons...
> >
> > is it fine to use syscon as node name even if we do not declare it in compatible
> > string for dlm?
> >
>
> No, rather not. It's a shortcut and if used without actual syscon it
> would be confusing. You could still call it system-controller, though.
ack, I used a different approach in v4 since I figured out I can move dlm node
in memory-region.
Regards,
Lorenzo
>
> Best regards,
> Krzysztof
>
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists