Kiibohd Controller
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

mk20dx128.ld 1.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. MEMORY
  2. {
  3. FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 128K
  4. RAM (rwx) : ORIGIN = 0x1FFFE000, LENGTH = 16K
  5. }
  6. SECTIONS
  7. {
  8. .text : {
  9. . = 0;
  10. KEEP(*(.vectors))
  11. *(.startup*)
  12. /* TODO: does linker detect startup overflow onto flashconfig? */
  13. . = 0x400;
  14. KEEP(*(.flashconfig*))
  15. *(.text*)
  16. *(.rodata*)
  17. . = ALIGN(4);
  18. KEEP(*(.init))
  19. . = ALIGN(4);
  20. __preinit_array_start = .;
  21. KEEP (*(.preinit_array))
  22. __preinit_array_end = .;
  23. __init_array_start = .;
  24. KEEP (*(SORT(.init_array.*)))
  25. KEEP (*(.init_array))
  26. __init_array_end = .;
  27. } > FLASH = 0xFF
  28. .ARM.exidx : {
  29. __exidx_start = .;
  30. *(.ARM.exidx* .gnu.linkonce.armexidx.*)
  31. __exidx_end = .;
  32. } > FLASH
  33. _etext = .;
  34. .usbdescriptortable (NOLOAD) : {
  35. /* . = ORIGIN(RAM); */
  36. . = ALIGN(512);
  37. *(.usbdescriptortable*)
  38. } > RAM
  39. .usbbuffers (NOLOAD) : {
  40. . = ALIGN(4);
  41. *(.usbbuffers*)
  42. } > RAM
  43. .data : AT (_etext) {
  44. . = ALIGN(4);
  45. _sdata = .;
  46. *(.data*)
  47. . = ALIGN(4);
  48. _edata = .;
  49. } > RAM
  50. .noinit (NOLOAD) : {
  51. *(.noinit*)
  52. } > RAM
  53. .bss : {
  54. . = ALIGN(4);
  55. _sbss = .;
  56. *(.bss*)
  57. *(COMMON)
  58. . = ALIGN(4);
  59. _ebss = .;
  60. } > RAM
  61. _estack = ORIGIN(RAM) + LENGTH(RAM);
  62. }