Go to the source code of this file.
◆ PCI_EXPRESS_ROOT_PNP_ID
#define PCI_EXPRESS_ROOT_PNP_ID "PNP0A08" |
◆ PCI_ROOT_PNP_ID
#define PCI_ROOT_PNP_ID "PNP0A03" |
◆ find_pci_root()
Definition at line 15 of file default_handlers.c.
16{
21 };
23
27 "found a PCI root node %.4s controlling region %.4s\n",
29 );
31 }
32
34 }
35
37 node,
"unable to find PCI root controlling",
39 );
41}
#define PCI_EXPRESS_ROOT_PNP_ID
uacpi_namespace_node * uacpi_namespace_root(void)
void uacpi_trace_region_error(uacpi_namespace_node *node, uacpi_char *message, uacpi_status ret)
uacpi_bool uacpi_device_matches_pnp_id(uacpi_namespace_node *node, const uacpi_char *const *list)
Referenced by pci_region_attach().
◆ handle_io_region()
Definition at line 290 of file default_handlers.c.
291{
300 default:
302 }
303}
static uacpi_status io_region_detach(uacpi_region_detach_data *data)
static uacpi_status io_region_attach(uacpi_region_attach_data *data)
static uacpi_status io_region_do_rw(uacpi_region_op op, uacpi_region_rw_data *data)
@ UACPI_STATUS_INVALID_ARGUMENT
Referenced by uacpi_install_default_address_space_handlers().
◆ handle_memory_region()
Definition at line 234 of file default_handlers.c.
235{
244 default:
246 }
247}
static uacpi_status memory_region_do_rw(uacpi_region_op op, uacpi_region_rw_data *data)
static uacpi_status memory_region_attach(uacpi_region_attach_data *data)
static uacpi_status memory_region_detach(uacpi_region_detach_data *data)
Referenced by uacpi_install_default_address_space_handlers().
◆ handle_pci_region()
Definition at line 124 of file default_handlers.c.
125{
134 default:
136 }
137}
static uacpi_status pci_region_do_rw(uacpi_region_op op, uacpi_region_rw_data *data)
static uacpi_status pci_region_detach(uacpi_region_detach_data *data)
static uacpi_status pci_region_attach(uacpi_region_attach_data *data)
Referenced by uacpi_install_default_address_space_handlers().
◆ handle_table_data_region()
◆ io_region_attach()
Definition at line 186 of file default_handlers.c.
187{
191
195
197
201 data->region_node,
"unable to map an IO",
ret
202 );
205 }
206
207 data->out_region_context =
ctx;
209}
#define uacpi_free(mem, _)
#define uacpi_unlikely_error(expr)
@ UACPI_STATUS_OUT_OF_MEMORY
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
uacpi_status uacpi_kernel_io_map(uacpi_io_addr base, uacpi_size len, uacpi_handle *out_handle)
void * uacpi_kernel_alloc(uacpi_size size)
Referenced by handle_io_region().
◆ io_region_detach()
◆ io_region_do_rw()
Definition at line 274 of file default_handlers.c.
277{
281
284
288}
uacpi_status uacpi_system_io_write(uacpi_handle handle, uacpi_size offset, uacpi_u8 width, uacpi_u64 in)
uacpi_status uacpi_system_io_read(uacpi_handle handle, uacpi_size offset, uacpi_u8 width, uacpi_u64 *out)
GLint GLint GLsizei width
Referenced by handle_io_region().
◆ memory_region_attach()
Definition at line 145 of file default_handlers.c.
146{
149
153
154 ctx->size =
data->generic_info.length;
155
156
157 ctx->phys =
data->generic_info.base;
159
165 }
166
167 data->out_region_context =
ctx;
170}
@ UACPI_STATUS_MAPPING_FAILED
void * uacpi_kernel_map(uacpi_phys_addr addr, uacpi_size len)
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
Referenced by handle_memory_region().
◆ memory_region_detach()
◆ memory_region_do_rw()
Definition at line 220 of file default_handlers.c.
223{
226
228
232}
uacpi_status uacpi_system_memory_read(void *ptr, uacpi_size offset, uacpi_u8 width, uacpi_u64 *out)
uacpi_status uacpi_system_memory_write(void *ptr, uacpi_size offset, uacpi_u8 width, uacpi_u64 in)
Referenced by handle_memory_region().
◆ pci_region_attach()
Definition at line 43 of file default_handlers.c.
44{
49
52
53
54
55
56
60
64
66 break;
67
69 }
70
74 node,
"unable to find device responsible for",
ret
75 );
77 }
78
83 }
84
88
92
94 "detected PCI device %.4s@%04X:%02X:%02X:%01X\n",
97 );
98
100}
static uacpi_namespace_node * find_pci_root(uacpi_namespace_node *node)
uacpi_status uacpi_namespace_node_type(const uacpi_namespace_node *node, uacpi_object_type *out_type)
GLuint GLuint GLsizei GLenum type
uacpi_status uacpi_kernel_pci_device_open(uacpi_pci_address address, uacpi_handle *out_handle)
uacpi_status uacpi_eval_simple_integer(uacpi_namespace_node *parent, const uacpi_char *path, uacpi_u64 *out_value)
Referenced by handle_pci_region().
◆ pci_region_detach()
◆ pci_region_do_rw()
Definition at line 108 of file default_handlers.c.
111{
115
118
122}
uacpi_status uacpi_pci_write(uacpi_handle handle, uacpi_size offset, uacpi_u8 width, uacpi_u64 in)
uacpi_status uacpi_pci_read(uacpi_handle handle, uacpi_size offset, uacpi_u8 width, uacpi_u64 *out)
Referenced by handle_pci_region().
◆ table_data_region_do_rw()
◆ uacpi_install_default_address_space_handlers()
void uacpi_install_default_address_space_handlers |
( |
void |
| ) |
|
Definition at line 305 of file default_handlers.c.
306{
308
310
315 );
316
321 );
322
327 );
328
333 );
334}
static uacpi_status handle_table_data_region(uacpi_region_op op, uacpi_handle op_data)
static uacpi_status handle_io_region(uacpi_region_op op, uacpi_handle op_data)
static uacpi_status handle_memory_region(uacpi_region_op op, uacpi_handle op_data)
static uacpi_status handle_pci_region(uacpi_region_op op, uacpi_handle op_data)
#define UACPI_ADDRESS_SPACE_HANDLER_DEFAULT
@ UACPI_ADDRESS_SPACE_SYSTEM_MEMORY
@ UACPI_ADDRESS_SPACE_PCI_CONFIG
@ UACPI_ADDRESS_SPACE_TABLE_DATA
@ UACPI_ADDRESS_SPACE_SYSTEM_IO
uacpi_status uacpi_install_address_space_handler_with_flags(uacpi_namespace_node *device_node, enum uacpi_address_space space, uacpi_region_handler handler, uacpi_handle handler_context, uacpi_u16 flags)
Referenced by uacpi_initialize().