summaryrefslogtreecommitdiffstats
path: root/sys/boot
Commit message (Collapse)AuthorAgeFilesLines
* If a transfer to or from a floppy disk crosses a 64k boundary, we have tojhb2004-01-211-2/+2
| | | | | | | | | | | | | | | use a bounce buffer for the actual transfer to avoid crossing a 64k boundary. To do this, we malloc a buffer twice as big as we need and then find an aligned block within that buffer to do the transfer. The check to see which part of the block we use used the wrong variable for part of the condition meaning that in certain edge cases we would ask the BIOS to cross a 64k boundary. The BIOS request would then fail resulting in file transfers that just magically fail in the middle without any apparent reason. Specifically, my tests for the splitfs boot floppies managed to trigger this edge case. MFC after: 1 week X-MFC-info: along with fixes to libstand filesystems
* PC98 uses the different frame code.nyan2004-01-181-21/+43
|
* Fix to support KANA and graphics characters which code are over 0x80.nyan2004-01-181-1/+1
|
* - Use constant for shift when converting file length in bytes to a sectorjhb2004-01-121-2/+5
| | | | | | | | | | count. - Fix the twiddle output so that it actually spins. - Save %cx around BIOS calls to read in sectors from the disc as at least one BIOS trashes %cx when called to read off of a USB CD-ROM drive. Submitted by: Martin Nilsson <martin@gneto.com> MFC after: 1 week
* Disable the APIC when selecting the 'Safe Mode' option of the loader. Thisscottl2004-01-091-0/+1
| | | | will disable both APIC interrupt routing and SMP.
* Allow one to specify the com port settings for boot0sio.obrien2004-01-063-5/+11
|
* Convert to __FBSDID.obrien2004-01-0433-67/+99
|
* Convert to __FBSDID.obrien2004-01-0424-45/+73
|
* - Add ':' as a separator between the OpenFirmware device space andgrehan2003-12-212-3/+4
| | | | | | | the file path. Commonly used on Macs e.g. "hd:9". - Update the ofw_setcurrdev routine to match libstand setenv prototype Not objected to by: sparc64
* Make __elfN(ofw_loadfile) match parameter declaration for file_formatgrehan2003-12-211-1/+4
| | | | | | | in boot/common/bootstrap.h. Having a 32-bit size when a 64-bit param is declared wreaks havoc on PPC. Not objected to by: sparc64
* Only print out an error if returned data size is < 0. A value of 0grehan2003-12-211-1/+2
| | | | | | happens almost every time at the end of a file when using NFS. No objection by: sparc64
* Use daddr_t instead of u_long for byte offset in strategygrehan2003-12-211-1/+1
| | | | | | routine to avoid >4G truncation on 32-bit systems. no objection by: sparc64
* - use correct pointer arithmetic in heapsize calculationgrehan2003-12-211-7/+29
| | | | | | - handle multiple Ofw memory regions when determining mem size - allow currdev to be set as a loader command-line option. parse() is used to allow future options to be processed.
* - Change the lookup() function to report success or failure using the carryjhb2003-12-111-9/+33
| | | | | | | | | | | | | | | | | | | | | | flag rather than explicitly halting if a lookup failed. - Add a loop around the call to lookup() to traverse an array of nul-terminated strings for possible paths to the boot loader. A double nul character denotes the end of the list. - Add a new message to say that the boot failed if all of the path lookups for a boot loader file failed. - Add '/boot/loader' as a second boot path. If you build an ISO using risky options to mkisofs such as -U then the loader will be called '/boot/loader' rather than '/BOOT/LOADER;0'. This allows cdboot to work with such risky ISO images. - Bump version to 1.2 to denote added functionality. The basic idea as well as some of the code were provided by the submitter, but I added some extra code to use a loop rather than hard-code just 2 possible paths. PR: misc/43543 Submitted by: kientzle MFC after: 1 week
* Properly fix a typo that the previous revision made even worse.jhb2003-12-111-1/+1
|
* Fix typo in comment.jhb2003-12-101-1/+1
|
* Enable FICL build on powerpcgrehan2003-12-101-1/+1
|
* Update libstand filesystems to be in-line with tier-1 platforms.grehan2003-12-102-12/+28
|
* - Bring Makefile up to rev with sparc64 in terms of config options and rulesgrehan2003-12-102-106/+130
| | | | | | - Move loader relocation up to 0x1C00000. This is in line with OSX bootx, and allows more space for boot-time modules/ramdisks without conflicting with OpenFirmware's use of RAM
* Disable floating point on PowerPC for the ficl library.grehan2003-12-101-0/+3
|
* Define 'arch-powerpc'grehan2003-12-101-0/+8
|
* FICL system-dependent files for powerpc. Taken from the i386 versions,grehan2003-12-102-0/+533
| | | | which were the most relevant.
* Fix the build of libski now that we use the "official" MADT tablemarcel2003-12-092-74/+50
| | | | | | definitions. Those are slightly different than the ones we used before ACPI-CA 20031203 got imported. No structural or functional change.
* Sync these two files.obrien2003-12-093-57/+61
|
* Hook boot0sio to the build. Use 'boot0cfg -b /boot/boot0sio' to use.obrien2003-12-083-15/+14
|
* Add a serial console capable version of the FreeBSD boot manager. This hasbms2003-12-083-1/+883
| | | | | | | been lying around my tree(s) for the past year or so. It could do with TLC. Requested by: obrien Sponsored by: Weyland-Yutani Corporation
* With the beastie menu a problem was introduced in which selecting adcs2003-11-211-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | different kernel to boot with kernel="NAME" would load the kernel and loader.conf-selected modules from /boot/NAME, but it would not change module_path. So, for instance, the automatically loaded acpi.ko would come from /boot/kernel/acpi.ko, *always*. Mind you, this happened for unassisted boot. If you interrupted, typed "unload" and then "boot NAME", it would Do The Right Thing. The source of the problem is the double initialization with beastie's loader.rc. One would happen inside "start", and would load the kernel. The next one would happen later in the loader.rc script, resetting module_path. Because module_path is set to the Right Value by the functions in support.4th that actually load the kernel, when beastie.4th proceeded to boot module_path would remain wrong, as the kernel was already loaded. This can be corrected by removing either initialization, and also by changing the command used by beastie.4th from "boot" to "boot-conf", which makes sure you use the right kernel and modules. I chose to remove the second initialization, since this let you interrupt (or confirm) boot before beastie even comes up. I avoid also doing the boot-conf change because that would simply cause the kernel and modules to be loaded twice (in fact, that was my original patch, until, in writing this very commit message, I saw the error of my ways). This commit changes the semantics of module loading when using the beastie menu. Now it does what one would expect it to, but not what it was actually doing, so something may break for unusual setups depending on broken behavior. As our japanese friends so nicely put it, shikata ga nakatta. :-) Approved by: re (scottl)
* Update the size of the OS string table that wasn't updated in the previousjhb2003-11-201-1/+1
| | | | | | | commit that removed the UNIX entry. Submitted by: Rudolf Cejka <cejkar@fit.vutbr.cz> Approved by: re (rwatson)
* When rebooting the machine jump to 0xf000:0xfff0 instead of 0xffff:0x0.phk2003-11-162-2/+2
| | | | | | | | | | While we end up the same place, we end up with two different CS register values after the jump and 0xf000 is compatible with the hardware reset value. This makes a difference if the BIOS does a near jump before a far jump. Detective work and patch by: Adrian Steinmann <ast@marabu.ch>
* MFi386: revision 1.13.nyan2003-11-152-2/+2
|
* Changed the RB_PAUSE flag from 0x40000 to 0x100000 and marked the oldbde2003-11-152-4/+26
| | | | | | | | | | | | | | | | | | value as reserved for internal use in boot blocks, because RB_PAUSE broke binary compatibility by usurping the RB_DUAL flag. Probably no one except me has boot blocks for which this matters, since most boot blocks based on biosboot including pc98's boot2 can't boot elf kernels, and /boot/loader doesn't properly pass flags set by the previous stage. reboot.h: Also mark the historical RB_PROBEKBD flag (0x80000) as reserved for internal use in boot blocks. boot2.c: Added comments to inhibit usurping of other flags. Approved by: guido, imp MFC after: 1 week
* Set RB_SERIAL in boothowto if the firmware output-device is ttya or ttyb.jake2003-11-111-4/+6
| | | | | | This ensures that uart gets a higher console priority than syscons when a serial console is being used. Testing against the "console" environment variable doesn't make sense since we only have one loader console driver.
* Include <sys/reboot.h> the definition of RB_BOOTINFO. The previousbde2003-11-112-0/+4
| | | | | | commit broke the world because it depended on namespace pollution that was only in my version of <machine/bootinfo.h>. The include was removed in rev.1.63 after the last reference to it went away in rev.1.61.
* Fixed loss of setting of the RB_BOOTINFO flag in rev.1.43. Fixed wrongbde2003-11-102-4/+4
| | | | | | | | | | | | | comment about this flag in rev.1.61. It is not historical like the comment said; it is the flag that says that most of what is laboriously put in the bootinfo struct is actually there. Newer kernels were bootable by even the broken boot2 without losing anything except the symbol table, but older kernels need at least the memory sizes. Restoring the "|" with RB_BOOTINFO that was lost in rev.1.43 costs 5 bytes. The fix can be done in only 4 bytes by fixing some code that was removed in rev.1.61 (put RB_BOOTINFO back in in the initial value of "opts" and fix RBX_MASK to not clobber it.)
* Implement PAL_HALT_LIGHT now that the kernel halts the processormarcel2003-11-092-0/+18
| | | | when idle. All we have to do is return.
* Do not strip skiload when installed. The stripped binary does not loadmarcel2003-11-092-0/+2
| | | | in the simulator.
* Fix an incorrect quote character in an M4 test conditon. Basically, onejhb2003-11-062-2/+2
| | | | | of the verbose print statements that BTXLDR_VERBOSE enables wasn't properly enabled.
* Override the root server address if an IP address is specified iniedowse2003-11-031-7/+9
| | | | | | | | | the root path. This is reported to make non-PXE netbooting, such as is used on sparc64 systems, work correctly when the TFTP server is not the same as the root server. PR: kern/57328 Submitted by: Per Kristian Hove <Per.Hove@math.ntnu.no>
* Directly call the 'reboot' word instead of indirectly evaluating it.scottl2003-10-281-1/+1
|
* Directly call the 'boot' word instead of indirectly evaluating it.scottl2003-10-271-7/+7
| | | | Submitted by: dcs
* Don't repeat selected defines from ns16550.h or sioreg.h. Justbde2003-09-162-40/+2
| | | | | include ns16550.h. The missing installation of ns16550.h was fixed long ago and the misplaced defines in sioreg.h were fixed recently.
* Apply Aleksander Fafula's crayons to the beastie. Add the this line toscottl2003-09-131-1/+38
| | | | | | /boot/loader.conf to see the pretty colors =-) loader_color="YES"
* Use __FBSDID().obrien2003-09-0834-65/+95
| | | | Also some minor style cleanups.
* Add BOOT_PXELDR_ALWAYS_SERIAL option which forces serial console.phk2003-09-033-0/+15
|
* Use __FBSDID().obrien2003-08-2521-49/+74
| | | | Also some minor style cleanups.
* Use __FBSDID().obrien2003-08-2528-73/+95
| | | | Also some minor copyright style cleanups.
* Many newer CF do not handle having the entire track read from them atimp2003-08-222-0/+8
| | | | | | | | | | boot time. Instead, read it a sector at a time. While this sounds like a significant slowdown, I've not been able to measure any signficant difference. Submitted by: luigi Reviewed by: jhb, sam (both a while ago) MFC After: 3 days
* FICL doesn't build on PowerPC yet, so disable.obrien2003-08-163-21/+21
|
* Consistently use the BSD u_int and u_short instead of the SYSV uint andjhb2003-08-071-1/+1
| | | | | | | ushort. In most of these files, there was a mixture of both styles and this change just makes them self-consistent. Requested by: bde (kern_ktrace.c)
* Null terminate the OEM hint. This rids my laptop of the smiley face thatnjl2003-08-071-0/+1
| | | | would follow the 6 valid chars of the table entry.
OpenPOWER on IntegriCloud