X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=board%2Fkaro%2Ftx53%2Fu-boot.lds;h=e010d99f533a82b5de24f89badb78080992ae895;hb=6eb9c03b43586d536df11dba254e30d265f93a63;hp=1ce1e2ff87383ea7bfad11a5d32bfa9fa16f25d4;hpb=2ec0a6b9c0056bb357f2fc47c91f66a404df7056;p=karo-tx-uboot.git diff --git a/board/karo/tx53/u-boot.lds b/board/karo/tx53/u-boot.lds index 1ce1e2ff87..e010d99f53 100644 --- a/board/karo/tx53/u-boot.lds +++ b/board/karo/tx53/u-boot.lds @@ -27,11 +27,17 @@ SECTIONS . = 0x00000000; .text : { - KEEP(board/karo/tx53/lowlevel_init.o (.text*)) + __uboot_img_start = .; + . = 0x400; + __ivt_start = .; + KEEP(*(.ivt*)) + . = 0x1000; + __ivt_end = .; *(.__image_copy_start) + *(.vectors) CPUDIR/start.o (.text*) *(.text*) - } + } = 0xadde01f0 . = ALIGN(4); .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) } @@ -39,9 +45,9 @@ SECTIONS . = ALIGN(4); .data : { *(.data*) + . = ALIGN(4); } - . = ALIGN(4); .u_boot_list : { KEEP(*(SORT(.u_boot_list*))); } @@ -62,17 +68,34 @@ SECTIONS *(.rel*) } - /* Workaround for an apparent bug in i.MX53 ROM Code, - * that skips loading the last block if it doesn't - * end on a 4KiB boundary. - */ - . = ALIGN(4096); .rel_dyn_end : { *(.__rel_dyn_end) } - _end = .; + .pad : + { + /* Workaround for a bug in i.MX53 ROM Code, + * which skips loading the last block if it doesn't + * end on a 4KiB boundary. + */ + *(.pad) + . = ALIGN(4096); + } = 0x01f0adde + + .uboot_img_end : + { + KEEP(*(.__uboot_img_end)) + } + +#ifdef CONFIG_SECURE_BOOT + .csf_data : + { + *(.__csf_data) + . = . + 0x2000; + } +#endif + __uboot_img_len = . - __uboot_img_start; /* * Compiler-generated __bss_start and __bss_end, see arch/arm/lib/bss.c @@ -92,13 +115,17 @@ SECTIONS .bss_end __bss_limit (OVERLAY) : { KEEP(*(.__bss_end)); } - - /DISCARD/ : { *(.bss*) } + + /DISCARD/ : { *(.debug*) } + /DISCARD/ : { *(.note*) } + /DISCARD/ : { *(.comment*) } + /DISCARD/ : { *(.dynbss) } /DISCARD/ : { *(.dynstr*) } - /DISCARD/ : { *(.dynsym*) } /DISCARD/ : { *(.dynamic*) } - /DISCARD/ : { *(.hash*) } /DISCARD/ : { *(.plt*) } /DISCARD/ : { *(.interp*) } + /DISCARD/ : { *(.gnu.hash) } /DISCARD/ : { *(.gnu*) } + /DISCARD/ : { *(.ARM.exidx*) } + /DISCARD/ : { *(.gnu.linkonce.armexidx.*) } }