History log of /src/sys/arch/i386/stand/efiboot/Makefile.efiboot
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base
# 1.23 29-Jun-2024 rin

i386: stand: Retire its own nfs.c, and switch to libsa/nfs.c. NFC


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.22 24-Jul-2023 rin

efiboot/x86: Add serial console support via raw I/O port access

Unfortunately, some (most?) UEFI implementations do not support
com ports by ``Serial I/O Protocol''.

``PNP0501-0'' and friends are not recognized also.

In this case, if user explicitly requires to switch to serial
console by ``consdev'' command, try to use raw I/O port access.

Ugly, but what FreeBSD does, at least.

Proposed as PR port-amd64/57523


# 1.21 03-Jun-2023 lukem

bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.


# 1.20 25-Dec-2022 christos

Fix broken flag -nocombreloc, 2.34 did not complain for not understanding it,
but 2.39 wants -z nocombreloc. Is it really needed?


Revision tags: netbsd-10-base bouyer-sunxi-drm-base
# 1.19 18-Nov-2021 manu

branches: 1.19.4;
Do not pass BIOS geometry when booting using EFI

Recent Mac return garbage data that will crash the code handling it,
and EFI boot does not need it anyway.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
# 1.18 06-Sep-2020 mrg

add support for new GCC 9 warnings that may be too much to fix
right now. new address-of-packed-member and format-overflow
warnings have new GCC_NO_ADDR_OF_PACKED_MEMBER amd
GCC_NO_FORMAT_OVERFLOW variables to remove these warnings.

apply to a bunch of the tree. mostly, these are real bugs that
should be fixed, but in many cases, only by removing the 'packed'
attribute from some structure that doesn't really need it. (i
looked at many different ones, and while perhaps 60-80% were
already properly aligned, it wasn't clear to me that the uses
were always coming from sane data vs network alignment, so it
doesn't seem safe to remove packed without careful research for
each affect struct.) clang already warned (and was not erroring)
for many of these cases, but gcc picked up dozens more.


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.17 04-Apr-2020 christos

Add --noinhibit-exec and --no-dynamic-linker


Revision tags: is-mlppp-base ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base phil-wifi-20191119
# 1.16 13-Sep-2019 manu

Add multiboot 2 support to x86 bootloaders

multiboot 2 is required to boot Xen on an EFI system.
This also require a kernel patch for properly discovering
the ACPI RSDP, which is available after 20190912, in
src/sys/arch/x86/acpi/acpi_machdep.c 1.26-1.28

There are a few missing bit in this multiboot 2 implementation
(which are unused by Xen):
- Header tags Address, Freambuffer, and Relocatable are ignored
- Tags APM and Network are not provided
- Tags ACPI old and ACP new are only provided for ACPI boot
- Tag boot device does not provides the subpart (BSD disklabel partition)

Notes:
- multiboot2 is disabled in dosboot, otherwise the binary
gets too big and build fails.
- in src/sys/arch/i386/stand/efiboot, consinit() is renamed
as efi_consinit() to avoid prototype conflicts in src/sys/sys/systm.h


Revision tags: netbsd-9-base
# 1.15 26-Jul-2019 nonaka

branches: 1.15.2;
Added tftp support to x86 efiboot.


Revision tags: phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
# 1.14 25-Jul-2018 kamil

Specify NOLIBCSANITIZER in x86 bootloader-like code under sys/arch/

Set NOLIBCSANITIZER for i386 and amd64 specific bootloader-like code.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.13 02-Jun-2018 christos

branches: 1.13.2;
- Disable MKSANITIZER
- Redo using NOPIE
- Add NORELRO


Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415
# 1.12 11-Apr-2018 nonaka

efiboot: Added network boot support.


Revision tags: pgoyette-compat-0407 pgoyette-compat-0330
# 1.11 27-Mar-2018 nonaka

efiboot: Added serial console support.


Revision tags: pgoyette-compat-0322 pgoyette-compat-0315
# 1.10 08-Mar-2018 nonaka

efiboot: system can boot from CD/DVD-ROM media.


Revision tags: pgoyette-compat-base tls-maxphys-base-20171202 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1
# 1.9 29-Apr-2017 nonaka

branches: 1.9.2; 1.9.8; 1.9.10;
efiboot: Boot parameters can be set via installboot(8).


Revision tags: prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base
# 1.8 08-Apr-2017 christos

branches: 1.8.4; 1.8.6;
centralize vers.c building for standalone programs.


Revision tags: pgoyette-localcount-20170320
# 1.7 11-Feb-2017 nonaka

branches: 1.7.2;
efiboot: pass memory map after ExitBootService is called to kernel.


# 1.6 06-Feb-2017 nonaka

Remove unnecessary flag.


# 1.5 05-Feb-2017 joerg

branches: 1.5.2;
Unbreak clang again.


# 1.4 04-Feb-2017 christos

Don't error out for set but unused variables for now.


# 1.3 04-Feb-2017 roy

Mark reboot() and _rtt() as __dead.
Use __builtin_unreachable() to ensure Panic really is marked dead.

Thanks to joerg@


Revision tags: nick-nhusb-base-20170204
# 1.2 03-Feb-2017 roy

Fix build with clang.


# 1.1 24-Jan-2017 nonaka

Initial commit of native amd64 EFI boot loader.