summaryrefslogtreecommitdiffstats
path: root/sys/boot
Commit message (Collapse)AuthorAgeFilesLines
* Back out v1.24. v1.40 of sys/sparc64/sparc64/bus_machdep.c fixes thekensmith2004-09-081-3/+1
| | | | | | problem this hack was put in place for. MFC to be done if the fix to bus_machdep.c is MFC-ed.
* Add the loader side of support for preloading ELF relocatable objectiedowse2004-08-298-1/+550
| | | | | | | | | | format modules, which are currently only used on the amd64 platform. This initial implementation just parses enough of the module to allow it to extract dependencies and load all the bits into the right place in memory, so the kernel must still do the full relocation and linking. The details of the loaded sections are passed to the kernel by supplying a copy of the ELF section header table as module metadata with the MODINFOMD_SHDR tag.
* Separate out the ELF relocation code from the ELF loader, and addiedowse2004-08-286-35/+294
| | | | | | | | | better relocation support for the amd64 and i386 platforms. This should not result in any change in functionality, but moves a step towards supporting the relocatable object file modules on amd64. The same hack/trick as load_elf*.c uses is used here to simultaneously support both elf32 and elf64 on amd64 and i386.
* Add a few helper functions for zeroing kernel space and readingiedowse2004-08-283-37/+82
| | | | from specified file offsets. Make use of these in load_elf.c.
* Don't be too smart, just try packet mode of INT13 first.yar2004-08-282-5/+9
| | | | | | | | | | | | | | | This way of operation is more robust than the "AI" used before. Add flags to mbr accessible from make.conf as BOOT_MBR_FLAGS. Only one flag is defined now, "allow using packet mode", which is 0x80 in accord with the rest of i386 boot code. The "packet" flag is on by default. PR: i386/70241 Submitted by: Valentin Nechayev <netch <@> netch.kiev.ua> (inital version) Discussed with: jhb (by Valentin Nechayev) Tested on: bochs (with EDD turned on or off by patching the BIOS), PCs
* Try packet mode of INT13 on a hard disk first if not prohibited byyar2004-08-281-19/+21
| | | | | | | | | | | the flag, fall back to the old INT13/AH=02 function if that fails. This way of operation is less likely to fail with modern BIOSes and large disks of strange geometries. PR: i386/70241 Submitted by: Valentin Nechayev <netch <@> netch.kiev.ua> (inital version) Discussed with: jhb (by Valentin Nechayev) Tested on: bochs (with EDD turned on or off by patching the BIOS), PCs
* B1FLAGS -> BOOT_BOOT1_FLAGS, which is consistent withyar2004-08-272-4/+4
| | | | naming of other boot-related make vars.
* In conjunction with having boot0cfg(8) default boot0 to packet mode.obrien2004-08-271-1/+1
| | | | Submitted by: Tor.Egge@cvsup.no.freebsd.org
* Trim EOL white spaces.maxim2004-08-221-5/+4
|
* Check a return code from read(2) correctly.maxim2004-08-221-1/+1
| | | | | PR: kern/70815 Submitted by: info [at] haakh.de
* Part 2 of fixing the boot code: gcc 3.4 fixes.marcel2004-08-222-2/+2
| | | | | | | | | The whole problem seems to be size. Which is odd, because it is said that size doesn't matter. Anyway... Add -Os to strategic places in the makefile to have the final loader be as mall as possible. This seems to be enough to make it work. For now... I think something is more fundamentally wrong; or something more fundamental is wrong. Potato, potaato.
* Part 1 of fixing the boot code: binutils 2.15 fixes.marcel2004-08-222-1/+202
| | | | | | | | | | | | The binutils 2.15 assembler now automaticly and non-optionally adds the .eh_frame section for unwind information. This section appears to wreck havoc to the final boot code. Fix this by using a special linker script that discards the .eh_frame sections, but is otherwise identical to the linker internal script used for -N. Compiler used: gcc 3.3.5 Verified with: binutils 2.14 & binutils 2.15 (stock and in-tree) Tested with: /boot/loader & /boot/netboot
* Temporary bandaid to help sparc64 systems with ATA disks boot. Recentkensmith2004-08-191-1/+3
| | | | | | | | | | | changes to the ATA driver cause a kernel crash, no fault of the ATA code. Work is in progress to add the necessary feature to the sparc64 kernel and this commit will be backed out when it is complete. This bandaid is being put in mostly in the interests of getting the first release snapshot done and out the door. Tested on: Ultra-10 exhibiting the insta-panic. MFC: Real Soon
* Remove NOMAN so loader man pages are installed.grehan2004-08-182-2/+0
| | | | Noticed by: ru
* Bump the manpage date.maxim2004-08-181-1/+1
| | | | Noticed by: ru
* Retire hw.pci.allow_unsupported_io_range.maxim2004-08-182-11/+0
| | | | | PR: bin/70533 Submitted by: Gavin Atkinson
* Instead of "OpenFirmware", "openfirmware", etc. use the official spellingmarius2004-08-1611-15/+15
| | | | | | "Open Firmware" from IEEE 1275 and OpenFirmware.org (no pun intended). Ok'ed by: tmm
* Catch up with change to <machine/pte.h>.marcel2004-08-102-18/+16
|
* remove /boot/kernel from the default path.. There is already code thatjmg2004-08-062-2/+3
| | | | | | | | will prepend the current kernel booting... This prevents a problem of loading /boot/kernel's modules when a different kernel has no modules, but you left your module_load="YES" in loader.conf... Reviewed by: dcs (minus the help part)
* Move boot2 BSS zeroing into btx startup code out of boot1. boot1 does notkan2004-08-052-5/+9
| | | | | | | have clear idea on boot2 BSS size and leaves portion of it not zeroed out. btxcsu.s is in much better position for this job. Obtained from: DragonflyBSD (with minor adjustments)
* Add PowerPC bridge instruction flag to the assembler to help outgrehan2004-08-022-0/+6
| | | | with test code written in the loader.
* G5 support: handle the case where the OpenFirmware memory array usesgrehan2004-08-023-29/+90
| | | | 64 bits for the phys address, but only 32 for the virtual address.
* Fix new compiler error (s/bcopy/memcpy/).nyan2004-07-304-9/+9
|
* Compile boot2 with -fno-unit-at-a-time. GCCs aggressive optimizationkan2004-07-302-2/+6
| | | | breaks boot in spectacular ways otherwise.
* Clean up local memcpy implementation to take void * parameters.kan2004-07-302-6/+12
|
* Correct a documentation bug.ceri2004-07-291-1/+1
| | | | Approved by: jhb
* Correct typo in a comment.ceri2004-07-291-1/+1
| | | | Approved by: jhb
* Define our own memcpy here instead of relying on GCC to provide one.kan2004-07-282-8/+0
|
* o Support the REL32LSB relocation. It's in the ELF file from whichmarcel2004-07-202-18/+36
| | | | | | | | | we construct the EFI image. It doesn't seem to actually end up in the EFI image, AFAICT. o Replace .quad, .long and .short with data8, data4 and data2 resp. The former are gnuisms. o Redefine _start_plabel as a data16 with @iplt(_start) as its value. This is the preferred way to create user PLT entries.
* Fix the creation of EFI images that got broken by the import ofmarcel2004-07-204-6/+6
| | | | | | | | | binutils 2.15. The linker now creates a .rela.dyn section for dynamic relocations, while our script created a .rela section. Likewise, we copied the .rela section to the EFI image, but not the .rela.dyn section. The fix is to rename .rela to .rela.dyn in the linker script so that all relocations end up in the same section again. This we copy into the EFI image.
* Rename snd_pcm as sound.tanimura2004-07-161-1/+1
|
* Change the following environment variables to kernel options:brian2004-07-083-29/+1
| | | | | | | | | | | | | bootp -> BOOTP bootp.nfsroot -> BOOTP_NFSROOT bootp.nfsv3 -> BOOTP_NFSV3 bootp.compat -> BOOTP_COMPAT bootp.wired_to -> BOOTP_WIRED_TO - i.e. back out the previous commit. It's already possible to pxeboot(8) with a GENERIC kernel. Pointed out by: dwmalone
* Change the following kernel options to environment variables:brian2004-07-083-1/+29
| | | | | | | | | | | | | | | | | | BOOTP -> bootp BOOTP_NFSROOT -> bootp.nfsroot BOOTP_NFSV3 -> bootp.nfsv3 BOOTP_COMPAT -> bootp.compat BOOTP_WIRED_TO -> bootp.wired_to This lets you PXE boot with a GENERIC kernel by putting this sort of thing in loader.conf: bootp="YES" bootp.nfsroot="YES" bootp.nfsv3="YES" bootp.wired_to="bge1" or even setting the variables manually from the OK prompt.
* Use a linker script for the loader. This avoids issues withgrehan2004-07-084-4/+284
| | | | | | command-line options, such as misaligning the data segment. Exposed by the limited PearPC OFW ELF loader, but a good thing in general.
* Remove cache flush, 256Mb 1:1 BAT mapping, and BAT clearing. This doesn'tgrehan2004-07-082-90/+0
| | | | | | | work on a G5 (no BAT registers) or on PearPC (dBAT3 used for mapping the framebuffer and BATs not re-inited on OpenFirmware calls). It also hid a number of bugs.
* All hell breaks loose if the loader image is released beforegrehan2004-07-081-1/+3
| | | | | | | jumping to the kernel. Another bug exposed by removing the 1:1 BAT mapping. Sparc64 doesn't do this either. Compile tested on: panther (sparc64). Code built, but not used, on sparc64.
* Correctly calculate size of memory to be mapped when copying. Removalgrehan2004-07-081-1/+3
| | | | | | | of the 256Mb 1:1 BAT mapping exposed this as copying into memory that hadn't been claimed from OpenFirmware. compiled-tested on: panther (sparc64). Code built, but not used, on sparc64
* Extract entry point from elf header before releasing the heap.grehan2004-07-081-1/+3
| | | | | | | This caused a data-miss trap when the BAT init code was removed on PPC. Compile tested on: panther (sparc64). Code built, but not used, on sparc64.
* mdoc(7) fixes.ru2004-07-071-2/+2
|
* Consistently use __inline instead of __inline__ as the former is an empty macrostefanf2004-07-041-1/+1
| | | | in <sys/cdefs.h> for compilers without support for inline.
* Fixed what appeared to be a hard sentence break.ru2004-07-021-2/+2
|
* When building a kernel or the loader, let the hostname be overriddenps2004-07-011-1/+1
|
* Remove the entry for configuring pcm0 mixer channels.josef2004-06-241-1/+0
| | | | This is accomplished via device.hints now.
* Throw out pfsync and pflog, the modules were removedbrueffer2004-06-221-2/+0
|
* Update the copyright to use a 3 clause BSD license rather than one thatjhb2004-06-221-10/+24
| | | | | | is less clear about allowing redistribution of modified copies. Requested by: Tom Cosgrove tom dot cosgrove at arches-consulting dot com
* Remove a bogus increment of %di when scanning the list of loader paths.jhb2004-06-221-1/+0
| | | | | | | %di will already point to the character after the nul char when the 'repnz scasb' terminates. Submitted by: Tom Cosgrove tom dot cosgrove at arches-consulting dot com
* Document the possibility of setting default values forjosef2004-06-201-0/+1
| | | | mixer channels via boot loader.
* Save a couple of bytes for the SIO case.phk2004-06-171-4/+2
|
* Fix another beak.phk2004-06-171-1/+1
| | | | Seen by: pjd
* Unspam sys/boot, the dev_t commit should not have touched these.phk2004-06-166-8/+8
| | | | Spotted by: peter
OpenPOWER on IntegriCloud