The NetBSD Project

CVS log for src/sys/stand/efiboot/exec.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / stand / efiboot

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.23.4.1 / (download) - annotate - [select for diffs], Fri Nov 3 09:59:04 2023 UTC (5 months, 2 weeks ago) by martin
Branch: netbsd-10
CVS Tags: netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored) next main 1.24 (colored)

Pull up following revision(s) (requested by rin in ticket #451):

	sys/stand/efiboot/efiblock.c: revision 1.20
	sys/stand/efiboot/exec.c: revision 1.24
	sys/stand/efiboot/Makefile.efiboot: revision 1.29
	sys/stand/efiboot/boot.c: revision 1.45

Add missing member for terminating sentinel.

Avoid void * pointer arithmetic; cast to UINT8 * explicitly.
No binary changes for aarch64 at least.

Use %zd instead of %ld for ssize_t.

Add missing include paths for libz. Not used at the moment although.

Revision 1.24 / (download) - annotate - [select for diffs], Wed Jun 14 10:26:45 2023 UTC (10 months ago) by rin
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, HEAD
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)

Use %zd instead of %ld for ssize_t.

Revision 1.23 / (download) - annotate - [select for diffs], Wed Oct 6 10:13:19 2021 UTC (2 years, 6 months ago) by jmcneill
Branch: MAIN
CVS Tags: netbsd-10-base, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Branch point for: netbsd-10
Changes since 1.22: +12 -134 lines
Diff to previous 1.22 (colored)

efiboot: Make FDT support optional on a per-arch basis.

