Skip to content

Commit 8ff3bb4

Browse files
Likun Gaoalexdeucher
authored andcommitted
drm/amdgpu: add golden setting for gc v12
Adding Manual GDB golden setting for gc v12 revision 0 ASIC. Signed-off-by: Likun Gao <[email protected]> Reviewed-by: Hawking Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]> (cherry picked from commit c9875d0)
1 parent d507ae0 commit 8ff3bb4

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,12 @@ static const struct amdgpu_hwip_reg_entry gc_gfx_queue_reg_list_12[] = {
202202
SOC15_REG_ENTRY_STR(GC, 0, regCP_IB1_BUFSZ)
203203
};
204204

205+
static const struct soc15_reg_golden golden_settings_gc_12_0[] = {
206+
SOC15_REG_GOLDEN_VALUE(GC, 0, regDB_MEM_CONFIG, 0x0000000f, 0x0000000f),
207+
SOC15_REG_GOLDEN_VALUE(GC, 0, regCB_HW_CONTROL_1, 0x03000000, 0x03000000),
208+
SOC15_REG_GOLDEN_VALUE(GC, 0, regGL2C_CTRL5, 0x00000070, 0x00000020)
209+
};
210+
205211
#define DEFAULT_SH_MEM_CONFIG \
206212
((SH_MEM_ADDRESS_MODE_64 << SH_MEM_CONFIG__ADDRESS_MODE__SHIFT) | \
207213
(SH_MEM_ALIGNMENT_MODE_UNALIGNED << SH_MEM_CONFIG__ALIGNMENT_MODE__SHIFT) | \
@@ -3432,6 +3438,24 @@ static void gfx_v12_0_disable_gpa_mode(struct amdgpu_device *adev)
34323438
WREG32_SOC15(GC, 0, regCPG_PSP_DEBUG, data);
34333439
}
34343440

3441+
static void gfx_v12_0_init_golden_registers(struct amdgpu_device *adev)
3442+
{
3443+
if (amdgpu_sriov_vf(adev))
3444+
return;
3445+
3446+
switch (amdgpu_ip_version(adev, GC_HWIP, 0)) {
3447+
case IP_VERSION(12, 0, 0):
3448+
case IP_VERSION(12, 0, 1):
3449+
if (adev->rev_id == 0)
3450+
soc15_program_register_sequence(adev,
3451+
golden_settings_gc_12_0,
3452+
(const u32)ARRAY_SIZE(golden_settings_gc_12_0));
3453+
break;
3454+
default:
3455+
break;
3456+
}
3457+
}
3458+
34353459
static int gfx_v12_0_hw_init(void *handle)
34363460
{
34373461
int r;
@@ -3472,6 +3496,9 @@ static int gfx_v12_0_hw_init(void *handle)
34723496
}
34733497
}
34743498

3499+
if (!amdgpu_emu_mode)
3500+
gfx_v12_0_init_golden_registers(adev);
3501+
34753502
adev->gfx.is_poweron = true;
34763503

34773504
if (get_gb_addr_config(adev))

0 commit comments

Comments
 (0)