This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5726: Gigabit Ethernet issue with RTOS

Part Number: AM5726


Hi Support,

my customer is playing with the Ethernet stuff on a custom board. They are using DP83867 PHY IC connected to the RGMII1 (Port 2 of the AM5726 GMAC_SW block). They compiled the ‘NIMU Basic Example’ with their board configurations (pinmux, etc.). MDIO seems working (they can read and modify PHY’s registers), they can also ping the network interface in 100Mbit full-duplex mode. If they connect the interface to a 1Gbit peer, they can see the “Negotiated connection: FullDuplex 1000 Mbs” message but cannot ping the interface anymore from the peer computer.

They can see by an oscilloscope activity in RGMII RX direction (125 Mhz signal on RXC_CLK signal, some moving data bits on RXD[3:0] wires) but no signal in TX direction, all TX RGMII wires are low.

This is the contents of the PHY’s registers when a 1Gbit peer is connected, ‘FullDuplex 1000 Mbs’ mode is negotiated, and the computer is continuously sending ping ICMP requests:

### PHY 1 registers:

###     [000] BMCR              0x1100

###     [001] BMSR              0x796d

###     [004] ANAR              0x01e1

###     [005] ANLPAR            0xcde1

###     [006] ANER              0x006d

###     [007] ANNPTR            0x2001

###     [008] ANNPRR            0x5006

###     [009] CFG1              0x0200

###     [00A] STS1              0x7800

###     [00D] REGCR             0x0000

###     [00E] ADDAR             0x0000

###     [00F] 1KSCR             0x3000

###     [010] PHYCR             0xf040

###     [011] PHYSTS            0xac02

###     [012] MICR              0x00d3

###     [013] ISR               0x0000

###     [014] CFG2              0x29c7

###     [015] RECR              0x0000

###     [016] BISCR             0x0000

###     [017] STS2              0x0040

###     [018] LEDCR1            0x6150

###     [019] LEDCR2            0x4444

###     [01A] LEDCR3            0x0002

###     [01E] CFG3              0x0002

###     [01F] CTRL              0x0000

###     [025] TMCH_CTRL         0xcde1

###     [02D] FLD_CFG           0x0000

###     [031] CFG4              0xac02

###     [032] RGMIICTL          0x00d3

###     [033] RGMIICTL2         0x0000

###     [037] SGMII_ANEG_STS    0x0040

###     [043] 100CR             0xa231

###     [055] SKEW_FIFO         0x0000

###     [06E] STRAP_STS1        0x0000

###     [06F] STRAP_STS2        0x3000

###     [071] BICSR1            0xac02

###     [072] BICSR2            0x00d3

###     [086] RGMIIDCTL         0x006d

###     [0D3] SGMIICTL1         0x0000

###     [0E9] SYNC_FIFO_CTRL    0x0200

###     [0FE] LOOPCR            0x0002

###     [134] RXFCFG            0x29c7

###     [135] RXFSTS            0x0000

###     [170] IO_MUX_CFG        0xf040

###     [172] GPIO_MUX_CTRL     0x00d3

###     [180] TDR_GEN_CFG1      0x1100

###     [1A7] ALCD_CTRL         0x2001

 Can you help me solving the issue?

Thanks and regards,

Alberto

  • The RTOS team have been notified. They will respond here.
  • Hi Alberto,

    >>RGMII1 (Port 2 of the AM5726 GMAC_SW block)

    Is there a PHY connected to RGMII0 Port 1? There is a known issue with EMAC driver if only RGMII1 is used and RGMII0 has no connection. The driver patch and cfg/main.c of NIMU basic example update is noted in the thread

  • Garrett,

    thanks for your reply.
    Unfortunately, the PHY is connected to RGMII1, also RGMII0 does not have any connection as you wrote.
    This is the latest contents of the PHY’s registers (previous values of the registers were wrong, because they did not access the extended registers at address higher than 0xf via MMD indirect addressing):

    ### PHY 1 registers:
    ### [000] BMCR 0x1100
    ### [001] BMSR 0x796d
    ### [004] ANAR 0x01e1
    ### [005] ANLPAR 0xcde1
    ### [006] ANER 0x006d
    ### [007] ANNPTR 0x2001
    ### [008] ANNPRR 0x5006
    ### [009] CFG1 0x0200
    ### [00A] STS1 0x7800
    ### [00D] REGCR 0x401f
    ### [00E] ADDAR 0xf020
    ### [00F] 1KSCR 0x3000
    ### [010] PHYCR 0xf040
    ### [011] PHYSTS 0xaf02
    ### [012] MICR 0x0000
    ### [013] ISR 0x0000
    ### [014] CFG2 0x29c7
    ### [015] RECR 0x0000
    ### [016] BISCR 0x0000
    ### [017] STS2 0x0040
    ### [018] LEDCR1 0x6150
    ### [019] LEDCR2 0x4444
    ### [01A] LEDCR3 0x0002
    ### [01E] CFG3 0x0002
    ### [01F] CTRL 0x0000
    ### [025] TMCH_CTRL 0x0400
    ### [02D] FLD_CFG 0x0000
    ### [031] CFG4 0x10b0
    ### [032] RGMIICTL 0x00d3
    ### [033] RGMIICTL2 0x0000
    ### [037] SGMII_ANEG_STS 0x0000
    ### [043] 100CR 0x07a0
    ### [055] SKEW_FIFO 0x0000
    ### [06E] STRAP_STS1 0x0081
    ### [06F] STRAP_STS2 0x0100
    ### [071] BICSR1 0x0000
    ### [072] BICSR2 0x0000
    ### [086] RGMIIDCTL 0x0077
    ### [0D3] SGMIICTL1 0x0000
    ### [0E9] SYNC_FIFO_CTRL 0x9f22
    ### [0FE] LOOPCR 0xe721
    ### [134] RXFCFG 0x1000
    ### [135] RXFSTS 0x0000
    ### [170] IO_MUX_CFG 0x0c0e
    ### [172] GPIO_MUX_CTRL 0x0000
    ### [180] TDR_GEN_CFG1 0x0752
    ### [1A7] ALCD_CTRL 0xf020

    Please let me know how to solve this issue.
    thanks and best regards,
    Alberto
  • Alberto,

    The customer has to either wait for next Processor SDK RTOS v5.0 release (end of this quarter) or manually apply the EMAC driver patch as I mentioned in last post to get the PING working. There is an known issue in current EMAC driver from PRSDK v4.3 release which prevents the configuration (only RGMII1) from working (pinging) properly.

    Regards,
    Garrett