[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <D936D925018D154694D8A362EEB0892004FC7099@orsmsx416.amr.corp.intel.com>
Date: Thu, 24 Jul 2008 09:49:57 -0700
From: "Cihula, Joseph" <joseph.cihula@...el.com>
To: <linux-kernel@...r.kernel.org>, <x86@...nel.org>
Cc: "Kleen, Andi" <andi.kleen@...el.com>,
"Wang, Shane" <shane.wang@...el.com>,
"Wei, Gang" <gang.wei@...el.com>,
"Brown, Len" <len.brown@...el.com>
Subject: [PATCH] acpi - Add support for AddressRangeUnusuable ACPI memory type
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 2.6.26.
Signed-off-by: Joseph Cihula <joseph.cihula@...el.com>
Signed-off-by: Shane Wang <shane.wang@...el.com>
Signed-off-by: Gang Wei <gang.wei@...el.com>
--- linux-2.6.26/arch/x86/kernel/e820_32.c 2008-07-13
14:51:29.000000000 -0700
+++ linux-2.6.26-acpi/arch/x86/kernel/e820_32.c 2008-07-23
13:25:44.000000000 -0700
@@ -198,6 +198,7 @@
case E820_RAM: res->name = "System RAM"; break;
case E820_ACPI: res->name = "ACPI Tables"; break;
case E820_NVS: res->name = "ACPI Non-volatile Storage";
break;
+ case E820_UNUSABLE: res->name = "Unusable memory";
break;
default: res->name = "reserved";
}
res->start = e820.map[i].addr;
@@ -604,6 +605,9 @@
case E820_NVS:
printk("(ACPI NVS)\n");
break;
+ case E820_UNUSABLE:
+ printk("(unusable)\n");
+ break;
default: printk("type %u\n", e820.map[i].type);
break;
}
--- linux-2.6.26/arch/x86/kernel/e820_64.c 2008-07-13
14:51:29.000000000 -0700
+++ linux-2.6.26-acpi/arch/x86/kernel/e820_64.c 2008-07-23
13:27:29.000000000 -0700
@@ -336,6 +336,7 @@
case E820_RAM: res->name = "System RAM"; break;
case E820_ACPI: res->name = "ACPI Tables"; break;
case E820_NVS: res->name = "ACPI Non-volatile Storage";
break;
+ case E820_UNUSABLE: res->name = "Unusable memory";
break;
default: res->name = "reserved";
}
res->start = e820.map[i].addr;
@@ -495,6 +496,9 @@
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;
--- linux-2.6.26/include/asm-x86/e820.h 2008-07-13 14:51:29.000000000
-0700
+++ linux-2.6.26-acpi/include/asm-x86/e820.h 2008-07-23
13:25:44.000000000 -0700
@@ -8,6 +8,7 @@
#define E820_RESERVED 2
#define E820_ACPI 3
#define E820_NVS 4
+#define E820_UNUSABLE 5
#ifndef __ASSEMBLY__
struct e820entry {
<<linux-acpi-2.6.26.patch>>
Download attachment "linux-acpi-2.6.26.patch" of type "application/octet-stream" (1731 bytes)
Powered by blists - more mailing lists