diff options
author | Nicolas Pitre <nicolas.pitre@linaro.org> | 2011-04-19 16:13:23 -0400 |
---|---|---|
committer | Nicolas Pitre <nico@fluxnic.net> | 2011-05-07 00:08:00 -0400 |
commit | e40f1e9fb342a2e38fae164861a8cff248ceb87b (patch) | |
tree | 90f68e7bed7a21aee4cc3bfcf8916053a62aaf6b /arch/arm/boot/compressed | |
parent | 34cc1a8fe0d3f89f3602b49f1121a99d2bfc5efc (diff) |
ARM: zImage: simplify decompress_kernel()
The return value for decompress_kernel() is no longer used. Furthermore,
this was obtained and stored in a variable called output_ptr which is
a complete misnomer for what is actually the size of the decompressed
kernel image. Let's get rid of it.
Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Tested-by: Shawn Guo <shawn.guo@linaro.org>
Tested-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/boot/compressed')
-rw-r--r-- | arch/arm/boot/compressed/misc.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/arch/arm/boot/compressed/misc.c b/arch/arm/boot/compressed/misc.c index 4657e877bf8f..51b87b54a7ef 100644 --- a/arch/arm/boot/compressed/misc.c +++ b/arch/arm/boot/compressed/misc.c | |||
@@ -26,8 +26,6 @@ unsigned int __machine_arch_type; | |||
26 | #include <linux/linkage.h> | 26 | #include <linux/linkage.h> |
27 | #include <asm/string.h> | 27 | #include <asm/string.h> |
28 | 28 | ||
29 | #include <asm/unaligned.h> | ||
30 | |||
31 | 29 | ||
32 | static void putstr(const char *ptr); | 30 | static void putstr(const char *ptr); |
33 | extern void error(char *x); | 31 | extern void error(char *x); |
@@ -149,13 +147,12 @@ void *memcpy(void *__dest, __const void *__src, size_t __n) | |||
149 | } | 147 | } |
150 | 148 | ||
151 | /* | 149 | /* |
152 | * gzip delarations | 150 | * gzip declarations |
153 | */ | 151 | */ |
154 | extern char input_data[]; | 152 | extern char input_data[]; |
155 | extern char input_data_end[]; | 153 | extern char input_data_end[]; |
156 | 154 | ||
157 | unsigned char *output_data; | 155 | unsigned char *output_data; |
158 | unsigned long output_ptr; | ||
159 | 156 | ||
160 | unsigned long free_mem_ptr; | 157 | unsigned long free_mem_ptr; |
161 | unsigned long free_mem_end_ptr; | 158 | unsigned long free_mem_end_ptr; |
@@ -183,13 +180,11 @@ asmlinkage void __div0(void) | |||
183 | extern void do_decompress(u8 *input, int len, u8 *output, void (*error)(char *x)); | 180 | extern void do_decompress(u8 *input, int len, u8 *output, void (*error)(char *x)); |
184 | 181 | ||
185 | 182 | ||
186 | unsigned long | 183 | void |
187 | decompress_kernel(unsigned long output_start, unsigned long free_mem_ptr_p, | 184 | decompress_kernel(unsigned long output_start, unsigned long free_mem_ptr_p, |
188 | unsigned long free_mem_ptr_end_p, | 185 | unsigned long free_mem_ptr_end_p, |
189 | int arch_id) | 186 | int arch_id) |
190 | { | 187 | { |
191 | unsigned char *tmp; | ||
192 | |||
193 | output_data = (unsigned char *)output_start; | 188 | output_data = (unsigned char *)output_start; |
194 | free_mem_ptr = free_mem_ptr_p; | 189 | free_mem_ptr = free_mem_ptr_p; |
195 | free_mem_end_ptr = free_mem_ptr_end_p; | 190 | free_mem_end_ptr = free_mem_ptr_end_p; |
@@ -197,12 +192,8 @@ decompress_kernel(unsigned long output_start, unsigned long free_mem_ptr_p, | |||
197 | 192 | ||
198 | arch_decomp_setup(); | 193 | arch_decomp_setup(); |
199 | 194 | ||
200 | tmp = (unsigned char *) (((unsigned long)input_data_end) - 4); | ||
201 | output_ptr = get_unaligned_le32(tmp); | ||
202 | |||
203 | putstr("Uncompressing Linux..."); | 195 | putstr("Uncompressing Linux..."); |
204 | do_decompress(input_data, input_data_end - input_data, | 196 | do_decompress(input_data, input_data_end - input_data, |
205 | output_data, error); | 197 | output_data, error); |
206 | putstr(" done, booting the kernel.\n"); | 198 | putstr(" done, booting the kernel.\n"); |
207 | return output_ptr; | ||
208 | } | 199 | } |