summaryrefslogtreecommitdiff
path: root/src/include/memrange.h
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2014-02-05 15:44:30 -0600
committerAaron Durbin <adurbin@google.com>2014-02-06 00:08:59 +0100
commited9307db13671ee347a3f1288e87da508139feea (patch)
tree3239fb71e90f5b6757a8dd120138f5f411d77232 /src/include/memrange.h
parent3d6ffe76f8a505c2dff5d5c6146da3d63dad6e82 (diff)
downloadcoreboot-ed9307db13671ee347a3f1288e87da508139feea.tar.xz
memranges: add memranges_update_tag() functionality
The memranges_update_tag() function replaces all instances that are tagged with old_tag and update to new_tag. This can be helpful in the MTRR code by adjusting the address space if certain memory types cause the MTRR usage to become too large. Change-Id: Ie5c405204de2fdd9fd1dd5d6190b223925d6d318 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/5150 Tested-by: build bot (Jenkins) Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com>
Diffstat (limited to 'src/include/memrange.h')
-rw-r--r--src/include/memrange.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/include/memrange.h b/src/include/memrange.h
index 0e69b2ffeb..4f094f593e 100644
--- a/src/include/memrange.h
+++ b/src/include/memrange.h
@@ -110,6 +110,10 @@ void memranges_create_hole(struct memranges *ranges,
void memranges_insert(struct memranges *ranges,
resource_t base, resource_t size, unsigned long tag);
+/* Update all entries with old_tag to new_tag. */
+void memranges_update_tag(struct memranges *ranges, unsigned long old_tag,
+ unsigned long new_tag);
+
/* Returns next entry after the provided entry. NULL if r is last. */
struct range_entry *memranges_next_entry(struct memranges *ranges,
const struct range_entry *r);