Dennis Gilmore cd723a
From a8015f7dfc682100434e3ee051bf9472a8e6cad4 Mon Sep 17 00:00:00 2001
Dennis Gilmore cd723a
From: Jeremy Linton <jeremy.linton@arm.com>
Dennis Gilmore cd723a
Date: Fri, 6 Oct 2023 10:33:22 -0500
Dennis Gilmore cd723a
Subject: [PATCH] feat(kernel-modules): add Qualcomm IPC router to enable USB
Dennis Gilmore cd723a
Dennis Gilmore cd723a
The x13s, and possibly other Qualcomm based devices need the QC
Dennis Gilmore cd723a
IPC router driver in order to enable USB. Without it, its not
Dennis Gilmore cd723a
possible to boot from USB-C attached disks.
Dennis Gilmore cd723a
Dennis Gilmore cd723a
IPC in this case is Inter _Processor_ Communication and forms
Dennis Gilmore cd723a
the message bus used to communicate between differing processing
Dennis Gilmore cd723a
elements in a given system/SoC running and managing various
Dennis Gilmore cd723a
hardware devices. This means that while it appears this driver
Dennis Gilmore cd723a
should be in the dracut network modules that is incorrect
Dennis Gilmore cd723a
because its not for enabling host networking in the initrd,
Dennis Gilmore cd723a
but rather for communicating with other hardware blocks.
Dennis Gilmore cd723a
Dennis Gilmore cd723a
Those other blocks aren't limited to modems, but any SMD (shared
Dennis Gilmore cd723a
memory device), which on QC based machines includes the audio DSPs,
Dennis Gilmore cd723a
RPM (resource power manager) and of course the application
Dennis Gilmore cd723a
processor cores linux is running on.
Dennis Gilmore cd723a
Dennis Gilmore cd723a
References:
Dennis Gilmore cd723a
https://osmocom.org/projects/quectel-modems/wiki/Qualcomm_Linux_SMD
Dennis Gilmore cd723a
https://android.googlesource.com/kernel/msm/+/android-7.1.0_r0.2/Documentation/arm/msm/msm_ipc_router.txt
Dennis Gilmore cd723a
https://github.com/dracutdevs/dracut/pull/2531
Dennis Gilmore cd723a
Dennis Gilmore cd723a
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Dennis Gilmore cd723a
---
Dennis Gilmore cd723a
 modules.d/90kernel-modules/module-setup.sh | 3 ++-
Dennis Gilmore cd723a
 1 file changed, 2 insertions(+), 1 deletion(-)
Dennis Gilmore cd723a
Dennis Gilmore cd723a
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
Dennis Gilmore cd723a
index e217512594..75afecc86f 100755
Dennis Gilmore cd723a
--- a/modules.d/90kernel-modules/module-setup.sh
Dennis Gilmore cd723a
+++ b/modules.d/90kernel-modules/module-setup.sh
Dennis Gilmore cd723a
@@ -95,7 +95,8 @@ installkernel() {
Dennis Gilmore cd723a
                 "=drivers/usb/misc" \
Dennis Gilmore cd723a
                 "=drivers/usb/musb" \
Dennis Gilmore cd723a
                 "=drivers/usb/phy" \
Dennis Gilmore cd723a
-                "=drivers/scsi/hisi_sas"
Dennis Gilmore cd723a
+                "=drivers/scsi/hisi_sas" \
Dennis Gilmore cd723a
+                "=net/qrtr"
Dennis Gilmore cd723a
         fi
Dennis Gilmore cd723a
 
Dennis Gilmore cd723a
         awk -F: '/^\// {print $1}' "$srcmods/modules.dep" 2> /dev/null | instmods