diff options
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/boot/sys/boot/efi/libefi/env.c | 6 | ||||
-rw-r--r-- | usr/src/boot/sys/boot/i386/libi386/biosdisk.c | 20 | ||||
-rw-r--r-- | usr/src/boot/sys/boot/i386/libi386/multiboot.c | 18 |
3 files changed, 15 insertions, 29 deletions
diff --git a/usr/src/boot/sys/boot/efi/libefi/env.c b/usr/src/boot/sys/boot/efi/libefi/env.c index c479422b2f..9fda7f22cc 100644 --- a/usr/src/boot/sys/boot/efi/libefi/env.c +++ b/usr/src/boot/sys/boot/efi/libefi/env.c @@ -402,6 +402,7 @@ efi_memory_type(EFI_MEMORY_TYPE type) "PalCode", "PersistentMemory" }; + switch (type) { case EfiReservedMemoryType: case EfiLoaderCode: @@ -419,8 +420,9 @@ efi_memory_type(EFI_MEMORY_TYPE type) case EfiPalCode: case EfiPersistentMemory: return (types[type]); + default: + return ("Unknown"); } - return ("Unknown"); } /* Print memory type table. */ @@ -517,13 +519,11 @@ efi_print_global(const CHAR16 *varnamearg, uint8_t *data, UINTN datasz) strncmp("Driver", var, 5) == 0 || strncmp("SysPrep", var, 7) == 0 || strncmp("OsRecovery", var, 10) == 0) { - UINT32 attr; UINT16 filepathlistlen; CHAR16 *text; int desclen; EFI_DEVICE_PATH *dp; - attr = *(uint32_t *)data; data += sizeof(UINT32); filepathlistlen = *(uint16_t *)data; data += sizeof (UINT16); diff --git a/usr/src/boot/sys/boot/i386/libi386/biosdisk.c b/usr/src/boot/sys/boot/i386/libi386/biosdisk.c index 598cef6814..e286a7e29f 100644 --- a/usr/src/boot/sys/boot/i386/libi386/biosdisk.c +++ b/usr/src/boot/sys/boot/i386/libi386/biosdisk.c @@ -90,6 +90,8 @@ static struct bdinfo static int nbdinfo = 0; #define BD(dev) (bdinfo[(dev)->dd.d_unit]) +#define BD_RD 0 +#define BD_WR 1 static void bd_io_workaround(struct disk_devdesc *dev); @@ -532,7 +534,7 @@ bd_realstrategy(void *devdata, int rw, daddr_t dblk, size_t size, if (rest < bsize) bsize = rest; - if ((rc = bd_io(dev, dblk, x, bbuf, 0)) != 0) + if ((rc = bd_io(dev, dblk, x, bbuf, BD_RD)) != 0) return (EIO); bcopy(bbuf + blkoff, buf, bsize); @@ -547,7 +549,7 @@ bd_realstrategy(void *devdata, int rw, daddr_t dblk, size_t size, x = 1; bsize = BD(dev).bd_sectorsize - blkoff; bsize = min(bsize, rest); - rc = bd_io(dev, dblk, x, bbuf, 0); + rc = bd_io(dev, dblk, x, bbuf, BD_RD); } else if (rest < BD(dev).bd_sectorsize) { /* * The remaining block is not full @@ -555,7 +557,7 @@ bd_realstrategy(void *devdata, int rw, daddr_t dblk, size_t size, */ x = 1; bsize = rest; - rc = bd_io(dev, dblk, x, bbuf, 0); + rc = bd_io(dev, dblk, x, bbuf, BD_RD); } else { /* We can write full sector(s). */ bsize = BD(dev).bd_sectorsize * x; @@ -565,7 +567,7 @@ bd_realstrategy(void *devdata, int rw, daddr_t dblk, size_t size, * Put your Data In, and shake it all about */ bcopy(buf, bbuf + blkoff, bsize); - if ((rc = bd_io(dev, dblk, x, bbuf, 1)) != 0) + if ((rc = bd_io(dev, dblk, x, bbuf, BD_WR)) != 0) return (EIO); break; @@ -600,7 +602,7 @@ bd_edd_io(struct disk_devdesc *dev, daddr_t dblk, int blks, caddr_t dest, v86.ctl = V86_FLAGS; v86.addr = 0x13; /* Should we Write with verify ?? 0x4302 ? */ - if (dowrite) + if (dowrite == BD_WR) v86.eax = 0x4300; else v86.eax = 0x4200; @@ -636,7 +638,7 @@ bd_chs_io(struct disk_devdesc *dev, daddr_t dblk, int blks, caddr_t dest, v86.ctl = V86_FLAGS; v86.addr = 0x13; - if (dowrite) + if (dowrite == BD_WR) v86.eax = 0x300 | blks; else v86.eax = 0x200 | blks; @@ -655,7 +657,7 @@ bd_io_workaround(struct disk_devdesc *dev) { uint8_t buf[8 * 1024]; - bd_edd_io(dev, 0xffffffff, 1, (caddr_t)buf, 0); + bd_edd_io(dev, 0xffffffff, 1, (caddr_t)buf, BD_RD); } static int @@ -679,7 +681,7 @@ bd_io(struct disk_devdesc *dev, daddr_t dblk, int blks, caddr_t dest, * Loop retrying the operation a couple of times. The BIOS * may also retry. */ - if (dowrite == 0 && dblk >= 0x100000000) + if (dowrite == BD_RD && dblk >= 0x100000000) bd_io_workaround(dev); for (retry = 0; retry < 3; retry++) { /* if retrying, reset the drive */ @@ -705,7 +707,7 @@ bd_io(struct disk_devdesc *dev, daddr_t dblk, int blks, caddr_t dest, * media is not present. */ if (result != 0 && result != 0x20) { - if (dowrite != 0) { + if (dowrite == BD_WR) { printf("%s%d: Write %d sector(s) from %p (0x%x) " "to %lld: 0x%x\n", dev->dd.d_dev->dv_name, dev->dd.d_unit, blks, dest, VTOP(dest), dblk, diff --git a/usr/src/boot/sys/boot/i386/libi386/multiboot.c b/usr/src/boot/sys/boot/i386/libi386/multiboot.c index be67318e4c..d44fa0a398 100644 --- a/usr/src/boot/sys/boot/i386/libi386/multiboot.c +++ b/usr/src/boot/sys/boot/i386/libi386/multiboot.c @@ -90,20 +90,6 @@ num_modules(struct preloaded_file *kfp) return (mod_num); } -static vm_offset_t -max_addr(void) -{ - struct preloaded_file *fp; - vm_offset_t addr = 0; - - for (fp = file_findfile(NULL, NULL); fp != NULL; fp = fp->f_next) { - if (addr < (fp->f_addr + fp->f_size)) - addr = fp->f_addr + fp->f_size; - } - - return (addr); -} - static int multiboot_loadfile(char *filename, u_int64_t dest, struct preloaded_file **result) @@ -244,8 +230,7 @@ static int multiboot_exec(struct preloaded_file *fp) { struct preloaded_file *mfp; - vm_offset_t module_start, metadata_size; - vm_offset_t modulep, kernend, entry; + vm_offset_t entry; struct file_metadata *md; struct multiboot_info *mb_info = NULL; struct multiboot_mod_list *mb_mod = NULL; @@ -460,7 +445,6 @@ multiboot_obj_loadfile(char *filename, u_int64_t dest, struct preloaded_file **result) { struct preloaded_file *mfp, *kfp, *rfp; - struct kernel_module *kmp; int error, mod_num; /* See if there's a aout multiboot kernel loaded */ |