Story: 2011056 Task: 51174 Change-Id: I3a0a3637aff9a9974e7bfeed0a1f1785eceafee2 Signed-off-by: Suzana Fernandes <Suzana.Fernandes@windriver.com>
5.7 KiB
Switch Intel Driver Versions
Introduction
The system supports both in-tree and out-of-tree versions of the
Intel ice
, i40e
, and iavf
drivers. On initial installation, the system uses the default
out-of-tree driver version. This sections describes how to switch
between the in-tree and out-of-tree driver versions.
Warning
The firmware (NVM) has to align with one of the selected driver listed below.
- Out-of-tree drivers (default)
-
- ice: 1.14.9.2 / Required NVM/firmware: 4.20 (Intel E810)
- i40e: 2.25.7 / Required NVM/firmware: 9.00
- iavf: 4.11.1
- In-tree drivers
-
- ice: Same as 6.6.7 kernel in-tree driver / Required NVM/firmware: 4.20
- i40e: Same as 6.6.7 kernel in-tree driver / Required NVM/firmware: 9.00
- iavf: Same as 6.6.7 kernel in-tree driver
Switch between the In-tree and Out-of-tree Driver Versions
The out_of_tree_drivers
service parameter can be used to
switch between the in-tree and out-of-tree versions of a given
driver.
Switch to In-tree Driver Versions
The system can be switched to the in-tree versions of
ice
, i40e
, and iavf
drivers using
any of the following two mechanisms.
Before installation, specify the
out_of_tree_drivers
service parameter to none in the deployment config file.serviceParameters: - service: platform section: kernel paramname: out_of_tree_drivers paramvalue: "none"
After installation, modify the
out_of_tree_drivers
service parameter to none and apply the configuration using the steps mentioned inapply-driver-configuration-0342c0220631
.~(keystone_admin)$ system service-parameter-modify platform kernel out_of_tree_drivers=none
Switch to Out-of-tree Driver Versions
To use the out-of-tree drivers, set the out-of-tree drivers you want
to load in the out_of_tree_drivers
service parameter and
apply the configuration using the steps mentioned in apply-driver-configuration-0342c0220631
. You can set
all the supported drivers, or only specific ones.
Set all out-of-tree drivers:
~(keystone_admin)$ system service-parameter-modify platform kernel out_of_tree_drivers=ice,i40e,iavf
Set specified out-of-tree drivers:
To set only
ice
andi40e
, but notiavf
(in this case, the iavf is in the in-tree driver):~(keystone_admin)$ system service-parameter-modify platform kernel out_of_tree_drivers=ice,i40e
To set
iavf
andice
, but noti40e
:~(keystone_admin)$ system service-parameter-modify platform kernel out_of_tree_drivers=ice,iavf
You can set any permutation or combination of
ice
,i40e
, andiavf
in theout_of_tree_drivers
service parameter. Any driver not explicitly set using theout_of_tree_drivers
service parameter will use its in-tree version.
Apply Driver Configuration
To apply the service parameter change, all the hosts need to be locked and unlocked. Use the following commands for each host depending on the deployed configuration:
For deployments:
~(keystone_admin)$ system host-lock controller-0
~(keystone_admin)$ system host-unlock controller-0
For and standards deployments, after controller-1
is
locked/unlocked, swact controller-0
to make
controller-1
the active node. The next set of commands are
executed on the controller-0
node:
~(keystone_admin)$ system host-lock controller-1
~(keystone_admin)$ system host-unlock controller-1
~(keystone_admin)$ system host-swact controller-0
On controller-1
, after controller-0
is
locked/unlocked swact controller-1
to go back to
controller-0
as the active node. The next set of commands
are executed on the controller-1
node:
~(keystone_admin)$ system host-lock controller-0
~(keystone_admin)$ system host-unlock controller-0
~(keystone_admin)$ system host-swact controller-1
All the remaining nodes in the deployment need to be locked/unlocked,
one at a time. Use the following commands (replace worker-0
with the name of the node being locked/unlocked):
~(keystone_admin)$ system host-lock worker-0
~(keystone_admin)$ system host-unlock worker-0
Note
You must wait for the node to enter the locked state prior to unlocking.
To verify the current Intel driver version use
ethtool -i
on the desired Intel network interface. For
example:
~(keystone_admin)$ ethtool -i ens785f0 | egrep '^(driver|version):'
driver: i40e
version: 6.6.40-stx.3
Backup and Restore
If a backup and restore is performed, after unlocking the host during a restore operation, the system is configured to the driver version at the time of the backup.
partner