mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 10:26:10 +01:00 
			
		
		
		
	efi_loader: set IMAGE_FILE_LARGE_ADDRESS_AWARE
For the 64bit EFI binaries that we create set the IMAGE_FILE_LARGE_ADDRESS_AWARE characteristic in the PE-COFF header to indicate that they can handle addresses above 2 GiB. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
This commit is contained in:
		| @@ -34,6 +34,7 @@ coff_header: | ||||
| 	.short	(IMAGE_FILE_EXECUTABLE_IMAGE | \ | ||||
| 		 IMAGE_FILE_LINE_NUMS_STRIPPED | \ | ||||
| 		 IMAGE_FILE_LOCAL_SYMS_STRIPPED | \ | ||||
| 		 IMAGE_FILE_LARGE_ADDRESS_AWARE | \ | ||||
| 		 IMAGE_FILE_DEBUG_STRIPPED) | ||||
| optional_header: | ||||
| 	.short	IMAGE_NT_OPTIONAL_HDR64_MAGIC	/* PE32+ format */ | ||||
|   | ||||
| @@ -16,12 +16,23 @@ | ||||
| #define LOAD_LONG(reg, idx)	ld	reg, (idx*SIZE_LONG)(sp) | ||||
| #define PE_MACHINE	IMAGE_FILE_MACHINE_RISCV64 | ||||
| #define PE_MAGIC    IMAGE_NT_OPTIONAL_HDR64_MAGIC | ||||
| #define IMG_CHARACTERISTICS \ | ||||
| 	(IMAGE_FILE_EXECUTABLE_IMAGE | \ | ||||
| 	 IMAGE_FILE_LINE_NUMS_STRIPPED | \ | ||||
| 	 IMAGE_FILE_LOCAL_SYMS_STRIPPED | \ | ||||
| 	 IMAGE_FILE_LARGE_ADDRESS_AWARE | \ | ||||
| 	 IMAGE_FILE_DEBUG_STRIPPED) | ||||
| #else | ||||
| #define SIZE_LONG	4 | ||||
| #define SAVE_LONG(reg, idx)	sw	reg, (idx*SIZE_LONG)(sp) | ||||
| #define LOAD_LONG(reg, idx)	lw	reg, (idx*SIZE_LONG)(sp) | ||||
| #define PE_MACHINE	IMAGE_FILE_MACHINE_RISCV32 | ||||
| #define PE_MAGIC    IMAGE_NT_OPTIONAL_HDR32_MAGIC | ||||
| #define IMG_CHARACTERISTICS \ | ||||
| 	(IMAGE_FILE_EXECUTABLE_IMAGE | \ | ||||
| 	 IMAGE_FILE_LINE_NUMS_STRIPPED | \ | ||||
| 	 IMAGE_FILE_LOCAL_SYMS_STRIPPED | \ | ||||
| 	 IMAGE_FILE_DEBUG_STRIPPED) | ||||
| #endif | ||||
|  | ||||
|  | ||||
| @@ -47,11 +58,7 @@ coff_header: | ||||
| 	.long	0				/* PointerToSymbolTable */ | ||||
| 	.long	0				/* NumberOfSymbols */ | ||||
| 	.short	section_table - optional_header	/* SizeOfOptionalHeader */ | ||||
| 	/* Characteristics */ | ||||
| 	.short	(IMAGE_FILE_EXECUTABLE_IMAGE | \ | ||||
| 		 IMAGE_FILE_LINE_NUMS_STRIPPED | \ | ||||
| 		 IMAGE_FILE_LOCAL_SYMS_STRIPPED | \ | ||||
| 		 IMAGE_FILE_DEBUG_STRIPPED) | ||||
| 	.short	IMG_CHARACTERISTICS		/* Characteristics */ | ||||
| optional_header: | ||||
| 	.short	PE_MAGIC			/* PE32(+) format */ | ||||
| 	.byte	0x02				/* MajorLinkerVersion */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user