x86: acpi: Various changes to acpi_table.h

- Use "U-BOOT" and "U-BOOTBL" for the OEM ID and OEM table ID.
- Do not typedef acpi_header_t, instead use struct acpi_table_hader.
- Use a shorter name aslc_id and aslc-revision.
- Change MCFG base address to use 32-bit value pairs (_l and _h).
- Apply ACPI_APIC_ prefix to MADT APIC type macros and make
  their names to be more readable.
- Apply __packed to struct acpi_madt_irqoverride and struct
  acpi_madt_lapic_nmi tables, as they are not naturally aligned
  by the compiler which leads to wrong sizeof(struct).
- Rename model to res1 as it is reserved after ACPI spec 1.0.
- Apply ACPI_ prefix to the PM profile macros and change them
  to enum.
- Add ospm_flags to FACS structure which is defined since ACPI 4.0.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Stefan Roese <sr@denx.de>
Tested-by: Stefan Roese <sr@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/arch/x86/lib/acpi_table.c b/arch/x86/lib/acpi_table.c
index 9873cb3..7ade5c9 100644
--- a/arch/x86/lib/acpi_table.c
+++ b/arch/x86/lib/acpi_table.c
@@ -58,7 +58,8 @@
 	rsdt->entry[i] = (u32)table;
 
 	/* Fix RSDT length or the kernel will assume invalid entries */
-	rsdt->header.length = sizeof(acpi_header_t) + (sizeof(u32) * (i + 1));
+	rsdt->header.length = sizeof(struct acpi_table_header) +
+			      (sizeof(u32) * (i + 1));
 
 	/* Re-calculate checksum */
 	rsdt->header.checksum = 0;
@@ -74,7 +75,7 @@
 		xsdt->entry[i] = (u64)(u32)table;
 
 		/* Fix XSDT length */
-		xsdt->header.length = sizeof(acpi_header_t) +
+		xsdt->header.length = sizeof(struct acpi_table_header) +
 			 (sizeof(u64) * (i + 1));
 
 		/* Re-calculate checksum */
