STATIC\r
UINT64\r
ConvertTo64Bit (\r
- IN UINT32 Low,\r
- IN UINT32 High\r
+ IN UINT32 Low,\r
+ IN UINT32 High\r
)\r
{\r
- return (Low | ((UINT64)High << 32));\r
+ return (Low | ((UINT64)High << 32));\r
}\r
\r
/** Return version of the clock management protocol supported by SCP firmware.\r
)\r
{\r
EFI_STATUS Status;\r
- UINT32 *ReturnValues;\r
+ UINT32 *ReturnValues;\r
\r
Status = ScmiGetProtocolAttributes (ScmiProtocolIdClock, &ReturnValues);\r
if (EFI_ERROR (Status)) {\r
OUT CHAR8 *ClockAsciiName\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
- UINT32 *MessageParams;\r
- CLOCK_ATTRIBUTES *ClockAttributes;\r
- SCMI_COMMAND Cmd;\r
- UINT32 PayloadLength;\r
+ UINT32 *MessageParams;\r
+ CLOCK_ATTRIBUTES *ClockAttributes;\r
+ SCMI_COMMAND Cmd;\r
+ UINT32 PayloadLength;\r
\r
Status = ScmiCommandGetPayload (&MessageParams);\r
if (EFI_ERROR (Status)) {\r
Status = ScmiCommandExecute (\r
&Cmd,\r
&PayloadLength,\r
- (UINT32**)&ClockAttributes\r
+ (UINT32 **)&ClockAttributes\r
);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
- // TRUE if bit 0 of ClockAttributes->Attributes is set.\r
+\r
+ // TRUE if bit 0 of ClockAttributes->Attributes is set.\r
*Enabled = CLOCK_ENABLED (ClockAttributes->Attributes);\r
\r
AsciiStrCpyS (\r
ClockAsciiName,\r
SCMI_MAX_STR_LEN,\r
- (CONST CHAR8*)ClockAttributes->ClockName\r
+ (CONST CHAR8 *)ClockAttributes->ClockName\r
);\r
\r
return EFI_SUCCESS;\r
EFI_STATUS\r
ClockDescribeRates (\r
IN SCMI_CLOCK_PROTOCOL *This,\r
- IN UINT32 ClockId,\r
+ IN UINT32 ClockId,\r
OUT SCMI_CLOCK_RATE_FORMAT *Format,\r
OUT UINT32 *TotalRates,\r
IN OUT UINT32 *RateArraySize,\r
OUT SCMI_CLOCK_RATE *RateArray\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
- UINT32 PayloadLength;\r
- SCMI_COMMAND Cmd;\r
- UINT32 *MessageParams;\r
- CLOCK_DESCRIBE_RATES *DescribeRates;\r
- CLOCK_RATE_DWORD *Rate;\r
+ UINT32 PayloadLength;\r
+ SCMI_COMMAND Cmd;\r
+ UINT32 *MessageParams;\r
+ CLOCK_DESCRIBE_RATES *DescribeRates;\r
+ CLOCK_RATE_DWORD *Rate;\r
\r
- UINT32 RequiredArraySize;\r
- UINT32 RateIndex;\r
- UINT32 RateNo;\r
- UINT32 RateOffset;\r
+ UINT32 RequiredArraySize;\r
+ UINT32 RateIndex;\r
+ UINT32 RateNo;\r
+ UINT32 RateOffset;\r
\r
- *TotalRates = 0;\r
+ *TotalRates = 0;\r
RequiredArraySize = 0;\r
- RateIndex = 0;\r
+ RateIndex = 0;\r
\r
Status = ScmiCommandGetPayload (&MessageParams);\r
if (EFI_ERROR (Status)) {\r
Cmd.ProtocolId = ScmiProtocolIdClock;\r
Cmd.MessageId = ScmiMessageIdClockDescribeRates;\r
\r
- *MessageParams++ = ClockId;\r
+ *MessageParams++ = ClockId;\r
\r
do {\r
-\r
*MessageParams = RateIndex;\r
\r
// Set Payload length, note PayloadLength is a IN/OUT parameter.\r
- PayloadLength = sizeof (ClockId) + sizeof (RateIndex);\r
+ PayloadLength = sizeof (ClockId) + sizeof (RateIndex);\r
\r
// Execute and wait for response on a SCMI channel.\r
Status = ScmiCommandExecute (\r
&Cmd,\r
&PayloadLength,\r
- (UINT32**)&DescribeRates\r
+ (UINT32 **)&DescribeRates\r
);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
+ NUM_REMAIN_RATES (DescribeRates->NumRatesFlags);\r
\r
if (*Format == ScmiClockRateFormatDiscrete) {\r
- RequiredArraySize = (*TotalRates) * sizeof (UINT64);\r
+ RequiredArraySize = (*TotalRates) * sizeof (UINT64);\r
} else {\r
- // We need to return triplet of 64 bit value for each rate\r
- RequiredArraySize = (*TotalRates) * 3 * sizeof (UINT64);\r
+ // We need to return triplet of 64 bit value for each rate\r
+ RequiredArraySize = (*TotalRates) * 3 * sizeof (UINT64);\r
}\r
\r
if (RequiredArraySize > (*RateArraySize)) {\r
for (RateNo = 0; RateNo < NUM_RATES (DescribeRates->NumRatesFlags); RateNo++) {\r
// Linear clock rates from minimum to maximum in steps\r
// Minimum clock rate.\r
- Rate = &DescribeRates->Rates[RateOffset++];\r
+ Rate = &DescribeRates->Rates[RateOffset++];\r
RateArray[RateIndex].ContinuousRate.Min =\r
ConvertTo64Bit (Rate->Low, Rate->High);\r
\r
OUT UINT64 *Rate\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
UINT32 *MessageParams;\r
CLOCK_RATE_DWORD *ClockRate;\r
SCMI_COMMAND Cmd;\r
\r
- UINT32 PayloadLength;\r
+ UINT32 PayloadLength;\r
\r
Status = ScmiCommandGetPayload (&MessageParams);\r
if (EFI_ERROR (Status)) {\r
}\r
\r
// Fill arguments for clock protocol command.\r
- *MessageParams = ClockId;\r
+ *MessageParams = ClockId;\r
\r
- Cmd.ProtocolId = ScmiProtocolIdClock;\r
- Cmd.MessageId = ScmiMessageIdClockRateGet;\r
+ Cmd.ProtocolId = ScmiProtocolIdClock;\r
+ Cmd.MessageId = ScmiMessageIdClockRateGet;\r
\r
PayloadLength = sizeof (ClockId);\r
\r
Status = ScmiCommandExecute (\r
&Cmd,\r
&PayloadLength,\r
- (UINT32**)&ClockRate\r
+ (UINT32 **)&ClockRate\r
);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
IN UINT64 Rate\r
)\r
{\r
- EFI_STATUS Status;\r
- CLOCK_RATE_SET_ATTRIBUTES *ClockRateSetAttributes;\r
- SCMI_COMMAND Cmd;\r
- UINT32 PayloadLength;\r
+ EFI_STATUS Status;\r
+ CLOCK_RATE_SET_ATTRIBUTES *ClockRateSetAttributes;\r
+ SCMI_COMMAND Cmd;\r
+ UINT32 PayloadLength;\r
\r
- Status = ScmiCommandGetPayload ((UINT32**)&ClockRateSetAttributes);\r
+ Status = ScmiCommandGetPayload ((UINT32 **)&ClockRateSetAttributes);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
\r
// Fill arguments for clock protocol command.\r
- ClockRateSetAttributes->ClockId = ClockId;\r
- ClockRateSetAttributes->Flags = CLOCK_SET_DEFAULT_FLAGS;\r
- ClockRateSetAttributes->Rate.Low = (UINT32)Rate;\r
- ClockRateSetAttributes->Rate.High = (UINT32)(Rate >> 32);\r
+ ClockRateSetAttributes->ClockId = ClockId;\r
+ ClockRateSetAttributes->Flags = CLOCK_SET_DEFAULT_FLAGS;\r
+ ClockRateSetAttributes->Rate.Low = (UINT32)Rate;\r
+ ClockRateSetAttributes->Rate.High = (UINT32)(Rate >> 32);\r
\r
Cmd.ProtocolId = ScmiProtocolIdClock;\r
Cmd.MessageId = ScmiMessageIdClockRateSet;\r
STATIC\r
EFI_STATUS\r
ClockEnable (\r
- IN SCMI_CLOCK2_PROTOCOL *This,\r
- IN UINT32 ClockId,\r
- IN BOOLEAN Enable\r
+ IN SCMI_CLOCK2_PROTOCOL *This,\r
+ IN UINT32 ClockId,\r
+ IN BOOLEAN Enable\r
)\r
{\r
- EFI_STATUS Status;\r
- CLOCK_CONFIG_SET_ATTRIBUTES *ClockConfigSetAttributes;\r
- SCMI_COMMAND Cmd;\r
- UINT32 PayloadLength;\r
+ EFI_STATUS Status;\r
+ CLOCK_CONFIG_SET_ATTRIBUTES *ClockConfigSetAttributes;\r
+ SCMI_COMMAND Cmd;\r
+ UINT32 PayloadLength;\r
\r
- Status = ScmiCommandGetPayload ((UINT32**)&ClockConfigSetAttributes);\r
+ Status = ScmiCommandGetPayload ((UINT32 **)&ClockConfigSetAttributes);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
}\r
\r
// Instance of the SCMI clock management protocol.\r
-STATIC CONST SCMI_CLOCK_PROTOCOL ScmiClockProtocol = {\r
+STATIC CONST SCMI_CLOCK_PROTOCOL ScmiClockProtocol = {\r
ClockGetVersion,\r
ClockGetTotalClocks,\r
ClockGetClockAttributes,\r
ClockDescribeRates,\r
ClockRateGet,\r
ClockRateSet\r
- };\r
+};\r
\r
// Instance of the SCMI clock management protocol.\r
-STATIC CONST SCMI_CLOCK2_PROTOCOL ScmiClock2Protocol = {\r
+STATIC CONST SCMI_CLOCK2_PROTOCOL ScmiClock2Protocol = {\r
(SCMI_CLOCK2_GET_VERSION)ClockGetVersion,\r
(SCMI_CLOCK2_GET_TOTAL_CLOCKS)ClockGetTotalClocks,\r
(SCMI_CLOCK2_GET_CLOCK_ATTRIBUTES)ClockGetClockAttributes,\r
(SCMI_CLOCK2_RATE_SET)ClockRateSet,\r
SCMI_CLOCK2_PROTOCOL_VERSION,\r
ClockEnable\r
- };\r
+};\r
\r
/** Initialize clock management protocol and install protocol on a given handle.\r
\r
**/\r
EFI_STATUS\r
ScmiClockProtocolInit (\r
- IN EFI_HANDLE* Handle\r
+ IN EFI_HANDLE *Handle\r
)\r
{\r
return gBS->InstallMultipleProtocolInterfaces (\r