Commit Graph

82 Commits

Author SHA1 Message Date
christos
7e81d727bc Consistently use ${RELEASEDIR}/${RELEASEMACHINE} instead of
${RELEASEDIR}/${MACHINE} (Paul Ripke)
2019-09-23 13:42:30 +00:00
jmcneill
d2908378b5 Honour block device's IO alignment requirements.
Patch from Simon South <simon@simonsouth.net> in PR# 54554
2019-09-21 10:19:37 +00:00
jmcneill
08196c9186 Only set #address-cells and #size-cells properties on /chosen if we are
fabricating a devicetree (ACPI mode). Fixes PR# 54494
2019-08-30 00:01:33 +00:00
jmcneill
5b55ec2572 Add full UEFI memory map to the /chosen node. 2019-08-01 13:11:16 +00:00
skrll
581c62fc78 Fix arm build 2019-07-25 11:44:14 +00:00
jmcneill
3cdd75ddb0 Add support for simple framebuffers when booting in ACPI mode. 2019-07-24 11:40:36 +00:00
rin
84899fcd0b Enable us to load kernel image of different byte order. Now, earmv7hf-eb
kernel can successfully boot from EFI bootloader.

XXX
We need to recognize disklabel and filesystem written in opposite byte oder.
2019-07-21 17:01:39 +00:00
thorpej
ffbae842f4 - Add support for a boot configuration file, defaulting to /etc/efiboot.plist.
- Add support for pre-loading EFI environment variables from efiboot.plist.
- Add support for device tree overlays specified in efiboot.plist.

(Man page for efiboot forthcoming.)
2019-04-21 22:30:41 +00:00
jmcneill
c14f76b6fc ST FirmwareRevision field is in a vendor defined format, so just print the raw value 2019-04-20 11:28:53 +00:00
jmcneill
b43f538702 Skip clearing the screen when efiboot starts, it may end up hiding useful information 2019-04-20 11:23:16 +00:00
skrll
dfb99727ca Print bootargs from the environment
Pass the enironment boot args if none are provided by the boot command
2019-04-10 19:36:04 +00:00
skrll
443282f6c6 Fixup EFIBOT_DEBUG output for non-_LP64 case 2019-04-10 19:11:42 +00:00
jmcneill
d26a1212cd Add support for netbooting with non-PCI network devices. 2019-03-31 22:24:41 +00:00
jmcneill
46cc84dd17 Jump to MARK_ENTRY instead of MARK_START 2019-03-30 17:41:13 +00:00
jmcneill
b9d71da677 Add efiboot support for 32-bit ARM targets. 2019-03-30 12:48:50 +00:00
jmcneill
0ef050d6c0 Build fixes for 32-bit targets. 2019-03-30 12:47:53 +00:00
jmcneill
d64fe86fe7 Workaround a bug with ROCKPro64's U-Boot EFI implementation. The booted
device path when booting from SD card sometimes does not include a
MEDIA_DEVICE_PATH component, so in this case fallback to doing an exact
match on the booted device path with the block device path to detect the
default boot device.
2019-03-09 13:16:42 +00:00
msaitoh
84347dba43 Centralize ETHER_ALIGN into net/if_ether.h. Note that this commit also changes
if_upgt.c's ETHER_ALIGN from 0 to 2.
2019-03-05 08:25:01 +00:00
skrll
8c499c7d34 Add support for "bootargs" environment variable from jmcneill@
Doesn't work with some (all?) u-boots.
2019-01-18 19:41:03 +00:00
jmcneill
a158dd7e2e Add support for loading kernels over NFS. 2018-11-15 23:52:33 +00:00
jmcneill
52f8d5e713 Add a "mem" command to print the EFI memory map. 2018-11-02 01:22:39 +00:00
jmcneill
92efcce76c Add GPT support. 2018-11-01 00:43:38 +00:00
jmcneill
be34f078ca No need to re-print the countdown timer if the number of seconds hasn't changed. 2018-10-31 23:49:34 +00:00
jmcneill
1cd5b4302b Assign VAs for EFI runtime mmio ranges 2018-10-31 13:00:35 +00:00
jmcneill
33c6bbfd0f When building /memory, skip EFI runtime memory ranges 2018-10-31 12:59:43 +00:00
jmcneill
a6043900cb No longer need to delete reserved memory ranges. 2018-10-31 09:13:32 +00:00
mrg
30b672631b avoid sign/unsigned issue and for NUMNAMES to an integer when it is
compared against a value that may be -1.

