From 1f08322948100955f071b57a529360d2bfa13fc1 Mon Sep 17 00:00:00 2001 From: Kamala Narasimhan Date: Tue, 13 Oct 2009 12:10:02 -0400 Subject: [PATCH] Enable Xen WMI support on HP 2530p. This change along with the dom0 kernel changes should enable hotkeys on HP 2530p. --- master/oem-features | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/master/oem-features b/master/oem-features index 1b33b49..2a9e1f1 100644 --- a/master/oem-features +++ b/master/oem-features @@ -40,7 +40,7 @@ index f9f6bc3..6ef2af8 100644 $(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 @@ @@ -56,7 +56,7 @@ index 0513b9c..93caa15 100644 #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; @@ -66,14 +66,15 @@ index 0513b9c..93caa15 100644 + +#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; } @@ -86,7 +87,7 @@ index 0513b9c..93caa15 100644 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; } @@ -123,7 +124,8 @@ index 0513b9c..93caa15 100644 + + 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)); @@ -146,7 +148,7 @@ index 0513b9c..93caa15 100644 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) { @@ -161,7 +163,7 @@ index 0513b9c..93caa15 100644 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); } -- 2.39.5