mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 14:42:08 +02:00
drm/amd/pm: Allocate dummy table only if needed
Only Navi1x requires dummy read workaround. Allocate the table in VRAM only for Navi1x. Signed-off-by: Lijo Lazar <lijo.lazar@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
d8f3b3951f
commit
18c4e319db
|
|
@ -904,9 +904,8 @@ static int smu_alloc_dummy_read_table(struct smu_context *smu)
|
|||
struct amdgpu_device *adev = smu->adev;
|
||||
int ret = 0;
|
||||
|
||||
dummy_read_1_table->size = 0x40000;
|
||||
dummy_read_1_table->align = PAGE_SIZE;
|
||||
dummy_read_1_table->domain = AMDGPU_GEM_DOMAIN_VRAM;
|
||||
if (!dummy_read_1_table->size)
|
||||
return 0;
|
||||
|
||||
ret = amdgpu_bo_create_kernel(adev,
|
||||
dummy_read_1_table->size,
|
||||
|
|
|
|||
|
|
@ -494,6 +494,8 @@ static int navi10_tables_init(struct smu_context *smu)
|
|||
{
|
||||
struct smu_table_context *smu_table = &smu->smu_table;
|
||||
struct smu_table *tables = smu_table->tables;
|
||||
struct smu_table *dummy_read_1_table =
|
||||
&smu_table->dummy_read_1_table;
|
||||
|
||||
SMU_TABLE_INIT(tables, SMU_TABLE_PPTABLE, sizeof(PPTable_t),
|
||||
PAGE_SIZE, AMDGPU_GEM_DOMAIN_VRAM);
|
||||
|
|
@ -513,6 +515,10 @@ static int navi10_tables_init(struct smu_context *smu)
|
|||
SMU_TABLE_INIT(tables, SMU_TABLE_DRIVER_SMU_CONFIG, sizeof(DriverSmuConfig_t),
|
||||
PAGE_SIZE, AMDGPU_GEM_DOMAIN_VRAM);
|
||||
|
||||
dummy_read_1_table->size = 0x40000;
|
||||
dummy_read_1_table->align = PAGE_SIZE;
|
||||
dummy_read_1_table->domain = AMDGPU_GEM_DOMAIN_VRAM;
|
||||
|
||||
smu_table->metrics_table = kzalloc(sizeof(SmuMetrics_NV1X_t),
|
||||
GFP_KERNEL);
|
||||
if (!smu_table->metrics_table)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user