Mesa (master): ac: add radeon_info::marketing_name, replacing the winsys callback

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Apr 23 15:31:11 UTC 2019


Module: Mesa
Branch: master
Commit: 64d6cc982d5ccf6b396c0dec24611c5c6ef1cc7d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=64d6cc982d5ccf6b396c0dec24611c5c6ef1cc7d

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Feb 12 12:14:15 2019 -0500

ac: add radeon_info::marketing_name, replacing the winsys callback

Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Acked-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

---

 src/amd/common/ac_gpu_info.c                  |  2 ++
 src/amd/common/ac_gpu_info.h                  |  1 +
 src/gallium/drivers/r600/r600_pipe_common.c   | 13 +------------
 src/gallium/drivers/radeon/radeon_winsys.h    |  2 --
 src/gallium/drivers/radeonsi/si_get.c         | 15 +++------------
 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);




More information about the mesa-commit mailing list