kernel: mips: zboot: put appended dtb into a section
This will make a separated section for dtb appear in ELF, and we can
then use objcopy to patch a dtb into vmlinuz when RAW_APPENDED_DTB
is set in kernel config.
command to patch a dtb:
objcopy --set-section-flags=.appended_dtb=alloc,contents \
        --update-section=.appended_dtb=<target>.dtb vmlinuz vmlinuz-dtb
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
			
			
This commit is contained in:
		| @@ -0,0 +1,36 @@ | ||||
| From 7d1531c81c0fb4c93bea8dc316043ad0e4d0c270 Mon Sep 17 00:00:00 2001 | ||||
| From: Chuanhong Guo <gch981213@gmail.com> | ||||
| Date: Sun, 25 Oct 2020 23:19:40 +0800 | ||||
| Subject: [PATCH] MIPS: zboot: put appended dtb into a section | ||||
|  | ||||
| This will make a separated section for dtb appear in ELF, and we can | ||||
| then use objcopy to patch a dtb into vmlinuz when RAW_APPENDED_DTB | ||||
| is set in kernel config. | ||||
|  | ||||
| command to patch a dtb: | ||||
| objcopy --set-section-flags=.appended_dtb=alloc,contents \ | ||||
|         --update-section=.appended_dtb=<target>.dtb vmlinuz vmlinuz-dtb | ||||
|  | ||||
| Signed-off-by: Chuanhong Guo <gch981213@gmail.com> | ||||
| --- | ||||
|  arch/mips/boot/compressed/ld.script | 9 ++++++--- | ||||
|  1 file changed, 6 insertions(+), 3 deletions(-) | ||||
|  | ||||
| --- a/arch/mips/boot/compressed/ld.script | ||||
| +++ b/arch/mips/boot/compressed/ld.script | ||||
| @@ -31,9 +31,12 @@ SECTIONS | ||||
|  		CONSTRUCTORS | ||||
|  		. = ALIGN(16); | ||||
|  	} | ||||
| -	__appended_dtb = .; | ||||
| -	/* leave space for appended DTB */ | ||||
| -	. += 0x100000; | ||||
| + | ||||
| +	.appended_dtb : { | ||||
| +		__appended_dtb = .; | ||||
| +		/* leave space for appended DTB */ | ||||
| +		. += 0x100000; | ||||
| +	} | ||||
|   | ||||
|  	_edata = .; | ||||
|  	/* End of data section */ | ||||
		Reference in New Issue
	
	Block a user
	 Chuanhong Guo
					Chuanhong Guo