(1) With Am335x MAC/PHY LAN8710A ( cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx)
connections with eth0 (ssh, nfs, etc) have short stalls. There are network collisions and when using ssh or nfs there are short periods where there is no reponse.
(2) With Am335x USB and USB ethernet host adapter (asix 2-1:1.0 eth1: link up, 100Mbps, full-duplex, lpa 0x45E1)
connections with eth1 (ssh, nfs, etc) there are no apparent stalls.
Has anyone observed this using the Am335x cpsw? Can flow control be disabled?
------------------------------------------------------------------------------------
Eth0 Am335x MAC/PHY LAN8710A
[ 12.648140] net eth0: initializing cpsw version 1.12 (0)
[ 12.733107] net eth0: phy found : id is : 0x7c0f1
[ 12.738090] gmii_sel reg:0000003A
[ 12.741561] mask:00000043 mode:00000002 rmii_clock_external:0
[ 12.747593] gmii_sel reg:00000038
[ 12.751063] gmii_sel reg:0000003A
[ 12.754550] libphy: PHY not found
[ 12.758114] net eth0: phy not found on slave 1
[ 12.763911] net eth0: BQL enabled
[ 12.773035] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ ok ] Configuring network interfaces...done.
[ ok ] Starting rpcbind daemon....
[ 13.552783] nfsd: module is already loaded
[ 15.813028] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[ 15.821474] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
root# ethtool -S eth0
NIC statistics:
Good Rx Frames: 19095
Broadcast Rx Frames: 13325
Multicast Rx Frames: 4880
Pause Rx Frames: 0
Rx CRC Errors: 0
Rx Align/Code Errors: 0
Oversize Rx Frames: 0
Rx Jabbers: 0
Undersize (Short) Rx Frames: 0
Rx Fragments: 0
Rx Octets: 2068293
Good Tx Frames: 1172
Broadcast Tx Frames: 30
Multicast Tx Frames: 8
Pause Tx Frames: 0
Deferred Tx Frames: 3
Collisions: 89
Single Collision Tx Frames: 1
Multiple Collision Tx Frames: 0
Excessive Collisions: 0
Late Collisions: 88
Tx Underrun: 0
Carrier Sense Errors: 0
Tx Octets: 846090
Rx + Tx 64 Octet Frames: 7124
Rx + Tx 65-127 Octet Frames: 9537
Rx + Tx 128-255 Octet Frames: 2347
Rx + Tx 256-511 Octet Frames: 366
Rx + Tx 512-1023 Octet Frames: 237
Rx + Tx 1024-Up Octet Frames: 656
Net Octets: 3035702
Rx Start of Frame Overruns: 0
Rx Middle of Frame Overruns: 0
Rx DMA Overruns: 0
Rx DMA chan: head_enqueue: 1
Rx DMA chan: tail_enqueue: 14268
Rx DMA chan: pad_enqueue: 0
Rx DMA chan: misqueued: 0
Rx DMA chan: desc_alloc_fail: 0
Rx DMA chan: pad_alloc_fail: 0
Rx DMA chan: runt_receive_buf: 0
Rx DMA chan: runt_transmit_buf: 0
Rx DMA chan: empty_dequeue: 0
Rx DMA chan: busy_dequeue: 14935
Rx DMA chan: good_dequeue: 14205
Rx DMA chan: requeue: 0
Rx DMA chan: teardown_dequeue: 0
Tx DMA chan: head_enqueue: 980
Tx DMA chan: tail_enqueue: 280
Tx DMA chan: pad_enqueue: 0
Tx DMA chan: misqueued: 66
Tx DMA chan: desc_alloc_fail: 0
Tx DMA chan: pad_alloc_fail: 0
Tx DMA chan: runt_receive_buf: 0
Tx DMA chan: runt_transmit_buf: 23
Tx DMA chan: empty_dequeue: 14692
Tx DMA chan: busy_dequeue: 243
Tx DMA chan: good_dequeue: 1260
Tx DMA chan: requeue: 1108
Tx DMA chan: teardown_dequeue: 0
--------------------------------------------------------------------------------------------------------------
Am335x USB + Ethnernet to USB Host Adapter
[ ok ] Setting kernel variables ...done.
[ 12.623494] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[ 12.629997] asix 2-1:1.0 eth1: link down
[ ok ] Configuring network interfaces...done.
[ ok ] Starting rpcbind daemon....
[ 13.415506] nfsd: module is already loaded
[ 14.415667] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[ 14.422684] asix 2-1:1.0 eth1: link up, 100Mbps, full-duplex, lpa 0x45E1