]>
Commit | Line | Data |
---|---|---|
656419f9 RC |
1 | /** @file\r |
2 | bhyve firmware configuration access\r | |
3 | \r | |
4 | Copyright (c) 2020, Rebecca Cran <rebecca@bsdio.com>\r | |
5 | Copyright (c) 2015 Nahanni Systems\r | |
6 | \r | |
7 | SPDX-License-Identifier: BSD-2-Clause-Patent\r | |
8 | \r | |
9 | **/\r | |
10 | \r | |
3cdfedc2 RC |
11 | #ifndef _BHYVE_FW_CTL_LIB_\r |
12 | #define _BHYVE_FW_CTL_LIB_\r | |
656419f9 RC |
13 | \r |
14 | /**\r | |
15 | Sysctl-like interface to read host information via a dot-separated\r | |
16 | ASCII OID.\r | |
17 | \r | |
18 | The information is copied into the buffer specified by Item. The\r | |
19 | size of the buffer is given by the location specified by Size\r | |
20 | before the call, and that location gives the amount of data copied\r | |
21 | after a successfull call, and after a call that returns a truncated\r | |
22 | value with an error return of RETURN_BUFFER_TOO_SMALL.\r | |
23 | \r | |
24 | The size of the available data can be determined by passing a NULL\r | |
25 | argument for Item. The size will be returned in the location pointed\r | |
26 | to by Size.\r | |
27 | \r | |
28 | @param[] Name - ASCII OID name\r | |
29 | @param[] Data - return buffer pointer\r | |
30 | @param[] Size - pointer to length\r | |
31 | \r | |
3cdfedc2 RC |
32 | @return RETURN_SUCCESS Valid data/len returned.\r |
33 | RETURN_UNSUPPORTED f/w interface not present.\r | |
34 | RETURN_NOT_FOUND OID not found.\r | |
35 | RETURN_BUFFER_TOO_SMALL Return message truncated.\r | |
36 | RETURN_INVALID_PARAMETER Buffer too large.\r | |
37 | RETURN_PROTOCOL_ERROR Unknown error from host.\r | |
656419f9 RC |
38 | **/\r |
39 | RETURN_STATUS\r | |
40 | EFIAPI\r | |
41 | BhyveFwCtlGet (\r | |
3cdfedc2 RC |
42 | IN CONST CHAR8 *Name,\r |
43 | OUT VOID *Item,\r | |
44 | IN OUT UINTN *Size\r | |
656419f9 RC |
45 | );\r |
46 | \r | |
3cdfedc2 | 47 | #endif /* _BHYVE_FW_CTL_LIB_ */\r |