PatchworkOS  966e257
A non-POSIX operating system.
Loading...
Searching...
No Matches
namespace_modifier.h
Go to the documentation of this file.
1#pragma once
2
3#include <sys/list.h>
4
5#include <stdint.h>
6
7typedef struct aml_object aml_object_t;
8typedef struct aml_term_list_ctx aml_term_list_ctx_t;
9
10/**
11 * @brief Namespace Modifier Objects Encoding
12 * @defgroup modules_acpi_aml_encoding_namespace_modifier Namespace Modifier Objects
13 * @ingroup modules_acpi_aml
14 *
15 * @see Section 20.2.5.1 of the ACPI specification for more details.
16 *
17 * @{
18 */
19
20/**
21 * @brief Reads a DefAlias structure from the AML byte stream.
22 *
23 * A DefAlias structure is defined as `DefAlias := AliasOp NameString NameString`.
24 *
25 * @see Section 19.6.4 of the ACPI specification for more details.
26 *
27 * @param ctx The context of the TermList that this structure is part of.
28 * @return On success, `0`. On failure, `ERR` and `errno` is set.
29 */
31
32/**
33 * @brief Reads a DefName structure from the AML byte stream.
34 *
35 * A DefName structure is defined as `DefName := NameOp NameString DataRefObject`.
36 *
37 * @see Section 19.6.90 of the ACPI specification for more details.
38 *
39 * @param ctx The context of the TermList that this structure is part of.
40 * @return On success, `0`. On failure, `ERR` and `errno` is set.
41 */
43
44/**
45 * @brief Reads a DefScope structure from the AML byte stream.
46 *
47 * A DefScope structure is defined as `DefScope := ScopeOp PkgLength NameString TermList`.
48 *
49 * @see Section 19.6.122 of the ACPI specification for more details.
50 *
51 * @param ctx The context of the TermList that this structure is part of.
52 * @return On success, `0`. On failure, `ERR` and `errno` is set.
53 */
55
56/**
57 * @brief Reads a NameSpaceModifierObj structure from the AML byte stream.
58 *
59 * A NameSpaceModifierObj structure is defined as `NameSpaceModifierObj := DefAlias | DefName | DefScope`.
60 *
61 * @param ctx The context of the TermList that this structure is part of.
62 * @param op The AML op, should have been read by the caller.
63 * @return On success, `0`. On failure, `ERR` and `errno` is set.
64 */
66
67/** @} */
uint64_t aml_def_scope_read(aml_term_list_ctx_t *ctx)
Reads a DefScope structure from the AML byte stream.
uint64_t aml_def_name_read(aml_term_list_ctx_t *ctx)
Reads a DefName structure from the AML byte stream.
uint64_t aml_namespace_modifier_obj_read(aml_term_list_ctx_t *ctx)
Reads a NameSpaceModifierObj structure from the AML byte stream.
uint64_t aml_def_alias_read(aml_term_list_ctx_t *ctx)
Reads a DefAlias structure from the AML byte stream.
__UINT64_TYPE__ uint64_t
Definition stdint.h:17
ACPI object.
Definition object.h:447
Context for reading a TermList.
Definition term.h:37