mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 00:58:05 +02:00
winsys/amdgpu: query ME/PFP/CE firmware versions
The radeon kernel module doesn't have the firmware query interface, so the corresponding values will remain 0. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
7f5a8dc27e
commit
e0736c438c
3 changed files with 28 additions and 0 deletions
|
|
@ -1103,6 +1103,9 @@ bool r600_common_screen_init(struct r600_common_screen *rscreen,
|
|||
printf("gfx_ib_pad_with_type2 = %i\n", rscreen->info.gfx_ib_pad_with_type2);
|
||||
printf("has_sdma = %i\n", rscreen->info.has_sdma);
|
||||
printf("has_uvd = %i\n", rscreen->info.has_uvd);
|
||||
printf("me_fw_version = %i\n", rscreen->info.me_fw_version);
|
||||
printf("pfp_fw_version = %i\n", rscreen->info.pfp_fw_version);
|
||||
printf("ce_fw_version = %i\n", rscreen->info.ce_fw_version);
|
||||
printf("vce_fw_version = %i\n", rscreen->info.vce_fw_version);
|
||||
printf("vce_harvest_config = %i\n", rscreen->info.vce_harvest_config);
|
||||
printf("clock_crystal_freq = %i\n", rscreen->info.clock_crystal_freq);
|
||||
|
|
|
|||
|
|
@ -265,6 +265,9 @@ struct radeon_info {
|
|||
bool has_uvd;
|
||||
uint32_t uvd_fw_version;
|
||||
uint32_t vce_fw_version;
|
||||
uint32_t me_fw_version;
|
||||
uint32_t pfp_fw_version;
|
||||
uint32_t ce_fw_version;
|
||||
uint32_t vce_harvest_config;
|
||||
uint32_t clock_crystal_freq;
|
||||
|
||||
|
|
|
|||
|
|
@ -99,6 +99,7 @@ static bool do_winsys_init(struct amdgpu_winsys *ws, int fd)
|
|||
struct amdgpu_heap_info vram, gtt;
|
||||
struct drm_amdgpu_info_hw_ip dma = {}, uvd = {}, vce = {};
|
||||
uint32_t vce_version = 0, vce_feature = 0, uvd_version = 0, uvd_feature = 0;
|
||||
uint32_t unused_feature;
|
||||
int r, i, j;
|
||||
drmDevicePtr devinfo;
|
||||
|
||||
|
|
@ -151,6 +152,27 @@ static bool do_winsys_init(struct amdgpu_winsys *ws, int fd)
|
|||
goto fail;
|
||||
}
|
||||
|
||||
r = amdgpu_query_firmware_version(ws->dev, AMDGPU_INFO_FW_GFX_ME, 0, 0,
|
||||
&ws->info.me_fw_version, &unused_feature);
|
||||
if (r) {
|
||||
fprintf(stderr, "amdgpu: amdgpu_query_firmware_version(me) failed.\n");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
r = amdgpu_query_firmware_version(ws->dev, AMDGPU_INFO_FW_GFX_PFP, 0, 0,
|
||||
&ws->info.pfp_fw_version, &unused_feature);
|
||||
if (r) {
|
||||
fprintf(stderr, "amdgpu: amdgpu_query_firmware_version(pfp) failed.\n");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
r = amdgpu_query_firmware_version(ws->dev, AMDGPU_INFO_FW_GFX_CE, 0, 0,
|
||||
&ws->info.ce_fw_version, &unused_feature);
|
||||
if (r) {
|
||||
fprintf(stderr, "amdgpu: amdgpu_query_firmware_version(ce) failed.\n");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
r = amdgpu_query_firmware_version(ws->dev, AMDGPU_INFO_FW_UVD, 0, 0,
|
||||
&uvd_version, &uvd_feature);
|
||||
if (r) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue