History log of /haiku/src/system/boot/loader/load_driver_settings.cpp
Revision Date Author Comments
# a207d7b3 16-Mar-2020 PulkoMandy <pulkomandy@pulkomandy.tk>

bootloader: reduce verbosity

- Disable tracing where it's not needed by default
- Convert some drpintf to TRACE statements
- Comment some dprintf out completely in files that don't have a TRACE
macro.

Change-Id: I1f6062bce74bcf1dbf77bf7bccadeeb12a4df46c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2370
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 7c6caa89 25-Feb-2017 Lioncash <mathew1800@gmail.com>

load_driver_settings: Add missing kernel_args_free() call to load_driver_settings_file()

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>


# 211483cb 14-Apr-2016 Fredrik Holmqvist <fredrik.holmqvist@gmail.com>

EFI: Initial test EFI application

* Only set HAIKU_BOOT_PLATFORM to bios_ia32 if not defined
* Add gnuefi build feature
* Introduce BOOT_LDFLAGS, and move options for passing to linker
into ArchitectureSetup
* x86_64 compile fixes for warnings in boot loader
* loader/elf.cpp: don't include ELF32 support when targeting EFI
* relocation_func.cpp: copy of the relocation code from gnuefi
to make _relocate extern "C", and avoid including <efilib.h>
* boot_loader_efi.ld: copy of gnuefi's elf_x86_64_efi.lds,
modified to include support for C++ constructors, etc. Keep in
sync with the gnuefi package

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# fc7801bc 10-Dec-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

boot loader: apply_boot_settings(): Replace string literal


# f2620e47 20-Nov-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

boot loader: add_safe_mode_settings(): Make parameter const


# cf7f92c0 15-Oct-2013 François Revol <revol@free.fr>

bootloader: Use stage2_args:arguments_count

The code probably doesn't work correctly yet though,
I believe only the last line will be taken into account.


# 3e9f742d 02-Jan-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Check fstat() return value (CID 2514).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40072 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be4b43e0 02-Jan-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

At least theoretically kernelSettings and safemodeSettings can be NULL
(CID 4230).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40069 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7b1d69ec 23-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Added safe mode option B_SAFEMODE_4_GB_MEMORY_LIMIT (plus a boot loader menu
item) and kernel settings option "4gb_memory_limit". Enabling either one
causes the memory beyond 4 GB to be ignored.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37225 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 89294b50 26-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Added option for enabling serial debug output.
* Moved device_manager/settings.cpp to debug/safemode_settings.cpp.
* Removed the somewhat hacky concatenation of kernel settings and safemode
settings in the boot loader. Instead, get_safemode_option() will now fall
back to the kernel settings, if it couldn't spot a setting in the safemode
settings. This allows for more control, and also makes enabling serial
debug output actually work (ie. overriding the kernel settings via safemode
options).
* Adjusted debug_init_post_vm(), and smp_init_other_cpus() to use
get_safemode_boolean().
* Therefore, I added safemode_settings.cpp to the boot loader as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32685 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f8ebd1a3 26-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32683 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 56c6c0fe 03-Aug-2009 François Revol <revol@free.fr>

- introduced an "argumetns" field in stage2_args to hold command line args from chaining loader,
- added some multiboot support code:
- dump some of the passed info,
- parse command line (skip the 'kernel' name and pass the rest to stage2_args.arguments),
- added an add_stage2_driver_settings() function which takes stage2_args.arguments and translates it into safe mode driver settings, a bit dumb for now.
This allows using qemu -kernel haiku_loader -append 'debug_screen true' and get debug output without having to enter the menu (once multiboot info is used to determine the boot device too).
The idea is to allow passing driver settings and using them to pass extra stuff (like 'force_keymap fr' and other stuff for demo), and to help automate tests ('run_test /bin/sometest').
This should answer Axel's question :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32076 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ee8d2275 16-Aug-2008 Michael Lotz <mmlr@mlotz.ch>

* Update the size of the safemode settings "file" when concatenating it with
the kernel settings. Settings that were checked in the kernel (like on-screen
debug output) didn't work anymore, because when handing the settings over to
the kernel it would have copied only the old size part of the safemode file.
* Add a newline when the kernel and safemode settings are combined. Otherwise
the first safemode and last kernel setting would get lost if the kernel
settings file didn't end with a newline.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26992 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fb6d7823 11-Aug-2008 Rene Gollent <anevilyak@gmail.com>

Fix some style issues pointed out by Axel.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26940 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3734bee7 11-Aug-2008 Rene Gollent <anevilyak@gmail.com>

