-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Installation is a nightmare for the naive user #22
Comments
@BrucePerens using linux-firmware was the initial plan but there were disagreements on the 'debug tools (sof-logger and .ldc files), so we provided sof-bin as is and assumed distro maintainers would pick the firmware from there. that's the working model with Fedora and Ubuntu. That said you're right that we should do a better job advertising what the latest version is, and add more references on this in the documentation https://thesofproject.github.io/latest/getting_started/index.html#debugging-audio-issues-on-intel-platforms |
For now, it would be nice if the internal disagreement could be resolved to the point that production firmware - not the debug tools - could be placed on the linux-firmware repository. People who build their own kernels can't really depend on distribution packagers to keep up with the kernel driver, but they have learned to update from the firmware repository. |
@plbossart does everyone need the |
@marc-hb that'd be the first thing we ask if there is a complicated bug report where we need a trace... So not all users need this, but power users who report bugs need to have an 'apt install' way to getting these files. |
Totally understand the requirement for an |
There was also the argument that topology files aren't binaries and as such not suitable for linux-firmware - they can be re-generated with alsa-lib (edit: and alsa-utils). |
Now that last bit about .tplg files sucks more, do you have a pointer, approx. date and/or some search keywords to that past argument?
So It would be error-prone to request all Linux distributions to match the version of the topology sources with the version of the firmware binary. It would also be a waste of effort to ask them to regenerate the (hopefully) exact same .tplg files independently... cc: @lgirdwood |
It sounds to me like you guys are overthinking this. I believe you should
put all the files that it takes to make the driver work in the
linux-firmware distribution. If someone pushes back, you can remove files
then. But I doubt anyone will. If you do that, those files will get into
distributions, and they will be used by everyone who builds a custom
kernel. Right now I believe some distributions, and a lot of people who
build custom kernels, are holding back on configuring new kernels to use
your driver; because it results in a non-working sound system.
Just make it simple for the user.
Thanks
Bruce
…On Tue, Dec 1, 2020, 6:07 PM Marc ***@***.***> wrote:
Now that last bit about .tplg files sucks more, do you have a pointer,
approx. date and/or some search keywords to that past argument?
hexdump -C shows many ASCII characters in .tplg files but for me they're
binaries until someone demonstrates that cat can send them to some locale
and terminal without wrecking the latter.
So linux-firmware would be only for binaries that can't be regenerated
from open source? I don't see that in its README.
It would be error-prone to request all Linux distributions to match the
version of the topology sources with the version of the firmware binary. It
would also be a waste of effort to ask them to regenerate the (hopefully)
exact same .tplg files independently...
cc: @lgirdwood <https://github.com/lgirdwood>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#22 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAINM32PARWRY47PE3TG6S3SSWOMRANCNFSM4TH6EJHQ>
.
|
@BrucePerens you are right, there was some pushback on including topology binaries and logger strings (the LDC files) alongside the firmware binaries in linux-firmware. The driver needs both the FW binary AND the topology binary to work. Only the logger needs the firmware string (LDC file). @marc-hb topologies are binaries built from ASLA conf public sources, but you are right in that it's not easy for distro's to easily build the topologies (as may need ALSA lib/utils git versions from time to time) or easily build the firmware (may need proprietary compiler) and notwithstanding any code signing for platforms with private keys. @marc-hb can we look at linux-firmware again for FW binary and topologies (not LDC files). @perexg would this work for you, IIUC you had some issues with the LDC files being present in linux-firmware but I can't recall now if you had a similar issue with the topology binaries ? I've also disabled force push rebasing in this repo. |
We package the SOF firmware in the separate package alsa-sof-firmware at the time using sof-bin. The linux-firmware is going to be so big anyway, but it's probably out-of-scope to resolve this issue here. It may make sense to mirror the latest necessary files to linux-firmware, but our linux-firmware package will not use those files (keeping them in the alsa-sof-firmware). Also, think about driver / topology / DSP code compatibility issues. The linux-firmware is supposed to work with wide range of kernel versions and the SOF is (or was?) under the heavy development. Past discussion: https://mailman.alsa-project.org/pipermail/alsa-devel/2019-May/149961.html [last paragraph] |
If you absolutely can't put the required packages in linux-firmware right
now, please have the error message give the proper URL for the firmware
package when it can't load the firmware. It took me at least half an hour
to figure out where to get it, as detailed in the opening message.
…On Thu, Dec 3, 2020 at 2:45 AM Jaroslav Kysela ***@***.***> wrote:
@marc-hb <https://github.com/marc-hb> can we look at linux-firmware again
for FW binary and topologies (not LDC files). @perexg
<https://github.com/perexg> would this work for you, IIUC you had some
issues with the LDC files being present in linux-firmware but I can't
recall now if you had a similar issue with the topology binaries ?
We package the SOF firmware in the separate package alsa-sof-firmware at
the time using sof-bin. The linux-firmware is going to be so big anyway,
but it's probably out-of-scope to resolve this issue here.
It may make sense to mirror the latest necessary files to linux-firmware,
but our linux-firmware package will not use those files (keeping them in
the alsa-sof-firmware). Also, think about driver / topology / DSP code
compatibility issues. The linux-firmware is supposed to work with wide
range of kernel versions and the SOF is (or was?) under the heavy
development.
Past discussion:
https://mailman.alsa-project.org/pipermail/alsa-devel/2019-May/149961.html
[last paragraph]
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#22 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAINM343WXDJ7WHVIJNIHSLSS5T5HANCNFSM4TH6EJHQ>
.
--
Bruce Perens - CEO at stealth startup. I'll tell you what it is eventually
:-)
|
@marc-hb the notion of topology predates SOF, and there isn't a single topology file that was added to linux-firmware. I don't have a trace but a very good memory of a discussion with the Skylake driver owners a couple of years ago - but it doesn't hurt to ping the linux-firmware maintainers for confirmation. I also want to mention that we have a ton of topology files, see [1], compared to a single firmware binary per hardware generation. I really don't see how we could possibly keep every version of topology file in linux-firmware, as currently done with the symbolic links. |
Hi @BrucePerens
Please let us know if I missed anything. |
I'll try a new kernel. Thanks!
…On Thu, Dec 17, 2020 at 1:26 PM Marc ***@***.***> wrote:
Hi @BrucePerens <https://github.com/BrucePerens>
- printing the URL when the firmware is missing has been queued, see
above
- We will submit firmware to linux-firmware and topologies if
acceptable (afraid not)
- I started work to simplify the go.sh and packaging experience.
Please let us know if I missed anything.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#22 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAINM36EM7G6Q3BBW6PMLA3SVJZQFANCNFSM4TH6EJHQ>
.
--
Bruce Perens - CEO at stealth startup. I'll tell you what it is eventually
:-)
|
This comment has been minimized.
This comment has been minimized.
@mmokrejs your question is unrelated to the firmware releases really, what people enable in their distributions is their choice entirely. We provide a list of configs that we used in our tests: and we provide guidelines here |
@BrucePerens no news is good news? |
Hi,
I am currently running Debian stable with a bleeding-edge kernel. What does it take to get the SOF driver running?
Why isn't this in the linux-firmware repository?
The text was updated successfully, but these errors were encountered: