Turnstone Operating System
Loading...
Searching...
No Matches
aml.h File Reference

acpi interface More...

#include <types.h>
#include <memory.h>
#include <list.h>
#include <indexer.h>
#include <acpi.h>

Classes

struct  _acpi_aml_object_t
 
struct  acpi_aml_device_bus_t
 
struct  acpi_aml_device_ioport_t
 
struct  acpi_aml_device_dma_t
 
struct  acpi_aml_device_interrupt_t
 
struct  acpi_aml_device_memory_range_t
 
struct  acpi_aml_device
 
struct  acpi_aml_interrupt_map_item_t
 
struct  acpi_aml_parser_context_t
 

Macros

#define ___ACPI_AML_H   0
 
#define acpi_aml_parser_context_create(rev)   acpi_aml_parser_context_create_with_heap(NULL, rev)
 
#define acpi_device_lookup_by_address(c, a)   acpi_device_lookup(c, NULL, a)
 
#define acpi_device_lookup_by_name(c, n)   acpi_device_lookup(c, n, 0)
 

Typedefs

typedef struct _acpi_aml_object_t acpi_aml_object_t
 
typedef struct acpi_aml_device acpi_aml_device_t
 

Enumerations

enum  acpi_aml_object_type_t {
  ACPI_AML_OT_UNINITIALIZED , ACPI_AML_OT_NUMBER , ACPI_AML_OT_STRING , ACPI_AML_OT_BUFFER ,
  ACPI_AML_OT_PACKAGE , ACPI_AML_OT_FIELD , ACPI_AML_OT_DEVICE , ACPI_AML_OT_EVENT ,
  ACPI_AML_OT_METHOD , ACPI_AML_OT_MUTEX , ACPI_AML_OT_OPREGION , ACPI_AML_OT_POWERRES ,
  ACPI_AML_OT_PROCESSOR , ACPI_AML_OT_THERMALZONE , ACPI_AML_OT_BUFFERFIELD , ACPI_AML_OT_DDBHANDLE ,
  ACPI_AML_OT_DEBUG , ACPI_AML_OT_ALIAS , ACPI_AML_OT_OPCODE_EXEC_RETURN , ACPI_AML_OT_SCOPE ,
  ACPI_AML_OT_EXTERNAL , ACPI_AML_OT_DATAREGION , ACPI_AML_OT_METHODCALL , ACPI_AML_OT_RUNTIMEREF ,
  ACPI_AML_OT_TIMER , ACPI_AML_OT_LOCAL_OR_ARG , ACPI_AML_OT_REFOF
}
 
enum  acpi_aml_device_memory_range_type_t { ACPI_AML_DEVICE_MEMORY_RANGE_MEMORY , ACPI_AML_DEVICE_MEMORY_RANGE_RESERVED , ACPI_AML_DEVICE_MEMORY_RANGE_ACPI , ACPI_AML_DEVICE_MEMORY_RANGE_NVS }
 

Functions

int8_t acpi_aml_object_name_comparator (const void *data1, const void *data2)
 
int8_t acpi_aml_device_name_comparator (const void *data1, const void *data2)
 
acpi_aml_parser_context_tacpi_aml_parser_context_create_with_heap (memory_heap_t *heap, uint8_t rev)
 
void acpi_aml_parser_context_destroy (acpi_aml_parser_context_t *ctx)
 
int8_t acpi_aml_parser_parse_table (acpi_aml_parser_context_t *ctx, acpi_sdt_header_t *table)
 
acpi_aml_object_tacpi_aml_symbol_lookup (acpi_aml_parser_context_t *, const char_t *)
 
int8_t acpi_aml_read_as_integer (acpi_aml_parser_context_t *, const acpi_aml_object_t *, int64_t *)
 
int8_t acpi_aml_write_as_integer (acpi_aml_parser_context_t *, int64_t, acpi_aml_object_t *)
 
int8_t acpi_device_build (acpi_aml_parser_context_t *)
 
int8_t acpi_device_init (acpi_aml_parser_context_t *)
 
void acpi_device_print_all (acpi_aml_parser_context_t *ctx)
 
void acpi_device_print (acpi_aml_parser_context_t *ctx, const acpi_aml_device_t *d)
 
const acpi_aml_device_tacpi_device_lookup (acpi_aml_parser_context_t *ctx, char_t *dev_name, uint64_t address)
 
int8_t acpi_device_reserve_memory_ranges (acpi_aml_parser_context_t *ctx)
 
int8_t acpi_build_interrupt_map (acpi_aml_parser_context_t *ctx)
 
uint8_tacpi_device_get_interrupts (acpi_aml_parser_context_t *ctx, uint64_t addr, uint8_t *int_count)
 
void acpi_aml_print_symbol_table (acpi_aml_parser_context_t *)
 
void acpi_aml_print_object (acpi_aml_parser_context_t *, acpi_aml_object_t *)
 
void acpi_aml_destroy_symbol_table (acpi_aml_parser_context_t *, uint8_t)
 
void acpi_aml_destroy_object (acpi_aml_parser_context_t *, acpi_aml_object_t *)
 

Detailed Description

acpi interface

acpi aml internal interface

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.

Macro Definition Documentation

◆ ___ACPI_AML_H

#define ___ACPI_AML_H   0

prevent duplicate header error macro