u-boot.lds 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright 2006, 2007 Freescale Semiconductor, Inc.
  4. */
  5. OUTPUT_ARCH(powerpc)
  6. SECTIONS
  7. {
  8. /* Read-only sections, merged into text segment: */
  9. .text :
  10. {
  11. arch/powerpc/cpu/mpc86xx/start.o (.text*)
  12. arch/powerpc/cpu/mpc86xx/traps.o (.text*)
  13. *(.text*)
  14. }
  15. _etext = .;
  16. PROVIDE (etext = .);
  17. .rodata :
  18. {
  19. *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
  20. }
  21. /* Read-write section, merged into data segment: */
  22. . = (. + 0x00FF) & 0xFFFFFF00;
  23. _erotext = .;
  24. PROVIDE (erotext = .);
  25. .reloc :
  26. {
  27. _GOT2_TABLE_ = .;
  28. KEEP(*(.got2))
  29. KEEP(*(.got))
  30. _FIXUP_TABLE_ = .;
  31. KEEP(*(.fixup))
  32. }
  33. __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1;
  34. __fixup_entries = (. - _FIXUP_TABLE_) >> 2;
  35. .data :
  36. {
  37. *(.data*)
  38. *(.sdata*)
  39. }
  40. _edata = .;
  41. PROVIDE (edata = .);
  42. . = .;
  43. . = ALIGN(4);
  44. .u_boot_list : {
  45. KEEP(*(SORT(.u_boot_list*)));
  46. }
  47. . = .;
  48. __start___ex_table = .;
  49. __ex_table : { *(__ex_table) }
  50. __stop___ex_table = .;
  51. . = ALIGN(256);
  52. __init_begin = .;
  53. .text.init : { *(.text.init) }
  54. .data.init : { *(.data.init) }
  55. . = ALIGN(256);
  56. __init_end = .;
  57. __bss_start = .;
  58. .bss (NOLOAD) :
  59. {
  60. *(.bss*)
  61. *(.sbss*)
  62. *(COMMON)
  63. . = ALIGN(4);
  64. }
  65. __bss_end = . ;
  66. PROVIDE (end = .);
  67. }