On 11/04/2016 08:22 AM, Måns Rullgård wrote:
> Andrew Lunn <and...@lunn.ch> writes:
> 
>> On Fri, Nov 04, 2016 at 03:05:00PM +0000, Måns Rullgård wrote:
>>> Andrew Lunn <and...@lunn.ch> writes:
>>>
>>>>>> I agree with you. But fixing it is likely to break boards which
>>>>>> currently have "rgmii", but actually need the delay in order to work.
>>>>>
>>>>> Does the internal delay here refer to the PHY or the MAC?  It's a
>>>>> property of the MAC node after all.
>>>>
>>>> It is the PHY which applies the delay.
>>>
>>> Says who?
>>
>> The source code.
> 
> There's source code that disagrees with that.  The Broadcom GENET
> driver, for instance.

Correct, and in the case where the MAC adds the delay while transmitting
(because it supports that) the expectation is that the PHY would remove
such a delay internally, conversely, the PHY would introduce a delay
while transmitting back to the PHY, in order to produce the desired 90
degrees shift on the RGMII signals, and get reproduce the correct clock
and data alignment internally.

> 
>>>  Some MACs can do it too.
>>
>> I'm sure they can. But look at the code. Nearly none do, and those
>> that do are potentially broken.
> 
> Those few drivers that do anything differently based on these values
> enable clock delay in the MAC.  That's why I wrote the NB8800 driver the
> way I did.
> 

I don't really what is wrong with the nb8800 driver at the moment, so
maybe this is just a configuration issue with the Atheros PHY driver,
it's not like it has not given people headache judging by the recent
discussions...
-- 
Florian

Reply via email to