On Sun, 2011-08-28 at 07:36 +0200, Borislav Petkov wrote:
With CONFIG_DRM_RADEON=y, the microcode is needed before it can be loaded from userspace, so it needs to be built into the kernel as well.
How should I do that? I've tried to set all "m"s to "y" in .config and still saw this issue. Should I set some special parameter?
You need to add "radeon/CEDAR_pfp.bin" to CONFIG_EXTRA_FIRMWARE when you configure your kernel and enable CONFIG_FIRMWARE_IN_KERNEL.
The radeon/CEDAR_pfp.bin file (+ leading directory, mind you) should most probably be located in /lib/firmware or to whatever you have set CONFIG_EXTRA_FIRMWARE_DIR so that Kbuild can find it (if not, you'll get a warning at the end of the kernel build). This way, it works for both radeon being =m and =y.
Should we make Kconfig pop up a dialog and ask for the whereabouts of these firmware thingies when you mark the driver =y?
This all sounds like magic to me, having to know you need to add to EXTRA_FIRMWARE, having to know what file it needs etc.. For all intents and purposes =y just doesn't work and that's broken.