fixes autoboot when boot-file is set.  (serves me right for removing
code that looked odd when it was tested :-)
2018-10-29 05:15:21 +00:00
jmcneill
24519eb71b Make EFI runtime services available to the kernel. Bump version to 1.5. 2018-10-28 10:17:47 +00:00
mrg
557f10a48f add "boot-file" support. now one can automatically boot a
non-default kernel with "setenv boot-file host/netbsd".

this is particularly useful with the current net / tftp
kernel boot, so the tftproot does not need a "/netbsd"
visible to all hosts, but some host-specific path.

some minor clean up.

version 1.4.

ok jmcneill@.
2018-10-26 20:56:35 +00:00
jmcneill
ceaa49338b If an SMBIOS3 table is found, pass the address to the kernel via /chosen
"netbsd,smbios-table" property.
2018-10-23 10:12:59 +00:00
jmcneill
b416cffbd4 Enable ACPI support. 2018-10-21 00:57:38 +00:00
jmcneill
733272ebe5 Add ACPI support (enable with -DEFIBOOT_ACPI, currently disabled).
When UEFI reports that ACPI tables are available, generate a DTB with
compatible string "netbsd,generic-acpi" and pass this to the booted
kernel.

The DTB contains a /chosen property "netbsd,acpi-root-table" that contains
the physical address of the ACPI RSDP, along with a special /acpi node
with compatible string "netbsd,acpi" for the kernel to attach an acpi(4)
device driver.
2018-10-12 22:08:04 +00:00
jmcneill
b40f700548 utf8_to_ucs2 second param (nmp) needs to be initialized before calling this function 2018-09-18 19:19:45 +00:00
jmcneill
6b0866fd9b Suppress printing size info when calling loadfile with COUNT_KERNEL 2018-09-15 17:06:32 +00:00
jmcneill
9765cbf3ad Some U-Boot implementations (notably U-Boot) do not implement WaitForKey. Do the same as FreeBSD EFI loader here (I wrote the original patch there as well). 2018-09-15 16:44:15 +00:00
jmcneill
cfb58238e1 Claer the screen at startup 2018-09-15 16:41:57 +00:00
jmcneill
07c1c7887a Only need to ischar() once when polling for input 2018-09-15 16:41:37 +00:00
jakllsch
c9f783e37b MI efiboot: avoid LBA overflow in efi_block_find_partitions_disklabel() 2018-09-14 21:37:03 +00:00
jmcneill
0e6fc3745f Add a reboot command to the bootloader 2018-09-09 18:00:20 +00:00
jmcneill
7f3222e313 Add support for setting environment variables. Currently the following env
vars are supported: "fdtfile", "initrd", and "rootdev".
2018-09-09 17:55:22 +00:00
jmcneill
ec9833499c Add "dtb" command for loading a custom .dtb file. 2018-09-09 13:37:54 +00:00
jmcneill
79c266e70c Add initrd support. 2018-09-07 17:30:58 +00:00
jmcneill
ade8ed4154 Disable MMU and dcache before jumping to the kernel. 2018-09-07 17:30:32 +00:00
jmcneill
96816df74d If the loader is loaded from the network, try to load the kernel from the
same network device.
2018-09-04 21:29:54 +00:00
riastradh
b5d131ffdb Fix some min/max -> uimin/uimax stragglers.
Confirmed by the 2018-09-04T04:40Z autobuild.
2018-09-04 15:08:30 +00:00
jmcneill
4801c7ee4a Print FDT model and compatible strings with "version" command 2018-09-03 00:17:00 +00:00
jmcneill
13f5d06901 Add PXE support. 2018-09-03 00:04:02 +00:00
jmcneill
66b571746b Dump memory map if EFI_MEMORY_DEBUG is defined 2018-09-02 23:54:25 +00:00
jmcneill
0677c7c8e9 Support loading kernels at PAs above 0x3fffffffff on arm64 2018-09-02 23:50:23 +00:00
jmcneill
8eab336ffb Remove call to fdt_pack, it is causing problems with memory detection 2018-08-28 01:24:39 +00:00