diff options
authorSandrine Bailleux <sandrine.bailleux@arm.com>2014-05-28 11:31:18 +0100
committerSandrine Bailleux <sandrine.bailleux@arm.com>2014-06-05 17:39:40 +0100
commitb10f375f8bc481cdcefbf37f3b6c6ca52a8c9810 (patch)
parent38315436a8cc2298a4d1701e19160972c8986e72 (diff)
Make the entry point parameter optional in load_image()
There are cases where the entry point information is useless to the caller, e.g. when an image just needs to be loaded in memory but won't ever be executed. This patch allows load_image() function to take a NULL pointer as the entry point parameter. In this case, it won't be populated. Change-Id: Ie9394b054457706c6699926c5e0206e0c3851c56
1 files changed, 5 insertions, 2 deletions
diff --git a/common/bl_common.c b/common/bl_common.c
index 3bc314c..4affa76 100644
--- a/common/bl_common.c
+++ b/common/bl_common.c
@@ -175,7 +175,9 @@ unsigned long image_size(const char *image_name)
* given a name, extents of free memory & whether the image should be loaded at
* the bottom or top of the free memory. It updates the memory layout if the
* load is successful. It also updates the image information and the entry point
- * information in the params passed
+ * information in the params passed. The caller might pass a NULL pointer for
+ * the entry point if it is not interested in this information, e.g. because
+ * the image just needs to be loaded in memory but won't ever be executed.
int load_image(meminfo_t *mem_layout,
const char *image_name,
@@ -399,7 +401,8 @@ int load_image(meminfo_t *mem_layout,
image_data->image_base = image_base;
image_data->image_size = image_size;
- entry_point_info->pc = image_base;
+ if (entry_point_info != NULL)
+ entry_point_info->pc = image_base;
* File has been successfully loaded. Update the free memory