Default initramfs is missing qcom_geni_serial module

Bug #2019435 reported by Jeffrey Hugo
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
initramfs-tools (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Running Ubuntu 22.04 with the HWE kernel (5.19.0-38-generic #39~22.04.1-Ubuntu) on a Qualcomm RB5 derived product - https://developer.qualcomm.com/qualcomm-robotics-rb5-kit

The platform has a USB to serial port that can be used as the Linux console. However, this requires the qcom_geni_serial driver to operate. That driver is available as a built module already, but only on the rootfs. It is not included in the initramfs by default.

The problem with this is that the console is activated quite late in boot, which reduces it's usefulness in debugging kernel/boot issues. Also, when it finally does come up, the console cannot operate as a login interface (no login prompt is provided) because the interface is initialized after systemd is operational.

I can manually add the module to the initramfs by adding "qcom_geni_serial" to /etc/initramfs-tools/modules and running update-initramfs, however this is quite inconvenient. It requires me to remove the storage from the platform, and modify it on another system.

Given that the default initramfs already contains a large number of serial drivers, it feels like qcom_geni_serial should be included by default which would give an optimal "out of the box" experience on a number of Qualcomm based platforms.

Revision history for this message
Dimitri John Ledkov (xnox) wrote :

it does feel too many that it should be included by default, not sure why the rest of the tty/serial drivers are not included, or how come this one is not scoped under usb/hid, it is fairly small, and built on arm64 only i think, thus it is useful to include by default - as at best it is unlikely to impact initrd sizes much, and expanding support of generic kernels on arm64 is very much in scope for Ubuntu.

affects: initramfs-tools → initramfs-tools (Ubuntu)
Revision history for this message
Benjamin Drung (bdrung) wrote :

dracut is installing "=drivers/tty/serial" (see modules.d/90kernel-modules/module-setup.sh). So we can just do the same in initramfs-tools.

Changed in initramfs-tools (Ubuntu):
importance: Undecided → Medium
status: New → Triaged
assignee: nobody → Benjamin Drung (bdrung)
Benjamin Drung (bdrung)
Changed in initramfs-tools (Ubuntu):
status: Triaged → Fix Committed
assignee: Benjamin Drung (bdrung) → nobody
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

@bdrung i agree we should include all serial if they are small enough.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package initramfs-tools - 0.142ubuntu12

---------------
initramfs-tools (0.142ubuntu12) mantic; urgency=medium

  * Change dracut-core dependency to newly created dracut-install package
    (LP: #2031304)
  * autopkgtest:
    - Explicitly specify supported architectures
    - Enable KVM if available (not available on Ubuntu runners)
    - log qemu parameters

initramfs-tools (0.142ubuntu11) mantic; urgency=medium

  * Use dracut-install in manual_add_modules to speed up mkinitramfs
    significantly (LP: #2031185)
  * Install tty/serial kernel modules. Dracut is doing the same. (LP: #2019435)
  * Harmonize kernel module installation with dracut's behavior (LP: #2031841):
    - Use the symbol regex from dracut-install to reduce the unnessary block
      and net kernel modules.
    - Install all usb/typec kernel modules instead of cherry-picking some.
    - Do not install ARM/RISCV specific modules on other architectures.

 -- Benjamin Drung <email address hidden> Wed, 23 Aug 2023 10:58:40 +0200

Changed in initramfs-tools (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.