drm/amd/pm: powerplay: Add __counted_by
attribute for flexible arrays
This attribute is used to hint the length of flexible arrays to compiler and sanitizers. Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
a4fcb5f733
commit
0ca9f757a0
2 changed files with 37 additions and 37 deletions
|
@ -163,8 +163,8 @@ typedef struct _ATOM_Tonga_State {
|
|||
|
||||
typedef struct _ATOM_Tonga_State_Array {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Tonga_State entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_State entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_State_Array;
|
||||
|
||||
typedef struct _ATOM_Tonga_MCLK_Dependency_Record {
|
||||
|
@ -178,8 +178,8 @@ typedef struct _ATOM_Tonga_MCLK_Dependency_Record {
|
|||
|
||||
typedef struct _ATOM_Tonga_MCLK_Dependency_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Tonga_MCLK_Dependency_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_MCLK_Dependency_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_MCLK_Dependency_Table;
|
||||
|
||||
typedef struct _ATOM_Tonga_SCLK_Dependency_Record {
|
||||
|
@ -193,8 +193,8 @@ typedef struct _ATOM_Tonga_SCLK_Dependency_Record {
|
|||
|
||||
typedef struct _ATOM_Tonga_SCLK_Dependency_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Tonga_SCLK_Dependency_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_SCLK_Dependency_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_SCLK_Dependency_Table;
|
||||
|
||||
typedef struct _ATOM_Polaris_SCLK_Dependency_Record {
|
||||
|
@ -209,8 +209,8 @@ typedef struct _ATOM_Polaris_SCLK_Dependency_Record {
|
|||
|
||||
typedef struct _ATOM_Polaris_SCLK_Dependency_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Polaris_SCLK_Dependency_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Polaris_SCLK_Dependency_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Polaris_SCLK_Dependency_Table;
|
||||
|
||||
typedef struct _ATOM_Tonga_PCIE_Record {
|
||||
|
@ -221,8 +221,8 @@ typedef struct _ATOM_Tonga_PCIE_Record {
|
|||
|
||||
typedef struct _ATOM_Tonga_PCIE_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Tonga_PCIE_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_PCIE_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_PCIE_Table;
|
||||
|
||||
typedef struct _ATOM_Polaris10_PCIE_Record {
|
||||
|
@ -234,8 +234,8 @@ typedef struct _ATOM_Polaris10_PCIE_Record {
|
|||
|
||||
typedef struct _ATOM_Polaris10_PCIE_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Polaris10_PCIE_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Polaris10_PCIE_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Polaris10_PCIE_Table;
|
||||
|
||||
|
||||
|
@ -251,8 +251,8 @@ typedef struct _ATOM_Tonga_MM_Dependency_Record {
|
|||
|
||||
typedef struct _ATOM_Tonga_MM_Dependency_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Tonga_MM_Dependency_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_MM_Dependency_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_MM_Dependency_Table;
|
||||
|
||||
typedef struct _ATOM_Tonga_Voltage_Lookup_Record {
|
||||
|
@ -264,8 +264,8 @@ typedef struct _ATOM_Tonga_Voltage_Lookup_Record {
|
|||
|
||||
typedef struct _ATOM_Tonga_Voltage_Lookup_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries; /* Number of entries. */
|
||||
ATOM_Tonga_Voltage_Lookup_Record entries[]; /* Dynamically allocate entries. */
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_Voltage_Lookup_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_Voltage_Lookup_Table;
|
||||
|
||||
typedef struct _ATOM_Tonga_Fan_Table {
|
||||
|
@ -367,7 +367,7 @@ typedef struct _ATOM_Tonga_VCE_State_Record {
|
|||
typedef struct _ATOM_Tonga_VCE_State_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_VCE_State_Record entries[];
|
||||
ATOM_Tonga_VCE_State_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_VCE_State_Table;
|
||||
|
||||
typedef struct _ATOM_Tonga_PowerTune_Table {
|
||||
|
@ -481,7 +481,7 @@ typedef struct _ATOM_Tonga_Hard_Limit_Record {
|
|||
typedef struct _ATOM_Tonga_Hard_Limit_Table {
|
||||
UCHAR ucRevId;
|
||||
UCHAR ucNumEntries;
|
||||
ATOM_Tonga_Hard_Limit_Record entries[];
|
||||
ATOM_Tonga_Hard_Limit_Record entries[] __counted_by(ucNumEntries);
|
||||
} ATOM_Tonga_Hard_Limit_Table;
|
||||
|
||||
typedef struct _ATOM_Tonga_GPIO_Table {
|
||||
|
|
|
@ -60,7 +60,7 @@ struct vi_dpm_level {
|
|||
|
||||
struct vi_dpm_table {
|
||||
uint32_t count;
|
||||
struct vi_dpm_level dpm_level[];
|
||||
struct vi_dpm_level dpm_level[] __counted_by(count);
|
||||
};
|
||||
|
||||
#define PCIE_PERF_REQ_REMOVE_REGISTRY 0
|
||||
|
@ -91,7 +91,7 @@ struct phm_set_power_state_input {
|
|||
|
||||
struct phm_clock_array {
|
||||
uint32_t count;
|
||||
uint32_t values[];
|
||||
uint32_t values[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_clock_voltage_dependency_record {
|
||||
|
@ -122,8 +122,8 @@ struct phm_acpclock_voltage_dependency_record {
|
|||
};
|
||||
|
||||
struct phm_clock_voltage_dependency_table {
|
||||
uint32_t count; /* Number of entries. */
|
||||
struct phm_clock_voltage_dependency_record entries[]; /* Dynamically allocate count entries. */
|
||||
uint32_t count;
|
||||
struct phm_clock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_phase_shedding_limits_record {
|
||||
|
@ -140,7 +140,7 @@ struct phm_uvd_clock_voltage_dependency_record {
|
|||
|
||||
struct phm_uvd_clock_voltage_dependency_table {
|
||||
uint8_t count;
|
||||
struct phm_uvd_clock_voltage_dependency_record entries[];
|
||||
struct phm_uvd_clock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_acp_clock_voltage_dependency_record {
|
||||
|
@ -150,7 +150,7 @@ struct phm_acp_clock_voltage_dependency_record {
|
|||
|
||||
struct phm_acp_clock_voltage_dependency_table {
|
||||
uint32_t count;
|
||||
struct phm_acp_clock_voltage_dependency_record entries[];
|
||||
struct phm_acp_clock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_vce_clock_voltage_dependency_record {
|
||||
|
@ -160,33 +160,33 @@ struct phm_vce_clock_voltage_dependency_record {
|
|||
};
|
||||
|
||||
struct phm_phase_shedding_limits_table {
|
||||
uint32_t count;
|
||||
struct phm_phase_shedding_limits_record entries[];
|
||||
uint32_t count;
|
||||
struct phm_phase_shedding_limits_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_vceclock_voltage_dependency_table {
|
||||
uint8_t count; /* Number of entries. */
|
||||
struct phm_vceclock_voltage_dependency_record entries[1]; /* Dynamically allocate count entries. */
|
||||
uint8_t count;
|
||||
struct phm_vceclock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_uvdclock_voltage_dependency_table {
|
||||
uint8_t count; /* Number of entries. */
|
||||
struct phm_uvdclock_voltage_dependency_record entries[1]; /* Dynamically allocate count entries. */
|
||||
uint8_t count;
|
||||
struct phm_uvdclock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_samuclock_voltage_dependency_table {
|
||||
uint8_t count; /* Number of entries. */
|
||||
struct phm_samuclock_voltage_dependency_record entries[1]; /* Dynamically allocate count entries. */
|
||||
uint8_t count;
|
||||
struct phm_samuclock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_acpclock_voltage_dependency_table {
|
||||
uint32_t count; /* Number of entries. */
|
||||
struct phm_acpclock_voltage_dependency_record entries[1]; /* Dynamically allocate count entries. */
|
||||
uint32_t count;
|
||||
struct phm_acpclock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_vce_clock_voltage_dependency_table {
|
||||
uint8_t count;
|
||||
struct phm_vce_clock_voltage_dependency_record entries[];
|
||||
struct phm_vce_clock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
|
||||
|
@ -393,7 +393,7 @@ union phm_cac_leakage_record {
|
|||
|
||||
struct phm_cac_leakage_table {
|
||||
uint32_t count;
|
||||
union phm_cac_leakage_record entries[];
|
||||
union phm_cac_leakage_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_samu_clock_voltage_dependency_record {
|
||||
|
@ -404,7 +404,7 @@ struct phm_samu_clock_voltage_dependency_record {
|
|||
|
||||
struct phm_samu_clock_voltage_dependency_table {
|
||||
uint8_t count;
|
||||
struct phm_samu_clock_voltage_dependency_record entries[];
|
||||
struct phm_samu_clock_voltage_dependency_record entries[] __counted_by(count);
|
||||
};
|
||||
|
||||
struct phm_cac_tdp_table {
|
||||
|
|
Loading…
Add table
Reference in a new issue