303975 |
11-Aug-2016 |
gjb |
Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, and rename it to RC1.
Update __FreeBSD_version.
Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and the dvd1.iso packages population.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
302335 |
04-Jul-2016 |
emaste |
boot1.efi: fix assignment / comparison expression
PR: 210706 Submitted by: David Binderman <dcb314@hotmail.com> Approved by: re (kib) MFC after: 1 week
|
298826 |
30-Apr-2016 |
pfg |
sys/boot: spelling fixes in comments.
No functional change.
|
297872 |
12-Apr-2016 |
emaste |
boot1: regenerate FAT templates after r297871
Sponsored by: The FreeBSD Foundation
|
297871 |
12-Apr-2016 |
emaste |
boot1.efifat: provide a fallback startup.nsh
In case the firmware falls through to executing startup.sh, populate it with the name of our boot loader. In normal operation this should not be necessary but may allow the system to boot if it would otherwise just remain at a shell prompt.
Reviewed by: andrew, imp, smh MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D5878
|
296769 |
12-Mar-2016 |
emaste |
boot/efi: Prefer nm to objdump
Both objdump and nm are equally capable of reporting undefined symbols.
This gets us a step closer to building without binutils as we have an nm implementation from ELF Tool Chain.
Reviewed by: bdrewery MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D5613
|
296713 |
12-Mar-2016 |
andrew |
Print the correct size of loader.efi when failing to load it into memory.
Obtained from: AsiaBSDCon Sponsored by: ABT Systems Ltd
|
296706 |
11-Mar-2016 |
bdrewery |
Add more .NOMETA missed in r291320
Sponsored by: EMC / Isilon Storage Division
|
296517 |
08-Mar-2016 |
emaste |
boot1.efi: use += to append to LDFLAGS
This is for consistency with loader.efi's Makefile and simplifies some out-of-tree experimentation.
|
295757 |
18-Feb-2016 |
emaste |
Remove dd xfer stats emitted during buildworld
They result in gratuitous differences when comparing build log output.
|
295650 |
16-Feb-2016 |
bdrewery |
DIRDEPS_BUILD: Update dependencies.
Sponsored by: EMC / Isilon Storage Division
|
295356 |
06-Feb-2016 |
smh |
Fix EFI platform build failures
With warnings now enabled some plaforms where failing due to warnings. * Fix st_size printed as a size_t when its actually an off_t. * Fix pointer conversion in load_elf for some 32bit platforms due to 64bit off in ef.
MFC after: 2 days X-MFC-With: Sponsored by: Multiplay
|
295320 |
05-Feb-2016 |
smh |
Fix EFI multi device boot support
Fix EFI boot support when presented with multiple valid boot partitions across multiple devices.
It now prefers to boot from partitions that are present on the underlying device that the boot1 image was loaded from. This means that it will boot from the partitions on device the user chose from EFI boot menu in preference to those on other devices.
Also fixed is the recovery from a failed attempt to boot, from a seemingly valid partition, by continuing to trying all other available partitions no matter what the error.
boot1 now use * to signify a partition what was accepted from the preferred device and + otherwise.
Finally some error messages where improved and DPRINTF's with slowed boot to aid debugging.
ZFS will still be preferred over UFS when both are available on the boot device.
Reviewed by: imp MFC after: 1 week Sponsored by: Multiplay Differential Revision: https://reviews.freebsd.org/D5108
|
294768 |
26-Jan-2016 |
imp |
Read in /boot/config and /boot.config, like all the other boot loaders and pass it along to /boot/loader.efi.
Differential Revision: https://reviews.freebsd.org/D5038
|
294765 |
26-Jan-2016 |
imp |
Move all the separate copies of the same strings into paths.h. There's nothing machine specific about these.
Differential Revision: https://reviews.freebsd.org/D5038
|
294493 |
21-Jan-2016 |
smh |
Fix EFI UFS caching
EFI was mixing caching in two separate places causing issues when multiple partitions where tested.
Eliminate this by removing fsstat and re-factoring fsread into fsread_size, adding basic parameter validation.
Also: * Enhance some error print outs. * Fix compilation under UFS1_ONLY and UFS2_ONLY * Use sizeof on vars instead of structs. * Add basic parameter validation to fsread_size.
MFC after: 1 week X-MFC-With: r293268 Sponsored by: Multiplay Differential Revision: https://reviews.freebsd.org/D4989
|
294291 |
18-Jan-2016 |
andrew |
Reset the filesystem cache before reading from a potentially new filesystem. Without this we only read from the first UFS filesystem we find, caching the result.
X-MFC with: The recent boot1.efi changes
|
294284 |
18-Jan-2016 |
emaste |
boot1: correct typo in error message
|
294265 |
18-Jan-2016 |
smh |
Fix EFI_DEBUG option
Fix broken DPRINTF and wire up EFI_DEBUG so -DEFI_DEBUG to make works.
MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay
|
294068 |
15-Jan-2016 |
smh |
Add EFI ZFS boot support
This builds on the modular EFI loader support added r294060 adding a module to provide ZFS boot support on EFI systems.
It should be noted that EFI uses a fixed size memory block for all allocations performed by the loader so it may be necessary to tune this size.
For example when building an image which uses mfs_root e.g. mfsbsd, adding the following to /etc/make.conf would be needed to prevent EFI from running out of memory when loading the mfs_root image. EFI_STAGING_SIZE=128
Submitted by: Eric McCorkle MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay
|
294060 |
15-Jan-2016 |
smh |
Modularise EFI boot loader
Make EFI boot loader modular in preparation for adding ZFS support.
This is a partial commit of the D4515.
Submitted by: Eric McCorkle Reviewed by: emaste (in part) MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay Differential Revision: https://reviews.freebsd.org/D4515
|
294029 |
14-Jan-2016 |
smh |
Only build EFI components on supported compilers
As the in-tree GCC does not support __attribute__((ms_abi)) EFI can only be built with Clang.
The EFI loader and boot1 validated this, but unused libefi was still built causing issues under GCC after warnings where enabled by r293724.
Disable building all of EFI when the selected compiler is GCC.
MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay
|
293724 |
12-Jan-2016 |
smh |
Enable warnings in EFI boot code
Set WARNS if not set for EFI boot code and fix the issues highlighted by setting it.
Most components are set to WARNS level 6 with few being left at lower levels due to the amount of changes needed to fix at higher levels.
Error types fixed: * Missing / invalid casts * Missing inner structs * Unused vars * Missing static for internal only funcs * Missing prototypes * Alignment changes * Use of uninitialised vars * Unknown pragma (intrinsic) * Missing types etc due to missing includes * printf formatting types
Reviewed by: emaste (in part) MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay Differential Revision: https://reviews.freebsd.org/D4839
|
293461 |
09-Jan-2016 |
smh |
Remove hidden "Not ufs" printfs from boot code
Remove the printf("Not ufs\n") from the boot code which was hidden by the local printf implementations, allowing these to have that code removed too.
MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay
|
293460 |
09-Jan-2016 |
smh |
Switch EFT boot1 to use libstand
ARM and i386 already required libstand so switch to using it for all patforms, allowing the removal of custom print and memory methods.
This is also a pre-cursor to enabling WARNS which highlighted a number of issues with the removed methods.
MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay
|
293429 |
08-Jan-2016 |
emaste |
Avoid unintended $FreeBSD$ expansion in generate-fat.sh
|
293425 |
08-Jan-2016 |
emaste |
Add safety belt for boot1.efi file size
Reviewed by: smh Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D4833
|
293422 |
08-Jan-2016 |
smh |
Update generated efi boot image templates
r279533 increased the boot1 size from 64k to 128k but didn't regenerate the fat templates, hence the change was never activated.
With recent and upcoming changes the efi boot1 binary is now > 64k.
To avoid fat corruption in the created boot images regenerate the templates to activate the boot1 size increase.
MFC after: 2 weeks X-MFC-With: r293268
|
293274 |
06-Jan-2016 |
smh |
style(9) fixes for EFI boot
Fix some style(9) nits for EFI boot code, no functional changes.
MFC after: 2 weeks X-MFC-With: r293268 Sponsored by: Multiplay
|
293244 |
06-Jan-2016 |
emaste |
Introduce and use new EFI_ERROR_CODE macro for EFI errors
Submitted by: smh MFC after: 1 week
|
292576 |
21-Dec-2015 |
emaste |
boot1.efi: show EFI error number, not full status value
EFI return values set the high bit to indicate an error. The log messages changed here are printed only in the case of an error, so including the error bit is redundant. Also switch to decimal to match the error definitions (in sys/boot/efi/include/efierr.h).
MFC after: 1 week Sponsored by: The FreeBSD Foundation
|
291563 |
01-Dec-2015 |
bdrewery |
META MODE: Update dependencies with 'the-lot' and add missing directories.
This is not properly respecting WITHOUT or ARCH dependencies in target/. Doing so requires a massive effort to rework targets/ to do so. A better approach will be to either include the SUBDIR Makefiles directly and map to DIRDEPS or just dynamically lookup the SUBDIR. These lose the benefit of having a userland/lib, userland/libexec, etc, though and results in a massive package. The current implementation of targets/ is very unmaintainable.
Currently rescue/rescue and sys/modules are still not connected.
Sponsored by: EMC / Isilon Storage Division
|
287930 |
17-Sep-2015 |
jhb |
Various small cleanups to EFI loader Makefiles.
Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D3641
|
282727 |
10-May-2015 |
ian |
The self-relocation code is not efi-specific, move it to boot/common.
The function was defined as taking 4 parameters and returning EFI_STATUS, but all existing callers (in asm code) passed only two parameters and don't use the return value. The function signature now matches that usage, and doesn't refer to efi-specific types.
Parameters and variables now use the cannonical typenames set up by elf.h (Elf_Word, Elf_Addr, etc) instead of raw C types. Hopefully this will prevent suprises as new platforms come along and use this code.
The function was renamed from _reloc() to self_reloc() to emphasize its difference from the other elf relocation code found in boot/common.
Differential Revision: https://reviews.freebsd.org/D2490
|
282474 |
05-May-2015 |
andrew |
Disable the use of floating-point and vector registers in the loader. They need the vfp unit to be enabled which may not be the case.
|
281526 |
14-Apr-2015 |
andrew |
Add support for arm64 to loader.efi and boot1.efi
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
|
281524 |
14-Apr-2015 |
andrew |
Use MACHINE in the efi loader when it is what we mean, it may not be the same as MACHINE_CPUARCH, it just happened to be the case the architectures this code currently supports.
Sponsored by: The FreeBSD Foundation
|
281496 |
13-Apr-2015 |
andrew |
Create the correct symlinks for the machine directory, and only create the x86 symlink on i386 and amd64. Before this incorrect symlinks were being created on armi and i386.
Differential Revision: https://reviews.freebsd.org/D2283 Reviewed by: emaste, imp Sponsored by: The FreeBSD Foundation
|
281307 |
09-Apr-2015 |
andrew |
Print error values with hex to make it easier to find the EFI error type.
|
281300 |
09-Apr-2015 |
andrew |
Only use -fPIC when building boot1.efi for x86.
Sponsored by: The FreeBSD Foundation
|
281238 |
07-Apr-2015 |
emaste |
Add EFI boot1 for i386
loader.efi still needs work, but boot1.efi now builds.
Differential Revision: https://reviews.freebsd.org/D2244 Reviewed by: rpaulo Sponsored by: The FreeBSD Foundation
|
281237 |
07-Apr-2015 |
emaste |
EFI: use common reloc.c for all architectures
Much of this file is common to the architectures we support, so share an implementation by adding a little #ifdef-ery.
Differential Revision: https://reviews.freebsd.org/D2241 Reviewed by: imp Sponsored by: The FreeBSD Foundation
|
281169 |
06-Apr-2015 |
andrew |
Make global variabled only used in this file static.
|
281156 |
06-Apr-2015 |
andrew |
Add support to the efi boot1 and loader for 32-bit ARM. This will be used by the future qemu virt support.
Differential Revision: https://reviews.freebsd.org/D2238 Reviewed by: emaste
|
281117 |
05-Apr-2015 |
andrew |
Move boot1.efi to the global CLEANFILES list, it's not x86 specific.
|
281060 |
04-Apr-2015 |
rpaulo |
Remove an unnecessary space in a printf call.
|
281059 |
04-Apr-2015 |
rpaulo |
boot1 EFI: reset the screen and select the best mode.
It's necessary to reset the screen to make sure any vendor pixels are gone when we start boot1. In the Lenovo X1 (3rd gen), this is the only way to clear the screen. Previously, the Lenovo logo would only disappear after the kernel started scrolling the display.
After resetting the screen, EFI could put us in the worst LCD mode (oversized characters), so we now find the largest mode we can use and hope it's the most appropriate one (it's not trivial to tell what's the correct LCD resolution at this point). It's worth noting that the final stage loader has a 'mode' command that can be used to switch text modes.
While there, enable the software cursor, just like in the legacy boot mode.
MFC after: 1 week
|
281058 |
04-Apr-2015 |
rpaulo |
Remove whitespace.
|
281027 |
03-Apr-2015 |
andrew |
Clean up more x86 only options in the efi code.
|
280950 |
01-Apr-2015 |
andrew |
Move the efi loaders to be under sys/boot/efi. This will help us add support for booting arm and arm64 from UEFI.
Differential Revision: https://reviews.freebsd.org/D2164 Reviewed by: emaste, imp (previous version) Sponsored by: The FreeBSD Foundation
|