Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 671eef85 authored by Cihula, Joseph's avatar Cihula, Joseph Committed by Ingo Molnar
Browse files

x86, e820: 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.

Signed-off-by: default avatarJoseph Cihula <joseph.cihula@intel.com>
Signed-off-by: default avatarShane Wang <shane.wang@intel.com>
Signed-off-by: default avatarGang Wei <gang.wei@intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent b76d69ed
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -148,6 +148,9 @@ void __init e820_print_map(char *who)
		case E820_NVS:
		case E820_NVS:
			printk(KERN_CONT "(ACPI NVS)\n");
			printk(KERN_CONT "(ACPI NVS)\n");
			break;
			break;
		case E820_UNUSABLE:
			printk("(unusable)\n");
			break;
		default:
		default:
			printk(KERN_CONT "type %u\n", e820.map[i].type);
			printk(KERN_CONT "type %u\n", e820.map[i].type);
			break;
			break;
@@ -1260,6 +1263,7 @@ static inline const char *e820_type_to_string(int e820_type)
	case E820_RAM:	return "System RAM";
	case E820_RAM:	return "System RAM";
	case E820_ACPI:	return "ACPI Tables";
	case E820_ACPI:	return "ACPI Tables";
	case E820_NVS:	return "ACPI Non-volatile Storage";
	case E820_NVS:	return "ACPI Non-volatile Storage";
	case E820_UNUSABLE:	return "Unusable memory";
	default:	return "reserved";
	default:	return "reserved";
	}
	}
}
}
+1 −0
Original line number Original line Diff line number Diff line
@@ -43,6 +43,7 @@
#define E820_RESERVED	2
#define E820_RESERVED	2
#define E820_ACPI	3
#define E820_ACPI	3
#define E820_NVS	4
#define E820_NVS	4
#define E820_UNUSABLE	5


/* reserved RAM used by kernel itself */
/* reserved RAM used by kernel itself */
#define E820_RESERVED_KERN        128
#define E820_RESERVED_KERN        128