X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=x86_64%2Fsysdeps.h;h=af89cb186f8a74d080ad79fdd9759985fe6a381f;hb=d180ef2b336b1c47d2b9302505fd0a02c19b6b18;hp=df86f443a1fa4460bd594b410c4058804314b3d7;hpb=39cf398b540b62077fbb9a64aa06a027523967bd;p=debian%2Felilo diff --git a/x86_64/sysdeps.h b/x86_64/sysdeps.h index df86f44..af89cb1 100644 --- a/x86_64/sysdeps.h +++ b/x86_64/sysdeps.h @@ -180,28 +180,27 @@ typedef union x86_64_boot_params { /* 0xA0 */ UINT16 mca_info_len; /* LDR */ /* 0xA2 */ UINT8 mca_info_buf[0x10]; /* LDR */ -/* 0xB2 */ UINT8 unused_4[0x106]; /* unused */ - -/* Address of the EFI system table. */ -/* 0x1B8 */ UINT64 efi_sys_tbl; /* LDR */ +/* 0xB2 */ UINT8 unused_4[0x10E]; /* unused */ /* EFI boot loader signature. */ /* 0x1C0 */ UINT8 efi_loader_sig[4]; /* LDR */ -#define EFI_LOADER_SIG "EFIL" +#define EFI_LOADER_SIG_X64 "EL64" + +/* Address of the EFI system table. */ +/* 0x1C4 */ UINT32 efi_sys_tbl; /* LDR */ /* EFI memory descriptor size. */ -/* 0x1C4 */ UINT32 efi_mem_desc_size; /* LDR */ +/* 0x1C8 */ UINT32 efi_mem_desc_size; /* LDR */ /* EFI memory descriptor version. */ -/* 0x1C8 */ UINT32 efi_mem_desc_ver; /* LDR */ +/* 0x1CC */ UINT32 efi_mem_desc_ver; /* LDR */ /* Address & size of EFI memory map. */ -/* 0x1CC */ UINT32 efi_mem_map_size; /* LDR */ -/* 0x1D0 */ UINT64 efi_mem_map; /* LDR */ +/* 0x1D0 */ UINT32 efi_mem_map; /* LDR */ +/* 0x1D4 */ UINT32 efi_mem_map_size; /* LDR */ -/* Address & size of loader. */ -/* 0x1D8 */ UINT32 loader_start; /* LDR */ -/* 0x1DC */ UINT32 loader_size; /* LDR */ +/* 0x1D8 */ UINT32 efi_sys_tbl_hi; /* LDR */ +/* 0x1DC */ UINT32 efi_mem_map_hi; /* LDR */ /* Available contiguous extended memory in KB. */ /* 0x1E0 */ UINT32 alt_mem_k; /* LDR */ @@ -395,6 +394,9 @@ start_kernel(VOID *kentry, boot_params_t *bp) MEMCPY(high_base_mem, bp, 0x4000); + bp = (boot_params_t *)high_base_mem; + bp->s.cmdline_addr = high_base_mem + bp->s.cmdline_offset; + /* * Initialize Linux GDT. */