u-boot-spl.lds 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*
  2. * Copyright 2012-2013 Stefan Roese <sr@denx.de>
  3. *
  4. * SPDX-License-Identifier: GPL-2.0+
  5. */
  6. MEMORY
  7. {
  8. sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR,
  9. LENGTH = CONFIG_SPL_BSS_MAX_SIZE
  10. flash : ORIGIN = CONFIG_SPL_TEXT_BASE,
  11. LENGTH = CONFIG_SYS_SPL_MAX_LEN
  12. }
  13. OUTPUT_ARCH(powerpc)
  14. ENTRY(_start)
  15. SECTIONS
  16. {
  17. #ifdef CONFIG_440
  18. .bootpg 0xfffff000 :
  19. {
  20. arch/powerpc/cpu/ppc4xx/start.o (.bootpg)
  21. /*
  22. * PPC440 board need a board specific object with the
  23. * TLB definitions. This needs to get included right after
  24. * start.o, since the first shadow TLB only covers 4k
  25. * of address space.
  26. */
  27. CONFIG_BOARDDIR/init.o (.bootpg)
  28. } > flash
  29. #endif
  30. .resetvec 0xFFFFFFFC :
  31. {
  32. KEEP(*(.resetvec))
  33. } > flash
  34. .text :
  35. {
  36. __start = .;
  37. arch/powerpc/cpu/ppc4xx/start.o (.text)
  38. CONFIG_BOARDDIR/init.o (.text)
  39. *(.text*)
  40. } > flash
  41. . = ALIGN(4);
  42. .data : { *(SORT_BY_ALIGNMENT(.data*)) } > flash
  43. . = ALIGN(4);
  44. .rodata : { *(SORT_BY_ALIGNMENT(.rodata*)) } > flash
  45. .bss :
  46. {
  47. . = ALIGN(4);
  48. __bss_start = .;
  49. *(.bss*)
  50. . = ALIGN(4);
  51. __bss_end = .;
  52. } > sdram
  53. }