diff options
author | Matt Fleming <matt.fleming@intel.com> | 2011-08-18 20:15:37 +0100 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2011-08-18 20:55:56 +0100 |
commit | ace0e7400fdf63d543155fca6391f9e8008cd050 (patch) | |
tree | 5b1e98ede2513bd96be5ebf4e46b0a5f5c9fb52f | |
parent | add4b59291be01a06bf7635217d648d3d98b2de8 (diff) | |
download | efilinux-ace0e7400fdf63d543155fca6391f9e8008cd050.tar.gz |
bzimage: Use UINTN to cast from pointer to integer
The following warnings appear when compiling for i386,
cc1: warnings being treated as errors
loaders/bzimage/bzimage.c: In function ‘load_kernel’:
loaders/bzimage/bzimage.c:165:16: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:167:11: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:178:37: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:186:34: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:275:21: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:276:21: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:277:21: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:283:31: error: cast to pointer from integer of different size
loaders/bzimage/bzimage.c:307:10: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:319:28: error: cast from pointer to integer of different size
loaders/bzimage/bzimage.c:322:28: error: cast from pointer to integer of different size
Use UINTN which maps to unsigned long and works for i386 and x86-64.
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
-rw-r--r-- | loaders/bzimage/bzimage.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/loaders/bzimage/bzimage.c b/loaders/bzimage/bzimage.c index 335fc9e..14324b0 100644 --- a/loaders/bzimage/bzimage.c +++ b/loaders/bzimage/bzimage.c @@ -162,9 +162,9 @@ load_kernel(EFI_HANDLE image, CHAR16 *name, char *cmdline) } rd = (void *)(UINTN)addr; - if ((UINT32)(UINT64)rd > buf->hdr.ramdisk_max) { + if ((UINTN)rd > buf->hdr.ramdisk_max) { Print(L"ramdisk address is too high!\n"); - efree((EFI_PHYSICAL_ADDRESS)rd, size); + efree((UINTN)rd, size); file_close(rdfile); goto out; } @@ -175,7 +175,7 @@ load_kernel(EFI_HANDLE image, CHAR16 *name, char *cmdline) if (err != EFI_SUCCESS) goto out; - buf->hdr.ramdisk_start = (UINT32)(UINT64)rd; + buf->hdr.ramdisk_start = (UINT32)(UINTN)rd; buf->hdr.ramdisk_len = size; } } else { @@ -183,7 +183,7 @@ load_kernel(EFI_HANDLE image, CHAR16 *name, char *cmdline) buf->hdr.ramdisk_len = 0; } - buf->hdr.cmd_line_ptr = (UINT32)(UINT64)cmdline; + buf->hdr.cmd_line_ptr = (UINT32)(UINTN)cmdline; buf->hdr.cmdline_size = strlen(cmdline); memset((char *)&buf->screen_info, 0x0, sizeof(buf->screen_info)); @@ -272,15 +272,15 @@ again: * * Print a warning and hope for the best. */ - if (kernel_start < (EFI_PHYSICAL_ADDRESS)boot_params || - kernel_start < (EFI_PHYSICAL_ADDRESS)map_buf || - kernel_start < (EFI_PHYSICAL_ADDRESS)gdt.base) + if (kernel_start < (UINTN)boot_params || + kernel_start < (UINTN)map_buf || + kernel_start < (UINTN)gdt.base) Print(L"Warning: kernel_start is too low.\n"); /* * Read the rest of the kernel image. */ - err = file_read(file, &size, (void *)kernel_start); + err = file_read(file, &size, (void *)(UINTN)kernel_start); if (err != EFI_SUCCESS) goto out; @@ -304,7 +304,7 @@ again: * call to memory_map(). */ efree(kernel_start, 0x800000); - efree((EFI_PHYSICAL_ADDRESS)map_buf, _map_size); + efree((UINTN)map_buf, _map_size); file_set_position(file, (UINT64)nr_setup_secs * 512); goto again; } @@ -316,10 +316,10 @@ again: goto out; efi = &boot_params->efi_info; - efi->efi_systab = (UINT32)(UINT64)sys_table; + efi->efi_systab = (UINT32)(UINTN)sys_table; efi->efi_memdesc_size = desc_size; efi->efi_memdesc_version = desc_version; - efi->efi_memmap = (UINT32)(UINT64)map_buf; + efi->efi_memmap = (UINT32)(UINTN)map_buf; efi->efi_memmap_size = map_size; efi->efi_systab_hi = (unsigned long)sys_table >> 32; efi->efi_memmap_hi = (unsigned long)map_buf >> 32; |