README revision 1.1 1 1.1 thorpej This is the Intel ACPI Component Architecture, Intel's reference
2 1.1 thorpej implementation of the core operating system ACPI support. The
3 1.1 thorpej portion in the Osd/ subdirectory is provided by the oprerating
4 1.1 thorpej system as the glue between the OS and the ACPICA.
5 1.1 thorpej
6 1.1 thorpej Please, do not import an updated ACPI CA snapshot from Intel unless
7 1.1 thorpej you absolutely know what you're doing -- The Intel directory layout
8 1.1 thorpej changes from release to release, and we must munge it (by hand) into
9 1.1 thorpej something sane that we can use.
10 1.1 thorpej
11 1.1 thorpej The routines that the operating system must provide are documented
12 1.1 thorpej in the following document:
13 1.1 thorpej
14 1.1 thorpej ACPI Component Architecture Programmer Reference
15 1.1 thorpej Intel Corp.
16 1.1 thorpej
17 1.1 thorpej Machine-dependent code must provide the following routines for Osd:
18 1.1 thorpej
19 1.1 thorpej ACPI_STATUS acpi_md_OsInitialize(void);
20 1.1 thorpej ACPI_STATUS acpi_md_OsTerminate(void);
21 1.1 thorpej ACPI_STATUS acpi_md_OsGetRootPointer(UINT32 Flags,
22 1.1 thorpej ACPI_PHYSICAL_ADDRESS *PhysicalAddress);
23 1.1 thorpej
24 1.1 thorpej UINT8 acpi_md_OsIn8(ACPI_IO_ADDRESS InPort);
25 1.1 thorpej UINT16 acpi_md_OsIn16(ACPI_IO_ADDRESS InPort);
26 1.1 thorpej UINT32 acpi_md_OsIn32(ACPI_IO_ADDRESS InPort);
27 1.1 thorpej
28 1.1 thorpej void acpi_md_OsOut8(ACPI_IO_ADDRESS OutPort, UINT8 Value);
29 1.1 thorpej void acpi_md_OsOut16(ACPI_IO_ADDRESS OutPort, UINT16 Value);
30 1.1 thorpej void acpi_md_OsOut32(ACPI_IO_ADDRESS OutPort, UINT32 Value);
31 1.1 thorpej
32 1.1 thorpej ACPI_STATUS acpi_md_OsInstallInterruptHandler(UINT32 InterruptNumber,
33 1.1 thorpej OSD_HANDLER ServiceRoutine, void *Context, void **cookiep);
34 1.1 thorpej void acpi_md_OsRemoveInterruptHandler(void *cookie);
35 1.1 thorpej
36 1.1 thorpej ACPI_STATUS acpi_md_OsMapMemory(ACPI_PHYSICAL_ADDRESS PhysicalAddress,
37 1.1 thorpej UINT32 Length, void **LogicalAddress);
38 1.1 thorpej void acpi_md_OsUnmapMemory(void *LogicalAddress, UINT32 Length);
39 1.1 thorpej ACPI_STATUS acpi_md_OsGetPhysicalAddress(void *LogicalAddress,
40 1.1 thorpej ACPI_PHYSICAL_ADDRESS *PhysicalAddress);
41 1.1 thorpej
42 1.1 thorpej BOOLEAN acpi_md_OsReadable(void *Pointer, UINT32 Length);
43 1.1 thorpej BOOLEAN acpi_md_OsWritable(void *Pointer, UINT32 Length);
44 1.1 thorpej
45 1.1 thorpej -- Jason R. Thorpe <thorpej (a] wasabisystems.com>
46