Bug 80341

Summary: Radeon firmware fails to load
Product: Drivers Reporter: Colin (colin.bruce)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: NEW ---    
Severity: normal CC: alan, alexdeucher, szg00000
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 3.10.17 onwards Subsystem:
Regression: No Bisected commit-id:

Description Colin 2014-07-16 04:01:25 UTC
The system has an ATI Radeon HD4770 graphics card installed. With kernel versions from 2.10.17 up to 3.12.14 X will start but the following errors are reported:


[    0.260880] radeon 0000:01:00.0: radeon_uvd: Can't load firmware "radeon/RV710_uvd.bin"
[    0.277383] r600_cp: Failed to load firmware "radeon/RV730_pfp.bin"
[    0.277432] [drm:rv770_startup] *ERROR* Failed to load firmware!

This may be a red herring but I noticed when investigating a different problem that the kernel tries and fails to load RV710 and RV730 firmware files despite the card being a RV740. I notice that in drivers/gpu/drm/radeon/r600.c there is a function int r600_init_microcode(....) which includes the following code:

        case CHIP_RV740:
                chip_name = "RV730";
                rlc_chip_name = "R700";
                smc_chip_name = "RV740";
                smc_req_size = ALIGN(RV740_SMC_UCODE_SIZE, 4);
                break;

This entry is unique in the function in that the chip_name does not match the case value. Probably a red herring but in any event the firmware doesn't load it seems or perhaps the error is spurious.

Best wishes....
Colin Bruce
Comment 1 Colin 2014-07-16 04:03:15 UTC
Sorry, I should have added that xvinfo reports:

bash-4.2# xvinfo
X-Video Extension version 2.2
screen #0
 no adaptors present

and mplayer for one will not work with "-vo xv".
Comment 2 Alex Deucher 2014-07-29 16:09:31 UTC
You need to have the firmware loaded to use the driver.  We don't support the driver without firmware.  Make sure you have the firmware installed and that your initrd is updated to contain the firmwware if your are using one.