LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   r600_cp: Failed to load firmware "radeon/R600_rlc.bin" (https://www.linuxquestions.org/questions/linux-newbie-8/r600_cp-failed-to-load-firmware-radeon-r600_rlc-bin-791940/)

nocountryman 02-27-2010 06:49 AM

r600_cp: Failed to load firmware "radeon/R600_rlc.bin"
 
So:

Fedora 12, Kernel 2.6.33 stable. When i compile this kernel with radeon and KMS enabled i get the following:

it take a whole minute for it to fall back to non kms setting, but what worse is the it won't find the damned firmware. i have this bin file in almost every directory (/lib/firmware(redeon)) have in the the main source tree of the kernel before compiling and after. i tried to build it into the kernel (ext_firmware) blobs but no F...ing luck.

i've googled all night alongside compiling new kernel with diff settings (10 hours O.o run :D ) and no luck... there was something on mailing list the they are not going to include this firmware in the kernel ever(only git or something) and placing the firmware into the appropriate directory should fix everything.

On the side note: i had Arch linux installed just recently (dont ask why i have swithched arch was perfect but: not LSB , thus ..well doesnt matter) nad i had 2.6.33.rc8 installed with KMS and all was freaking perfect... it had no problem finding that stupid firmware..

Any help appreciated.!!

Code:

0.671784] [drm] Clocks initialized !
[    0.672054] [drm] Detected VRAM RAM=256M, BAR=256M
[    0.672059] [drm] RAM width 128bits DDR
[    0.672152] [TTM] Zone  kernel: Available graphics memory: 431288 kiB.
[    0.672155] [TTM] Zone highmem: Available graphics memory: 2071964 kiB.
[    0.672176] [drm] radeon: 256M of VRAM memory ready
[    0.672179] [drm] radeon: 512M of GTT memory ready.
[    0.672232] [drm] radeon: irq initialized.
[    0.672235] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.673574] [drm] Loading RV630 Microcode
[    0.673579] platform radeon_cp.0: firmware: using built-in firmware radeon/RV630_pfp.bin
[    0.673583] platform radeon_cp.0: firmware: using built-in firmware radeon/RV630_me.bin
[    0.673588] platform radeon_cp.0: firmware: requesting radeon/R600_rlc.bin
[    1.659042] async/0 used greatest stack depth: 6408 bytes left
[  60.673191] r600_cp: Failed to load firmware "radeon/R600_rlc.bin"
[  60.673243] [drm:r600_startup] *ERROR* Failed to load firmware!

[  60.673305] radeon 0000:01:00.0: disabling GPU acceleration
[  60.673371] radeon 0000:01:00.0: f749f900 unpin not necessary
[  60.673374] radeon 0000:01:00.0: f749f900 unpin not necessary
[  60.673386] [drm] Enabling audio support


adamk75 02-27-2010 12:42 PM

If radeon is being loaded from an initrd, the R600_rlc.bin file needs to be includeds in the initrd as well. Similarly, if radeon is compiled into the kernel, the firmware needs to be compiled in as well.

nocountryman 02-27-2010 02:40 PM

thats the thing i did compile the bin into kerlnel. All has to work. I did that with arch and it worked no problem. im totally lost, but ill drink loads o beer an get on with this bloody thing ;)

nocountryman 03-01-2010 11:04 AM

i give up, it doesnt work.. i've tried everything. if anyone has any ideas let me know, i will provide any info needed...

adamk75 03-01-2010 11:12 AM

Can you attach or pastebin your kernel .config file?

Adam

nocountryman 03-01-2010 03:47 PM

1 Attachment(s)
here the config. note that firmware here was tried as blob, but i;ve tried without it withthe same result

adamk75 03-01-2010 03:54 PM

If I understand my kernel configs properly these two lines will have the kernel look for the firmware at /firmware/R600_rlc.bin

Code:

CONFIG_EXTRA_FIRMWARE="R600_rlc.bin"
CONFIG_EXTRA_FIRMWARE_DIR="firmware"

On my system, the firmware is installed to /lib/firmware/radeon/R600_rlc.bin.

CONFI_EXTRA_FIRMWARE is 'radeon/R600_rlc.bin' and CONFIG_EXTRA_FIRMWARE_DIR is '/lib/firmware'. Does it work if you adjust those values to point to the true locateion of R600_rlc.bin?

Adam

nocountryman 03-01-2010 03:57 PM

ill try now, and will let you know. should take not more than 15 mins.. cheers Adam

nocountryman 03-01-2010 04:16 PM

Adam!!!! Your are The Genius ;)

It worked like a charm! i was confused after reading the Kernel help regarding the paths (there was something about your sources root firmware directory) and i had the actual paths to /lib/firmware/radeon (and to the sources where i was building the kernel) and the blob was R600_rlc.bin, but... well, you are The Man .. Big Ups mate!!!

Cheers

The Happy n00b :)

**********************************

Follow the Adam:

Make sure that your ".config" looks like this:

CONFI_EXTRA_FIRMWARE is 'radeon/R600_rlc.bin'
CONFIG_EXTRA_FIRMWARE_DIR is '/lib/firmware'

adamk75 03-01-2010 06:41 PM

Cool, glad you got it working.

Adam

Q_Linux 04-20-2011 11:36 AM

Quote:

Originally Posted by adamk75 (Post 3881728)
Cool, glad you got it working.

Adam

I am having the same exact issues myself. I installed openSuSe 11.4 and noticed the same error message upon bootup. I use a Lenovo W500 laptop. The desktop login doesn't make it to the screen. I went into fail-safe mode to attempt to try the same thing and the file must be binary. I cannot make the changes. I am logged in as root myself. Do I need a conversion tool to make these changes?

adamk75 04-20-2011 12:37 PM

On OpenSUSE 11.4, /lib/firmware/radeon/R600_rlc.bin is part of the kernel-firmware package and should be installed by default and added to the initrd by your distribution by default, too. Is that package installed?

Q_Linux 04-20-2011 02:05 PM

Quote:

Originally Posted by adamk75 (Post 4330703)
On OpenSUSE 11.4, /lib/firmware/radeon/R600_rlc.bin is part of the kernel-firmware package and should be installed by default and added to the initrd by your distribution by default, too. Is that package installed?

Yes it is already located at lib/firmware/radeon the ls shows it as R600_rlc.bin. This is a dual-boot system I have built with Windows 7 on the other partition.
I am not sure if it's been added as a default because when I view this file in /boot/initrd. It's binary. I am logging in failsafe mode as root. The machine won't boot up normally after the error message:

r600_cp: Failed to load firmware "radeon/R600_rlc.bin"
[drm:r600_startup] *ERROR* Failed to load firmware!

adamk75 04-20-2011 02:22 PM

Seeing as this seems to be a problem with the creation of the initrd on opensuse, you might have more luck on the opensuse forums.

Adam

Q_Linux 04-22-2011 09:58 AM

Quote:

Originally Posted by adamk75 (Post 4330816)
Seeing as this seems to be a problem with the creation of the initrd on opensuse, you might have more luck on the opensuse forums.

Adam

Thanks for your response the other day. This is what I did.

BIOS Setup -> Config -> Display -> Graphics Device setting.

Set the BIOS config setting to Discrete.

It was set at Integrated and Switchable was enabled. It's allowing me on without this error flagging upon boot.


All times are GMT -5. The time now is 10:33 PM.