summaryrefslogtreecommitdiffstats
path: root/sys/boot/ia64/efi
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix printf format errorspeter2002-07-201-2/+2
|
* -ffreestanding is the word.obrien2002-05-101-0/+1
| | | | | (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),
* 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-071-0/+1
|
* Add loader bootforth infrastructure and install it.peter2002-04-071-4/+20
|
* Try and tidy up some very loose ends with paths to various libraries etc.peter2002-04-061-3/+15
|
* 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 physical address of the bootinfo block to the kernel inmarcel2002-03-301-0/+2
| | | | | | | | | 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.
* 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.
* Boot from efifs first.peter2002-03-191-1/+1
|
* 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
|
* 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
|
* 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
|
* Plug in ELF backend.dfr2001-09-141-1/+1
|
* Add missing entry to memory type name table and adjust field widths.dfr2001-09-081-2/+3
|
* Add a command 'memmap' to print out the EFI memory map.dfr2001-09-081-0/+75
|
* Hook up the native EFI filesystem reader.dfr2001-09-071-1/+2
|
* Set currdev and loaddev variables.dfr2001-09-071-4/+4
|
* Merge linker set relocations with the rest.dfr2001-09-051-0/+1
|
* Enable bootforth.dfr2001-09-041-1/+1
|
* Make sure we copy over the linker set sections to the EFI executable.dfr2001-09-041-0/+1
|
* Make this build again after breakage from previous commits.dfr2001-07-101-6/+6
|
* style(9) and remove a left over Alpha commentobrien2001-06-162-27/+30
|
* style cleanupobrien2001-06-161-22/+23
|
* Nuke old gensetdefs based linker sets with extreme prejudicepeter2001-06-141-11/+2
|
* Move the first section up one page. The firmware bogusly uses the firstdfr2001-06-101-0/+1
| | | | | | page of the image to load section headers and if we let the text section start at zero, it corrupts the section table when its loaded. With this change, the loader gets as far as the 'ok' prompt.
* Remove a 'return' statement which I put in while I was trying to debugdfr2001-06-101-1/+0
| | | | the startup code.
* First approximation of an ia64 EFI loader. Not functional.dfr2001-06-096-0/+748
OpenPOWER on IntegriCloud