[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251209204130.GA1056291-robh@kernel.org>
Date: Tue, 9 Dec 2025 14:41:30 -0600
From: Rob Herring <robh@...nel.org>
To: Jacky Chou <jacky_chou@...eedtech.com>
Cc: Andrew Lunn <andrew+netdev@...n.ch>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Po-Yu Chuang <ratbert@...aday-tech.com>,
Joel Stanley <joel@....id.au>,
Andrew Jeffery <andrew@...econstruct.com.au>,
netdev@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-aspeed@...ts.ozlabs.org, taoren@...a.com
Subject: Re: [PATCH net-next v5 1/4] dt-bindings: net: ftgmac100: Add delay
properties for AST2600
On Fri, Dec 05, 2025 at 05:53:15PM +0800, Jacky Chou wrote:
> The AST2600 contains two dies, each with its own MAC, and these MACs
> require different delay configurations.
> Previously, these delay values were configured during the bootloader
> stage rather than in the driver. This change introduces the use of the
> standard properties defined in ethernet-controller.yaml to configure
> the delay values directly in the driver.
>
> Each Aspeed platform has its own delay step value. And for Aspeed platform,
> the total steps of RGMII delay configuraion is 32 steps, so the total delay
> is delay-step-ps * 32.
> Default delay values are declared so that tx-internal-delay-ps and
> rx-internal-delay-ps become optional. If these properties are not present,
> the driver will use the default values instead.
> Add conditional schema constraints for Aspeed AST2600 MAC controllers:
> - For MAC0/1, per delay step for rgmii is 45 ps
> - For MAC2/3, per delay step for rgmii is 250 ps
> - Both require the "aspeed,scu" and "aspeed,rgmii-delay-ps" properties.
> Other compatible values remain unrestricted.
>
> Signed-off-by: Jacky Chou <jacky_chou@...eedtech.com>
> ---
> .../devicetree/bindings/net/faraday,ftgmac100.yaml | 27 ++++++++++++++++++++++
> 1 file changed, 27 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml b/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml
> index d14410018bcf..00f7a0e56106 100644
> --- a/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml
> +++ b/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml
> @@ -69,6 +69,30 @@ properties:
> mdio:
> $ref: /schemas/net/mdio.yaml#
>
> + aspeed,scu:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + Phandle to the SCU (System Control Unit) syscon node for Aspeed platform.
> + This reference is used by the MAC controller to configure the RGMII delays.
> +
> + rx-internal-delay-ps:
> + description:
> + RGMII Receive Clock Delay defined in pico seconds. There are 32
> + steps of RGMII delay for Aspeed platform. Each Aspeed platform has its
> + own delay step value, it is fixed by hardware design. Total delay is
> + calculated by delay-step * 32. A value of 0 ps will disable any
> + delay. The Default is no delay.
> + default: 0
> +
> + tx-internal-delay-ps:
> + description:
> + RGMII Transmit Clock Delay defined in pico seconds. There are 32
> + steps of RGMII delay for Aspeed platform. Each Aspeed platform has its
> + own delay step value, it is fixed by hardware design. Total delay is
> + calculated by delay-step * 32. A value of 0 ps will disable any
> + delay. The Default is no delay.
> + default: 0
> +
> required:
> - compatible
> - reg
> @@ -85,6 +109,9 @@ allOf:
> then:
> properties:
> resets: true
> + aspeed,scu: true
> + rx-internal-delay-ps: true
> + tx-internal-delay-ps: true
There is no need for these (including the 'resets'). Really, the 'if'
should be negated with a 'not' and this part dropped.
> else:
> properties:
> resets: false
But you need false entries here since these 3 properties are just for
ast2600.
Rob
Powered by blists - more mailing lists