Add support for the E820_UNUSABLE memory type, which is defined in Revision 3.0b (Oct. 10, 2006) of the ACPI Specification on p. 394 Table 14-1: AddressRangeUnusuable This range of address contains memory in which errors have been detected. This range must not be used by the OSPM. This patch applies cleanly to the tip of the current git tree (with the merged 32/64b e820.c file). Signed-off-by: Joseph Cihula <joseph.cihula@xxxxxxxxx> Signed-off-by: Shane Wang <shane.wang@xxxxxxxxx> Signed-off-by: Gang Wei <gang.wei@xxxxxxxxx> diff -uprN linux.trees.git/arch/x86/kernel/e820.c acpi-linux/arch/x86/kernel/e820.c --- linux.trees.git/arch/x86/kernel/e820.c 2008-08-01 08:14:10.000000000 -0700 +++ acpi-linux/arch/x86/kernel/e820.c 2008-08-01 08:24:19.000000000 -0700 @@ -148,6 +148,9 @@ void __init e820_print_map(char *who) case E820_NVS: printk(KERN_CONT "(ACPI NVS)\n"); break; + case E820_UNUSABLE: + printk("(unusable)\n"); + break; default: printk(KERN_CONT "type %u\n", e820.map[i].type); break; @@ -1260,6 +1263,7 @@ static inline const char *e820_type_to_s case E820_RAM: return "System RAM"; case E820_ACPI: return "ACPI Tables"; case E820_NVS: return "ACPI Non-volatile Storage"; + case E820_UNUSABLE: return "Unusable memory"; default: return "reserved"; } } diff -uprN linux.trees.git/include/asm-x86/e820.h acpi-linux/include/asm-x86/e820.h --- linux.trees.git/include/asm-x86/e820.h 2008-08-01 08:14:24.000000000 -0700 +++ acpi-linux/include/asm-x86/e820.h 2008-08-01 08:25:55.000000000 -0700 @@ -43,6 +43,7 @@ #define E820_RESERVED 2 #define E820_ACPI 3 #define E820_NVS 4 +#define E820_UNUSABLE 5 /* reserved RAM used by kernel itself */ #define E820_RESERVED_KERN 128
Attachment:
linux-acpi-tip.patch
Description: linux-acpi-tip.patch