About this task
The switching process is described in this table:
- The SmartNIC must be in the NEUTRAL state before a switch can be initiated (see NEUTRAL state).
- Executing a --switch command, sets the state to IMAGE SWITCH EVENT ARMED (see IMAGE SWITCH EVENT ARMED state). This state indicates that the SmartNIC will switch image when it receives the next PCI slot reset event.
After the PCI slot reset event, the state is automatically forwarded by the support chip to the IMAGE SWITCH EVENT IN PROGRESS state, unless the secondary image was found to be corrupted. The IMAGE SWITCH EVENT IN PROGRESS state (see IMAGE SWITCH EVENT IN PROGRESS state) indicates that the SmartNIC has loaded an FPGA image from the secondary bank.
Note: If the FPGA image loaded from the secondary bank failed, the state is automatically forwarded to FAILED instead (see FAILED state). This state indicates that the previous load attempt has failed. The --switch --discard command must then be executed to reset the state from FAILED to NEUTRAL.
When the SmartNIC is in the IMAGE SWITCH EVENT IN PROGRESS state, the user must acknowledge the switch event as successful by executing a --switch command with the --confirm argument. This command sets the state back to NEUTRAL, and causes the primary image bank setting to be updated to reflect the currently running bank.
Note: The --switch --confirm command must be executed before the SmartNIC receives the next PCI slot reset event. Otherwise the SmartNIC will automatically revert to the primary image that was used previously.
Note: A server boot (whether warm or cold) always generates PCI reset events.
Note: A server cold boot event always sets the state to FAILED, if the state was other than NEUTRAL.
Note: For Windows, it is recommended to perform the warm reboot with the following steps:
- Switch using the --pcirst option as shown in the following command
imgctrl -a0 -s --pcirst
- Restart the system: Click the Restart button. Do not recycle the power.
- Check the current IMAGE
imgctrl -a0 -qThe following state is shown in the output.
IMAGE STATE : IMAGE SWITCH EVENT IN PROGRESS (code 2)
imgctrl -a0 -s --confirm