aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Medhurst <tixy@linaro.org>2014-02-17 12:18:24 +0000
committerJon Medhurst <tixy@linaro.org>2014-02-27 15:51:35 +0000
commit63a009df0a734a6ab3e37e5771fd05a818d6859d (patch)
tree52e65818f2e29f3e66993c1779c1109c05ae3227
parenta9380b72eae98bdda98dc0ce793dd1e7050195f4 (diff)
Generate build time and date message at link time.tixy-issue-33
So it updated each time a bootloader changes, not just when bl*_main.c files are recompiled. Fixes ARM-software/tf-issues#33 Signed-off-by: Jon Medhurst <tixy@linaro.org> Conflicts: Makefile
-rw-r--r--Makefile5
-rw-r--r--bl1/bl1_main.c2
-rw-r--r--bl2/bl2_main.c4
-rw-r--r--bl31/bl31_main.c5
-rw-r--r--bl32/tsp/tsp_main.c4
-rw-r--r--include/bl_common.h1
6 files changed, 10 insertions, 11 deletions
diff --git a/Makefile b/Makefile
index d0b18c9..e1a3501 100644
--- a/Makefile
+++ b/Makefile
@@ -353,8 +353,11 @@ $(BUILD_DIR) :
$(ELF) : $(OBJS) $(LINKERFILE)
@echo " LD $$@"
+ @echo 'const char build_message[] = "Built : "__TIME__", "__DATE__;' | \
+ $$(CC) $$(CFLAGS) -xc - -o $(BUILD_DIR)/build_message.o
$$(Q)$$(LD) -o $$@ $$(LDFLAGS) -Map=$(MAPFILE) --script $(LINKERFILE) \
- --entry=$(BL$(1)_ENTRY_POINT) $(OBJS)
+ --entry=$(BL$(1)_ENTRY_POINT) $(OBJS) \
+ $(BUILD_DIR)/build_message.o
$(DUMP) : $(ELF)
@echo " OD $$@"
diff --git a/bl1/bl1_main.c b/bl1/bl1_main.c
index b3adc25..401a525 100644
--- a/bl1/bl1_main.c
+++ b/bl1/bl1_main.c
@@ -70,7 +70,7 @@ void bl1_main(void)
/* Announce our arrival */
printf(FIRMWARE_WELCOME_STR);
- printf("Built : %s, %s\n\r", __TIME__, __DATE__);
+ printf("%s\n\r", build_message);
/*
* Find out how much free trusted ram remains after BL1 load
diff --git a/bl2/bl2_main.c b/bl2/bl2_main.c
index 74952da..1deebc8 100644
--- a/bl2/bl2_main.c
+++ b/bl2/bl2_main.c
@@ -58,9 +58,7 @@ void bl2_main(void)
/* Perform platform setup in BL1 */
bl2_platform_setup();
-#if defined(__GNUC__)
- printf("BL2 Built : %s, %s\n\r", __TIME__, __DATE__);
-#endif
+ printf("BL2 %s\n\r", build_message);
/* Find out how much free trusted ram remains after BL2 load */
bl2_tzram_layout = bl2_plat_sec_mem_layout();
diff --git a/bl31/bl31_main.c b/bl31/bl31_main.c
index 82449f5..536bb86 100644
--- a/bl31/bl31_main.c
+++ b/bl31/bl31_main.c
@@ -83,9 +83,8 @@ void bl31_main(void)
/* Perform platform setup in BL1 */
bl31_platform_setup();
-#if defined (__GNUC__)
- printf("BL31 Built : %s, %s\n\r", __TIME__, __DATE__);
-#endif
+ printf("BL31 %s\n\r", build_message);
+
/* Initialise helper libraries */
bl31_lib_init();
diff --git a/bl32/tsp/tsp_main.c b/bl32/tsp/tsp_main.c
index 05907f5..366aef0 100644
--- a/bl32/tsp/tsp_main.c
+++ b/bl32/tsp/tsp_main.c
@@ -121,9 +121,7 @@ uint64_t tsp_main(void)
tsp_stats[linear_id].cpu_on_count++;
spin_lock(&console_lock);
-#if defined (__GNUC__)
- printf("TSP Built : %s, %s\n\r", __TIME__, __DATE__);
-#endif
+ printf("TSP %s\n\r", build_message);
INFO("Total memory base : 0x%x\n", mem_layout->total_base);
INFO("Total memory size : 0x%x bytes\n", mem_layout->total_size);
INFO("Free memory base : 0x%x\n", mem_layout->free_base);
diff --git a/include/bl_common.h b/include/bl_common.h
index aad3d22..8139282 100644
--- a/include/bl_common.h
+++ b/include/bl_common.h
@@ -140,6 +140,7 @@ extern void __dead2 run_image(unsigned long entrypoint,
void *first_arg,
void *second_arg);
extern unsigned long *get_el_change_mem_ptr(void);
+extern const char build_message[];
#endif /*__ASSEMBLY__*/