diff options
author | Marek Olšák <[email protected]> | 2019-02-12 12:14:15 -0500 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2019-04-23 11:28:56 -0400 |
commit | 64d6cc982d5ccf6b396c0dec24611c5c6ef1cc7d (patch) | |
tree | a30438ca7a2d57e1b8d0535af370a493435d7e12 /src | |
parent | 9b33465481daf465cde3ff46261486ab5c6433c6 (diff) |
ac: add radeon_info::marketing_name, replacing the winsys callback
Tested-by: Dieter Nützel <[email protected]>
Acked-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/common/ac_gpu_info.c | 2 | ||||
-rw-r--r-- | src/amd/common/ac_gpu_info.h | 1 | ||||
-rw-r--r-- | src/gallium/drivers/r600/r600_pipe_common.c | 13 | ||||
-rw-r--r-- | src/gallium/drivers/radeon/radeon_winsys.h | 2 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_get.c | 15 | ||||
-rw-r--r-- | src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c | 7 |
6 files changed, 7 insertions, 33 deletions
diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index afbb0239628..fa052c8b861 100644 --- a/src/amd/common/ac_gpu_info.c +++ b/src/amd/common/ac_gpu_info.c @@ -333,6 +333,8 @@ bool ac_query_gpu_info(int fd, amdgpu_device_handle dev, return false; } + info->marketing_name = amdgpu_get_marketing_name(dev); + /* Set which chips have dedicated VRAM. */ info->has_dedicated_vram = !(amdinfo->ids_flags & AMDGPU_IDS_FLAGS_FUSION); diff --git a/src/amd/common/ac_gpu_info.h b/src/amd/common/ac_gpu_info.h index 5241c28f2a7..4e3afc2b4dc 100644 --- a/src/amd/common/ac_gpu_info.h +++ b/src/amd/common/ac_gpu_info.h @@ -48,6 +48,7 @@ struct radeon_info { /* Device info. */ const char *name; + const char *marketing_name; uint32_t pci_id; enum radeon_family family; enum chip_class chip_class; diff --git a/src/gallium/drivers/r600/r600_pipe_common.c b/src/gallium/drivers/r600/r600_pipe_common.c index fce35b45141..bce45ea0456 100644 --- a/src/gallium/drivers/r600/r600_pipe_common.c +++ b/src/gallium/drivers/r600/r600_pipe_common.c @@ -805,13 +805,6 @@ static const char* r600_get_device_vendor(struct pipe_screen* pscreen) return "AMD"; } -static const char *r600_get_marketing_name(struct radeon_winsys *ws) -{ - if (!ws->get_chip_name) - return NULL; - return ws->get_chip_name(ws); -} - static const char *r600_get_family_name(const struct r600_common_screen *rscreen) { switch (rscreen->info.family) { @@ -1274,11 +1267,7 @@ bool r600_common_screen_init(struct r600_common_screen *rscreen, ws->query_info(ws, &rscreen->info); rscreen->ws = ws; - if ((chip_name = r600_get_marketing_name(ws))) - snprintf(family_name, sizeof(family_name), "%s / ", - r600_get_family_name(rscreen) + 4); - else - chip_name = r600_get_family_name(rscreen); + chip_name = r600_get_family_name(rscreen); if (uname(&uname_data) == 0) snprintf(kernel_version, sizeof(kernel_version), diff --git a/src/gallium/drivers/radeon/radeon_winsys.h b/src/gallium/drivers/radeon/radeon_winsys.h index 4e53c992fdf..2d86c7f905b 100644 --- a/src/gallium/drivers/radeon/radeon_winsys.h +++ b/src/gallium/drivers/radeon/radeon_winsys.h @@ -683,8 +683,6 @@ struct radeon_winsys { bool (*read_registers)(struct radeon_winsys *ws, unsigned reg_offset, unsigned num_registers, uint32_t *out); - - const char* (*get_chip_name)(struct radeon_winsys *ws); }; static inline bool radeon_emitted(struct radeon_cmdbuf *cs, unsigned num_dw) diff --git a/src/gallium/drivers/radeonsi/si_get.c b/src/gallium/drivers/radeonsi/si_get.c index 67fbc50998b..eddb383c270 100644 --- a/src/gallium/drivers/radeonsi/si_get.c +++ b/src/gallium/drivers/radeonsi/si_get.c @@ -48,13 +48,6 @@ static const char *si_get_device_vendor(struct pipe_screen *pscreen) return "AMD"; } -static const char *si_get_marketing_name(struct radeon_winsys *ws) -{ - if (!ws->get_chip_name) - return NULL; - return ws->get_chip_name(ws); -} - static int si_get_param(struct pipe_screen *pscreen, enum pipe_cap param) { struct si_screen *sscreen = (struct si_screen *)pscreen; @@ -943,14 +936,12 @@ static struct disk_cache *si_get_disk_shader_cache(struct pipe_screen *pscreen) static void si_init_renderer_string(struct si_screen *sscreen) { - struct radeon_winsys *ws = sscreen->ws; char first_name[256], second_name[32] = {}, kernel_version[128] = {}; struct utsname uname_data; - const char *marketing_name = si_get_marketing_name(ws); - - if (marketing_name) { - snprintf(first_name, sizeof(first_name), "%s", marketing_name); + if (sscreen->info.marketing_name) { + snprintf(first_name, sizeof(first_name), "%s", + sscreen->info.marketing_name); snprintf(second_name, sizeof(second_name), "%s, ", sscreen->info.name); } else { diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c b/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c index 45e54b4791d..e847c5cff10 100644 --- a/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c +++ b/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c @@ -273,12 +273,6 @@ static bool amdgpu_winsys_unref(struct radeon_winsys *rws) return destroy; } -static const char* amdgpu_get_chip_name(struct radeon_winsys *ws) -{ - amdgpu_device_handle dev = ((struct amdgpu_winsys *)ws)->dev; - return amdgpu_get_marketing_name(dev); -} - static void amdgpu_pin_threads_to_L3_cache(struct radeon_winsys *rws, unsigned cache) { @@ -388,7 +382,6 @@ amdgpu_winsys_create(int fd, const struct pipe_screen_config *config, ws->base.cs_request_feature = amdgpu_cs_request_feature; ws->base.query_value = amdgpu_query_value; ws->base.read_registers = amdgpu_read_registers; - ws->base.get_chip_name = amdgpu_get_chip_name; ws->base.pin_threads_to_L3_cache = amdgpu_pin_threads_to_L3_cache; amdgpu_bo_init_functions(ws); |