At Fri, 19 Aug 2011 09:57:05 +1200, Eliot Blennerhassett wrote:
On 18/08/11 22:12, Takashi Iwai wrote:
From: Eliot Blennerhassett eblennerhassett@audioscience.com
Different kernel versions may have different driver versions installed, which in turn require different firmware versions.
If /lib/firmware/$(uname -r) exists, use it in preference to the generic /lib/firmware.
It's no good idea. The installation of the firmware has nothing to do with the running kernel version.
But running version of the kernel module may depend on a particular firmware version.
Yes, but the files there are installed directly from the kernel tree ($LINUX/firmware/*), not from linux-firmware, alsa-firmware or other external firmware trees. The latter is supposed to be generic to any version, thus installed in /lib/firmware.
The firmware in kernel-tree may be installed in the kernel-version specific directory, but it's basically not for external firmware.
External modules are not renamed, they are put in a kernel-versioned directory,
This is a wrong assumption.
so why not the firmware that they need?
On this ubuntu installation, there is all sorts of firmware in /lib/firmware/$(uname -r) and in /lib/firmare Some files are duplicated in these locations, some aren't.
It's because the firmware is included in both trees, kernel and kernel-firmware.
The former is searched before the latter when firmware is requested.
Yes, that's the exact reason -- if a conflict happens with the kernel-tree's and external firmware files, prefer the kernel-tree's.
Now, if the system has installed firmware in a versioned directory, and the someone 'updates' from alsa-firmware, they won't get the expected result because the old firmware will be used in preference to the new.
In your case, there is no firmware files in the kernel tree, thus there is no such conflict.
thanks,
Takashi
In principle, if a firmware is
not?
compatible, you must rename it, e.g. with a version suffix, etc. Or, if a firmware is backward compatible, we may keep using the same name.
-- Eliot
-- Eliot Blennerhassett AudioScience Inc.