@@ -87,7 +88,7 @@
 static int acpi_create_madt_lapic(struct acpi_madt_lapic *lapic,
 			 u8 cpu, u8 apic)
 {
-	lapic->type = LOCALAPIC; /* Local APIC structure */
+	lapic->type = ACPI_APIC_LAPIC; /* Local APIC structure */
 	lapic->length = sizeof(struct acpi_madt_lapic);
 	lapic->flags = LOCAL_APIC_FLAG_ENABLED; /* Processor/LAPIC enabled */
 	lapic->processor_id = cpu;
@@ -115,7 +116,7 @@
 int acpi_create_madt_ioapic(struct acpi_madt_ioapic *ioapic, u8 id, u32 addr,
 			 u32 gsi_base)
 {
-	ioapic->type = IOAPIC;
+	ioapic->type = ACPI_APIC_IOAPIC;
 	ioapic->length = sizeof(struct acpi_madt_ioapic);
 	ioapic->reserved = 0x00;
 	ioapic->gsi_base = gsi_base;
@@ -128,7 +129,7 @@
 int acpi_create_madt_irqoverride(struct acpi_madt_irqoverride *irqoverride,
 			 u8 bus, u8 source, u32 gsirq, u16 flags)
 {
-	irqoverride->type = IRQSOURCEOVERRIDE;
+	irqoverride->type = ACPI_APIC_IRQ_SRC_OVERRIDE;
 	irqoverride->length = sizeof(struct acpi_madt_irqoverride);
 	irqoverride->bus = bus;
 	irqoverride->source = source;
@@ -141,7 +142,7 @@
 int acpi_create_madt_lapic_nmi(struct acpi_madt_lapic_nmi *lapic_nmi,
 			 u8 cpu, u16 flags, u8 lint)
 {
-	lapic_nmi->type = LOCALNMITYPE;
+	lapic_nmi->type = ACPI_APIC_LAPIC_NMI;
 	lapic_nmi->length = sizeof(struct acpi_madt_lapic_nmi);
 	lapic_nmi->flags = flags;
 	lapic_nmi->processor_id = cpu;
@@ -150,17 +151,18 @@
 	return lapic_nmi->length;
 }
 
-static void fill_header(acpi_header_t *header, char *signature, int length)
+static void fill_header(struct acpi_table_header *header, char *signature,
+			int length)
 {
 	memcpy(header->signature, signature, length);
 	memcpy(header->oem_id, OEM_ID, 6);
-	memcpy(header->oem_table_id, ACPI_TABLE_CREATOR, 8);
-	memcpy(header->asl_compiler_id, ASLC, 4);
+	memcpy(header->oem_table_id, OEM_TABLE_ID, 8);
+	memcpy(header->aslc_id, ASLC_ID, 4);
 }
 
 static void acpi_create_madt(struct acpi_madt *madt)
 {
-	acpi_header_t *header = &(madt->header);
+	struct acpi_table_header *header = &(madt->header);
 	unsigned long current = (unsigned long)madt + sizeof(struct acpi_madt);
 
 	memset((void *)madt, 0, sizeof(struct acpi_madt));
@@ -173,7 +175,7 @@
 	header->revision = ACPI_REV_ACPI_2_0;
 
 	madt->lapic_addr = LAPIC_DEFAULT_BASE;
-	madt->flags = PCAT_COMPAT;
+	madt->flags = ACPI_MADT_PCAT_COMPAT;
 
 	current = acpi_fill_madt(current);
 
@@ -187,8 +189,8 @@
 			 u32 base, u16 seg_nr, u8 start, u8 end)
 {
 	memset(mmconfig, 0, sizeof(*mmconfig));
-	mmconfig->base_address = base;
-	mmconfig->base_reserved = 0;
+	mmconfig->base_address_l = base;
+	mmconfig->base_address_h = 0;
 	mmconfig->pci_segment_group_number = seg_nr;
 	mmconfig->start_bus_number = start;
 	mmconfig->end_bus_number = end;
@@ -208,7 +210,7 @@
 /* MCFG is defined in the PCI Firmware Specification 3.0 */
 static void acpi_create_mcfg(struct acpi_mcfg *mcfg)
 {
-	acpi_header_t *header = &(mcfg->header);
+	struct acpi_table_header *header = &(mcfg->header);
 	unsigned long current = (unsigned long)mcfg + sizeof(struct acpi_mcfg);
 
 	memset((void *)mcfg, 0, sizeof(struct acpi_mcfg));
@@ -244,7 +246,7 @@
 
 static void acpi_write_rsdt(struct acpi_rsdt *rsdt)
 {
-	acpi_header_t *header = &(rsdt->header);
+	struct acpi_table_header *header = &(rsdt->header);
 
 	/* Fill out header fields */
 	fill_header(header, "RSDT", 4);
@@ -262,7 +264,7 @@
 
 static void acpi_write_xsdt(struct acpi_xsdt *xsdt)
 {
-	acpi_header_t *header = &(xsdt->header);
+	struct acpi_table_header *header = &(xsdt->header);
 
 	/* Fill out header fields */
 	fill_header(header, "XSDT", 4);
@@ -309,12 +311,13 @@
 			sizeof(struct acpi_rsdp));
 }
 
-static void acpi_create_ssdt_generator(acpi_header_t *ssdt,
+static void acpi_create_ssdt_generator(struct acpi_table_header *ssdt,
 			 const char *oem_table_id)
 {
-	unsigned long current = (unsigned long)ssdt + sizeof(acpi_header_t);
+	unsigned long current = (unsigned long)ssdt +
+				sizeof(struct acpi_table_header);
 
-	memset((void *)ssdt, 0, sizeof(acpi_header_t));
+	memset((void *)ssdt, 0, sizeof(struct acpi_table_header));
 
 	memcpy(&ssdt->signature, "SSDT", 4);
 	/* Access size in ACPI 2.0c/3.0/4.0/5.0 */
@@ -322,9 +325,9 @@
 	memcpy(&ssdt->oem_id, OEM_ID, 6);
 	memcpy(&ssdt->oem_table_id, oem_table_id, 8);
 	ssdt->oem_revision = OEM_REVISION;
-	memcpy(&ssdt->asl_compiler_id, ASLC, 4);
-	ssdt->asl_compiler_revision = ASL_COMPILER_REVISION;
-	ssdt->length = sizeof(acpi_header_t);
+	memcpy(&ssdt->aslc_id, ASLC_ID, 4);
+	ssdt->aslc_revision = ASL_COMPILER_REVISION;
+	ssdt->length = sizeof(struct acpi_table_header);
 
 	/* (Re)calculate length and checksum */
 	ssdt->length = current - (unsigned long)ssdt;
@@ -342,11 +345,11 @@
 	struct acpi_rsdt *rsdt;
 	struct acpi_xsdt *xsdt;
 	struct acpi_facs *facs;
-	acpi_header_t *dsdt;
+	struct acpi_table_header *dsdt;
 	struct acpi_fadt *fadt;
 	struct acpi_mcfg *mcfg;
 	struct acpi_madt *madt;
-	acpi_header_t *ssdt;
+	struct acpi_table_header *ssdt;
 
 	current = start;
 
@@ -381,14 +384,14 @@
 	acpi_create_facs(facs);
 
 	debug("ACPI:    * DSDT\n");
-	dsdt = (acpi_header_t *)current;
-	memcpy(dsdt, &AmlCode, sizeof(acpi_header_t));
-	if (dsdt->length >= sizeof(acpi_header_t)) {
-		current += sizeof(acpi_header_t);
+	dsdt = (struct acpi_table_header *)current;
+	memcpy(dsdt, &AmlCode, sizeof(struct acpi_table_header));
+	if (dsdt->length >= sizeof(struct acpi_table_header)) {
+		current += sizeof(struct acpi_table_header);
 		memcpy((char *)current,
-				(char *)&AmlCode + sizeof(acpi_header_t),
-				dsdt->length - sizeof(acpi_header_t));
-		current += dsdt->length - sizeof(acpi_header_t);
+			(char *)&AmlCode + sizeof(struct acpi_table_header),
+			dsdt->length - sizeof(struct acpi_table_header));
+		current += dsdt->length - sizeof(struct acpi_table_header);
 
 		/* (Re)calculate length and checksum */
 		dsdt->length = current - (unsigned long)dsdt;
@@ -424,9 +427,9 @@
 	current = ALIGN(current, 16);
 
 	debug("ACPI:    * SSDT\n");
-	ssdt = (acpi_header_t *)current;
-	acpi_create_ssdt_generator(ssdt, ACPI_TABLE_CREATOR);
-	if (ssdt->length > sizeof(acpi_header_t)) {
+	ssdt = (struct acpi_table_header *)current;
+	acpi_create_ssdt_generator(ssdt, OEM_TABLE_ID);
+	if (ssdt->length > sizeof(struct acpi_table_header)) {
 		current += ssdt->length;
 		acpi_add_table(rsdp, ssdt);
 		current = ALIGN(current, 16);