Instead of hard-coding driver versions in the initramfs init script,
this commit makes the driver package release (e.g., "cvl-2.54") a kernel
command line parameter. As an example, if a driver package release is
specified with the command line argument multi-drivers-switch=<release>,
then the initramfs init script will look for the drivers in
"/lib/modules/$(uname -r)/{ice,iavf,i40e}-<release>/". This way, the
initramfs will not need further modifications for new/different driver
package releases that are integrated into StarlingX in the future.
It also changes the legacy driver deb package names from
ice-1.5.8.1-legacy
iavf-4.0.1-legacy
i40e-2.14.13-legacy
to
ice-cvl-2.54
iavf-cvl-2.54
i40e-cvl-2.54
Legacy drivers location folder:
ls /lib/modules/$(uname -r)/extra/
i40e-cvl-2.54 iavf-cvl-2.54 ice-cvl-2.54
Latest driverslocation folder:
/lib/modules/$(uname -r)/updates/
i40e-cvl-4.0.1 iavf-cvl-4.0.1 ice-cvl-4.0.1
Testing:
- An ISO image can be built successfully.
- PXE boot-based installation onto an All-in-One Duplex lab was
successful with rt and std kernels.
- Latest driver versions are loaded by default and the DDP
firmware version is correct. It is 1.3.30.0.
- It is possible to switch to the legacy drivers manually with
command line parameter multi-drivers-switch=cvl-2.54, and the DDP
firmware version is 1.3.26.0.
- It is also possible to switch back to the latest drivers manually
with command line parameter multi-drivers-switch=cvl-4.0.1.
Story: 2010326
Task: 46705
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
Change-Id: Ic20922dacee0807b908354189ec185ace2737810