diff options
Diffstat (limited to 'arch/microblaze/kernel/vmlinux.lds.S')
| -rw-r--r-- | arch/microblaze/kernel/vmlinux.lds.S | 25 | 
1 files changed, 5 insertions, 20 deletions
diff --git a/arch/microblaze/kernel/vmlinux.lds.S b/arch/microblaze/kernel/vmlinux.lds.S index 96a88c31fe4..be9488d6973 100644 --- a/arch/microblaze/kernel/vmlinux.lds.S +++ b/arch/microblaze/kernel/vmlinux.lds.S @@ -44,13 +44,14 @@ SECTIONS {  	__fdt_blob : AT(ADDR(__fdt_blob) - LOAD_OFFSET) {  		_fdt_start = . ;		/* place for fdt blob */  		*(__fdt_blob) ;			/* Any link-placed DTB */ -	        . = _fdt_start + 0x4000;	/* Pad up to 16kbyte */ +	        . = _fdt_start + 0x8000;	/* Pad up to 32kbyte */  		_fdt_end = . ;  	}  	. = ALIGN(16);  	RODATA  	EXCEPTION_TABLE(16) +	NOTES  	/*  	 * sdata2 section can go anywhere, but must be word aligned @@ -70,11 +71,6 @@ SECTIONS {  	RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE)  	_edata = . ; -	/* Reserve some low RAM for r0 based memory references */ -	. = ALIGN(0x4) ; -	r0_ram = . ; -	. = . +  PAGE_SIZE;	/* a page should be enough */ -  	/* Under the microblaze ABI, .sdata and .sbss must be contiguous */  	. = ALIGN(8);  	.sdata : AT(ADDR(.sdata) - LOAD_OFFSET) { @@ -123,20 +119,10 @@ SECTIONS {  	__init_end_before_initramfs = .; -	.init.ramfs ALIGN(PAGE_SIZE) : AT(ADDR(.init.ramfs) - LOAD_OFFSET) { -		__initramfs_start = .; -		*(.init.ramfs) -		__initramfs_end = .; -		. = ALIGN(4); -		LONG(0); -/* - * FIXME this can break initramfs for MMU. - * Pad init.ramfs up to page boundary, - * so that __init_end == __bss_start. This will make image.elf - * consistent with the image.bin - */ -		/* . = ALIGN(PAGE_SIZE); */ +	.init.ramfs : AT(ADDR(.init.ramfs) - LOAD_OFFSET) { +		INIT_RAM_FS  	} +  	__init_end = .;  	.bss ALIGN (PAGE_SIZE) : AT(ADDR(.bss) - LOAD_OFFSET) { @@ -146,7 +132,6 @@ SECTIONS {  			*(COMMON)  		. = ALIGN (4) ;  		__bss_stop = . ; -		_ebss = . ;  	}  	. = ALIGN(PAGE_SIZE);  	_end = .;  | 
