openbmc / linux

OpenBMC Linux kernel source tree
Other
49 stars 132 forks source link

NCSI not working on ast2500 #91

Closed shenki closed 8 years ago

shenki commented 8 years ago

Running dev-4.7 with @amboar's ftgmac100 fixes on an ast2500 platform with NCSI, we boot and bring up the device:

# ifconfig eth0 up
ftgmac100_open
ftgmac100_reset_hw
ftgmac100_init_hw
ftgmac100_start_hw
ncsi_start_dev
ncsi_start_dev ncsi_dev_state_registered
ncsi_start_dev not populated
# 
# ftgmac100: NCSI interface down

Seen that before on palmetto. Normally bringing the device down and back up again a few times works. However it does not in this case:

# ifconfig eth0 down
# 
# ifconfig eth0 up
ftgmac100_open
ftgmac100_reset_hw
ftgmac100_init_hw
ftgmac100_start_hw
ncsi_start_dev
ncsi_start_dev ncsi_dev_state_registered
ncsi_start_dev no active channel
ftgmac100 1e660000.ethernet eth0: nsci_start_dev failed
ftgmac100_open err
ifconfig: SIOCSIFFLAGS: No such device or address
shenki commented 8 years ago

With some further tracing:

# ifconfig eth0 up
ftgmac100_open
ftgmac100_reset_hw
ftgmac100_init_hw
ftgmac100_start_hw
ncsi_start_dev
ncsi_start_dev ncsi_dev_state_registered
ncsi_start_dev not populated
ncsi_dev_probe
ncsi_dev_probe ncsi_dev_state_probe
ncsi_dev_probe ncsi_dev_state_probe_deselect
ncsi_dev_probe
ncsi_dev_probe ncsi_dev_state_probe_package
ncsi_dev_probe
ncsi_dev_probe ncsi_dev_state_probe_channel
ncsi_dev_probe error no active channel
ftgmac100: NCSI interface down
# ifconfig eth0 down
# ifconfig eth0 up
ftgmac100_open
ftgmac100_reset_hw
ftgmac100_init_hw
ftgmac100_start_hw
ncsi_start_dev
ncsi_start_dev ncsi_dev_state_registered
ncsi_start_dev no active channel
ftgmac100 1e660000.ethernet eth0: nsci_start_dev failed
ftgmac100_open err
ifconfig: SIOCSIFFLAGS: No such device or address
shenki commented 8 years ago

ast2500 requires the old mdio interface to be enabled, as well as some other changes:

ab753f2f6623f12ae459e6f693db8997db45f985 drivers/net/ftgmac100: Adapt for Aspeed SoCs 83bef141ee84036914ad29be97d7eb981538d0e8 drivers/net/ftgmac100: Make EDO{R,T}R bits configurable c0cbc1776dd474717aa2ff786a01a6c1b9631bb3 drievrs/net/ftgmac100: Separate rx page storage from rxdesc