summaryrefslogtreecommitdiff
path: root/src/include/cbmem.h
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2015-03-05 14:11:27 -0600
committerAaron Durbin <adurbin@chromium.org>2015-04-22 17:54:41 +0200
commit20686d851ce450750039f5f871160d49118a2210 (patch)
treecabba57012853074cbf31e4a82938c7357c78696 /src/include/cbmem.h
parent818e928d12be9376476ee299fccf9cfe47abb1f2 (diff)
downloadcoreboot-20686d851ce450750039f5f871160d49118a2210.tar.xz
coreboot: add imd library
The imd (internal memory database) library provides a way to track memory regions by assigning ids to each region. The implementation is a direct descendant of dynamic cbmem. The intent is to replace the existing mechanisms which do similar things: dynamic cbmem, stage cache, etc. Differences between dynamic cbmem and imd: - All structures/objects are relative to one another. There are no absolute pointers serialized to memory. - Allow limiting the size of the idm. i.e. provide a maximum memory usage. - Allow setting the size of the root structure which allows control of the number of allocations to track. Change-Id: Id7438cff80d396a594d6a7330d09b45bb4fedf2e Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/8621 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marc.jones@se-eng.com>
Diffstat (limited to 'src/include/cbmem.h')
-rw-r--r--src/include/cbmem.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/cbmem.h b/src/include/cbmem.h
index fdcb829b83..38f9d0320b 100644
--- a/src/include/cbmem.h
+++ b/src/include/cbmem.h
@@ -57,6 +57,7 @@
#define CBMEM_ID_GDT 0x4c474454
#define CBMEM_ID_HOB_POINTER 0x484f4221
#define CBMEM_ID_IGD_OPREGION 0x4f444749
+#define CBMEM_ID_IMD_ROOT 0xff4017ff
#define CBMEM_ID_MEMINFO 0x494D454D
#define CBMEM_ID_MPTABLE 0x534d5054
#define CBMEM_ID_MRCDATA 0x4d524344
@@ -103,6 +104,7 @@ struct cbmem_id_to_name {
{ CBMEM_ID_ELOG, "ELOG " }, \
{ CBMEM_ID_FREESPACE, "FREE SPACE " }, \
{ CBMEM_ID_GDT, "GDT " }, \
+ { CBMEM_ID_IMD_ROOT, "IMD ROOT " }, \
{ CBMEM_ID_MEMINFO, "MEM INFO " }, \
{ CBMEM_ID_MPTABLE, "SMP TABLE " }, \
{ CBMEM_ID_MRCDATA, "MRC DATA " }, \