summaryrefslogtreecommitdiffstats
path: root/sys/boot/ia64
Commit message (Collapse)AuthorAgeFilesLines
* Add boot_serial and boot_multicons variables to set RB_SERIAL andpeter2002-06-203-0/+6
| | | | | RB_MULTIPLE since this seems to be the easiest way to add these flags for non-forth loaders etc.
* o Remove namespace pollution from param.h:marcel2002-05-196-0/+9
| | | | | | | | | | | - Don't include ia64_cpu.h and cpu.h - Guard definitions by _NO_NAMESPACE_POLLUTION - Move definition of KERNBASE to vmparam.h o Move definitions of IA64_RR_{BASE|MASK} to vmparam.h o Move definitions of IA64_PHYS_TO_RR{6|7} to vmparam.h o While here, remove some left-over Alpha references.
* Removed now unused INTERNALSTATICLIB.ru2002-05-131-3/+0
| | | | | INTERNALLIB now implies NOPIC and NOPROFILE. Removed gratuitous NOMAN.
* Back out last commit. I expect our bsd.*.mk gods to remove the need forobrien2002-05-121-0/+3
| | | | | defining so many extra things in addition to INTERNALLIB. We don't like repetitive C code and we shouldn't for make code either.
* NOPIC, NOPROFILE, NOMAN, and INTERNALSTATICLIB are redundant when usingobrien2002-05-111-3/+0
| | | | INTERNALLIB now.
* -ffreestanding is the word.obrien2002-05-104-1/+4
| | | | | (also resort some CFLAGS such that the more "important" value are first so they are easier to see)
* Improve self-relocation:marcel2002-04-211-105/+135
| | | | | | | | | | | | | | | | | | | o We don't expect the PLT relocations to follow the .rela section anymore. We still assume that PLT relocations are long formed, o Document register usage, o Improve ILP, o Fix the FPTR relocation by creating unique OPDs per function. Comparing functions is valid now, o The IPLT relocation naturally handles the addend. Deal with it. We ignore the addend for FPTR relocations for now. It's not at all clear what it means anyway. Fix ABI misinterpretation: o For Elf_Rela relocations, the addend is explicit and should not be loaded from the memory address we're relocating. Only do that for Elf_Rel relocations (ie the short form). o DIR64LSB is not the same as REL64LSB. DIR64LSB applies to a symbol (S+A), whereas REL64LSB applies to the base address (BD+A),
* Allocate sufficient pages to hold the bootinfo block and stopmarcel2002-04-191-7/+10
| | | | hardwiring the location.
* We must not let install(1) strip loader.efi when installing it, or thepeter2002-04-071-0/+1
| | | | resulting binary will be damaged and no longer work.
* Set BINDIRpeter2002-04-073-0/+3
|
* Add loader bootforth infrastructure and install it.peter2002-04-071-4/+20
|
* Make it a bit closer to the EFI build and tie up some loose ends.peter2002-04-064-25/+12
|
* Try and tidy up some very loose ends with paths to various libraries etc.peter2002-04-061-3/+15
|
* Do not add the ficl/alpha subdir to the ia64 include path. Try ficl/ia64peter2002-04-062-2/+2
| | | | instead.
* Do not assume that ${OBJCOPY} variable exists. It was hidden by thepeter2002-04-061-0/+1
| | | | fact that the 'ia64-make' wrapper explicitly set it.
* Fix self hosted loader building. When you use a self configured gcc, itpeter2002-04-062-4/+4
| | | | | | | | | | | | | detects and uses the gas section merge support. As a result, a whole bunch of new sections arrive, including .rodata.str1.8, which was not included in our custom ldscript.ia64. The result was a loader binary that EFI rejected. While here, collect the loader shell commands linker set and include it in the data area rather than having its own section. /boot/loader.efi was the last holdout for having a 100% self built ia64 system.
* Use a relative path to libstand.. /usr/src/lib/libstand may not existpeter2002-04-041-1/+1
| | | | or may have the wrong header files.
* Only install the help file if we can find it. Use ${BASE}.helpmarcel2002-03-311-4/+1
| | | | | in both the condition and for the install. We expect to find the help file in ${.OBJDIR}.
* Pass the address of the bootinfo block to the kernel in registermarcel2002-03-304-10/+10
| | | | r8. Keep it at the hardwired address for now. Bump the version.
* Pass the physical address of the bootinfo block to the kernel inmarcel2002-03-302-1/+3
| | | | | | | | | register r8. We continue to write the bootinfo block at the same hardwired address, because the kernel still expects it there. It is expected that future kernels use register r8 to get to the bootinfo block and don't depend on the hardwired address anymore. Bump the loader version once again due to the interface change.
* Add a quick and dirty way to determine where we're loaded from. Wemarcel2002-03-301-8/+28
| | | | | | | | only care if it's network or not at this time. If we're loaded from the network, we set currdev (=loaddev) so that the kernel is loaded from the network as well. In all other cases we initialize to disk. This makes netbooting more convenient and can easily be enhanced to do more elaborate checking.
* The EFI loader has been improved a lot since it was first added.marcel2002-03-301-0/+2
| | | | | | | Most significantly (from an interfacing point of view) is the support for the FPSWA pointer passing. Even though that was added 4 months ago, it's probably not a bad idea to bump the version number to reflect this.
* Fix the beforeinstall target. We install ${PROG}.help if loader.helpmarcel2002-03-292-8/+2
| | | | | | | | | exists, otherwise we install it anyway. I interpret this as a very high desire to install ${PROG}.help. Alas, ${PROG}.help doesn't exist at the moment and neither does loader.help, so in practice this just doesn't work, no matter how you interpret it. The compromise is to install ${PROG}.help IFF it exists. I realize we lost creativity with this commit, but style should have been preserved, AFAICT :-)
* o Don't include sys/cdefs.hmarcel2002-03-281-1/+0
|
* o Add -L${DESTDIR}${LIBDIR} on the link line for -lstand.marcel2002-03-281-4/+4
| | | | | o Add -j .dynstr to objcopy. This makes .efi binaries work when built with a 3.x based toolchain.
* Duplicate the logic used elsewhere to define LIBSTAND.marcel2002-03-282-4/+22
|
* Add -ffreestanding to avoid printf/puts/putchar conversionspeter2002-03-193-0/+3
|
* Boot from efifs first.peter2002-03-191-1/+1
|
* Lookup the EFI_FPSWA driver and pass the interface pointer through to thepeter2001-11-191-0/+2
| | | | | kernel before we call ExitBootServices(). I've typed the definitions in efifpswa.h from the Intel FPSWA manual (urk).
* Remove bootinfo.bi_kernel. It isn't used by the kernel. struct bootinfopeter2001-11-193-16/+0
| | | | | should go away on ia64, we should be loader metadata based since that is the only way we can boot (loader, skiload).
* Fix a dependency violation, same as in libefi/elf_freebsd.c a while back.peter2001-11-192-0/+2
|
* Set RB_MULTIPLE (multiple console support) if the kernel is bootedmarcel2001-10-291-0/+3
| | | | with the -D flag.
* Call ExitBootServices and disable interrupts before we start hackingdfr2001-10-251-11/+12
| | | | the VM registers. This ought to make things slightly more reliable here.
* Add the two sections used for PLT entries to the text and sdata sectionsdfr2001-10-251-0/+2
| | | | | respectively. This makes IPLTLSB relocations work properly (these are generated for weak symbols, particularly for _longjmp).
* Try to get the self-relocator to work with IPLTLSB relocations. Doesn'tdfr2001-10-242-6/+40
| | | | work right though - I can't figure out why.
* s/alpha/${MACHINE_ARCH}/gmarcel2001-10-081-1/+1
|
* Make this 'make obj' safepeter2001-09-262-2/+10
|
* Calculate the valid flag for ITRs and DTRs correctly. Also fix a coupledfr2001-09-251-8/+3
| | | | of minor problems and remove some debugging code.
* Add commands to dump the itrs and dtrs.dfr2001-09-241-0/+148
|
* Return the mapkey which EFI gave us when we read the memory map - we needdfr2001-09-241-1/+3
| | | | it to call ExitBootServices.
* Tidy up a little - don't try to print anything or enable interrupts afterdfr2001-09-241-51/+24
| | | | | we start changing translation registers. Also, call ExitBootServices before we jump into the kernel.
* Add commands to dump the configuration tables and the SAL System Table.dfr2001-09-231-4/+116
|
* Add EFI network support.dfr2001-09-223-3/+13
|
* * Flesh out elf_exec and bootinfo.dfr2001-09-222-38/+492
| | | | * Add EFI network support.
* Add definition of SSC_GET_RTC.dfr2001-09-202-0/+2
|
* Implement time().dfr2001-09-192-2/+226
|
* Add a fake memory descriptor for the I/O port space.dfr2001-09-152-2/+14
|
* Fill in the bootinfo's memory map.dfr2001-09-153-0/+38
|
* Remove dead code.dfr2001-09-152-74/+0
|
* Plug in ELF backend.dfr2001-09-141-1/+1
|
OpenPOWER on IntegriCloud