diff options
Diffstat (limited to 'common/firmware_image.lds.S')
-rw-r--r-- | common/firmware_image.lds.S | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/common/firmware_image.lds.S b/common/firmware_image.lds.S index a956683aa6..8e82dcf1de 100644 --- a/common/firmware_image.lds.S +++ b/common/firmware_image.lds.S @@ -15,6 +15,9 @@ #define IMAGE_RW_AT (CONFIG_PROGRAM_MEMORY_BASE + \ CONFIG_EC_WRITABLE_STORAGE_OFF + \ CONFIG_RW_STORAGE_OFF) +#define IMAGE_RW_B_AT (CONFIG_PROGRAM_MEMORY_BASE + \ + CONFIG_EC_WRITABLE_STORAGE_OFF + \ + CONFIG_RW_B_STORAGE_OFF) #elif (CONFIG_RO_MEM_OFF == CONFIG_RW_MEM_OFF) #define IMAGE_RO_AT (CONFIG_PROGRAM_MEMORY_BASE + CONFIG_RO_MEM_OFF) @@ -23,10 +26,13 @@ mapped to the same location but we still have to generate an ec.bin with RO and RW images at different Flash offset */ #define IMAGE_RW_AT (CONFIG_PROGRAM_MEMORY_BASE + \ CONFIG_RO_MEM_OFF + CONFIG_RO_SIZE) +#define IMAGE_RW_B_AT (CONFIG_PROGRAM_MEMORY_BASE + \ + CONFIG_RO_MEM_OFF + CONFIG_RO_SIZE + CONFIG_RW_SIZE) #else #define IMAGE_RO_AT (CONFIG_PROGRAM_MEMORY_BASE + CONFIG_RO_MEM_OFF) #define IMAGE_RW_AT (CONFIG_PROGRAM_MEMORY_BASE + CONFIG_RW_MEM_OFF) +#define IMAGE_RW_B_AT (CONFIG_PROGRAM_MEMORY_BASE + CONFIG_RW_B_MEM_OFF) #endif OUTPUT_FORMAT(BFD_FORMAT, BFD_FORMAT, BFD_FORMAT) @@ -69,9 +75,14 @@ SECTIONS } > FLASH =0xff #endif #ifdef CONFIG_RW_B_MEM_OFF - .image.RW_B : AT(CONFIG_PROGRAM_MEMORY_BASE + CONFIG_RW_B_MEM_OFF) { + .image.RW_B : AT(IMAGE_RW_B_AT) { *(.image.RW_B) } > FLASH =0xff +#ifdef CONFIG_RWSIG_TYPE_RWSIG + .image.RW_B.sign : AT(CONFIG_RW_B_SIG_ADDR) { + *(.image.RW_B.sign) + } > FLASH =0xff +#endif #endif .padding : AT(CONFIG_PROGRAM_MEMORY_BASE + CONFIG_FLASH_SIZE - 1) { BYTE(0xff); |