[PATCH] fwts_acpu_tables: move array gas_space_id_names into get_space_id_name
ivanhu
ivan.hu at canonical.com
Mon Apr 12 07:29:56 UTC 2021
On 4/12/21 4:45 AM, Alex Hung wrote:
> There is a typo in subject - it should be "fwts_acpi_tables" instead of
> "fwts_acpu_tables"
Maybe I can modify it when I apply the patch.
Acked-by: Ivan Hu <ivan.hu at canonical.com>
>
> On 2021-04-11 7:09 a.m., Colin King wrote:
>> From: Colin Ian King <colin.king at canonical.com>
>>
>> The scope of gas_space_id_names is limited to function get_space_id_name
>> so move it into the function. Also add array bounds checking based
>> on the array size and don't rely on index position 0x0b to cater for
>> id 0x7f as we may add more GAS types in the future and this last index
>> position will change, just use a literal string instead.
>>
>> Signed-off-by: Colin Ian King <colin.king at canonical.com>
>> ---
>> src/lib/src/fwts_acpi_tables.c | 46 ++++++++++++++++++----------------
>> 1 file changed, 25 insertions(+), 21 deletions(-)
>>
>> diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
>> index ac3b9890..b870bffd 100644
>> --- a/src/lib/src/fwts_acpi_tables.c
>> +++ b/src/lib/src/fwts_acpi_tables.c
>> @@ -1604,30 +1604,34 @@ void fwts_acpi_reserved_type_check(
>> }
>>
>> /*
>> - * Space Id defined for Generic Address Structure (GAS)
>> - * See Table 5.1: Generic Address Structure (GAS) in ACPI spec
>> - * Also see fwts_acpi.h
>> + * get_space_id_name()
>> + * convert Generic Address Structure to a string, NULL if undefined
>> */
>> -static const char *gas_space_id_names[] = {
>> - "System Memory (0x0)",
>> - "System I/O (0x1)",
>> - "PCI Configuration (0x2)",
>> - "Embedded Controller (0x3)",
>> - "SMBus (0x4)",
>> - "SystemCMOS (0x5)",
>> - "PciBarTarget (0x6)",
>> - "IPMI (0x7)",
>> - "General PurposeIO (0x8)",
>> - "GenericSerialBus (0x9)",
>> - "Platform Communications Channel (0xa)",
>> - "Functional Fixed Hardware (0x7f)",
>> -};
>> -
>> -static const char *get_space_id_name(uint8_t id) {
>> - if (id <= 0x0a)
>> +static const char *get_space_id_name(const uint8_t id)
>> +{
>> + /*
>> + * Space Id defined for Generic Address Structure (GAS)
>> + * See Table 5.1: Generic Address Structure (GAS) in ACPI spec
>> + * Also see fwts_acpi.h
>> + */
>> + static const char *gas_space_id_names[] = {
>> + "System Memory (0x0)",
>> + "System I/O (0x1)",
>> + "PCI Configuration (0x2)",
>> + "Embedded Controller (0x3)",
>> + "SMBus (0x4)",
>> + "SystemCMOS (0x5)",
>> + "PciBarTarget (0x6)",
>> + "IPMI (0x7)",
>> + "General PurposeIO (0x8)",
>> + "GenericSerialBus (0x9)",
>> + "Platform Communications Channel (0xa)"
>> + };
>> +
>> + if (id < FWTS_ARRAY_SIZE(gas_space_id_names))
>> return gas_space_id_names[id];
>> else if (id == 0x7f)
>> - return gas_space_id_names[0x0b];
>> + return "Functional Fixed Hardware (0x7f)";
>> else
>> return NULL;
>> }
>>
>
>
More information about the fwts-devel
mailing list