2018-01-15 15:53:26 +01:00
|
|
|
/** @file
|
|
|
|
|
|
|
|
Copyright (c) 2017-2018, Arm Limited. All rights reserved.
|
|
|
|
|
2019-04-04 01:03:18 +02:00
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
2018-01-15 15:53:26 +01:00
|
|
|
|
|
|
|
System Control and Management Interface V1.0
|
|
|
|
http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/
|
|
|
|
DEN0056A_System_Control_and_Management_Interface.pdf
|
|
|
|
**/
|
|
|
|
|
|
|
|
#ifndef ARM_SCMI_BASE_PROTOCOL_PRIVATE_H_
|
|
|
|
#define ARM_SCMI_BASE_PROTOCOL_PRIVATE_H_
|
|
|
|
|
|
|
|
// Return values of BASE_DISCOVER_LIST_PROTOCOLS command.
|
|
|
|
typedef struct {
|
|
|
|
UINT32 NumProtocols;
|
|
|
|
|
|
|
|
// Array of four protocols in each element
|
|
|
|
// Total elements = 1 + (NumProtocols-1)/4
|
|
|
|
|
|
|
|
// NOTE: Since EDK2 does not allow flexible array member [] we declare
|
|
|
|
// here array of 1 element length. However below is used as a variable
|
|
|
|
// length array.
|
|
|
|
UINT8 Protocols[1];
|
|
|
|
} BASE_DISCOVER_LIST;
|
|
|
|
|
|
|
|
/** Initialize Base protocol and install protocol on a given handle.
|
|
|
|
|
|
|
|
@param[in] Handle Handle to install Base protocol.
|
|
|
|
|
|
|
|
@retval EFI_SUCCESS Base protocol interface installed
|
|
|
|
successfully.
|
|
|
|
**/
|
|
|
|
EFI_STATUS
|
|
|
|
ScmiBaseProtocolInit (
|
|
|
|
IN OUT EFI_HANDLE *Handle
|
|
|
|
);
|
|
|
|
|
|
|
|
#endif /* ARM_SCMI_BASE_PROTOCOL_PRIVATE_H_ */
|