Encode mcm address look up table in SPX mode
as a temp solution.
v2: fill in when interface is ready (Alex)
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: Likun Gao <Likun.Gao@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
int (*switch_compute_partition)(struct amdgpu_device *adev,
int num_xccs_per_xcp,
int compute_partition_mode);
+ void (*init_mcm_addr_lut)(struct amdgpu_device *adev);
};
struct imu_rlc_ram_golden {
gfx_v12_1_xcc_enable_atomics(adev, i);
gfx_v12_1_xcc_setup_tcp_thrashing_ctrl(adev, i);
}
+
+ if (adev->gfx.imu.funcs &&
+ adev->gfx.imu.funcs->init_mcm_addr_lut &&
+ amdgpu_emu_mode)
+ adev->gfx.imu.funcs->init_mcm_addr_lut(adev);
}
static int gfx_v12_1_hw_init(struct amdgpu_ip_block *ip_block)
return 0;
}
+static void imu_v12_1_init_mcm_addr_lut(struct amdgpu_device *adev)
+{
+ /* todo: fill in when interface is ready */
+}
+
const struct amdgpu_imu_funcs gfx_v12_1_imu_funcs = {
.init_microcode = imu_v12_1_init_microcode,
.load_microcode = imu_v12_1_load_microcode,
.switch_compute_partition = imu_v12_1_switch_compute_partition,
+ .init_mcm_addr_lut = imu_v12_1_init_mcm_addr_lut,
};