$(MAKE) iasl
iasl -tc $<
diff --git a/tools/firmware/hvmloader/acpi/build.c b/tools/firmware/hvmloader/acpi/build.c
-index 0513b9c..93caa15 100644
+index 0513b9c..61b19bc 100644
--- a/tools/firmware/hvmloader/acpi/build.c
+++ b/tools/firmware/hvmloader/acpi/build.c
@@ -19,8 +19,12 @@
#define align16(sz) (((sz) + 15) & ~15)
#define fixed_strcpy(d, s) strncpy((d), (s), sizeof(d))
-@@ -33,6 +37,16 @@ extern struct acpi_20_facs Facs;
+@@ -33,6 +37,17 @@ extern struct acpi_20_facs Facs;
extern unsigned char AmlCode[];
extern int DsdtLen;
+
+#define OEM_MODEL_DELL_LATITUDE_1 "Latitude E4200"
+#define OEM_MODEL_DELL_LATITUDE_2 "Latitude E6500"
-+#define OEM_MODEL_HP_EliteBook "HP EliteBook 6930p"
++#define OEM_MODEL_HP_EliteBook_6930p "HP EliteBook 6930p"
++#define OEM_MODEL_HP_EliteBook_2530p "HP EliteBook 2530p"
+#define OEM_MODEL_LENOVO_T400 "6475BY3"
+#define OEM_MODEL_LENOVO_X200 "74542NU"
+
static void set_checksum(
void *table, uint32_t checksum_offset, uint32_t length)
{
-@@ -59,6 +73,12 @@ static uint8_t battery_port_exists(void)
+@@ -59,6 +74,12 @@ static uint8_t battery_port_exists(void)
return 1;
}
static void pt_update_acpi_tables(struct acpi_header *header, struct hvm_acinfo_table *va_ac)
{
memcpy(header->oem_id, va_ac->oem_id, HVM_ACINFO_OEM_ID_SIZE);
-@@ -68,6 +88,59 @@ static void pt_update_acpi_tables(struct acpi_header *header, struct hvm_acinfo_
+@@ -68,6 +89,60 @@ static void pt_update_acpi_tables(struct acpi_header *header, struct hvm_acinfo_
header->creator_revision = va_ac->creator_revision;
}
+
+ if ( strncmp(manufacturer, OEM_NAME_HP, strlen(OEM_NAME_HP)) == 0 )
+ {
-+ if ( strncmp(model, OEM_MODEL_HP_EliteBook, strlen(OEM_MODEL_HP_EliteBook)) != 0 )
++ if ( (strncmp(model, OEM_MODEL_HP_EliteBook_6930p, strlen(OEM_MODEL_HP_EliteBook_6930p)) != 0) &&
++ (strncmp(model, OEM_MODEL_HP_EliteBook_2530p, strlen(OEM_MODEL_HP_EliteBook_2530p)) != 0) )
+ return 0;
+
+ memcpy(buf, AmlCode_HP_6930P_ELITEBOOK, sizeof(AmlCode_HP_6930P_ELITEBOOK));
static int construct_madt(struct acpi_20_madt *madt, struct hvm_acinfo_table *va_ac)
{
struct acpi_20_madt_intsrcovr *intsrcovr;
-@@ -183,12 +256,13 @@ static int construct_hpet(struct acpi_20_hpet *hpet, struct hvm_acinfo_table *va
+@@ -183,12 +258,13 @@ static int construct_hpet(struct acpi_20_hpet *hpet, struct hvm_acinfo_table *va
static int construct_secondary_tables(uint8_t *buf, unsigned long *table_ptrs, struct hvm_acinfo_table *va_ac)
{
void *lasa;
/* MADT. */
-@@ -222,6 +296,17 @@ static int construct_secondary_tables(uint8_t *buf, unsigned long *table_ptrs, s
+@@ -222,6 +298,17 @@ static int construct_secondary_tables(uint8_t *buf, unsigned long *table_ptrs, s
offset += align16(va_ac->slic_length);
}