From aad669b1e90491f7c3951016456e8a2660d91a85 Mon Sep 17 00:00:00 2001 From: Samuel Li Date: Thu, 1 May 2014 13:27:58 -0400 Subject: [PATCH] radeonsi: add support for Mullins asics. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit v2: name defaults to kabini for older llvm v3: fix llvm version check Signed-off-by: Samuel Li Signed-off-by: Alex Deucher Signed-off-by: Leo Liu Reviewed-by: Marek Olšák Reviewed-by: Tom Stellard --- src/gallium/drivers/radeon/r600_pipe_common.c | 7 +++++++ src/gallium/drivers/radeonsi/si_state.c | 2 ++ src/gallium/winsys/radeon/drm/radeon_drm_winsys.c | 1 + src/gallium/winsys/radeon/drm/radeon_winsys.h | 1 + 4 files changed, 11 insertions(+) diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c index 957186af0b5..70c4d1adefb 100644 --- a/src/gallium/drivers/radeon/r600_pipe_common.c +++ b/src/gallium/drivers/radeon/r600_pipe_common.c @@ -293,6 +293,7 @@ static const char* r600_get_name(struct pipe_screen* pscreen) case CHIP_KAVERI: return "AMD KAVERI"; case CHIP_KABINI: return "AMD KABINI"; case CHIP_HAWAII: return "AMD HAWAII"; + case CHIP_MULLINS: return "AMD MULLINS"; default: return "AMD unknown"; } } @@ -410,6 +411,12 @@ const char *r600_get_llvm_processor_name(enum radeon_family family) case CHIP_KABINI: return "kabini"; case CHIP_KAVERI: return "kaveri"; case CHIP_HAWAII: return "hawaii"; + case CHIP_MULLINS: +#if HAVE_LLVM >= 0x0305 + return "mullins"; +#else + return "kabini"; +#endif default: return ""; #endif } diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 80f54e2b285..6d5408b1877 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -3101,6 +3101,8 @@ void si_init_config(struct si_context *sctx) /* XXX todo */ case CHIP_KABINI: /* XXX todo */ + case CHIP_MULLINS: + /* XXX todo */ default: si_pm4_set_reg(pm4, R_028350_PA_SC_RASTER_CONFIG, 0x00000000); si_pm4_set_reg(pm4, R_028354_PA_SC_RASTER_CONFIG_1, 0x00000000); diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c index 76183160ddc..e54e79e38f8 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c @@ -276,6 +276,7 @@ static boolean do_winsys_init(struct radeon_drm_winsys *ws) case CHIP_KAVERI: case CHIP_KABINI: case CHIP_HAWAII: + case CHIP_MULLINS: ws->info.chip_class = CIK; break; } diff --git a/src/gallium/winsys/radeon/drm/radeon_winsys.h b/src/gallium/winsys/radeon/drm/radeon_winsys.h index 1cb17bb9e01..2d13550c9cc 100644 --- a/src/gallium/winsys/radeon/drm/radeon_winsys.h +++ b/src/gallium/winsys/radeon/drm/radeon_winsys.h @@ -130,6 +130,7 @@ enum radeon_family { CHIP_KAVERI, CHIP_KABINI, CHIP_HAWAII, + CHIP_MULLINS, CHIP_LAST, };