|  | /* | 
|  | * 1. load vmlinuz | 
|  | * | 
|  | * CONFIG_MEMORY_START  	+-----------------------+ | 
|  | *				|        vmlinuz	| | 
|  | *				+-----------------------+ | 
|  | * 2. decompressed | 
|  | * | 
|  | * CONFIG_MEMORY_START  	+-----------------------+ | 
|  | *				|        vmlinuz	| | 
|  | *				+-----------------------+ | 
|  | *				|			| | 
|  | * BOOT_RELOC_ADDR		+-----------------------+ | 
|  | *				|		 	| | 
|  | * KERNEL_DECOMPRESS_ADDR 	+-----------------------+ | 
|  | *				|  	vmlinux		| | 
|  | *				+-----------------------+ | 
|  | * | 
|  | * 3. relocate copy & jump code | 
|  | * | 
|  | * CONFIG_MEMORY_START  	+-----------------------+ | 
|  | *				|        vmlinuz	| | 
|  | *				+-----------------------+ | 
|  | *				|			| | 
|  | * BOOT_RELOC_ADDR		+-----------------------+ | 
|  | *				|    boot(copy&jump)	| | 
|  | * KERNEL_DECOMPRESS_ADDR 	+-----------------------+ | 
|  | *				|  	vmlinux		| | 
|  | *				+-----------------------+ | 
|  | * | 
|  | * 4. relocate decompressed kernel | 
|  | * | 
|  | * CONFIG_MEMORY_START  	+-----------------------+ | 
|  | *				|        vmlinux	| | 
|  | *				+-----------------------+ | 
|  | *				|			| | 
|  | * BOOT_RELOC_ADDR		+-----------------------+ | 
|  | *				|     boot(copy&jump) 	| | 
|  | * KERNEL_DECOMPRESS_ADDR 	+-----------------------+ | 
|  | *				|  			| | 
|  | *				+-----------------------+ | 
|  | * | 
|  | */ | 
|  | #ifdef __ASSEMBLY__ | 
|  | #define __val(x)	x | 
|  | #else | 
|  | #define __val(x)	(x) | 
|  | #endif | 
|  |  | 
|  | #define DECOMPRESS_OFFSET_BASE	__val(0x00900000) | 
|  | #define BOOT_RELOC_SIZE		__val(0x00001000) | 
|  |  | 
|  | #define KERNEL_EXEC_ADDR	__val(CONFIG_MEMORY_START) | 
|  | #define KERNEL_DECOMPRESS_ADDR	__val(CONFIG_MEMORY_START + \ | 
|  | DECOMPRESS_OFFSET_BASE + BOOT_RELOC_SIZE) | 
|  | #define KERNEL_ENTRY		__val(CONFIG_MEMORY_START + 0x1000) | 
|  |  | 
|  | #define BOOT_EXEC_ADDR		__val(CONFIG_MEMORY_START) | 
|  | #define BOOT_RELOC_ADDR		__val(CONFIG_MEMORY_START + DECOMPRESS_OFFSET_BASE) |