aboutsummaryrefslogtreecommitdiff
path: root/stand/defaults
Commit message (Collapse)AuthorAgeFilesLines
* loader.conf.5: "console" setting does not document multi-value possiblityMichael Osipov2026-01-282-1/+2
| | | | | | | PR: 292595 Approved by: ziaee, dab, imp, tsoome MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54843
* iwmfw(4): fix spelling of the iwm8000C firmware.Bjoern A. Zeeb2025-12-081-1/+1
| | | | | | | | | | | | | | | | | When migrating the firmware to be installed as plain firmware files to /boot/firmware the iwm8000C firmware lost its "fw" suffix that iwm(4) expects. The follow-up change to defaults/loader.conf is also consistently missing the "fw". Fix both places, and add the wrongly spelt version to ObsoleteFiles.inc (entirely untested). PR: 291403 Reported by: Augustin Hoffmann (avgwst tutanota.de) Fixes: af0a81b6470aba4af4a24ae9804053722846ded4 Fixes: a0f06dfb0d188966bee7265ec7d9f20093186bb6 MFC after: 3 days
* loader: Note current autoboot_delay behaviorWarner Losh2025-11-271-3/+3
| | | | | | | | Some time ago, the boot loader stopped polling for a key press during the kernel and module loading prior to the transition to lua. Inspection of the code shows the polling is no longer there. Document the change. Sponsored by: Netflix
* loader manuals: Clarify console and boot_serialAlexander Ziaee2025-11-141-0/+3
| | | | | | | | | | | | console=comconsole is for the loader and boot_serial is for the kernel. I think we should centralize documentation on the loader settings in one manual, such a loader.8. The current proliferation is not obvious where to find the documentation. To the user, these are all set in loader.conf or at the loader prompt. MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53695
* loader.conf.5: Add reference to kern.msgbufsizeWarner Losh2025-09-031-1/+4
| | | | | | | | When booting with boot_verbose, you want a larger msgbuf size. Add a poitner to its tuneable. Suggested by: John De Boskey (Ages ago) Sponsored by: Netflix
* loader: add nvidia modules to the loader blacklistKyle Evans2025-07-311-0/+1
| | | | | | | | | | | | | | It is known that nvidia modules, like the drm modules that are already present, will panic if loaded in early boot rather than later. Pop them into our list to deny loading them if someone were to add, e.g., nvidia-modeset_load="YES", to their loader.conf. This doesn't prevent them from being loaded if one drops to the loader prompt, but it does prevent the standard user from easy foot-shooting if they find old or inaccurate information out in the wild. Reviewed by: imp, kbowling MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D51644
* stand: Add print_delay environment variable in loaderAymeric Wibo2025-07-212-1/+7
| | | | | | | | | | | This adds support for a new `print_delay` environment variable, which inserts a delay in microseconds when `putchar` encounters a newline character. This can be useful when debugging. Reviewed by: markj, imp, ziaee, mckusick (mentor) Approved by: markj, imp, ziaee, mckusick (mentor) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50832
* loader.conf: add LinuxKPI based wireless drivers to module_blacklistBjoern A. Zeeb2025-06-121-1/+1
| | | | | | | | | | | | | | | | | Despite being discouraged in the man page people are trying to load the driver from loader. In that case firmware is missing and the root file system is not there yet and the LinuxKPI based drivers will panic the system on boot. Simply avoid any further support trouble by disallowing them to be loaded from loader. If someone still wants to do it, they will need to figure out how to remove them from the blocklst and how to loader the firmware file(s) in advance themselves. Sponsored by: The FreeBSD Foundation MFC after: 3 days PR: 287480 Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D50817
* lualoader: allow graphical bits to be disabled with loader_gfxKyle Evans2025-06-062-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | Some people prefer the old ASCII art look and it's good to have a way to confirm that the fallbacks still work right on systems that have a functional framebuffer available. Add a loader_gfx loader.conf(5) variable to disable the eager use of graphics for these use-cases. While we're here, clean up the style in the area a little bit; the early porting that I did to lualoader did a lot of redundant ~= nil that has carried over into some of the later work. We can drop some of that, and also re-organize some of these variables to improve readability. ziaee notes that the positioning of the orb is a bit off; this is due to a change in positioning that happened in 1b4e1171315398dec ("loader: Fix orb position") to account for the image dimensions. This should be partially reverted to get it right; we shouldn't assume that we can use the same shift in gfx-* definitions for both the ASCII art and the associated image -- the {image, image_rl} pair should be converted to something more like an fbimg or gfx table that has the image, image width and a shift override to avoid messing up the ASCII positioning when disabled (or with no graphics available). Reviewed by: imp, manu, ziaee (manpages) Differential Revision: https://reviews.freebsd.org/D50706
* loader: Add loader_menuEmmanuel Vadot2025-04-171-0/+4
| | | | | | | | | If set to 'none' then the menu isn't displayed. The 'brand' and 'logo' part are stil displayed. Differential Revision: https://reviews.freebsd.org/D49820 Reviewed by: imp, kevans Sponsored by: Beckhoff Automation GmbH & Co. KG
* loader: Add loader_autoboot_showEmmanuel Vadot2025-04-171-0/+4
| | | | | | | | It's used to control if the autoboot part of loader is displayed or not. Differential Revision: https://reviews.freebsd.org/D49819 Reviewed by: imp Sponsored by: Beckhoff Automation GmbH & Co. KG
* loader.conf: Document boot_verboseWarner Losh2025-02-091-1/+8
| | | | | | | | And for the moment, point people to loader.efi(8) for all boot_* variables. Sponsored by: Netflix MFC After: 1 week
* loader: Add a list of firmware name mappingEmmanuel Vadot2025-01-061-1/+12
| | | | | | | | | | | | Since we started to ship raw firmware for iwm(4), users who loads the driver from loader are having problems as loader don't know that the firmwares are now raw files and not kernel modules anymore. Start a list of default entry for iwm(4) firmwares name mapping so it will still works when loaded from loader. Differential Revision: https://reviews.freebsd.org/D48211 Reviewed by: bz, imp, kevans Sponsored by: Beckhoff Automation GmbH & Co. KG
* stand: Fix defaults fileWarner Losh2024-10-191-1/+1
| | | | | | | | | | | Currently, quotes in a comment lead to mal-formed lines warnings. Remove the quotes since it doesn't matter. The underlying bug likely should be fixed, but since stability week is neigh, workaround this. Fixes: 7df3e400ea687 Sponsored by: Netflix Reviewed by: bcran Differential Revision: https://reviews.freebsd.org/D47201
* loader: default: Add a default splash screenEmmanuel Vadot2024-10-141-0/+1
| | | | | | | Setting boot_mute="YES" currently use the in-kernel black and white logo. Instead default to the color png one. Sponsored by: Beckhoff Automation GmbH & Co. KG
* loader: Make EFI entropy size configurableColin Percival2024-09-221-2/+6
| | | | | | | | | | | Add a new loader variable entropy_efi_seed_size which defaults to 2048; if not defined (e.g. if the /boot/lua/ is updated but /boot/defaults/ isn't) the same 2048 default will be used. Reviewed by: Val Packett MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46632
* Remove residual blank line at start of MakefileWarner Losh2024-07-151-1/+0
| | | | | | | This is a residual of the $FreeBSD$ removal. MFC After: 3 days (though I'll just run the command on the branches) Sponsored by: Netflix
* loader.conf.5: Correct terminal sizeAhmad Khalifa2024-07-081-3/+3
| | | | | | Signed-off-by: Ahmad Khalifa <ahmadkhalifa570@gmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1292
* stand/lua: always allow overriding with local config filesStéphane Rochoy2024-02-022-5/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Loader now also read configuration files listed in local_loader_conf_files. Files listed here are the last ones read. And /boot/loader.conf.local was moved from loader_conf_files to local_loader_conf_files leaving only loader.conf and device.hints in loader_conf_files by default. The idea is to ensure local_loader_conf_files, i.e., /boot/loader.conf.local, can always be used to override other user defined settings. So the sequencing is now as follow: 1. Bootstrap: /boot/defaults/loader.conf 2. Read loader_conf_files files: /boot/device.hints /boot/loader.conf 3. Read loader_conf_dirs files: /boot/loader.conf.d/*.conf 4. And finally, rread local_loader_conf_files files: /boot/loader.conf.local Reviewed by: imp, kevans Pull Request: https://github.com/freebsd/freebsd-src/pull/759
* stand/lua: per-product conf if requested via product_varsStéphane Rochoy2024-02-021-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | If product_vars is set, it must be a space separated list of environment variable names to walk through to guess the product. Each time a product can be guessed (i.e., the corresponding variable is defined), prepend /boot/loader.conf.d/PRODUCT/ to loader_conf_dirs. It can be typically used as follow: smbios.system.planar.maker="PLANAR_MAKER" smbios.system.planar.product="PLANAR_PRODUCT" smbios.system.product="PRODUCT" uboot.m_product="M_PRODUCT" product_vars="smbios.system.planar.maker smbios.system.planar.product smbios.system.product uboot.m_product" to read files found in the following directories, in that order: /boot/loader.conf.d/PLANAR_MAKER /boot/loader.conf.d/PLANAR_PRODUCT /boot/loader.conf.d/PRODUCT /boot/loader.conf.d/M_PRODUCT Reviewed by: imp, kevans Pull Request: https://github.com/freebsd/freebsd-src/pull/759
* Revert "stand/lua: per-product conf if requested via product_vars"Warner Losh2024-02-021-33/+1
| | | | | | | This reverts commit 754cac4b283eb024a3a6a194130199c860e32ebf. No mail went out and commit message was wrong. Sponsored by: Netflix
* Revert "stand/lua: always allow overriding with local config files"Warner Losh2024-02-022-30/+5
| | | | | | | This reverts commit d3d0b735571d9562812ce5b343a6e91f7a795dbe. no mail sent out, and the commit message was wrong. Sponsored by: Netflix
* stand/lua: always allow overriding with local config filesStéphane Rochoy2024-02-022-5/+30
| | | | | | | | | | | | | | | | | | | | | | | | | Loader now also read configuration files listed in local_loader_conf_files. Files listed here are the last ones read. And /boot/loader.conf.local was moved from loader_conf_files to local_loader_conf_files leaving only loader.conf and device.hints in loader_conf_files by default. The idea is to ensure local_loader_conf_files, i.e., /boot/loader.conf.local, can always be used to override other user defined settings. So the sequencing is now as follow: 1. Bootstrap: /boot/defaults/loader.conf 2. Read loader_conf_files files: /boot/device.hints /boot/loader.conf 3. Read loader_conf_dirs files: /boot/loader.conf.d/*.conf 4. And finally, rread local_loader_conf_files files: /boot/loader.conf.local
* stand/lua: per-product conf if requested via product_varsStéphane Rochoy2024-02-021-1/+33
| | | | | | | | | | | | | | | | | | | | | | If product_vars is set, it must be a space separated list of environment variable names to walk through to guess the product. Each time a product can be guessed (i.e., the corresponding variable is defined), prepend /boot/loader.conf.d/PRODUCT/ to loader_conf_dirs. It can be typically used as follow: smbios.system.planar.maker="PLANAR_MAKER" smbios.system.planar.product="PLANAR_PRODUCT" smbios.system.product="PRODUCT" uboot.m_product="M_PRODUCT" product_vars="smbios.system.planar.maker smbios.system.planar.product smbios.system.product uboot.m_product" to read files found in the following directories, in that order: /boot/loader.conf.d/PLANAR_MAKER /boot/loader.conf.d/PLANAR_PRODUCT /boot/loader.conf.d/PRODUCT /boot/loader.conf.d/M_PRODUCT
* stand: Add 1440p to the list of known resolutions.Dag-Erling Smørgrav2024-01-232-2/+3
| | | | | | MFC after: 1 week Reviewed by: manu, kevans, imp Differential Revision: https://reviews.freebsd.org/D43391
* Add kenv .Xr in kldload(8) and loader.conf(5)Warner Losh2023-12-211-1/+2
| | | | Sponsored by: Netflix
* Use 115200 bps by default for serial communicationEd Maste2023-08-172-2/+2
| | | | | | | | | | | | | 9600 was a standard baud rate decades ago, but 115200 is now more common so choose defaults that are useful to the largest number of users. Note that boot0sio does not support rates above 9600 so it remains unchanged. Reviewed by: bz, imp, manu Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D36295
* Remove $FreeBSD$: two-line nroff patternWarner Losh2023-08-161-2/+0
| | | | Remove /^\.\\"\n\.\\"\s*\$FreeBSD\$$\n/
* Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-162-2/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* lualoader: add support for .lua configuration filesKyle Evans2023-05-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | If a file is specified in loader_conf_files that ends in '.lua', lualoader will now load and execute that file. These may be used in place of a traditional loader.conf to use more complicated logic, where some values may be set based on others or based on the environment that the C bits has left us with. Lua scripts are run in a limited environment. In particular, it does not get access to any modules or, in-fact, anything except environment variable. A config.buildenv hook has been added so that a local module can add whatever it may need to to the environment. When a global var is set in the lua script, it does not immediately alter the loader environment. Instead, the script's environment is initially empty and processed only if the whole script executes successfully. Effectively, a lua configuration file either takes effect or it does not, an error will not leave it in a half-baked state. Reviewed by: bcr (manpages), imp Differential Revision: https://reviews.freebsd.org/D28450
* Add support for getting early entropy from UEFIColin Percival2022-02-171-1/+3
| | | | | | | | | | | | | | | | | | UEFI provides a protocol for accessing randomness. This is a good way to gather early entropy, especially when there's no driver for the RNG on the platform (as is the case on the Marvell Armada8k (MACCHIATObin) for now). If the entropy_efi_seed option is enabled in loader.conf (default: YES) obtain 2048 bytes of entropy from UEFI and pass is to the kernel as a "module" of name "efi_rng_seed" and type "boot_entropy_platform"; if present, ingest it into the kernel RNG. Submitted by: Greg V Reviewed by: markm, kevans Approved by: csprng (markm) MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D20780
* loader: Set twiddle globaldiv to 16 by defaultColin Percival2021-09-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Booting FreeBSD on an EC2 c5.xlarge instance, the loader "twiddles" 810 times over the course of 510 ms, a rate of 1.59 kHz. Even accepting that many systems are slower than this particular VM and will take longer to boot (especially if using spinning-rust disks), this seems like an unhelpfully large amount of twiddling when compared to the ~60 Hz frame rate of many displays; printing the twiddles also consumes roughly 10% of the boot time on the aforementioned VM. Setting the default globaldiv to 16 dramatically reduces the time spent printing twiddles to the console while still twiddling at roughly 100 Hz; this should be ample even for systems which take longer to boot and consequently twiddle slower. Note that this can adjusted via the twiddle_divisor variable in loader.conf, but that file is not processed until nearly halfway through the loader's runtime. Reviewed by: allanjude, jrtc27, kevans MFC after: 1 week Sponsored by: https://www.patreon.com/cperciva Differential Revision: <https://reviews.freebsd.org/D32163>
* loader.conf(5): mention "efi" option for "console" parameterLi-Wen Hsu2021-07-311-1/+3
| | | | | | | PR: 213467 Reviewed by: imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D31368
* loader: update autoboot description and move to loader.conf.5Daniel Gerzo2021-07-121-1/+42
| | | | | | | | | | | Document "NO" special value for the autoboot_delay and move the description to loader.conf.5. imp reworked some of the wording from danger's patch. Reviewed by: imp PR: 85128 Differential Revision: https://reviews.freebsd.org/D11887
* Fix dateMateusz Piotrowski2021-01-071-1/+1
| | | | | | It's 2021 already. Reported by: delphij
* Fix a couple of typos and formatting issuesMateusz Piotrowski2021-01-061-6/+10
|
* loader: instead of hw.vga.textmode, use screen.textmodeToomas Soome2021-01-061-3/+26
| | | | | | | | | | | | | hw.vga.textmode is directing VT VGA backend to use text mode. The default screen mode for BIOS loader is text, and default screen mode for VT VGA backend is graphics (unless we are running on hypervisor or hw.vga.textmode is set to 1). Using hw.vga.textmode for loader does remove possibility to have graphical mode VT VGA with text mode loader. screen.textmode can have possible values "0" to disable text mode, and "1" to set text mode.
* loader: implement framebuffer consoleToomas Soome2021-01-021-1/+3
| | | | | | | | | | | | | | | | | | | | | | | 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
* lualoader: add loader_conf_dirs support (loader.conf.d)Kyle Evans2020-12-312-1/+9
| | | | | | | | | | | | | | | | | | loader_conf_dirs is the supporting mechanism for the included /boot/loader.conf.d directory. When lualoader finishes processing all of the loader_conf_files it finds after walking /boot/defaults/loader.conf, it will now check any and all loader_conf_dirs and process files ending in ".conf" as if they were a loader.conf. Note that loader_conf_files may be specified in a loader.conf.d config file, but loader_conf_dirs may *not*. It will only be processed as specified in /boot/defaults/loader.conf and any loader_conf_files that were loaded from there. Reviewed by: allanjude, freqlabs, rpokala, tsoome Includes suggestion from: imp Relnotes: yes Differential Revision: https://reviews.freebsd.org/D25608
* Fix a few mandoc issuesGordon Bergling2020-10-091-1/+0
| | | | | | | | | | | | - whitespace at end of input line - skipping paragraph macro: Pp at the end of Sh - new sentence, new line - consider using OS macro: Fx - AUTHORS section without An macro - skipping paragraph macro: Pp before Ss Notes: svn path=/head/; revision=366575
* loader: zfs should support bootonce an nextbootToomas Soome2020-09-211-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bootonce feature is temporary, one time boot, activated by "bectl activate -t BE", "bectl activate -T BE" will reset the bootonce flag. By default, the bootonce setting is reset on attempt to boot and the next boot will use previously active BE. By setting zfs_bootonce_activate="YES" in rc.conf, the bootonce BE will be set permanently active. bootonce dataset name is recorded in boot pool labels, bootenv area. in case of nextboot, the nextboot_enable boolean variable is recorded in freebsd:nvstore nvlist, also stored in boot pool label bootenv area. On boot, the loader will process /boot/nextboot.conf if nextboot_enable is "YES", and will set nextboot_enable to "NO", preventing /boot/nextboot.conf processing on next boot. bootonce and nextboot features are usable in both UEFI and BIOS boot. To use bootonce/nextboot features, the boot loader needs to be updated on disk; if loader.efi is stored on ESP, then ESP needs to be updated and for BIOS boot, stage2 (zfsboot or gptzfsboot) needs to be updated (gpart or other tools). At this time, only lua loader is updated. Sponsored by: Netflix, Klara Inc. Differential Revision: https://reviews.freebsd.org/D25512 Notes: svn path=/head/; revision=365938
* Properly backout r362998Warner Losh2020-07-101-4/+4
| | | | | | | | | | Correct a small mistake in r363060's backaout of r362998 by reverse-applying r362998 by hand to loader.conf. Differential Revision: https://reviews.freebsd.org/D25606 Notes: svn path=/head/; revision=363063
* Revert r362998, r326999 while a better compatibility strategy is devised.Scott Long2020-07-091-1/+1
| | | | Notes: svn path=/head/; revision=363060
* Fix a example/docs typo from r362998, no functional change.Scott Long2020-07-071-1/+1
| | | | Notes: svn path=/head/; revision=362999
* Migrate the feature of excluding RAM pages to use "excludelist"Scott Long2020-07-071-4/+4
| | | | | | | | | as its nomenclature. MFC after: 1 week Notes: svn path=/head/; revision=362998
* loader.conf(5): document that loader_conf_files may be clobberedKyle Evans2020-04-301-1/+5
| | | | | | | | | | | | | | | | | | | | A future change in lualoader may take some liberties with the loader_conf_files in the name of efficiency; namely, it may start omitting it from the loader environment entirely so that it doesn't need to worry about maintaining any specific value. This variable has historically been incredibly volatile anyways, as it may get set to completely different values in any given configuration file to trigger a load of more files. Document now that we may not maintain it in the future, but perhaps we'll reserve the right to change our minds and eventually formally export all of the loader configuration files that were read using this variable. MFC after: 3 days Notes: svn path=/head/; revision=360486
* Preload hostuuid for early-boot useKyle Evans2020-04-161-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | prison0's hostuuid will get set by the hostid rc script, either after generating it and saving it to /etc/hostid or by simply reading /etc/hostid. Some things (e.g. arbitrary MAC address generation) may use the hostuuid as a factor in early boot, so providing a way to read /etc/hostid (if it's available) and using it before userland starts up is desirable. The code is written such that the preload doesn't *have* to be /etc/hostid, thus not assuming that there will be newline at the end of the buffer or even the exact shape of the newline. White trailing whitespace/non-printables trimmed, the result will be validated as a valid uuid before it's used for early boot purposes. The preload can be turned off with hostuuid_load="NO" in /boot/loader.conf, just as other preloads; it's worth noting that this is a 37-byte file, the overhead is believed to be generally minimal. It doesn't seem necessary at this time to be concerned with kern.hostid. One does wonder if we should consider validating hostuuids coming in via jail_set(2); some bits seem to care about uuid form and we bother validating format of smbios-provided uuid and in-fact whatever uuid comes from /etc/hostid. Reviewed by: karels, delphij, jamie MFC after: 1 week (don't preload by default, probably) Differential Revision: https://reviews.freebsd.org/D24288 Notes: svn path=/head/; revision=359999
* Enable lualoader's kernel autodetection, disabled on install mediaKyle Evans2018-10-111-0/+1
| | | | | | | | | | | As documented in loader.conf(5), kernels_autodetect="YES" will cause the Lua scripts to effectively scan /boot for directories with a "kernel" file inside, to be listed in the loader menu. Approved by: re (kib) Notes: svn path=/head/; revision=339308
* Fix a minor typo in loader.conf(5).Glen Barber2018-10-101-1/+1
| | | | | | | | Approved by: re (kib) Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=339292
* lualoader: Create a module blacklist, add DRM modules to itKyle Evans2018-10-072-1/+11
| | | | | | | | | | | | | | | | | | This is a step in the process of easing migration into the new world order of DRM drivers. Strongly encourage users towards loading DRM modules via rc.conf(5) instead of loader.conf(5) by failing the load from loader(8). Users so inclined may wipe out the blacklist via module_blacklist="" in loader.conf(5), and it is expected that these modules will eventually be removed from the blacklist. They may still be loaded as dependencies of other modules or explicitly via the loader prompt, but this should not be a major problem. Approved by: re (rgrimes) Relnotes: yes Differential Revision: https://reviews.freebsd.org/D16914 Notes: svn path=/head/; revision=339218