[PATCH] fwts_acpu_tables: move array gas_space_id_names into get_space_id_name

Colin Ian King colin.king at canonical.com
Mon Apr 12 07:50:55 UTC 2021


On 12/04/2021 08:29, ivanhu wrote:
> 
> 
> 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>

That would be most appreciated. Thank you

> 
>>
>> 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