T2081: VSC8572 phy: Ping not working

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

T2081: VSC8572 phy: Ping not working

1,213 Views
noufalp90
Contributor III

Hi Team,

 

I have a custom T2081 board where we are using VSC8572 phy chip with address 0x1d. When we go through the u-boot code, there is no support for this Phy. We are able to access the Phy using mii commands with generic phy configuration. Can anyone has done phy bringup in u-boot level, please help.

We can see link up is observed only with 10Mbps.

Reg dump before connecting Cable:

=> mii dump 0x1d 0x00
0.     (1040)                 -- PHY control register --
  (8000:0000) 0.15    =     0    reset
  (4000:0000) 0.14    =     0    loopback
  (2040:0040) 0. 6,13 =   b10    speed selection = 1000 Mbps
  (1000:1000) 0.12    =     1    A/N enable
  (0800:0000) 0.11    =     0    power-down
  (0400:0000) 0.10    =     0    isolate
  (0200:0000) 0. 9    =     0    restart A/N
  (0100:0000) 0. 8    =     0    duplex = half
  (0080:0000) 0. 7    =     0    collision test enable
  (003f:0000) 0. 5- 0 =     0    (reserved)

=> mii dump 0x1d 0x01
1.     (79c9)                 -- PHY status register --
  (8000:0000) 1.15    =     0    100BASE-T4 able
  (4000:4000) 1.14    =     1    100BASE-X  full duplex able
  (2000:2000) 1.13    =     1    100BASE-X  half duplex able
  (1000:1000) 1.12    =     1    10 Mbps    full duplex able
  (0800:0800) 1.11    =     1    10 Mbps    half duplex able
  (0400:0000) 1.10    =     0    100BASE-T2 full duplex able
  (0200:0000) 1. 9    =     0    100BASE-T2 half duplex able
  (0100:0100) 1. 8    =     1    extended status
  (0080:0080) 1. 7    =     1    (reserved)
  (0040:0040) 1. 6    =     1    MF preamble suppression
  (0020:0000) 1. 5    =     0    A/N complete
  (0010:0000) 1. 4    =     0    remote fault
  (0008:0008) 1. 3    =     1    A/N able
  (0004:0000) 1. 2    =     0    link status
  (0002:0000) 1. 1    =     0    jabber detect
  (0001:0001) 1. 0    =     1    extended capabilities

Reg dump after connecting cable:

=> mii dump 0x1d 0x0
0.     (1040)                 -- PHY control register --
  (8000:0000) 0.15    =     0    reset
  (4000:0000) 0.14    =     0    loopback
  (2040:0040) 0. 6,13 =   b10    speed selection = 1000 Mbps
  (1000:1000) 0.12    =     1    A/N enable
  (0800:0000) 0.11    =     0    power-down
  (0400:0000) 0.10    =     0    isolate
  (0200:0000) 0. 9    =     0    restart A/N
  (0100:0000) 0. 8    =     0    duplex = half
  (0080:0000) 0. 7    =     0    collision test enable
  (003f:0000) 0. 5- 0 =     0    (reserved)

 

=> mii dump 0x1d 0x1
1.     (79ed)                 -- PHY status register --
  (8000:0000) 1.15    =     0    100BASE-T4 able
  (4000:4000) 1.14    =     1    100BASE-X  full duplex able
  (2000:2000) 1.13    =     1    100BASE-X  half duplex able
  (1000:1000) 1.12    =     1    10 Mbps    full duplex able
  (0800:0800) 1.11    =     1    10 Mbps    half duplex able
  (0400:0000) 1.10    =     0    100BASE-T2 full duplex able
  (0200:0000) 1. 9    =     0    100BASE-T2 half duplex able
  (0100:0100) 1. 8    =     1    extended status
  (0080:0080) 1. 7    =     1    (reserved)
  (0040:0040) 1. 6    =     1    MF preamble suppression
  (0020:0020) 1. 5    =     1    A/N complete
  (0010:0000) 1. 4    =     0    remote fault
  (0008:0008) 1. 3    =     1    A/N able
  (0004:0004) 1. 2    =     1    link status
  (0002:0000) 1. 1    =     0    jabber detect
  (0001:0001) 1. 0    =     1    extended capabilities

 

When I ping, I can see following logs on the console.

=========================================

=> mii dev
MII devices: 'FSL_MDIO0' 'FM_TGEC_MDIO' 'T2081QDS_MDIO_RGMII1' 'T2081QDS_MDIO_RGMII2' 'T2081QDS_MDIO_SLOT5' 'T2081QDS_MDIO_10GC'
Current device: 'FSL_MDIO0'
=> mii dev T2081QDS_MDIO_RGMII1
=> mii dev
MII devices: 'FSL_MDIO0' 'FM_TGEC_MDIO' 'T2081QDS_MDIO_RGMII1' 'T2081QDS_MDIO_RGMII2' 'T2081QDS_MDIO_SLOT5' 'T2081QDS_MDIO_10GC'
Current device: 'T2081QDS_MDIO_RGMII1'
=> setenv ethact FM1@DTSEC3
=> setenv ipaddr 172.16.15.201
=> setenv netmask 255.255.192.0
=> setenv serverip 172.16.1.100
=> setenv gatewayip 172.16.1.0
=> ping "172.16.1.100"
MMDC : genphy_update_link
FM1@DTSEC3 Waiting for PHY auto negotiation to complete.. done
MMDC : speed = 0x10
Using FM1@DTSEC3 device

 

ARP Retry count exceeded; starting again
ping failed; host 172.16.1.100 is not alive
=> ping "172.16.1.100"
MMDC : genphy_update_link
MMDC : speed = 0x10
Using FM1@DTSEC3 device
FM1@DTSEC3: Tx error, txbd->status = 0x8800
FM1@DTSEC3: Tx buffer not ready, txbd->status = 0x8800
FM1@DTSEC3: Tx buffer not ready, txbd->status = 0x8800
FM1@DTSEC3: Tx buffer not ready, txbd->status = 0x8800

 

ARP Retry count exceeded; starting again
ping failed; host 172.16.1.100 is not alive
=========================================

Thanks,

Noufal P

T2080 

0 Kudos
Reply
3 Replies

1,174 Views
noufalp90
Contributor III

Hi @Oswalag 

 

thanks for the reply. I am new to this chip and can you please point out how we can check the speed configuration in T2081 side?

Phy configuration is done for 1Gbps.

 

Thanks,

Noufal

0 Kudos
Reply

1,201 Views
noufalp90
Contributor III

FYI 

Configuration is for 1Gps and RGMII mode

0 Kudos
Reply

1,196 Views
Oswalag
NXP TechSupport
NXP TechSupport

Hello,

The generic phy configuration may not configure the VSC8572 for higher speeds(100 Mbps or 1Gbps) the phy could need different  registers or initialization steps that are not handled by the generic phy configuration, make sure the configurations for speed are the same in the T2081 and the phy. 

Please take a look on the following chapters in the RM:

19.1.1.2 MDIO port mapping

SerDes n Lane Assignments

Please consider reaching out to the PHY manufacturer for additional support. 

0 Kudos
Reply