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.

AM6548: icssg can not work on 100M and 1000M duplex half

Part Number: AM6548
Dear TI

I  have a issue about the icssg problem based on the kernel 4.19.94

# kernel version
`uname -r`

4.19.94

# Problem Description
under kernel 4.19.94 

1.pru-icssg 100M and 1000M half duplex not work 

2.there would some error show,like:"cmd 8102000c: completion timeout" 

3.switch from 100M and 1000M full duplex may not success. 

for example,currently,the status is 100M full duplex.
when I change to 1000 full duplex,sometimes it may not work.

# Test I have done
## kernel boot print
currently is 1000M full and some error show
```
icssg-prueth pruss0_eth eth1: Link is Up - 1Gbps/Full - flow control off
[  478.403224] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[  478.511058] icssg-prueth pruss0_eth eth1: cmd 8102000c: completion timeout
[  491.835207] icssg-prueth pruss0_eth eth1: Link is Down
[  494.907452] icssg-prueth pruss0_eth eth1: Link is Up - 1Gbps/Full - flow control off
[  495.019000] icssg-prueth pruss0_eth eth1: cmd 8102000c: completion timeout
```
## Test 1:change to 100M full  
`ethtool -s eth1 autoneg on speed 100 duplex full` 

the logs: 

[  768.411226] icssg-prueth pruss0_eth eth1: Link is Down
[  773.531431] icssg-prueth pruss0_eth eth1: Link is Up - 100Mbps/Full - flow control off
[  773.643010] icssg-prueth pruss0_eth eth1: cmd 8102000a: completion timeout

# Test2:Change speed from 100M full to 1000M full

`ethtool -s eth1 autoneg on speed 1000 duplex full`

the logs :

[  800.251220] icssg-prueth pruss0_eth eth1: Link is Down

**can not link up**

# Test 3:change Test2 from 1000M to 100M

`ethtool -s eth1 autoneg on speed 100 duplex full`

```
[  851.451435] icssg-prueth pruss0_eth eth1: Link is Up - 100Mbps/Full - flow control off
[  851.563003] icssg-prueth pruss0_eth eth1: cmd 8102000a: completion timeout
```

# Test4:set to 1000 half 

`ethtool -s eth1 autoneg on speed 1000 duplex half`

not work

# Test5:set to 100 half

`ethtool -s eth1 autoneg on speed 100 duplex half`

not work

# Test6:set to 100m full
 `ethtool -s eth1 autoneg on speed 1000 duplex full`
```
 [  959.067436] icssg-prueth pruss0_eth eth1: Link is Up - 1Gbps/Full - flow control off
[  959.179011] icssg-prueth pruss0_eth eth1: cmd 8102000c: completion timeout
```

# Test7:set to 1000m half
`ethtool -s eth1 autoneg on speed 1000 duplex half`