/** @file | |
Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR> | |
SPDX-License-Identifier: BSD-2-Clause-Patent | |
**/ | |
#ifndef __EMBEDDED_EXTERNAL_DEVICE_H__ | |
#define __EMBEDDED_EXTERNAL_DEVICE_H__ | |
// | |
// Protocol GUID | |
// | |
#define EMBEDDED_EXTERNAL_DEVICE_PROTOCOL_GUID { 0x735F8C64, 0xD696, 0x44D0, { 0xBD, 0xF2, 0x44, 0x7F, 0xD0, 0x5A, 0x54, 0x06 }} | |
// | |
// Protocol interface structure | |
// | |
typedef struct _EMBEDDED_EXTERNAL_DEVICE EMBEDDED_EXTERNAL_DEVICE; | |
// | |
// Function Prototypes | |
// | |
typedef | |
EFI_STATUS | |
(EFIAPI *EMBEDDED_EXTERNAL_DEVICE_READ)( | |
IN EMBEDDED_EXTERNAL_DEVICE *This, | |
IN UINTN Register, | |
IN UINTN Length, | |
OUT VOID *Buffer | |
) | |
/*++ | |
Routine Description: | |
Read a set of contiguous external device registers. | |
Arguments: | |
This - pointer to protocol | |
Offset - starting register number | |
Length - number of bytes to read | |
Buffer - destination buffer | |
Returns: | |
EFI_SUCCESS - registers read successfully | |
--*/ | |
; | |
typedef | |
EFI_STATUS | |
(EFIAPI *EMBEDDED_EXTERNAL_DEVICE_WRITE)( | |
IN EMBEDDED_EXTERNAL_DEVICE *This, | |
IN UINTN Register, | |
IN UINTN Length, | |
IN VOID *Buffer | |
) | |
/*++ | |
Routine Description: | |
Write to a set of contiguous external device registers. | |
Arguments: | |
This - pointer to protocol | |
Offset - starting register number | |
Length - number of bytes to write | |
Buffer - source buffer | |
Returns: | |
EFI_SUCCESS - registers written successfully | |
--*/ | |
; | |
struct _EMBEDDED_EXTERNAL_DEVICE { | |
EMBEDDED_EXTERNAL_DEVICE_READ Read; | |
EMBEDDED_EXTERNAL_DEVICE_WRITE Write; | |
}; | |
extern EFI_GUID gEmbeddedExternalDeviceProtocolGuid; | |
#endif // __EMBEDDED_EXTERNAL_DEVICE_H__ |