Add an event which would be used for notifying changes in the
LMB modules' memory map. This is to be used for having a
synchronous view of the memory that is currently in use, and that is
available for allocations.

Signed-off-by: Sughosh Ganu <sughosh.g...@linaro.org>
---
 common/event.c  |  2 ++
 include/event.h | 14 ++++++++++++++
 2 files changed, 16 insertions(+)

diff --git a/common/event.c b/common/event.c
index dda569d447..fc8002603c 100644
--- a/common/event.c
+++ b/common/event.c
@@ -48,6 +48,8 @@ const char *const type_name[] = {
 
        /* main loop events */
        "main_loop",
+
+       "lmb_map_update",
 };
 
 _Static_assert(ARRAY_SIZE(type_name) == EVT_COUNT, "event type_name size");
diff --git a/include/event.h b/include/event.h
index fb353ad623..fce7e96170 100644
--- a/include/event.h
+++ b/include/event.h
@@ -153,6 +153,14 @@ enum event_t {
         */
        EVT_MAIN_LOOP,
 
+       /**
+        * @EVT_LMB_MAP_UPDATE:
+        * This event is triggered on an update to the LMB reserved memory
+        * region. This can be used to notify about any LMB memory allocation
+        * or freeing of memory having occurred.
+        */
+       EVT_LMB_MAP_UPDATE,
+
        /**
         * @EVT_COUNT:
         * This constants holds the maximum event number + 1 and is used when
@@ -203,6 +211,12 @@ union event_data {
                oftree tree;
                struct bootm_headers *images;
        } ft_fixup;
+
+       struct event_lmb_map_update {
+               u64 base;
+               u64 size;
+               u8 op;
+       } lmb_map;
 };
 
 /**
-- 
2.34.1

Reply via email to