From: Dave Airlie <airlied@redhat.com>
Date: Fri, 29 Sep 2017 11:12:30 +1000
Subject: amdgpu/pp: use array_size to size the pwrvirus tables.
Git-commit: ce27643cc0f56f7a70de17c2ef54541ad4252c1a
Patch-mainline: v4.15-rc1
References: FATE#326289 FATE#326079 FATE#326049 FATE#322398 FATE#326166
This avoids fragile hardcoding of array size.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Petr Tesarik <ptesarik@suse.com>
---
drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h | 3 +--
drivers/gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h | 5 +----
drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 2 +-
drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c | 2 +-
4 files changed, 4 insertions(+), 8 deletions(-)
--- a/drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h
+++ b/drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h
@@ -35,8 +35,7 @@ struct PWR_Command_Table
};
typedef struct PWR_Command_Table PWR_Command_Table;
-#define PWR_VIRUS_TABLE_SIZE 10243
-static const PWR_Command_Table PwrVirusTable[PWR_VIRUS_TABLE_SIZE] =
+static const PWR_Command_Table PwrVirusTable[] =
{
{ 0x100100b6, mmPCIE_INDEX },
{ 0x00000000, mmPCIE_DATA },
--- a/drivers/gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h
+++ b/drivers/gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h
@@ -36,10 +36,7 @@ struct PWR_Command_Table {
typedef struct PWR_Command_Table PWR_Command_Table;
-
-#define PWR_VIRUS_TABLE_SIZE 10031
-
-static const PWR_Command_Table pwr_virus_table[PWR_VIRUS_TABLE_SIZE] = {
+static const PWR_Command_Table pwr_virus_table[] = {
{ 0x00000000, mmRLC_CNTL },
{ 0x00000002, mmRLC_SRM_CNTL },
{ 0x15000000, mmCP_ME_CNTL },
--- a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
+++ b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
@@ -167,7 +167,7 @@ static int fiji_setup_pwr_virus(struct p
const PWR_Command_Table *pvirus = PwrVirusTable;
- for (i = 0; i < PWR_VIRUS_TABLE_SIZE; i++) {
+ for (i = 0; i < ARRAY_SIZE(PwrVirusTable); i++) {
reg = pvirus->reg;
data = pvirus->data;
if (reg != 0xffffffff)
--- a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c
+++ b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c
@@ -68,7 +68,7 @@ static int polaris10_setup_pwr_virus(str
const PWR_Command_Table *pvirus = pwr_virus_table;
- for (i = 0; i < PWR_VIRUS_TABLE_SIZE; i++) {
+ for (i = 0; i < ARRAY_SIZE(pwr_virus_table); i++) {
reg = pvirus->reg;
data = pvirus->data;
if (reg != 0xffffffff) {