Revision 1.19.6.3 / (download) - annotate - [select for diffs], Sun Aug 1 22:42:44 2021 UTC (2 years, 8 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.19.6.2: +3 -1 lines
Diff to previous 1.19.6.2 (colored) to branchpoint 1.19 (colored) next main 1.20 (colored)

Sync with HEAD.

Revision 1.22 / (download) - annotate - [select for diffs], Sun Jun 20 19:07:39 2021 UTC (2 years, 9 months ago) by jmcneill
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2
Changes since 1.21: +3 -1 lines
Diff to previous 1.21 (colored)

Enable the twiddle spinner when loading the kernel, ramdisk images, and
modules.

Revision 1.19.6.2 / (download) - annotate - [select for diffs], Thu Jun 17 04:46:36 2021 UTC (2 years, 10 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.19.6.1: +5 -2 lines
Diff to previous 1.19.6.1 (colored) to branchpoint 1.19 (colored)

Sync w/ HEAD.

Revision 1.19.8.1 / (download) - annotate - [select for diffs], Mon May 31 22:15:22 2021 UTC (2 years, 10 months ago) by cjep
Branch: cjep_staticlib_x
Changes since 1.19: +9 -6 lines
Diff to previous 1.19 (colored) next main 1.20 (colored)

sync with head

Revision 1.21 / (download) - annotate - [select for diffs], Fri May 21 21:53:15 2021 UTC (2 years, 10 months ago) by jmcneill
Branch: MAIN
CVS Tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1
Changes since 1.20: +5 -2 lines
Diff to previous 1.20 (colored)

Disable ACPI support when booting big endian kernels.

Revision 1.19.6.1 / (download) - annotate - [select for diffs], Thu May 13 00:47:33 2021 UTC (2 years, 11 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.19: +5 -5 lines
Diff to previous 1.19 (colored)

Sync with HEAD.

Revision 1.20 / (download) - annotate - [select for diffs], Tue May 11 07:15:10 2021 UTC (2 years, 11 months ago) by skrll
Branch: MAIN
Changes since 1.19: +5 -5 lines
Diff to previous 1.19 (colored)

Consistently have ALIGN sizes as the power of two size, i.e. change
FDT_ALIGN, and use the same math(s) to round.

In the process fix the load_offset for the kernel to use the EFIBOOT_ALIGN
aligned address if that's what we get from AllocatePages.

Revision 1.19 / (download) - annotate - [select for diffs], Sat Oct 10 19:17:39 2020 UTC (3 years, 6 months ago) by jmcneill
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-futex, thorpej-cfargs-base, thorpej-cfargs, cjep_staticlib_x-base
Branch point for: thorpej-i2c-spi-conf, cjep_staticlib_x
Changes since 1.18: +3 -5 lines
Diff to previous 1.18 (colored)

Support EFI runtime and GOP FB for devicetree (non-ACPI) setups.

Revision 1.18 / (download) - annotate - [select for diffs], Sun Jun 28 11:39:50 2020 UTC (3 years, 9 months ago) by jmcneill
Branch: MAIN
Changes since 1.17: +1 -2 lines
Diff to previous 1.17 (colored)

Remove support for storing settings in EFI environment variables now that
we have boot.cfg support.

Revision 1.17 / (download) - annotate - [select for diffs], Fri Jun 26 03:23:04 2020 UTC (3 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.16: +8 -113 lines
Diff to previous 1.16 (colored)

Add dtoverlay command to specify device tree overlays from the boot
loader command line.  Add support for specifying device tree overlays
in boot.cfg, with the syntax:

dtoverlay=/path/to/overlay.dtbo
dtoverlay=hd0e:/overlays/example.dtbo

Multiple overlays can be specified, and they are loaded in the order
they appear in boot.cfg.

Remove support for efiboot.plist.

Revision 1.16 / (download) - annotate - [select for diffs], Sun Jun 21 17:24:26 2020 UTC (3 years, 9 months ago) by jmcneill
Branch: MAIN
Changes since 1.15: +30 -1 lines
Diff to previous 1.15 (colored)

Add module support.

Revision 1.15 / (download) - annotate - [select for diffs], Sat May 23 16:40:41 2020 UTC (3 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.14: +2 -1 lines
Diff to previous 1.14 (colored)

If a device tree overlay does not have a "compatible" match, don't
load it.  (Oops, missing return statement.)

Revision 1.14 / (download) - annotate - [select for diffs], Thu May 14 19:20:08 2020 UTC (3 years, 11 months ago) by riastradh
Branch: MAIN
Changes since 1.13: +47 -3 lines
Diff to previous 1.13 (colored)

Pass EFI RNG output via /chosen/netbsd,efirng-{start,end}.

This is separate from /chosen/netbsd,rndseed-{start,end}, which
specifies NetBSD's persistent on-disk seed; efirng is the firmware's
RNG device.

Revision 1.10.2.4 / (download) - annotate - [select for diffs], Mon Apr 13 08:05:19 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.10.2.3: +4 -0 lines
Diff to previous 1.10.2.3 (colored) to branchpoint 1.10 (colored) next main 1.11 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.10.2.3 / (download) - annotate - [select for diffs], Wed Apr 8 14:09:02 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.10.2.2: +20 -3 lines
Diff to previous 1.10.2.2 (colored) to branchpoint 1.10 (colored)

Merge changes from current as of 20200406

Revision 1.11.2.2 / (download) - annotate - [select for diffs], Wed Feb 12 20:10:09 2020 UTC (4 years, 2 months ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE
Changes since 1.11.2.1: +13 -3 lines
Diff to previous 1.11.2.1 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

Pull up following revision(s) (requested by riastradh in ticket #705):

	sys/arch/aarch64/aarch64/aarch64_machdep.c: revision 1.35
	sys/stand/efiboot/efifdt.c: revision 1.20
	sys/stand/efiboot/efifdt.h: revision 1.7
	sys/arch/aarch64/include/machdep.h: revision 1.9
	sys/stand/efiboot/efiboot.h: revision 1.11
	sys/arch/arm/arm32/arm32_machdep.c: revision 1.129
	sys/arch/arm/include/arm32/machdep.h: revision 1.30
	sys/stand/efiboot/exec.c: revision 1.12
	sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.65
	sys/stand/efiboot/version: revision 1.14
	sys/stand/efiboot/boot.c: revision 1.19

New function cpu_startup_hook on arm.

Called at end of cpu_startup.  Can be defined in, e.g., evbarm to do
additional stuff after cpu_startup.  Defined as a weak alias to a
function that does nothing, so optional.
ok jmcneill

Implement rndseed support in efiboot and fdt arm.

The EFI environment variable `rndseed' specifies the path to the
random seed.  It is loaded only for fdt platforms at the moment.
Since the rndseed (an rndsave_t object as defined in <sys/rndio.h>)
is 536 bytes long (for hysterical raisins), and to avoid having to
erase parts of the fdt tree, we load it into a physical page whose
address is passed in the fdt tree, rather than passing the content of
the file as an fdt node directly; the kernel then reserves the page
from uvm, and maps it into kva to call rnd_seed.

For now, the only kernel that does use efiboot with fdt is evbarm,
which knows to handle the rndseed.  Any new kernels that use efiboot
with fdt must do the same; otherwise uvm may hand out the page with
the secret key on it for a normal page allocation in the kernel --
which should be OK if there are no kernel memory disclosure bugs, but
would lead to worse consequences than simply loading the seed late in
userland with /etc/rc.d/random_seed otherwise.

ok jmcneill

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Sun Jan 26 11:21:58 2020 UTC (4 years, 2 months ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-0-RC2
Changes since 1.11: +8 -1 lines
Diff to previous 1.11 (colored)

Pull up following revision(s) (requested by jmcneill in ticket #653):

	sys/stand/efiboot/prompt.c: revision 1.6
	sys/stand/efiboot/boot.c: revision 1.20
	sys/stand/efiboot/bootarm/Makefile: revision 1.4
	sys/stand/efiboot/efiacpi.c: revision 1.6
	sys/stand/efiboot/exec.c: revision 1.13
	sys/stand/efiboot/Makefile.efiboot: revision 1.10
	sys/stand/efiboot/bootaa64/Makefile: revision 1.7

Fix for disappearing counters on graphics consoles

Hide the twiddle while loading efiboot plist

Clean up the banner so it fits in 80 columns and add some extra details
to the "version" command output.

Revision 1.12.2.1 / (download) - annotate - [select for diffs], Sat Jan 25 22:38:52 2020 UTC (4 years, 2 months ago) by ad
Branch: ad-namecache
Changes since 1.12: +8 -1 lines
Diff to previous 1.12 (colored) next main 1.13 (colored)

Sync with head.

Revision 1.13 / (download) - annotate - [select for diffs], Sat Jan 25 10:53:13 2020 UTC (4 years, 2 months ago) by jmcneill
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2
Changes since 1.12: +8 -1 lines
Diff to previous 1.12 (colored)

Hide the twiddle while loading efiboot plist

Revision 1.12 / (download) - annotate - [select for diffs], Wed Dec 18 21:46:03 2019 UTC (4 years, 4 months ago) by riastradh
Branch: MAIN
CVS Tags: ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Changes since 1.11: +13 -3 lines
Diff to previous 1.11 (colored)

Implement rndseed support in efiboot and fdt arm.

The EFI environment variable `rndseed' specifies the path to the
random seed.  It is loaded only for fdt platforms at the moment.

Since the rndseed (an rndsave_t object as defined in <sys/rndio.h>)
is 536 bytes long (for hysterical raisins), and to avoid having to
erase parts of the fdt tree, we load it into a physical page whose
address is passed in the fdt tree, rather than passing the content of
the file as an fdt node directly; the kernel then reserves the page
from uvm, and maps it into kva to call rnd_seed.

For now, the only kernel that does use efiboot with fdt is evbarm,
which knows to handle the rndseed.  Any new kernels that use efiboot
with fdt must do the same; otherwise uvm may hand out the page with
the secret key on it for a normal page allocation in the kernel --
which should be OK if there are no kernel memory disclosure bugs, but
would lead to worse consequences than simply loading the seed late in
userland with /etc/rc.d/random_seed otherwise.

ok jmcneill

Revision 1.11 / (download) - annotate - [select for diffs], Wed Jul 24 11:40:36 2019 UTC (4 years, 8 months ago) by jmcneill
Branch: MAIN
CVS Tags: phil-wifi-20191119, netbsd-9-base, netbsd-9-0-RC1
Branch point for: netbsd-9
Changes since 1.10: +5 -1 lines
Diff to previous 1.10 (colored)

Add support for simple framebuffers when booting in ACPI mode.

Revision 1.10.2.2 / (download) - annotate - [select for diffs], Mon Jun 10 22:09:56 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.10.2.1: +360 -0 lines
Diff to previous 1.10.2.1 (colored) to branchpoint 1.10 (colored)

Sync with HEAD

Revision 1.10.2.1, Sun Apr 21 22:30:41 2019 UTC (4 years, 11 months ago) by christos
Branch: phil-wifi
Changes since 1.10: +0 -360 lines
FILE REMOVED

file exec.c was added on branch phil-wifi on 2019-06-10 22:09:56 +0000

Revision 1.10 / (download) - annotate - [select for diffs], Sun Apr 21 22:30:41 2019 UTC (4 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: phil-wifi-20190609
Branch point for: phil-wifi
Changes since 1.9: +175 -12 lines
Diff to previous 1.9 (colored)

- 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.)

Revision 1.9 / (download) - annotate - [select for diffs], Sat Mar 30 12:47:53 2019 UTC (5 years ago) by jmcneill
Branch: MAIN
CVS Tags: isaki-audio2-base, isaki-audio2
Changes since 1.8: +5 -5 lines
Diff to previous 1.8 (colored)

Build fixes for 32-bit targets.

Revision 1.3.2.5 / (download) - annotate - [select for diffs], Mon Nov 26 01:52:52 2018 UTC (5 years, 4 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.3.2.4: +6 -2 lines
Diff to previous 1.3.2.4 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored)

Sync with HEAD, resolve a couple of conflicts

Revision 1.8 / (download) - annotate - [select for diffs], Sun Oct 28 10:17:47 2018 UTC (5 years, 5 months ago) by jmcneill
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126
Changes since 1.7: +6 -2 lines
Diff to previous 1.7 (colored)

Make EFI runtime services available to the kernel. Bump version to 1.5.

Revision 1.3.2.4 / (download) - annotate - [select for diffs], Sat Oct 20 06:58:46 2018 UTC (5 years, 5 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.3.2.3: +7 -1 lines
Diff to previous 1.3.2.3 (colored) to branchpoint 1.3 (colored)

Sync with head

Revision 1.7 / (download) - annotate - [select for diffs], Fri Oct 12 22:08:04 2018 UTC (5 years, 6 months ago) by jmcneill
Branch: MAIN
CVS Tags: pgoyette-compat-1020
Changes since 1.6: +7 -1 lines
Diff to previous 1.6 (colored)

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.

Revision 1.3.2.3 / (download) - annotate - [select for diffs], Sun Sep 30 01:45:58 2018 UTC (5 years, 6 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.3.2.2: +99 -5 lines
Diff to previous 1.3.2.2 (colored) to branchpoint 1.3 (colored)

Ssync with HEAD

Revision 1.6 / (download) - annotate - [select for diffs], Sat Sep 15 17:06:32 2018 UTC (5 years, 7 months ago) by jmcneill
Branch: MAIN
CVS Tags: pgoyette-compat-0930
Changes since 1.5: +6 -3 lines
Diff to previous 1.5 (colored)

Suppress printing size info when calling loadfile with COUNT_KERNEL

Revision 1.5 / (download) - annotate - [select for diffs], Sun Sep 9 13:37:54 2018 UTC (5 years, 7 months ago) by jmcneill
Branch: MAIN
Changes since 1.4: +28 -19 lines
Diff to previous 1.4 (colored)

Add "dtb" command for loading a custom .dtb file.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Sep 7 17:30:58 2018 UTC (5 years, 7 months ago) by jmcneill
Branch: MAIN
Changes since 1.3: +85 -3 lines
Diff to previous 1.3 (colored)

Add initrd support.

Revision 1.3.2.2 / (download) - annotate - [select for diffs], Thu Sep 6 06:56:47 2018 UTC (5 years, 7 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.3.2.1: +93 -0 lines
Diff to previous 1.3.2.1 (colored) to branchpoint 1.3 (colored)

Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

Revision 1.3.2.1, Sun Sep 2 23:50:23 2018 UTC (5 years, 7 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.3: +0 -93 lines
FILE REMOVED

file exec.c was added on branch pgoyette-compat on 2018-09-06 06:56:47 +0000

Revision 1.3 / (download) - annotate - [select for diffs], Sun Sep 2 23:50:23 2018 UTC (5 years, 7 months ago) by jmcneill
Branch: MAIN
CVS Tags: pgoyette-compat-0906
Branch point for: pgoyette-compat
Changes since 1.2: +5 -2 lines
Diff to previous 1.2 (colored)

Support loading kernels at PAs above 0x3fffffffff on arm64

Revision 1.2 / (download) - annotate - [select for diffs], Mon Aug 27 09:51:32 2018 UTC (5 years, 7 months ago) by jmcneill
Branch: MAIN
Changes since 1.1: +2 -3 lines
Diff to previous 1.1 (colored)

Pass a hash of the MBR and the booted partition to the kernel.

Revision 1.1 / (download) - annotate - [select for diffs], Fri Aug 24 02:01:06 2018 UTC (5 years, 7 months ago) by jmcneill
Branch: MAIN

Add MI EFI bootloader and AArch64 glue.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>