When the boot loader goes to load its settings files, it will now also prepend the "kernel" settings file to the safe mode settings if it exists. This allows settings from kernel/drivers/kernel to be respected early in the boot process as well, which allows us to do things like disable_smp permanently instead of having to pick from the safe mode menu every single boot. Review welcome.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26937 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4dac6ac8 06-Jul-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Allow building the BootLoaderTest (and zlib) for BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21581 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5af32e75 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/kernel to src/system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fc7801bc6fb1df1acb384f1bf15cdc1638037e73 10-Dec-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

boot loader: apply_boot_settings(): Replace string literal


# f2620e47140215edf4100aeab02e99688744cf26 20-Nov-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

boot loader: add_safe_mode_settings(): Make parameter const


# cf7f92c013715e81a44cf9756df6c87968334dda 15-Oct-2013 François Revol <revol@free.fr>

bootloader: Use stage2_args:arguments_count

The code probably doesn't work correctly yet though,
I believe only the last line will be taken into account.


# 3e9f742d2373d00aa4f131e1c90cf3cac42902aa 02-Jan-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Check fstat() return value (CID 2514).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40072 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be4b43e03fb2547777ba1aac9a6000a864080d25 02-Jan-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

At least theoretically kernelSettings and safemodeSettings can be NULL
(CID 4230).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40069 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7b1d69ecbb66d555b074b028e26380e92c198673 23-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Added safe mode option B_SAFEMODE_4_GB_MEMORY_LIMIT (plus a boot loader menu
item) and kernel settings option "4gb_memory_limit". Enabling either one
causes the memory beyond 4 GB to be ignored.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37225 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 89294b508428bd4575a67bd179bceabce7619c08 26-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Added option for enabling serial debug output.
* Moved device_manager/settings.cpp to debug/safemode_settings.cpp.
* Removed the somewhat hacky concatenation of kernel settings and safemode
settings in the boot loader. Instead, get_safemode_option() will now fall
back to the kernel settings, if it couldn't spot a setting in the safemode
settings. This allows for more control, and also makes enabling serial
debug output actually work (ie. overriding the kernel settings via safemode
options).
* Adjusted debug_init_post_vm(), and smp_init_other_cpus() to use
get_safemode_boolean().
* Therefore, I added safemode_settings.cpp to the boot loader as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32685 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f8ebd1a328dd6e9170a8af55c24437c2ad6d235b 26-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32683 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 56c6c0fefbb82f729ae4dfd3ed04adfc236390cd 03-Aug-2009 François Revol <revol@free.fr>

- introduced an "argumetns" field in stage2_args to hold command line args from chaining loader,
- added some multiboot support code:
- dump some of the passed info,
- parse command line (skip the 'kernel' name and pass the rest to stage2_args.arguments),
- added an add_stage2_driver_settings() function which takes stage2_args.arguments and translates it into safe mode driver settings, a bit dumb for now.
This allows using qemu -kernel haiku_loader -append 'debug_screen true' and get debug output without having to enter the menu (once multiboot info is used to determine the boot device too).
The idea is to allow passing driver settings and using them to pass extra stuff (like 'force_keymap fr' and other stuff for demo), and to help automate tests ('run_test /bin/sometest').
This should answer Axel's question :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32076 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ee8d22758828357953a48d357f01f9094fa16711 16-Aug-2008 Michael Lotz <mmlr@mlotz.ch>

* Update the size of the safemode settings "file" when concatenating it with
the kernel settings. Settings that were checked in the kernel (like on-screen
debug output) didn't work anymore, because when handing the settings over to
the kernel it would have copied only the old size part of the safemode file.
* Add a newline when the kernel and safemode settings are combined. Otherwise
the first safemode and last kernel setting would get lost if the kernel
settings file didn't end with a newline.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26992 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fb6d7823207b3dfb166dbb09aca51e0801808f60 11-Aug-2008 Rene Gollent <anevilyak@gmail.com>

Fix some style issues pointed out by Axel.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26940 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3734bee77d956e4198888b9ea6d454ca993bca77 11-Aug-2008 Rene Gollent <anevilyak@gmail.com>

When the boot loader goes to load its settings files, it will now also prepend the "kernel" settings file to the safe mode settings if it exists. This allows settings from kernel/drivers/kernel to be respected early in the boot process as well, which allows us to do things like disable_smp permanently instead of having to pick from the safe mode menu every single boot. Review welcome.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26937 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4dac6ac8de3c1fbfc55850c51d23c4466b76ea6c 06-Jul-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Allow building the BootLoaderTest (and zlib) for BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21581 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5af32e752606778be5dd7379f319fe43cb3f6b8c 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/kernel to src/system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12359 a95241bf-73f2-0310-859d-f6bbb57e9c96