[PATCH 1/2] dt-bindings: soc: ti: pruss: allow ethernet controller in ICSSG node
Krzysztof Kozlowski
krzk at kernel.org
Thu Jun 20 00:24:19 PDT 2024
On 19/06/2024 13:24, Matthias Schiffer wrote:
> While the current Device Trees for TI EVMs configure the PRUSS Ethernet
> controller as a toplevel node with names like "icssg1-eth", allowing to
> make it a subnode of the ICSSG has a number of advantages:
What is ICSSG? The sram or ti,prus from the ethernet schema?
>
> - It makes sense semantically - the Ethernet controller is running on
> the ICSSG/PRUSS
> - Disabling or deleting the ICSSG node implicitly removes the Ethernet
> controller node when it is a child node. This can be relevant on SoCs
> like the AM64x which come in variants with and without ICSSG; e.g., on
> the TQMa64xxL the ICSSG node will be disabled on variants without as a
> bootloader fixup.
> On Linux, this avoids leaving the Ethernet controller in deferred
> state forever while waiting for the ICSSG to become available
> (resulting in a warning on newer kernels)
>
> The node name "ethernet" is chosen as it nicely matches the regular
> "ethernet@<reg>" format of many Ethernet controller nodes, and is also
> what the prueth binding example (/schemas/net/ti,icssg-prueth.yaml) uses.
>
> Signed-off-by: Matthias Schiffer <matthias.schiffer at ew.tq-group.com>
> ---
> Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml b/Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml
> index c402cb2928e89..89dfcf5ce8434 100644
> --- a/Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml
> +++ b/Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml
> @@ -92,6 +92,13 @@ properties:
> description: |
> This property is as per sci-pm-domain.txt.
>
> + ethernet:
> + description: |
Do not need '|' unless you need to preserve formatting.
> + ICSSG PRUSS Ethernet. Configuration for an Ethernet controller running
> + on the PRU-ICSS.
> + $ref: /schemas/net/ti,icssg-prueth.yaml#
> + type: object
> +
> patternProperties:
>
> memories@[a-f0-9]+$:
You are mixing MMIO and non-MMIO nodes. That's odd or even sloppy
design. It immediately raises questions about your bindings.
Best regards,
Krzysztof
More information about the linux-arm-kernel
mailing list