[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#992699: debian-installer: Firmwares required for some sound cards



Samuel Thibault <sthibault@debian.org> (2021-08-22):
> As mentioned in the Bullseye errata, there seems to be a number of
> sound cards that require loading a firmware to be able to emit sound
> (e.g. Intel SOF). Unfortunately currently the installer loads firmware
> after loading the ISO image, while speech synthesis is needed at the
> very first interaction with the user, which is usually before that. We'd
> thus want (for the firmware-enabled image) to include firmware in the
> initrd somehow.

For context, that's sof I was fighting with:
  https://tracker.debian.org/news/1245087/accepted-hw-detect-1147-source-into-unstable/

> We discussed a bit on IRC, possibly we could just, at debian-cd step,
> catenate the cpio archives, or unpack/assemble/repack, or ship several
> initrds.

Let's clarify a little:
 - Shipping several initrds would probably mean having an empty,
   placeholder-like “extrastuff.gz” set by the debian-installer build,
   that we would replace with some firmware-containing initrd for some
   builds in debian-cd; that would mean that src:debian-installer would
   still be responsible for setting up the relevant bootloader config,
   instead of having part of it in debian-installer, and another part
   in debian-cd.
 - But I don't think that's required, adjusting the initrd in debian-cd
   should be far easier.

I thought about the “combine archives” part and smcv confirmed we should
just be able to cat (compressed) CPIO archives together. I've tried the
following with a netboot-gtk build (easier than trying to edit a
firmware-enabled ISO :D), keeping in mind my cpio-speak is rusty:

    dpkg -x firmware-sof-signed_1.7-1_all.deb tmp
    (cd tmp; find lib | cpio -Hnewc -o) | gzip -9 > ~/debian-installer/installer/build/firmware-sof-signed.cpio.gz
    cd ~/debian-installer/installer
    patch -p1 < ~/0001-Talk-to-me.patch
    make -C build/ rebuild_netboot-gtk USE_UDEBS_FROM=bullseye

I have *not* conducted extended testing, but that still boots
successfully within qemu with -soundhw all, and speaks when using the
's' shortcut for speech synthesis.

And once booted on my sof-enabled laptop, it starts speaking, so I
suppose that's a successful PoC; next step is to confirm whether
tweaking debian-cd to do the cat dance looks good to Steve as well.


Cheers,
-- 
Cyril Brulebois (kibi@debian.org)            <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant

Attachment: signature.asc
Description: PGP signature


Reply to: