History log of /freebsd/stand/common/bootstrap.h (Results 1 – 25 of 54)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/14.2.0, release/13.4.0
# c75ba319 31-Aug-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

stand: file_loadraw: make 'type' a const char *

Reviewed by: imp, kib
Pull Request: https://github.com/freebsd/freebsd-src/pull/1394


# 70713602 22-Aug-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

stand: remove unnecessary checks for "elfN kernel"

We never set the kernel type to either "elf64 kernel" nor "elf32
kernel".

Reviewed by: imp, kib
Pull Request: https://github.com/freebsd/freebsd-s

stand: remove unnecessary checks for "elfN kernel"

We never set the kernel type to either "elf64 kernel" nor "elf32
kernel".

Reviewed by: imp, kib
Pull Request: https://github.com/freebsd/freebsd-src/pull/1394

show more ...


# 9e239e67 27-Sep-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

stand: further restrict f_kernphys_relocatable and f_tg_kernel_support

f_tg_kernel_support isn't used by any EFI code, and
f_kernphys_relocatable isn't used by the non-EFI i386 code.

Reviewed by: i

stand: further restrict f_kernphys_relocatable and f_tg_kernel_support

f_tg_kernel_support isn't used by any EFI code, and
f_kernphys_relocatable isn't used by the non-EFI i386 code.

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1446

show more ...


Revision tags: release/14.1.0
# f8ca5d45 14-May-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

stand: Add support for 64-bit machines with 32-bit UEFI implementations

Some machines have 64-bit capable cpus but are stuck on 32-bit uefi
firmware.

Add support for them by building a new "loader_

stand: Add support for 64-bit machines with 32-bit UEFI implementations

Some machines have 64-bit capable cpus but are stuck on 32-bit uefi
firmware.

Add support for them by building a new "loader_ia32" with
LOADER_DEFAULT_INTERP along with the 64-bit one. The loader
can be disabled using MK_LOADER_IA32.

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1098

show more ...


# 00460cc8 09-Jul-2024 Emmanuel Vadot <manu@FreeBSD.org>

loader: Load a splash screen if "splash" variable is defined

Load a splash screen that vt(4) can use if the "splash" env variable is defined.
For now only png is supported and decoding is done in lo

loader: Load a splash screen if "splash" variable is defined

Load a splash screen that vt(4) can use if the "splash" env variable is defined.
For now only png is supported and decoding is done in loader and not in kernel
compared to splash screen support in sc(4).

For using this add:
boot_mute="YES"
splash="/boot/images/freebsd-logo-rev.png"
in loader.conf

Differential Revision: https://reviews.freebsd.org/D45932
Reviewed by: imp, tsoome
Sponsored by: Beckhoff Automation GmbH & Co. KG

show more ...


# 68344c9c 19-May-2024 Warner Losh <imp@FreeBSD.org>

loader: separate lang init from scripting init

Create interp_preinit() to initialize the scripting language to run
scripts. Make sure you can call it multiple times, but only the first
one has effec

loader: separate lang init from scripting init

Create interp_preinit() to initialize the scripting language to run
scripts. Make sure you can call it multiple times, but only the first
one has effect, After it's call, you can run scripts in the scripting
language. At the moment, no functional change.

Sponsored by: Netflix

show more ...


Revision tags: release/13.3.0
# 32568e5f 21-Feb-2024 Warner Losh <imp@FreeBSD.org>

loader: Retire CTASSERT

The project is moving away from CTASSERT in favor of
_Static_assert. Cleanup the few instances in the loader proactively.

Sponsored by: Netflix
Reviewed by: manu, tsoome
D

loader: Retire CTASSERT

The project is moving away from CTASSERT in favor of
_Static_assert. Cleanup the few instances in the loader proactively.

Sponsored by: Netflix
Reviewed by: manu, tsoome
Differential Revision: https://reviews.freebsd.org/D44006

show more ...


Revision tags: release/14.0.0
# b3e76948 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# a50d73d5 18-Apr-2023 Stephen J. Kiernan <stevek@FreeBSD.org>

loader: Change version calculation to be more consistent.

Use 1000 * major + minor when calculating the version number that
gets set in the Ficl environment or lua loader property. This allows
for m

loader: Change version calculation to be more consistent.

Use 1000 * major + minor when calculating the version number that
gets set in the Ficl environment or lua loader property. This allows
for more room if the minor number needs to go above 9.

Add loader.version property to lua loader.

Reviewed by: imp
Obtained from: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D39631

show more ...


Revision tags: release/13.2.0
# 2b517910 03-Feb-2023 Warner Losh <imp@FreeBSD.org>

kboot: Don't need an arch pointer to get segments

There's no need for an arch pointer to get segments. We can call the
routine directly since we don't need this code to be called from
different cont

kboot: Don't need an arch pointer to get segments

There's no need for an arch pointer to get segments. We can call the
routine directly since we don't need this code to be called from
different context where a pointer is needed.

Sponsored by: Netflix
Reviewed by: kevans, andrew
Differential Revision: https://reviews.freebsd.org/D38266

show more ...


# d1ea5017 13-Jan-2023 Warner Losh <imp@FreeBSD.org>

stand: Separate base and cli parts of nvstore

zfs lives in libsa. However, it depends on nvstore (and other things)
that are in common. Fix part of this layering violation by splitting
nvstore into

stand: Separate base and cli parts of nvstore

zfs lives in libsa. However, it depends on nvstore (and other things)
that are in common. Fix part of this layering violation by splitting
nvstore into a libsa piece (which is the base implementation) and
keeping a much smaller common piece (to implement the nvstore
command). This just leaves zfs' knowledge of device names that's
specific to common and its calling platform specific init code to
resolve. Add a nvstore.h file for these two parts to communicate private
things and move the public nvstore api from bootstrap.h to stand.h.

Sponsored by: Netflix
Reviewed by: tsoome, kevans
Differential Revision: https://reviews.freebsd.org/D38043

show more ...


# ad70f2e2 11-Jan-2023 Warner Losh <imp@FreeBSD.org>

stand: create common set_currdev

Pull together the nearly identical copies of set_currdev in i386,
userboot and efi. Other boot loaders have variances that might be fine
to use the common routine, o

stand: create common set_currdev

Pull together the nearly identical copies of set_currdev in i386,
userboot and efi. Other boot loaders have variances that might be fine
to use the common routine, or not. Since they are harder to test for me,
and ofw and uboot do handle these setting differently, leave them be for
now.

Sponsored by: Netflix
Reviewed by: kevans
Differential Revision: https://reviews.freebsd.org/D38005

show more ...


# bf020787 11-Jan-2023 Warner Losh <imp@FreeBSD.org>

stand: Move dev_cleanup into libsa

Since dev_cleanup() walks through all the devsw devices with dv_cleanup
rotuines, move it into libsa rather than having it in
'common'. Logically, it operates only

stand: Move dev_cleanup into libsa

Since dev_cleanup() walks through all the devsw devices with dv_cleanup
rotuines, move it into libsa rather than having it in
'common'. Logically, it operates only on things that are in libsa, and
would never be different for different loaders: either people would call
it as is, or they'd do the loop themselves with 'special' things inline
between calls to cleanup (not that I think that will ever be needed
though).

Sponsored by: Netflix
Reviewed by: kevans
Differential Revision: https://reviews.freebsd.org/D38004

show more ...


# 1c1783d6 11-Jan-2023 Warner Losh <imp@FreeBSD.org>

stand: Create common gen_setcurrdev and replace code

Replace 4 identical copies of *_setcurrdev with gen_setcurrdev to avoid
having to create a 5th copy. uboot_setcurrdev is actually different and
n

stand: Create common gen_setcurrdev and replace code

Replace 4 identical copies of *_setcurrdev with gen_setcurrdev to avoid
having to create a 5th copy. uboot_setcurrdev is actually different and
needs to remain separate (even though it's quite similar).

Sponsored by: Netflix
Reviewed by: fuz@fuz.su, kevans
Differential Revision: https://reviews.freebsd.org/D38003

show more ...


# 9f726967 04-Dec-2022 Warner Losh <imp@FreeBSD.org>

kboot: Add md_addr to metadata

Save the address of where the metadata is loaded.

Sponsored by: Netflix


Revision tags: release/12.4.0
# a5948d40 01-Sep-2022 Warner Losh <imp@FreeBSD.org>

stand: Add interp_has_builtin_cmd to see if we have a command

interp_has_builtin_cmd() will try to lookup the passed in command and
returns true if it was found, false otherwise.

Sponsored by: Net

stand: Add interp_has_builtin_cmd to see if we have a command

interp_has_builtin_cmd() will try to lookup the passed in command and
returns true if it was found, false otherwise.

Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D36364

show more ...


Revision tags: release/13.1.0
# ec042f46 13-Feb-2022 Simon J. Gerraty <sjg@FreeBSD.org>

Add support for module_verbose

Set module_verbose to control the printing of information
about loaded modules and kernel:

0 MODULE_VERBOSE_SILENT None
1 MODULE_VERBOSE_SIZE Pathname and size
2 MODU

Add support for module_verbose

Set module_verbose to control the printing of information
about loaded modules and kernel:

0 MODULE_VERBOSE_SILENT None
1 MODULE_VERBOSE_SIZE Pathname and size
2 MODULE_VERBOSE_TWIDDLE as for 1 but also twiddle for progress
3 MODULE_VERBOSE_FULL extra detail

When the loader is verifying modules we already have a
running indication of progress and module_verbose=0 makes sense.

Reviewed by: rpokala
Differential Revision: https://reviews.freebsd.org/D34245

show more ...


# aaaa5a2e 14-Dec-2021 Warner Losh <imp@FreeBSD.org>

loader: narrow the scope of gfx frame buffer wrt tg supported kernels

Store whether or not we found a vbefb module (eg, a tg supported kernel)
in the preloaded_file structure. This automatically res

loader: narrow the scope of gfx frame buffer wrt tg supported kernels

Store whether or not we found a vbefb module (eg, a tg supported kernel)
in the preloaded_file structure. This automatically resets on reload and
eliminates load_elf knowing about any gfx_* interface. Restrict this to
i386, which is the only place it's used. Update libi386 to check in the
preloaded_file struct. Eliminate this from the teken_gfx
structure. Rewrite the parsing code to be more inline. Check this from
the same place we check for a relocatable amd64 kernel.

Sponsored by: Netflix
Reviewed by: manu, tsoome
Differential Revision: https://reviews.freebsd.org/D33427

show more ...


Revision tags: release/12.3.0
# b4cb3fe0 12-Aug-2021 Toomas Soome <tsoome@FreeBSD.org>

loader: implement mount/unmount rootfs

We want to keep our root file system open to preserve bcache segment
between file accesses, thus reducing physical disk IO.

Reviewed by: imp, allanjude, kevan

loader: implement mount/unmount rootfs

We want to keep our root file system open to preserve bcache segment
between file accesses, thus reducing physical disk IO.

Reviewed by: imp, allanjude, kevans (previous version)
Differential Revision: https://reviews.freebsd.org/D30848
MFC after: 1 month

show more ...


# f75caed6 10-Jul-2021 Konstantin Belousov <kib@FreeBSD.org>

amd64 UEFI loader: stop copying staging area to 2M physical

On amd64, add a possibility to activate kernel with staging area in place.
Add 'copy_staging' command to control this. For now, by defaul

amd64 UEFI loader: stop copying staging area to 2M physical

On amd64, add a possibility to activate kernel with staging area in place.
Add 'copy_staging' command to control this. For now, by default the
old mode of copying kernel to 2M phys is retained. It is going to be
changed in several weeks.

On amd64, add some slop to the staging area to satisfy both requirements
of the kernel startup allocator, and to have space for minor staging data
increase after the final size is calculated. Add a new command
'staging_slop' to control its size.

Improve staging area resizing, in particular, reallocate it anew if
we cannot grow it neither down nor up.

Reviewed by: kevans, markj
Discussed with: emaste (the delivery plan)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D31121

show more ...


# c8dfc327 30-May-2021 Colin Percival <cperciva@FreeBSD.org>

stand/common: Add support for timestamp logging (tslog)

This adds tslog_init, which allocates a 2MB buffer for recording
timestamped events; and tslog_publish, which takes the buffer and
passes it t

stand/common: Add support for timestamp logging (tslog)

This adds tslog_init, which allocates a 2MB buffer for recording
timestamped events; and tslog_publish, which takes the buffer and
passes it to the kernel as a "preloaded module". These functions
will be used in a later commit.

Reviewed by: kevans

show more ...


# 60a978be 30-May-2021 Colin Percival <cperciva@FreeBSD.org>

stand/common: Add file_addbuf()

This provides an interface for a memory buffer to be passed from the loader
to the kernel as a "preloaded module".

Reviewed by: kevans


Revision tags: release/13.0.0
# 3630506b 21-Dec-2020 Toomas Soome <tsoome@FreeBSD.org>

loader: implement framebuffer console

Draw console on efi.
Add vbe framebuffer for BIOS loader (vbe off, vbe on, vbe list,
vbe set xxx).
autoload font (/boot/fonts) based on resolution and font size

loader: implement framebuffer console

Draw console on efi.
Add vbe framebuffer for BIOS loader (vbe off, vbe on, vbe list,
vbe set xxx).
autoload font (/boot/fonts) based on resolution and font size.
Add command loadfont (set font by file) and
variable screen.font (set font by size). Pass loaded font to kernel.

Export variables:
screen.height
screen.width
screen.depth

Add gfx primitives to draw the screen and put png image on the screen.
Rework menu draw to iterate list of consoles to enamble device specific
output.

Probably something else I forgot...

Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D27420

show more ...


# 83a252c6 08-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

loader: cstyle cleanup of bootstrap.h did miss a bit

correct small issues - misplaced comment and typos.


# 90b307a8 08-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

loader: cstyle cleanup of bootstrap.h

No functional changes intended.


123