vmlinux-nommu.lds 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * vmlinux.lds.S -- master linker script for m68knommu arch
  4. *
  5. * (C) Copyright 2002-2012, Greg Ungerer <gerg@snapgear.com>
  6. *
  7. * This linker script is equipped to build either ROM loaded or RAM
  8. * run kernels.
  9. */
  10. #if defined(CONFIG_RAMKERNEL)
  11. #define KTEXT_ADDR CONFIG_KERNELBASE
  12. #endif
  13. #if defined(CONFIG_ROMKERNEL)
  14. #define KTEXT_ADDR CONFIG_ROMSTART
  15. #define KDATA_ADDR CONFIG_KERNELBASE
  16. #define LOAD_OFFSET KDATA_ADDR + (ADDR(.text) + SIZEOF(.text))
  17. #endif
  18. #include <asm/page.h>
  19. #include <asm/thread_info.h>
  20. #include <asm-generic/vmlinux.lds.h>
  21. OUTPUT_ARCH(m68k)
  22. ENTRY(_start)
  23. jiffies = jiffies_64 + 4;
  24. SECTIONS {
  25. #ifdef CONFIG_ROMVEC
  26. . = CONFIG_ROMVEC;
  27. .romvec : {
  28. __rom_start = .;
  29. _romvec = .;
  30. *(.romvec)
  31. *(.data..initvect)
  32. }
  33. #endif
  34. . = KTEXT_ADDR;
  35. _text = .;
  36. _stext = .;
  37. .text : {
  38. HEAD_TEXT
  39. TEXT_TEXT
  40. IRQENTRY_TEXT
  41. SOFTIRQENTRY_TEXT
  42. SCHED_TEXT
  43. CPUIDLE_TEXT
  44. LOCK_TEXT
  45. *(.fixup)
  46. . = ALIGN(16);
  47. }
  48. _etext = .;
  49. #ifdef KDATA_ADDR
  50. . = KDATA_ADDR;
  51. #endif
  52. _sdata = .;
  53. RO_DATA_SECTION(PAGE_SIZE)
  54. RW_DATA_SECTION(16, PAGE_SIZE, THREAD_SIZE)
  55. _edata = .;
  56. EXCEPTION_TABLE(16)
  57. NOTES
  58. . = ALIGN(PAGE_SIZE);
  59. __init_begin = .;
  60. INIT_TEXT_SECTION(PAGE_SIZE)
  61. INIT_DATA_SECTION(16)
  62. PERCPU_SECTION(16)
  63. .m68k_fixup : {
  64. __start_fixup = .;
  65. *(.m68k_fixup)
  66. __stop_fixup = .;
  67. }
  68. .init.data : {
  69. . = ALIGN(PAGE_SIZE);
  70. __init_end = .;
  71. }
  72. BSS_SECTION(0, 0, 0)
  73. _end = .;
  74. STABS_DEBUG
  75. .comment 0 : { *(.comment) }
  76. /* Sections to be discarded */
  77. DISCARDS
  78. }