That filename doesn't sound right. I don't remember the exact name but thought it had "rlc" in it.
Might be worth asking on #radeon IRC.
Well, at least, I discovered something new : make firmware_install indeed installs the firmwares in /lib/firmware.
However, it doesn't solve my problem, I still have a message at boot looking like "try loadinf adm_ucode/microcode_amd.bin.
Which of course isn't anywhere to be found. :-)
Well, I guess I'll retry with later rc.
That filename doesn't sound right. I don't remember the exact name but thought it had "rlc" in it.
Might be worth asking on #radeon IRC.
I think the firmware can be either built-in into kernel or extracted into (usually) /lib/firmware/kernel-version. But it cannot be rather compiled into kernel as it's already provided in binary format.
I've got the same problem with R600_rlc.bin being not found. And not just with this kernel release but since IRQ support was introduced a few days ago for R600 & R700 (before 2.6.33-rc1 I was compiling kernel 2.6.32 + patches from the linux-next branch). To enable that feature R600_rlc.bin or R700_rlc.bin is required. It seems both are still missing in the latest kernel. I unpacked the archive, looked into linux-2.6.33-rc1/firmware/radeon and didn't see any of them among other radeon firmware.
I could download it from Internet and put in place after compiling but I prefer to have it buit-in like e.g. these both (on my working kernel version in which IRQ support was not included yet):
[fragment of dmesg]
...
platform radeon_cp.0: firmware: using built-in firmware radeon/RV635_pfp.bin
[ 1.891532] platform radeon_cp.0: firmware: using built-in firmware radeon/RV635_me.bin
...
I think all radeon firmware should be built-in if option Enable modesetting on radeon by default is enabled in kernel config (to be found under Device Drivers > Staging drivers). On my system that's the only way I can get KMS working (and it works quite nice including 3D support). If I disable that option and then turn KMS on manualy by adding radeon.modeset=1 to GRUB I just get black screen or coloured stripes. So now I compiled 2.6.33-rc1 with KMS enabled in config as usual. When booting it can't find the R600_rlc.bin. KMS still works but I loose 3D support and have random screen issues. If I could just disable IRQ support in kernel config (so it won't need that firmware) and at least get benefits from many other improvements committed into radeon I'd still be happy. But I couldn't find such option.
---------
Does anyone know if/when R600 / R700_rlc.bin will be included in kernel (I mean in the original kernel, not shipped with particular linux distributions)? And is there any workaround for the problem if I can't have the firmware built-in? Or maybe it is possible?
Last edited by trapDoor; 12-18-2009 at 04:37 PM.
File R600_rlc.bin You can find in second URL given in http://www.phoronix.com/forums/showp...&postcount=119. I've put it either in /lib/firmware/2.6.33-999-generic/radeon/R600_rlc.bin or in /lib/firmware/radeon/R600_rlc.bin (I had to create radeon folder first) ...
Just to add, I had to disable IRQ assignment for graphic card in BIOS.
Last edited by zika; 12-19-2009 at 03:21 AM.
Thanks zika but I already had the firmware file. My problem wasn't regarding where to find it or place it after compiling kernel.
As I wrote earlier I'd prefer to have it built-in into kernel like the other 2 firmware: RV635_pfp.bin and RV635_me.bin. I believe those two get built-in (instead of being extracted to the /lib/firmware/... folder) when I choose option Device Drivers > Staging Drivers > Enable modesetting on radeon by default in kernel configuration before compiling. As R600_rlc.bin is not shipped with the kernel source like the other firmware files I can't see any way to build it in during compilation. I'm referring only to the original kernel source archive I download from http://www.kernel.org/ and compile myself (the 'traditional' way, not 'debian-ubuntu' way). I work on Ubuntu but not using the binary or source .deb packages provided in the Ubuntu kernel-mainline repository (~kernel-ppa).
Last edited by trapDoor; 12-19-2009 at 08:42 AM.
They're not going to be built in unless you do it manually on your own system. New firmware is going into /lib/firmware in binary files.
Thanks bridgman. And just to resolve all doubts:
1) does it affect graphics performance and/or stability if these firmware files: RV635_pfp.bin and RV635_me.bin are built-in (like in my current kernel) but R600_rlc.bin is not?
2) will be the R6xx_rlc.bin shipped with the (original) kernel source archives or do I have to always download it separately (or use existing firmware provided in future distributions versions) and put in place manually after compiling kernel?
Last edited by trapDoor; 12-19-2009 at 03:04 PM.
Nope. Once the microcode is loaded into the GPU the chip doesn't care where it came from. AFAIK the loading only happens once, during system startup.
I'm not sure of the exact path from source tree to your distro or system, but it should come down the same way as the firmware for network hardware and disk controllers. Whatever that is![]()