Use semantic naming for microcode files
Submitted by Nathan Schulte
Assigned to Default DRI bug account
Description
This is a rather trivial request, but it would help the uninitiated and long term maintenance.
It would be nice if the microcode was more semantically named, rather than how it exists now.
For example, I currently have an issue with UVD on a Radeon HD 8970M, which is "Neptune XT" based (which is "Pitcairn" based), and I receive the following logging:
[ 15.942210] [drm] Loading PITCAIRN Microcode
[ 15.966837] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/PITCAIRN_pfp.bin
[ 15.976695] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/PITCAIRN_me.bin
[ 15.996448] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/PITCAIRN_ce.bin
[ 16.015403] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/PITCAIRN_rlc.bin
[ 16.016529] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/PITCAIRN_mc.bin
[ 16.026910] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/PITCAIRN_smc.bin
[ 16.045744] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/TAHITI_uvd.bin
....
[ 65.525470] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 66.537637] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 67.549797] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 68.561967] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 69.574142] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 70.586334] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 71.598533] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 72.610705] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 73.622877] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 74.635068] [drm:uvd_v1_0_start] ERROR UVD not responding, trying to reset the VCPU!!!
[ 74.654938] [drm:uvd_v1_0_start] ERROR UVD not responding, giving up!!!
[ 74.654955] [drm:si_startup] ERROR radeon: failed initializing UVD (-1).
At first glance, I'm thinking: well clearly TAHITI_uvd.bin is incorrect for PITCAIRN Microcode, but that's not quite how things work. It would be nice to name the UVD microcode after the actual version of the platform the code is targeting. Perhaps this is simply a naming collision issue and the UVD microcode naming is semantic within the context (that is: my Radeon HD 8970M card really does run the TAHITI version of UVD), but that's doubtful and I would suggest the names change to be more meaningful, :).
Another proposition is to skip the "fully semantic naming" idea above and just use symlinks to bridge the two namespaces.