On 1/3/21 23:44, Milton Miller II wrote:
January 03, 2021 8:45 AM Thu Nguyen wrote and miltonm@us.ibm.com responded:

In our test platform, BMC boot up with NC-SI module is plugged and
powered. NC-SI interface (eth0) is up and worked well.

Then the power of NC-SI module is power off. NC-SI driver can't detect
this state.

BMC console keeps print:

[ 1780.411126] ftgmac100 1e660000.ethernet eth0: NCSI Channel 0 timed out!

[ 1785.579455] ftgmac100 1e660000.ethernet eth0: NCSI: No channel with
link found, configuring channel 0

[ 1802.253375] ftgmac100 1e660000.ethernet eth0: NCSI Channel 0 timed out!

[ 1807.501456] ftgmac100 1e660000.ethernet eth0: NCSI: No channel with
link found, configuring channel 0

Look at the ncs-manager.c code, it seems if a channel of NC-SI module is
time out its' monitor_state will be disabled, the link will be down then
the driver will go to next channel.

But if all of channels of NC-SI module are down. The driver will reset
the monitor_state of all channels and check their states again.

Milton> The NCSI specification explicitly says that power to the nics and the controller must be synchronized.   


Do we have any mechanism to detect power off state of NC-SI module?

Milton> No, but the state machines will reset if you ifconfig down the interface.

[Thu] Thank for this info. It seem there are no ways to detect Power off state of NC-SI module.

This case is similar with the case OCP is failure or Unplugged when hot plug.


How about hot plug NC-SI module?


Regards.

Thu Nguyen.

Regards.

Thu Nguyen.