vmbase: Define .image_footer linker section

Replace the runtime memory reservation for the footer with a linker
defined placeholder. Keep this uniform across the clients instead of
making it specific for the pvmfw.

Note: no functional change intended.

Bug: 377276983
Test: m {pvmfw,rialto,vmbase_example_{bios,kernel}}_bin
Change-Id: I46ca02f68af6e0c135a1b6bf9f0701388ca9a445
diff --git a/libs/libvmbase/sections.ld b/libs/libvmbase/sections.ld
index 61af60f..222edae 100644
--- a/libs/libvmbase/sections.ld
+++ b/libs/libvmbase/sections.ld
@@ -76,6 +76,13 @@
 	/* Everything beyond this point will not be included in the binary. */
 	bin_end = data_lma + SIZEOF(.data);
 
+	/* Data may be appended at load time to our binary. */
+	.image_footer (NOLOAD) : ALIGN(4096) {
+		image_footer_begin = .;
+		. = ALIGN(LENGTH(image));
+		image_footer_end = .;
+	} >image
+
 	/* The entry point code assumes that .bss is 16-byte aligned. */
 	.bss : ALIGN(16)  {
 		bss_begin = .;