[U-Boot] [PATCH 2/2] armv8/ls1046a: RGMII PHY requires internal delay on Tx

York Sun york.sun at nxp.com
Fri Aug 4 15:13:23 UTC 2017


On 08/03/2017 11:34 PM, Madalin-cristian Bucur wrote:
>> -----Original Message-----
>> From: York Sun
>> Sent: Thursday, August 03, 2017 7:14 PM
>> To: Madalin-cristian Bucur <madalin.bucur at nxp.com>; u-boot at lists.denx.de;
>> joe.hershberger at ni.com
>> Cc: Mingkai Hu <mingkai.hu at nxp.com>; Shengzhou Liu
>> <shengzhou.liu at nxp.com>; martin.blumenstingl at googlemail.com
>> Subject: Re: [PATCH 2/2] armv8/ls1046a: RGMII PHY requires internal delay
>> on Tx
>>
>> On 08/02/2017 11:01 PM, Madalin-cristian Bucur wrote:
>>>> -----Original Message-----
>>>> From: York Sun
>>>> Sent: Wednesday, August 02, 2017 11:36 PM
>>>> To: Madalin-cristian Bucur <madalin.bucur at nxp.com>; u-
>> boot at lists.denx.de;
>>>> joe.hershberger at ni.com
>>>> Cc: Mingkai Hu <mingkai.hu at nxp.com>
>>>> Subject: Re: [PATCH 2/2] armv8/ls1046a: RGMII PHY requires internal
>> delay
>>>> on Tx
>>>>
>>>> On 04/04/2017 04:44 AM, Madalin Bucur wrote:
>>>>> Signed-off-by: Madalin Bucur <madalin.bucur at nxp.com>
>>>>> ---
>>>>>     drivers/net/fm/ls1046.c | 4 ++--
>>>>>     1 file changed, 2 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/drivers/net/fm/ls1046.c b/drivers/net/fm/ls1046.c
>>>>> index bf55554..6c91fb9 100644
>>>>> --- a/drivers/net/fm/ls1046.c
>>>>> +++ b/drivers/net/fm/ls1046.c
>>>>> @@ -72,12 +72,12 @@ phy_interface_t fman_port_enet_if(enum fm_port
>> port)
>>>>>     	if (port == FM1_DTSEC3)
>>>>>     		if ((rcwsr13 & FSL_CHASSIS2_RCWSR13_EC1) ==
>>>>>     				FSL_CHASSIS2_RCWSR13_EC1_DTSEC3_RGMII)
>>>>> -			return PHY_INTERFACE_MODE_RGMII;
>>>>> +			return PHY_INTERFACE_MODE_RGMII_TXID;
>>>>>
>>>>>     	if (port == FM1_DTSEC4)
>>>>>     		if ((rcwsr13 & FSL_CHASSIS2_RCWSR13_EC2) ==
>>>>>     				FSL_CHASSIS2_RCWSR13_EC2_DTSEC4_RGMII)
>>>>> -			return PHY_INTERFACE_MODE_RGMII;
>>>>> +			return PHY_INTERFACE_MODE_RGMII_TXID;
>>>>>
>>>>>     	/* handle SGMII, only MAC 2/5/6/9/10 available */
>>>>>     	switch (port) {
>>>>>
>>>>
>>>> I don't know what test you have run. This change breaks network on
>>>> LS1043ARDB FM1 at DTSEC3.
>>>>
>>>> York
>>>
>>> Hi York,
>>>
>>> You're likely using an old kernel, if you move to one that has removed
>> the
>>> hardcoded internal delay for RGMII [1] you'll notice that RGMII no
>> longer
>>> works with the old u-boot and you need this patch. We're in this
>> situation
>>> because someone decided to hardcode internal delay for RGMII mode [2] in
>> the
>>> Linux RTL8211F PHY driver. Someone else hardcoded the PHY fixup in u-
>> boot to
>>> RGMII instead of RGMII_TXID [3] to align to that initial mistake. The
>> issue
>>> with this u-boot fixup is that it overwrites device tree information, so
>> one
>>> cannot correct this from the dts.
>>>
>>
>> Madalin,
>>
>> There may be some gap. With this change, network doesn't work under U-
>> Boot.
>>
>> York
> 
> It solved the Linux issue but it is incomplete for u-boot as the RGMII_TXID is
> not supported by memac. I've sent a patch for that too.
> 

Thank you. I will try it.

York


More information about the U-Boot mailing list