Merge "Switch drivers in initramfs"
This commit is contained in:
commit
6c1979d4a4
@ -0,0 +1,74 @@
|
|||||||
|
From ae37f72593a2f539fdcf039db38ac9dcb80f9a63 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jiping Ma <jiping.ma2@windriver.com>
|
||||||
|
Date: Wed, 26 Oct 2022 18:26:33 -0700
|
||||||
|
Subject: [PATCH] Switch drivers in initramfs
|
||||||
|
|
||||||
|
Running depmod fails on Debian loads due to ostree. Using
|
||||||
|
"ostree admin unlock --hotfix" allows the command to pass,
|
||||||
|
but that's not usable for feature/product delivery.
|
||||||
|
|
||||||
|
So we will switch drivers in initramfs. If cmdline parameter
|
||||||
|
multi-drivers-switch is set to legacy, the legacy drivers
|
||||||
|
will be loaded by "insmod" command before udevd is started,
|
||||||
|
and that ensures that the legacy drivers will be loaded
|
||||||
|
rather than the latest drivers.
|
||||||
|
|
||||||
|
We need do the following steps to switch to the legacy drivers.
|
||||||
|
1. Add cmdline parameter multi-drivers-switch=cvl-2.54
|
||||||
|
2. reboot
|
||||||
|
|
||||||
|
Do the following steps to switch back to the latest drivers.
|
||||||
|
1. Add cmdline parameter multi-drivers-switch=cvl-4.0.1
|
||||||
|
2. reboot
|
||||||
|
|
||||||
|
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
|
||||||
|
---
|
||||||
|
init-ostree.sh | 18 +++++++++++-------
|
||||||
|
1 file changed, 11 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/init-ostree.sh b/init-ostree.sh
|
||||||
|
index 80d4082..eded9ff 100644
|
||||||
|
--- a/init-ostree.sh
|
||||||
|
+++ b/init-ostree.sh
|
||||||
|
@@ -64,6 +64,15 @@ do_mount_fs() {
|
||||||
|
mount -t "$1" "$1" "$2"
|
||||||
|
}
|
||||||
|
|
||||||
|
+network_modules() {
|
||||||
|
+ if grep -s -q '\smulti-drivers-switch=cvl-2.54' /proc/cmdline ; then
|
||||||
|
+ insmod /lib/modules/"$(uname -r)"/extra/ice-1.5.8.1/ice.ko
|
||||||
|
+ insmod /lib/modules/"$(uname -r)"/extra/i40e-2.14.13/i40e.ko
|
||||||
|
+ insmod /lib/modules/"$(uname -r)"/extra/iavf-4.0.1/iavf.ko
|
||||||
|
+ echo "Legacy NIC drivers have been activated"
|
||||||
|
+ fi
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
early_setup() {
|
||||||
|
|
||||||
|
do_mount_fs proc /proc
|
||||||
|
@@ -72,6 +81,8 @@ early_setup() {
|
||||||
|
do_mount_fs tmpfs /tmp
|
||||||
|
do_mount_fs tmpfs /run
|
||||||
|
|
||||||
|
+ network_modules
|
||||||
|
+
|
||||||
|
$_UDEV_DAEMON --daemon
|
||||||
|
udevadm trigger --action=add
|
||||||
|
|
||||||
|
@@ -167,13 +178,6 @@ fatal() {
|
||||||
|
|
||||||
|
early_setup
|
||||||
|
|
||||||
|
-if grep -s -q '\smulti-drivers-switch=' /proc/cmdline ; then
|
||||||
|
- rm -r /lib/modules/*/updates/ice
|
||||||
|
- rm -r /lib/modules/*/updates/i40e
|
||||||
|
- rm -r /lib/modules/*/updates/iavf
|
||||||
|
- echo "Removed network drivers ice, i40e and iavf"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
read_args
|
||||||
|
|
||||||
|
[ -z "$CONSOLE" ] && CONSOLE="/dev/console"
|
||||||
|
--
|
||||||
|
2.35.1
|
||||||
|
|
@ -5,3 +5,4 @@
|
|||||||
0006-init-ostree-install.sh-break-hardlinks-in-var.patch
|
0006-init-ostree-install.sh-break-hardlinks-in-var.patch
|
||||||
0007-Add-support-for-StarlingX-partitioning-formatting.patch
|
0007-Add-support-for-StarlingX-partitioning-formatting.patch
|
||||||
0008-Support-multi-drivers-in-initramfs.patch
|
0008-Support-multi-drivers-in-initramfs.patch
|
||||||
|
0009-Switch-drivers-in-initramfs.patch
|
||||||
|
Loading…
Reference in New Issue
Block a user