Cyril Brulebois
2023-05-03 23:50:02 UTC
Hi,
sense as it now all does tie together :-)
Great, that's what it looked like to me but I was afraid I could have
misunderstood the situation and I didn't want to digress in a wrong
directionâŠ
Contents-firmware indices generated by debian-cd. Those contain 3
âcolumnsâ: path, package, component (the current format string is
"%-55s %s %s\n").
Even if hw-detect didn't misbehave because of spaces in filenames (i.e.
the way the list of missing files is constructed, which I've been
assuming is one of the main issue here, but I didn't dive into it
because that's not getting rewritten for Bookworm anyway)⊠it wouldn't
be able to perform the required lookup, given how it extracts those
âcolumnsâ from those indices.
(Looking at regular Contents file again, I see there's nothing done
specifically â like some kind of escaping â for paths like
â/etc/testssl/DST Root CA X3.txtâ in the testssl.sh package; so I guess
it wouldn't be crazy to just change nothing in debian-cd, and have
hw-detect deal with spotting package and component at the end of the
line, reading the whole beginning as a path; of course, if someone goes
as far as including spaces at the end of some firmware filename, we'll
have to just change the format⊠Cc-ing debian-cd@ for information.)
Anyway, you know how stupidly pragmatic I can beâŠ
For Bookworm, given we expect the firmware package to be adjusted to
include those symlinks, what if hw-detect had some little cheatsheet,
turning the space-powered filenames into their normal counterparts right
off the bat (while going through the dmesg lines), so that hw-detect
would:
- not split those into smaller parts, therefore building a list of
paths correctly;
- additionally succeed in performing the firmware file to firmware
package (and component) lookup;
- deploy the relevant firmware package;
⊠while the linux kernel would ultimately request the space-powered
filenames again, this time finding the symlinks that the updated package
would ship, being happy, no longer complaining, and hw-detect would give
a green light and carry on.
Embedding a little symlinks â files mapping for one single package,
that's really not expected to change too much this close to the releaseâŠ
looks like (1) a very ugly kludge, granted; but also (2) a very small
price to pay to get immediate support for that particular way of booting
Pi devices, without waiting on any major, post-release rewrite.
If that looks fine to you, feel free to clone this against hw-detect
with the symlinks â files mapping. Cc-ing debian-boot@ for information
as well.
Cheers,
I added a note[1] on the rpi4-uefi.dev GitHub repository, and from
one of your fellow contributors' responses, it seems that in fact
the filename-with-spaces format _is_ referenced from
linux-firmware.git, in a 'WHENCE' file that is used to create
symlinks (I hadn't been aware of that previously).
And that makes it a firmware-brcm80211 issue and now it all does makeone of your fellow contributors' responses, it seems that in fact
the filename-with-spaces format _is_ referenced from
linux-firmware.git, in a 'WHENCE' file that is used to create
symlinks (I hadn't been aware of that previously).
sense as it now all does tie together :-)
misunderstood the situation and I didn't want to digress in a wrong
directionâŠ
So while upstream does define the link from what I earlier called
'weird' name to brcmfmac43455-sdio.raspberrypi,4-model-b.txt, the Debian
firmware-brcm80211 package does not define that link and is therefor
missing.
Adding the links will at least make those paths shows up in the'weird' name to brcmfmac43455-sdio.raspberrypi,4-model-b.txt, the Debian
firmware-brcm80211 package does not define that link and is therefor
missing.
Contents-firmware indices generated by debian-cd. Those contain 3
âcolumnsâ: path, package, component (the current format string is
"%-55s %s %s\n").
Even if hw-detect didn't misbehave because of spaces in filenames (i.e.
the way the list of missing files is constructed, which I've been
assuming is one of the main issue here, but I didn't dive into it
because that's not getting rewritten for Bookworm anyway)⊠it wouldn't
be able to perform the required lookup, given how it extracts those
âcolumnsâ from those indices.
(Looking at regular Contents file again, I see there's nothing done
specifically â like some kind of escaping â for paths like
â/etc/testssl/DST Root CA X3.txtâ in the testssl.sh package; so I guess
it wouldn't be crazy to just change nothing in debian-cd, and have
hw-detect deal with spotting package and component at the end of the
line, reading the whole beginning as a path; of course, if someone goes
as far as including spaces at the end of some firmware filename, we'll
have to just change the format⊠Cc-ing debian-cd@ for information.)
Anyway, you know how stupidly pragmatic I can beâŠ
For Bookworm, given we expect the firmware package to be adjusted to
include those symlinks, what if hw-detect had some little cheatsheet,
turning the space-powered filenames into their normal counterparts right
off the bat (while going through the dmesg lines), so that hw-detect
would:
- not split those into smaller parts, therefore building a list of
paths correctly;
- additionally succeed in performing the firmware file to firmware
package (and component) lookup;
- deploy the relevant firmware package;
⊠while the linux kernel would ultimately request the space-powered
filenames again, this time finding the symlinks that the updated package
would ship, being happy, no longer complaining, and hw-detect would give
a green light and carry on.
Embedding a little symlinks â files mapping for one single package,
that's really not expected to change too much this close to the releaseâŠ
looks like (1) a very ugly kludge, granted; but also (2) a very small
price to pay to get immediate support for that particular way of booting
Pi devices, without waiting on any major, post-release rewrite.
If that looks fine to you, feel free to clone this against hw-detect
with the symlinks â files mapping. Cc-ing debian-boot@ for information
as well.
Cheers,
--
Cyril Brulebois (***@debian.org) <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant
Cyril Brulebois (***@debian.org) <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant