link_descriptor.ld 992 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. OUTPUT_ARCH(arm)
  2. ENTRY(_start)
  3. romBase = 0x00201000;
  4. ramBase = 0x00102180;
  5. MEMORY {
  6. ram : ORIGIN = ramBase, LENGTH = 0xBA80
  7. rom : ORIGIN = romBase, LENGTH = 0x1F000
  8. }
  9. SECTIONS {
  10. /* rom region */
  11. . = romBase;
  12. __boot_start = .;
  13. .start ALIGN(4) : {
  14. *(.text.start)
  15. }
  16. . = romBase + 0x01FC;
  17. .rom_info ALIGN(4) : {
  18. *(.data.rom_info)
  19. }
  20. .text ALIGN(4) : {
  21. *(.text)
  22. *(.text.*)
  23. }
  24. .rodata ALIGN(4) : {
  25. *(.rodata)
  26. *(.rodata.*)
  27. }
  28. .data ALIGN(4) : {
  29. *(.data)
  30. *(.data.*)
  31. }
  32. .got ALIGN(4) : {
  33. *(.got)
  34. *(.got.*)
  35. }
  36. __boot_end = .;
  37. /* ram region */
  38. . = ramBase;
  39. .bss ALIGN(16) : {
  40. _bss_start = .;
  41. *(.bss)
  42. *(.bss.*)
  43. *(COMMON)
  44. /* make _bss_end as 4 bytes alignment */
  45. . = ALIGN(4);
  46. _bss_end = .;
  47. }
  48. .secbuf ALIGN(4) : {
  49. _secbuf_start = .;
  50. *(.secbuf)
  51. _secbuf_end = .;
  52. }
  53. }