u-boot.lds 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. /*
  2. * Copyright (C) 2016 Vladimir Zapolskiy <vz@mleia.com>
  3. * Copyright (C) 2008-2009 Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
  4. * Copyright (C) 2008 Mark Jonas <mark.jonas@de.bosch.com>
  5. * Copyright (C) 2007 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
  6. *
  7. * SPDX-License-Identifier: GPL-2.0+
  8. */
  9. #include "config.h"
  10. OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
  11. OUTPUT_ARCH(sh)
  12. MEMORY
  13. {
  14. ram : ORIGIN = CONFIG_SYS_SDRAM_BASE, LENGTH = CONFIG_SYS_SDRAM_SIZE
  15. }
  16. ENTRY(_start)
  17. SECTIONS
  18. {
  19. reloc_dst = .;
  20. PROVIDE (_ftext = .);
  21. PROVIDE (_fcode = .);
  22. PROVIDE (_start = .);
  23. .text :
  24. {
  25. KEEP(*/start.o (.text))
  26. KEEP(CONFIG_BOARDDIR/lowlevel_init.o (.text .spiboot1.text))
  27. KEEP(*(.spiboot2.text))
  28. . = ALIGN(8192);
  29. common/env_embedded.o (.ppcenv)
  30. . = ALIGN(8192);
  31. common/env_embedded.o (.ppcenvr)
  32. . = ALIGN(8192);
  33. *(.text)
  34. . = ALIGN(4);
  35. } >ram =0xFF
  36. PROVIDE (_ecode = .);
  37. .rodata :
  38. {
  39. *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
  40. . = ALIGN(4);
  41. } >ram
  42. PROVIDE (_etext = .);
  43. PROVIDE (_fdata = .);
  44. .data :
  45. {
  46. *(.data)
  47. . = ALIGN(4);
  48. } >ram
  49. PROVIDE (_edata = .);
  50. PROVIDE (_fgot = .);
  51. .got :
  52. {
  53. *(.got.plt) *(.got)
  54. . = ALIGN(4);
  55. } >ram
  56. PROVIDE (_egot = .);
  57. .u_boot_list : {
  58. KEEP(*(SORT(.u_boot_list*)));
  59. } >ram
  60. PROVIDE (__init_end = .);
  61. PROVIDE (reloc_dst_end = .);
  62. PROVIDE (bss_start = .);
  63. PROVIDE (__bss_start = .);
  64. .bss :
  65. {
  66. *(.bss)
  67. . = ALIGN(4);
  68. } >ram
  69. PROVIDE (bss_end = .);
  70. PROVIDE (__bss_end = .);
  71. }