u-boot.lds 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. /*
  2. * Copyright (C) 2007
  3. * Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
  4. *
  5. * Copyright (C) 2008-2009
  6. * Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
  7. *
  8. * Copyright (C) 2008
  9. * Mark Jonas <mark.jonas@de.bosch.com>
  10. *
  11. * SPDX-License-Identifier: GPL-2.0+
  12. */
  13. OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
  14. OUTPUT_ARCH(sh)
  15. ENTRY(_start)
  16. SECTIONS
  17. {
  18. /*
  19. * entry and reloct_dst will be provided via ldflags
  20. */
  21. . = .;
  22. PROVIDE (_ftext = .);
  23. PROVIDE (_fcode = .);
  24. PROVIDE (_start = .);
  25. .text :
  26. {
  27. KEEP(*/start.o (.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. } =0xFF
  36. PROVIDE (_ecode = .);
  37. .rodata :
  38. {
  39. *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
  40. . = ALIGN(4);
  41. }
  42. PROVIDE (_etext = .);
  43. PROVIDE (_fdata = .);
  44. .data :
  45. {
  46. *(.data)
  47. . = ALIGN(4);
  48. }
  49. PROVIDE (_edata = .);
  50. PROVIDE (_fgot = .);
  51. .got :
  52. {
  53. *(.got)
  54. . = ALIGN(4);
  55. }
  56. PROVIDE (_egot = .);
  57. .u_boot_list : {
  58. KEEP(*(SORT(.u_boot_list*)));
  59. }
  60. PROVIDE (reloc_dst_end = .);
  61. /* _reloc_dst_end = .; */
  62. PROVIDE (bss_start = .);
  63. PROVIDE (__bss_start = .);
  64. .bss :
  65. {
  66. *(.bss)
  67. . = ALIGN(4);
  68. }
  69. PROVIDE (bss_end = .);
  70. PROVIDE (__bss_end = .);
  71. }