[Mesa-dev] [PATCH 2/3] radeonsi: add support for FIJI (v4)
Alex Deucher
alexdeucher at gmail.com
Mon Aug 3 10:51:09 PDT 2015
v2: incorporate comments from Marek
v3: add missing fiji case in winsys init
use tonga raster config (double check this)
v4: rebase on harvest patch
Reviewed-by: Marek Olšák <marek.olsak at amd.com> (v3)
Reviewed-by: Christian König <christian.koenig at amd.com> (v3)
Reviewed-by: David Zhang <david1.zhang at amd.com> (v3)
Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
---
src/gallium/drivers/radeon/r600_pipe_common.c | 2 ++
src/gallium/drivers/radeon/radeon_winsys.h | 1 +
src/gallium/drivers/radeonsi/si_state.c | 5 +++++
src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c | 4 ++++
4 files changed, 12 insertions(+)
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c
index 57a752f..f657adb 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.c
+++ b/src/gallium/drivers/radeon/r600_pipe_common.c
@@ -405,6 +405,7 @@ static const char* r600_get_name(struct pipe_screen* pscreen)
case CHIP_TONGA: return "AMD TONGA";
case CHIP_ICELAND: return "AMD ICELAND";
case CHIP_CARRIZO: return "AMD CARRIZO";
+ case CHIP_FIJI: return "AMD FIJI";
default: return "AMD unknown";
}
}
@@ -525,6 +526,7 @@ const char *r600_get_llvm_processor_name(enum radeon_family family)
case CHIP_TONGA: return "tonga";
case CHIP_ICELAND: return "iceland";
case CHIP_CARRIZO: return "carrizo";
+ case CHIP_FIJI: return "fiji";
default: return "";
}
}
diff --git a/src/gallium/drivers/radeon/radeon_winsys.h b/src/gallium/drivers/radeon/radeon_winsys.h
index b1e91eb..513c2f9 100644
--- a/src/gallium/drivers/radeon/radeon_winsys.h
+++ b/src/gallium/drivers/radeon/radeon_winsys.h
@@ -136,6 +136,7 @@ enum radeon_family {
CHIP_TONGA,
CHIP_ICELAND,
CHIP_CARRIZO,
+ CHIP_FIJI,
CHIP_LAST,
};
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index daa3131..d16f402 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -3149,6 +3149,11 @@ void si_init_config(struct si_context *sctx)
raster_config = 0x3a00161a;
raster_config_1 = 0x0000002e;
break;
+ case CHIP_FIJI:
+ /* Fiji should be same as Hawaii, but that causes corruption in some cases */
+ raster_config = 0x16000012; /* 0x3a00161a */
+ raster_config_1 = 0x0000002a; /* 0x0000002e */
+ break;
case CHIP_TONGA:
raster_config = 0x16000012;
raster_config_1 = 0x0000002a;
diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c b/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c
index e3b7577..7e003e4 100644
--- a/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c
+++ b/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c
@@ -228,6 +228,10 @@ static boolean do_winsys_init(struct amdgpu_winsys *ws)
ws->family = FAMILY_CZ;
ws->rev_id = CZ_CARRIZO_A0;
break;
+ case CHIP_FIJI:
+ ws->family = FAMILY_VI;
+ ws->rev_id = VI_FIJI_P_A0;
+ break;
default:
fprintf(stderr, "amdgpu: Unknown family.\n");
goto fail;
--
1.8.3.1
More information about the mesa-dev
mailing list