diff options
author | Mike Frysinger <michael.frysinger@analog.com> | 2007-06-11 03:31:30 -0400 |
---|---|---|
committer | Bryan Wu <bryan.wu@analog.com> | 2007-06-11 03:31:30 -0400 |
commit | 321f6e0f5183e489448ae61af79cca1b7fe43e88 (patch) | |
tree | 2ae5df766db693a63a5504325e299799aee9dc02 /arch/blackfin/mm/init.c | |
parent | 5716e514ed526a819775c45a73f1c8b65309e9d3 (diff) |
Blackfin arch: mark our memory init functions with __init so they get freed after init
Signed-off-by: Mike Frysinger <michael.frysinger@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Diffstat (limited to 'arch/blackfin/mm/init.c')
-rw-r--r-- | arch/blackfin/mm/init.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/arch/blackfin/mm/init.c b/arch/blackfin/mm/init.c index d6cf1059560d..570356dbe028 100644 --- a/arch/blackfin/mm/init.c +++ b/arch/blackfin/mm/init.c | |||
@@ -7,7 +7,7 @@ | |||
7 | * Description: | 7 | * Description: |
8 | * | 8 | * |
9 | * Modified: | 9 | * Modified: |
10 | * Copyright 2004-2006 Analog Devices Inc. | 10 | * Copyright 2004-2007 Analog Devices Inc. |
11 | * | 11 | * |
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
13 | * | 13 | * |
@@ -53,7 +53,7 @@ static unsigned long empty_bad_page; | |||
53 | 53 | ||
54 | unsigned long empty_zero_page; | 54 | unsigned long empty_zero_page; |
55 | 55 | ||
56 | void show_mem(void) | 56 | void __init show_mem(void) |
57 | { | 57 | { |
58 | unsigned long i; | 58 | unsigned long i; |
59 | int free = 0, total = 0, reserved = 0, shared = 0; | 59 | int free = 0, total = 0, reserved = 0, shared = 0; |
@@ -86,7 +86,7 @@ void show_mem(void) | |||
86 | * The parameters are pointers to where to stick the starting and ending | 86 | * The parameters are pointers to where to stick the starting and ending |
87 | * addresses of available kernel virtual memory. | 87 | * addresses of available kernel virtual memory. |
88 | */ | 88 | */ |
89 | void paging_init(void) | 89 | void __init paging_init(void) |
90 | { | 90 | { |
91 | /* | 91 | /* |
92 | * make sure start_mem is page aligned, otherwise bootmem and | 92 | * make sure start_mem is page aligned, otherwise bootmem and |
@@ -125,7 +125,7 @@ void paging_init(void) | |||
125 | } | 125 | } |
126 | } | 126 | } |
127 | 127 | ||
128 | void mem_init(void) | 128 | void __init mem_init(void) |
129 | { | 129 | { |
130 | unsigned int codek = 0, datak = 0, initk = 0; | 130 | unsigned int codek = 0, datak = 0, initk = 0; |
131 | unsigned long tmp; | 131 | unsigned long tmp; |
@@ -169,7 +169,7 @@ void mem_init(void) | |||
169 | } | 169 | } |
170 | 170 | ||
171 | #ifdef CONFIG_BLK_DEV_INITRD | 171 | #ifdef CONFIG_BLK_DEV_INITRD |
172 | void free_initrd_mem(unsigned long start, unsigned long end) | 172 | void __init free_initrd_mem(unsigned long start, unsigned long end) |
173 | { | 173 | { |
174 | int pages = 0; | 174 | int pages = 0; |
175 | for (; start < end; start += PAGE_SIZE) { | 175 | for (; start < end; start += PAGE_SIZE) { |
@@ -183,14 +183,14 @@ void free_initrd_mem(unsigned long start, unsigned long end) | |||
183 | } | 183 | } |
184 | #endif | 184 | #endif |
185 | 185 | ||
186 | void free_initmem(void) | 186 | void __init free_initmem(void) |
187 | { | 187 | { |
188 | #ifdef CONFIG_RAMKERNEL | 188 | #ifdef CONFIG_RAMKERNEL |
189 | unsigned long addr; | 189 | unsigned long addr; |
190 | /* | 190 | /* |
191 | * the following code should be cool even if these sections | 191 | * the following code should be cool even if these sections |
192 | * are not page aligned. | 192 | * are not page aligned. |
193 | */ | 193 | */ |
194 | addr = PAGE_ALIGN((unsigned long)(__init_begin)); | 194 | addr = PAGE_ALIGN((unsigned long)(__init_begin)); |
195 | /* next to check that the page we free is not a partial page */ | 195 | /* next to check that the page we free is not a partial page */ |
196 | for (; addr + PAGE_SIZE < (unsigned long)(__init_end); | 196 | for (; addr + PAGE_SIZE < (unsigned long)(__init_end); |