From: Lorenzo Bianconi <lorenzo@kernel.org>
To: Rob Herring <robh@kernel.org>
Cc: netdev@vger.kernel.org, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, matthias.bgg@gmail.com,
linux-mediatek@lists.infradead.org, nbd@nbd.name,
john@phrozen.org, sean.wang@mediatek.com,
Mark-MC.Lee@mediatek.com, lorenzo.bianconi@redhat.com,
daniel@makrotopia.org, krzysztof.kozlowski+dt@linaro.org,
devicetree@vger.kernel.org
Subject: Re: [PATCH net-next 06/10] dt-bindings: soc: mediatek: move ilm in a dedicated dts node
Date: Wed, 22 Mar 2023 17:05:00 +0100 [thread overview]
Message-ID: <ZBsnLLh5zu9DEQBb@lore-desk> (raw)
In-Reply-To: <20230321193254.GA1306908-robh@kernel.org>
[-- Attachment #1: Type: text/plain, Size: 5617 bytes --]
> On Mon, Mar 20, 2023 at 05:58:00PM +0100, Lorenzo Bianconi wrote:
> > Since the cpuboot memory region is not part of the RAM SoC, move ilm in
> > a deidicated syscon node.
> > This patch helps to keep backward-compatibility with older version of
> > uboot codebase where we have a limit of 8 reserved-memory dts child
> > nodes.
>
> Maybe, but breaks the ABI. It also looks like a step backwards. Fix your
> u-boot.
Can you please give some more details about ABI breakage? mtk_wed driver is
supposed to be backward compatible with respect to the older dts description
(please take a look to patch 5/10 and 8/10).
>
> >
> > Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
> > ---
> > .../arm/mediatek/mediatek,mt7622-wed.yaml | 14 +++---
> > .../soc/mediatek/mediatek,mt7986-wo-ilm.yaml | 45 +++++++++++++++++++
> > 2 files changed, 53 insertions(+), 6 deletions(-)
> > create mode 100644 Documentation/devicetree/bindings/soc/mediatek/mediatek,mt7986-wo-ilm.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7622-wed.yaml b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7622-wed.yaml
> > index 7f6638d43854..5d2397ec5891 100644
> > --- a/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7622-wed.yaml
> > +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mt7622-wed.yaml
> > @@ -32,14 +32,12 @@ properties:
> > memory-region:
> > items:
> > - description: firmware EMI region
> > - - description: firmware ILM region
> > - description: firmware DLM region
> > - description: firmware CPU DATA region
> >
> > memory-region-names:
> > items:
> > - const: wo-emi
> > - - const: wo-ilm
> > - const: wo-dlm
> > - const: wo-data
> >
> > @@ -51,6 +49,10 @@ properties:
> > $ref: /schemas/types.yaml#/definitions/phandle
> > description: mediatek wed-wo cpuboot controller interface.
> >
> > + mediatek,wo-ilm:
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > + description: mediatek wed-wo ilm interface.
> > +
> > allOf:
> > - if:
> > properties:
> > @@ -63,6 +65,7 @@ allOf:
> > memory-region: false
> > mediatek,wo-ccif: false
> > mediatek,wo-cpuboot: false
> > + mediatek,wo-ilm: false
> >
> > required:
> > - compatible
> > @@ -97,11 +100,10 @@ examples:
> > reg = <0 0x15010000 0 0x1000>;
> > interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>;
> >
> > - memory-region = <&wo_emi>, <&wo_ilm>, <&wo_dlm>,
> > - <&wo_data>;
> > - memory-region-names = "wo-emi", "wo-ilm", "wo-dlm",
> > - "wo-data";
> > + memory-region = <&wo_emi>, <&wo_dlm>, &wo_data>;
> > + memory-region-names = "wo-emi", "wo-dlm", "wo-data";
> > mediatek,wo-ccif = <&wo_ccif0>;
> > mediatek,wo-cpuboot = <&wo_cpuboot>;
> > + mediatek,wo-ilm = <&wo_ilm>;
> > };
> > };
> > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mt7986-wo-ilm.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mt7986-wo-ilm.yaml
> > new file mode 100644
> > index 000000000000..2a3775cd941e
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mt7986-wo-ilm.yaml
> > @@ -0,0 +1,45 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/soc/mediatek/mediatek,mt7986-wo-ilm.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: MediaTek Wireless Ethernet Dispatch (WED) WO ILM firmware interface for MT7986
>
> Either this region is some memory or it's a device. Sounds like the
> former and this is not a 'syscon'.
ILM and DLM are mmio regions used to store Wireless Ethernet Dispatch firmware
sections.
AFAIU reserved-memory nodes are supposed to be used just for RAM areas, correct?
What do you think would be the best dts node type for ILM and DLM?
Another possibility I was discussing with Felix is to move ILM and DLM definitions
in WED node reg section, something like:
wed0: wed@15010000 {
compatible = "mediatek,mt7986-wed";
reg = <0 0x15010000 0 0x1000>,
<0 0x151e0000 0 0x8000>,
<0 0x151e8000 0 0x2000>;
...
};
Doing so we need to get rid of syscon in WED compatible string, right? Is it acceptable?
Regards,
Lorenzo
>
> > +
> > +maintainers:
> > + - Lorenzo Bianconi <lorenzo@kernel.org>
> > + - Felix Fietkau <nbd@nbd.name>
> > +
> > +description:
> > + The MediaTek wo-ilm (Information Lifecycle Management) provides a configuration
> > + interface for WiFi critical data used by WED WO firmware. WED WO controller is
> > + used to perform offload rx packet processing (e.g. 802.11 aggregation packet
> > + reordering or rx header translation) on MT7986 soc.
> > +
> > +properties:
> > + compatible:
> > + items:
> > + - enum:
> > + - mediatek,mt7986-wo-ilm
> > + - const: syscon
> > +
> > + reg:
> > + maxItems: 1
> > +
> > +required:
> > + - compatible
> > + - reg
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + soc {
> > + #address-cells = <2>;
> > + #size-cells = <2>;
> > +
> > + syscon@151e0000 {
> > + compatible = "mediatek,mt7986-wo-ilm", "syscon";
> > + reg = <0 0x151e0000 0 0x8000>;
> > + };
> > + };
> > --
> > 2.39.2
> >
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next prev parent reply other threads:[~2023-03-22 16:05 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-20 16:57 [PATCH net-next 00/10] mtk: wed: move cpuboot, ilm and dlm in dedicated dts nodes Lorenzo Bianconi
2023-03-20 16:57 ` [PATCH net-next 01/10] net: ethernet: mtk_wed: rename mtk_wed_get_memory_region in mtk_wed_get_reserved_memory_region Lorenzo Bianconi
2023-03-20 16:57 ` [PATCH net-next 02/10] net: ethernet: mtk_wed: move cpuboot in a dedicated dts node Lorenzo Bianconi
2023-03-20 16:57 ` [PATCH net-next 03/10] dt-bindings: soc: mediatek: " Lorenzo Bianconi
2023-03-20 16:57 ` [PATCH net-next 04/10] arm64: dts: mt7986: move cpuboot in a dedicated node Lorenzo Bianconi
2023-03-31 10:53 ` Matthias Brugger
2023-03-20 16:57 ` [PATCH net-next 05/10] net: ethernet: mtk_wed: move ilm a dedicated dts node Lorenzo Bianconi
2023-03-20 16:58 ` [PATCH net-next 06/10] dt-bindings: soc: mediatek: move ilm in " Lorenzo Bianconi
2023-03-21 13:17 ` Rob Herring
2023-03-21 13:54 ` Lorenzo Bianconi
2023-03-21 19:32 ` Rob Herring
2023-03-22 16:05 ` Lorenzo Bianconi [this message]
2023-03-28 8:11 ` Lorenzo Bianconi
2023-03-20 16:58 ` [PATCH net-next 07/10] arm64: dts: mt7986: move ilm in a dedicated node Lorenzo Bianconi
2023-03-31 10:56 ` Matthias Brugger
2023-03-20 16:58 ` [PATCH net-next 08/10] net: ethernet: mtk_wed: move dlm a dedicated dts node Lorenzo Bianconi
2023-03-20 16:58 ` [PATCH net-next 09/10] dt-bindings: soc: mediatek: move dlm in " Lorenzo Bianconi
2023-03-20 16:58 ` [PATCH net-next 10/10] arm64: dts: mt7986: move dlm in a dedicated node Lorenzo Bianconi
2023-03-31 10:56 ` Matthias Brugger
2023-03-21 4:43 ` [PATCH net-next 00/10] mtk: wed: move cpuboot, ilm and dlm in dedicated dts nodes Jakub Kicinski
2023-03-21 9:37 ` Lorenzo Bianconi
2023-03-21 9:37 ` Lorenzo Bianconi
2023-03-21 16:19 ` Jakub Kicinski
2023-03-21 16:19 ` Jakub Kicinski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZBsnLLh5zu9DEQBb@lore-desk \
--to=lorenzo@kernel.org \
--cc=Mark-MC.Lee@mediatek.com \
--cc=daniel@makrotopia.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=john@phrozen.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=kuba@kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=lorenzo.bianconi@redhat.com \
--cc=matthias.bgg@gmail.com \
--cc=nbd@nbd.name \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
--cc=sean.wang@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.