1e57a462 |
1 | /** @file\r |
2 | \r |
3 | Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r |
4 | \r |
878b807a |
5 | SPDX-License-Identifier: BSD-2-Clause-Patent\r |
1e57a462 |
6 | \r |
7 | **/\r |
8 | \r |
9 | #ifndef __EMBEDDED_EXTERNAL_DEVICE_H__\r |
10 | #define __EMBEDDED_EXTERNAL_DEVICE_H__\r |
11 | \r |
12 | //\r |
13 | // Protocol GUID\r |
14 | //\r |
15 | #define EMBEDDED_EXTERNAL_DEVICE_PROTOCOL_GUID { 0x735F8C64, 0xD696, 0x44D0, { 0xBD, 0xF2, 0x44, 0x7F, 0xD0, 0x5A, 0x54, 0x06 }}\r |
16 | \r |
17 | //\r |
18 | // Protocol interface structure\r |
19 | //\r |
20 | typedef struct _EMBEDDED_EXTERNAL_DEVICE EMBEDDED_EXTERNAL_DEVICE;\r |
21 | \r |
22 | //\r |
23 | // Function Prototypes\r |
24 | //\r |
25 | typedef\r |
26 | EFI_STATUS\r |
27 | (EFIAPI *EMBEDDED_EXTERNAL_DEVICE_READ) (\r |
28 | IN EMBEDDED_EXTERNAL_DEVICE *This,\r |
29 | IN UINTN Register,\r |
30 | IN UINTN Length,\r |
31 | OUT VOID *Buffer\r |
32 | )\r |
33 | /*++\r |
34 | \r |
35 | Routine Description:\r |
36 | \r |
37 | Read a set of contiguous external device registers.\r |
38 | \r |
39 | Arguments:\r |
40 | \r |
41 | This - pointer to protocol\r |
42 | Offset - starting register number\r |
43 | Length - number of bytes to read\r |
44 | Buffer - destination buffer\r |
3402aac7 |
45 | \r |
1e57a462 |
46 | Returns:\r |
47 | \r |
48 | EFI_SUCCESS - registers read successfully\r |
49 | \r |
50 | --*/\r |
51 | ;\r |
52 | \r |
53 | typedef\r |
54 | EFI_STATUS\r |
55 | (EFIAPI *EMBEDDED_EXTERNAL_DEVICE_WRITE) (\r |
56 | IN EMBEDDED_EXTERNAL_DEVICE *This,\r |
57 | IN UINTN Register,\r |
58 | IN UINTN Length,\r |
59 | IN VOID *Buffer\r |
60 | )\r |
61 | /*++\r |
62 | \r |
63 | Routine Description:\r |
64 | \r |
65 | Write to a set of contiguous external device registers.\r |
66 | \r |
67 | Arguments:\r |
68 | \r |
69 | This - pointer to protocol\r |
70 | Offset - starting register number\r |
71 | Length - number of bytes to write\r |
72 | Buffer - source buffer\r |
3402aac7 |
73 | \r |
1e57a462 |
74 | Returns:\r |
75 | \r |
76 | EFI_SUCCESS - registers written successfully\r |
77 | \r |
78 | --*/\r |
79 | ;\r |
80 | \r |
81 | struct _EMBEDDED_EXTERNAL_DEVICE {\r |
82 | EMBEDDED_EXTERNAL_DEVICE_READ Read;\r |
83 | EMBEDDED_EXTERNAL_DEVICE_WRITE Write;\r |
84 | };\r |
85 | \r |
86 | extern EFI_GUID gEmbeddedExternalDeviceProtocolGuid;\r |
87 | \r |
91c38d4e |
88 | #endif // __EMBEDDED_EXTERNAL_DEVICE_H__\r |