[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2ed4aa25-cbf7-ed90-f2fa-0b7fd32803b7@gmail.com>
Date: Thu, 18 Jun 2020 11:26:00 -0700
From: Florian Fainelli <f.fainelli@...il.com>
To: Russell King - ARM Linux admin <linux@...linux.org.uk>,
Helmut Grohne <helmut.grohne@...enta.de>
Cc: Nicolas Ferre <nicolas.ferre@...rochip.com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Palmer Dabbelt <palmer@...belt.com>,
Paul Walmsley <paul.walmsley@...ive.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH] net: macb: reject unsupported rgmii delays
On 6/18/2020 3:01 AM, Russell King - ARM Linux admin wrote:
> On Thu, Jun 18, 2020 at 11:05:26AM +0200, Helmut Grohne wrote:
>> On Thu, Jun 18, 2020 at 10:45:54AM +0200, Russell King - ARM Linux admin wrote:
>>> Why do we need that complexity? If we decide that we can allow
>>> phy-mode = "rgmii" and introduce new properties to control the
>>> delay, then we just need:
>>>
>>> rgmii-tx-delay-ps = <nnn>;
>>> rgmii-rx-delay-ps = <nnn>;
>>>
>>> specified in the MAC node (to be applied only at the MAC end) or
>>> specified in the PHY node (to be applied only at the PHY end.)
>>> In the normal case, this would be the standard delay value, but
>>> in exceptional cases where supported, the delays can be arbitary.
>>> We know there are PHYs out there which allow other delays.
>>>
>>> This means each end is responsible for parsing these properties in
>>> its own node and applying them - or raising an error if they can't
>>> be supported.
>>
>> Thank you. That makes a lot more sense while keeping the (imo) important
>> properties of my proposal:
>> * It is backwards compatible. These properties override delays
>> specified inside phy-mode. Otherwise the vague phy-mode meaning is
>> retained.
>> * The ambiguity is resolved. It is always clear where delays should be
>> configure and the properties properly account for possible PCB
>> traces.
>>
>> It also resolves my original problem. If support for these properties is
>> added to macb_main.c, it would simply check that both delays are 0 as
>> internal delays are not supported by the hardware. When I would have
>> attempted to configure an rx delay, it would have nicely errored out.
>
> I think we'd want a helper or two to do the parsing and return the
> delays, something like:
Can you review Dan's patch series since he is attempting something that
may not end up solving Helmut's problem completely:
http://patchwork.ozlabs.org/project/netdev/list/?series=184052
--
Florian
Powered by blists - more mailing lists