mirror of https://github.com/acidanthera/audk.git
ArmPkg: Fix Ecc error 7008 for SCMI_CLOCK_RATE
This patch fixes the following Ecc reported error: Complex types should be typedef-ed The error is due to the a nested structure declaration. Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
This commit is contained in:
parent
3c0c1d3fae
commit
39b3e14c99
|
@ -255,22 +255,26 @@ ClockDescribeRates (
|
||||||
for (RateNo = 0; RateNo < NUM_RATES (DescribeRates->NumRatesFlags); RateNo++) {
|
for (RateNo = 0; RateNo < NUM_RATES (DescribeRates->NumRatesFlags); RateNo++) {
|
||||||
Rate = &DescribeRates->Rates[RateOffset++];
|
Rate = &DescribeRates->Rates[RateOffset++];
|
||||||
// Non-linear discrete rates.
|
// Non-linear discrete rates.
|
||||||
RateArray[RateIndex++].Rate = ConvertTo64Bit (Rate->Low, Rate->High);
|
RateArray[RateIndex++].DiscreteRate.Rate =
|
||||||
|
ConvertTo64Bit (Rate->Low, Rate->High);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (RateNo = 0; RateNo < NUM_RATES (DescribeRates->NumRatesFlags); RateNo++) {
|
for (RateNo = 0; RateNo < NUM_RATES (DescribeRates->NumRatesFlags); RateNo++) {
|
||||||
// Linear clock rates from minimum to maximum in steps
|
// Linear clock rates from minimum to maximum in steps
|
||||||
// Minimum clock rate.
|
// Minimum clock rate.
|
||||||
Rate = &DescribeRates->Rates[RateOffset++];
|
Rate = &DescribeRates->Rates[RateOffset++];
|
||||||
RateArray[RateIndex].Min = ConvertTo64Bit (Rate->Low, Rate->High);
|
RateArray[RateIndex].ContinuousRate.Min =
|
||||||
|
ConvertTo64Bit (Rate->Low, Rate->High);
|
||||||
|
|
||||||
Rate = &DescribeRates->Rates[RateOffset++];
|
Rate = &DescribeRates->Rates[RateOffset++];
|
||||||
// Maximum clock rate.
|
// Maximum clock rate.
|
||||||
RateArray[RateIndex].Max = ConvertTo64Bit (Rate->Low, Rate->High);
|
RateArray[RateIndex].ContinuousRate.Max =
|
||||||
|
ConvertTo64Bit (Rate->Low, Rate->High);
|
||||||
|
|
||||||
Rate = &DescribeRates->Rates[RateOffset++];
|
Rate = &DescribeRates->Rates[RateOffset++];
|
||||||
// Step.
|
// Step.
|
||||||
RateArray[RateIndex++].Step = ConvertTo64Bit (Rate->Low, Rate->High);
|
RateArray[RateIndex++].ContinuousRate.Step =
|
||||||
|
ConvertTo64Bit (Rate->Low, Rate->High);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (NUM_REMAIN_RATES (DescribeRates->NumRatesFlags) != 0);
|
} while (NUM_REMAIN_RATES (DescribeRates->NumRatesFlags) != 0);
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/** @file
|
/** @file
|
||||||
|
|
||||||
Copyright (c) 2017-2018, Arm Limited. All rights reserved.
|
Copyright (c) 2017-2021, Arm Limited. All rights reserved.
|
||||||
|
|
||||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
|
|
||||||
|
@ -57,12 +57,18 @@ typedef enum {
|
||||||
either Rate or Min/Max/Step triplet is valid.
|
either Rate or Min/Max/Step triplet is valid.
|
||||||
*/
|
*/
|
||||||
typedef struct {
|
typedef struct {
|
||||||
union {
|
|
||||||
UINT64 Min;
|
UINT64 Min;
|
||||||
UINT64 Rate;
|
|
||||||
};
|
|
||||||
UINT64 Max;
|
UINT64 Max;
|
||||||
UINT64 Step;
|
UINT64 Step;
|
||||||
|
} SCMI_CLOCK_RATE_CONTINUOUS;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
UINT64 Rate;
|
||||||
|
} SCMI_CLOCK_RATE_DISCRETE;
|
||||||
|
|
||||||
|
typedef union {
|
||||||
|
SCMI_CLOCK_RATE_CONTINUOUS ContinuousRate;
|
||||||
|
SCMI_CLOCK_RATE_DISCRETE DiscreteRate;
|
||||||
} SCMI_CLOCK_RATE;
|
} SCMI_CLOCK_RATE;
|
||||||
|
|
||||||
#pragma pack()
|
#pragma pack()
|
||||||
|
|
Loading…
Reference in New Issue