git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Architectural Support: x86_64 (#37)
[lunaix-os.git]
/
lunaix-os
/
includes
/
hal
/
acpi
/
madt.h
diff --git
a/lunaix-os/includes/hal/acpi/madt.h
b/lunaix-os/includes/hal/acpi/madt.h
index 538e521837e12167c2fb25bfa53f5f60f2b75c9a..c12ab28b02d148e4d5af6ba968f724d7ac25d8cf 100644
(file)
--- a/
lunaix-os/includes/hal/acpi/madt.h
+++ b/
lunaix-os/includes/hal/acpi/madt.h
@@
-16,6
+16,7
@@
typedef struct
u8_t type;
u8_t length;
} ACPI_TABLE_PACKED acpi_ics_hdr_t;
u8_t type;
u8_t length;
} ACPI_TABLE_PACKED acpi_ics_hdr_t;
+#define __acpi_ics_hdr(acpi_ptr) ((acpi_ics_hdr_t*)__ptr(acpi_ptr))
/**
* @brief ACPI Processor Local APIC Structure (PLAS)
/**
* @brief ACPI Processor Local APIC Structure (PLAS)
@@
-30,6
+31,7
@@
typedef struct
u8_t apic_id;
u32_t flags;
} ACPI_TABLE_PACKED acpi_apic_t;
u8_t apic_id;
u32_t flags;
} ACPI_TABLE_PACKED acpi_apic_t;
+#define __acpi_apic(acpi_ptr) ((acpi_apic_t*)__ptr(acpi_ptr))
/**
* @brief ACPI IO APIC Structure (IOAS)
/**
* @brief ACPI IO APIC Structure (IOAS)
@@
-48,6
+50,7
@@
typedef struct
// for a slave IOAPIC)
u32_t gis_offset;
} ACPI_TABLE_PACKED acpi_ioapic_t;
// for a slave IOAPIC)
u32_t gis_offset;
} ACPI_TABLE_PACKED acpi_ioapic_t;
+#define __acpi_ioapic(acpi_ptr) ((acpi_ioapic_t*)__ptr(acpi_ptr))
/**
* @brief ACPI Interrupt Source Override (INTSO)
/**
* @brief ACPI Interrupt Source Override (INTSO)
@@
-69,18
+72,20
@@
typedef struct
u32_t gsi;
u16_t flags;
} ACPI_TABLE_PACKED acpi_intso_t;
u32_t gsi;
u16_t flags;
} ACPI_TABLE_PACKED acpi_intso_t;
+#define __acpi_intso(acpi_ptr) ((acpi_intso_t*)__ptr(acpi_ptr))
typedef struct
{
acpi_sdthdr_t header;
typedef struct
{
acpi_sdthdr_t header;
-
void*
apic_addr;
+
u32_t
apic_addr;
u32_t flags;
// Here is a bunch of packed ICS reside here back-to-back.
} ACPI_TABLE_PACKED acpi_madt_t;
u32_t flags;
// Here is a bunch of packed ICS reside here back-to-back.
} ACPI_TABLE_PACKED acpi_madt_t;
+#define __acpi_madt(acpi_ptr) ((acpi_madt_t*)__ptr(acpi_ptr))
typedef struct
{
typedef struct
{
-
void*
apic_addr;
+
u32_t
apic_addr;
acpi_apic_t* apic;
acpi_ioapic_t* ioapic;
acpi_intso_t** irq_exception;
acpi_apic_t* apic;
acpi_ioapic_t* ioapic;
acpi_intso_t** irq_exception;