aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mn10300
diff options
context:
space:
mode:
authorTim Abbott <tabbott@ksplice.com>2009-09-24 10:36:22 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-09-24 20:16:22 -0400
commit4295f8b318b424be0f87c9fd9aa1eb35c9585faf (patch)
tree3708034a9cf3b3dcb36132e5d5e6794c3b471932 /arch/mn10300
parenteb121d1f17480793a0d8aa278929976dbb7612f5 (diff)
mn10300: Clean up linker script using higher-level macros.
Signed-off-by: Tim Abbott <tabbott@ksplice.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/mn10300')
-rw-r--r--arch/mn10300/kernel/vmlinux.lds.S40
1 files changed, 4 insertions, 36 deletions
diff --git a/arch/mn10300/kernel/vmlinux.lds.S b/arch/mn10300/kernel/vmlinux.lds.S
index 76f41bdb79c4..10549dcfb610 100644
--- a/arch/mn10300/kernel/vmlinux.lds.S
+++ b/arch/mn10300/kernel/vmlinux.lds.S
@@ -44,24 +44,8 @@ SECTIONS
44 RO_DATA(PAGE_SIZE) 44 RO_DATA(PAGE_SIZE)
45 45
46 /* writeable */ 46 /* writeable */
47 .data : { /* Data */ 47 RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE)
48 DATA_DATA 48 _edata = .;
49 CONSTRUCTORS
50 }
51
52 .data_nosave : { NOSAVE_DATA; }
53
54 .data.page_aligned : { PAGE_ALIGNED_DATA(PAGE_SIZE); }
55 .data.cacheline_aligned : { CACHELINE_ALIGNED_DATA(32); }
56
57 /* rarely changed data like cpu maps */
58 . = ALIGN(32);
59 .data.read_mostly : AT(ADDR(.data.read_mostly)) {
60 READ_MOSTLY_DATA(32);
61 _edata = .; /* End of data section */
62 }
63
64 .data.init_task : { INIT_TASK_DATA(THREAD_SIZE); }
65 49
66 /* might get freed after init */ 50 /* might get freed after init */
67 . = ALIGN(PAGE_SIZE); 51 . = ALIGN(PAGE_SIZE);
@@ -74,22 +58,8 @@ SECTIONS
74 /* will be freed after init */ 58 /* will be freed after init */
75 . = ALIGN(PAGE_SIZE); /* Init code and data */ 59 . = ALIGN(PAGE_SIZE); /* Init code and data */
76 __init_begin = .; 60 __init_begin = .;
77 .init.text : { 61 INIT_TEXT_SECTION(PAGE_SIZE)
78 _sinittext = .; 62 INIT_DATA_SECTION(16)
79 INIT_TEXT;
80 _einittext = .;
81 }
82 .init.data : { INIT_DATA; }
83 .setup.init : { INIT_SETUP(16); }
84
85 __initcall_start = .;
86 .initcall.init : {
87 INITCALLS
88 }
89 __initcall_end = .;
90 .con_initcall.init : { CON_INITCALL; }
91
92 SECURITY_INIT
93 . = ALIGN(4); 63 . = ALIGN(4);
94 __alt_instructions = .; 64 __alt_instructions = .;
95 .altinstructions : { *(.altinstructions) } 65 .altinstructions : { *(.altinstructions) }
@@ -100,8 +70,6 @@ SECTIONS
100 .exit.text : { EXIT_TEXT; } 70 .exit.text : { EXIT_TEXT; }
101 .exit.data : { EXIT_DATA; } 71 .exit.data : { EXIT_DATA; }
102 72
103 .init.ramfs : { INIT_RAM_FS; }
104
105 PERCPU(32) 73 PERCPU(32)
106 . = ALIGN(PAGE_SIZE); 74 . = ALIGN(PAGE_SIZE);
107 __init_end = .; 75 __init_end = .;