PatchworkOS
Loading...
Searching...
No Matches
patch_up.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
stdbool.h
>
4
#include <
stdint.h
>
5
#include <
sys/list.h
>
6
7
typedef
struct
aml_unresolved_obj
aml_unresolved_obj_t
;
8
typedef
struct
aml_object
aml_object_t
;
9
typedef
struct
aml_state
aml_state_t
;
10
25
typedef
uint64_t
(*
aml_patch_up_resolve_callback_t
)(
aml_state_t
* state,
aml_object_t
* match,
aml_object_t
* unresolved);
26
31
typedef
struct
aml_patch_up_entry
32
{
33
list_entry_t
entry
;
34
aml_unresolved_obj_t
*
unresolved
;
35
}
aml_patch_up_entry_t
;
36
42
uint64_t
aml_patch_up_init
(
void
);
43
53
uint64_t
aml_patch_up_add_unresolved
(
aml_unresolved_obj_t
* unresolved);
54
60
void
aml_patch_up_remove_unresolved
(
aml_unresolved_obj_t
* unresolved);
61
74
uint64_t
aml_patch_up_resolve_all
(
void
);
75
81
uint64_t
aml_patch_up_unresolved_count
(
void
);
82
aml_patch_up_init
uint64_t aml_patch_up_init(void)
Initialize the patch-up system.
Definition
patch_up.c:15
aml_patch_up_unresolved_count
uint64_t aml_patch_up_unresolved_count(void)
Get the number of unresolved references in the global list.
Definition
patch_up.c:105
aml_patch_up_remove_unresolved
void aml_patch_up_remove_unresolved(aml_unresolved_obj_t *unresolved)
Removes an unresolved reference from the global list.
Definition
patch_up.c:41
aml_patch_up_resolve_all
uint64_t aml_patch_up_resolve_all(void)
Attempts to resolve all unresolved references.
Definition
patch_up.c:60
aml_patch_up_add_unresolved
uint64_t aml_patch_up_add_unresolved(aml_unresolved_obj_t *unresolved)
Adds a unresolved reference to the global list.
Definition
patch_up.c:21
aml_patch_up_resolve_callback_t
uint64_t(* aml_patch_up_resolve_callback_t)(aml_state_t *state, aml_object_t *match, aml_object_t *unresolved)
Callback type for resolving a forward reference.
Definition
patch_up.h:25
list.h
stdbool.h
stdint.h
uint64_t
__UINT64_TYPE__ uint64_t
Definition
stdint.h:17
aml_object_t
ACPI object.
Definition
object.h:425
aml_patch_up_entry_t
Entry in the global list of unresolved references.
Definition
patch_up.h:32
aml_patch_up_entry_t::unresolved
aml_unresolved_obj_t * unresolved
The unresolved object.
Definition
patch_up.h:34
aml_patch_up_entry_t::entry
list_entry_t entry
List entry for the global list of unresolved references.
Definition
patch_up.h:33
aml_state_t
AML State.
Definition
state.h:25
aml_unresolved_obj_t
Data for an unresolved object.
Definition
object.h:390
list_entry_t
A entry in a doubly linked list.
Definition
list.h:38
include
kernel
acpi
aml
patch_up.h
Generated by
1.9.8