#
f6166140 |
| 30-Nov-2022 |
Augustin Cavalier <waddlesplash@gmail.com> |
build: Define _BOOT_MODE once and for all in ArchitectureRules+BootRules.
Previously it was spread all around the tree, and was not defined consistently for all boot objects (there were a number of
build: Define _BOOT_MODE once and for all in ArchitectureRules+BootRules.
Previously it was spread all around the tree, and was not defined consistently for all boot objects (there were a number of boot modules which did not define it, but did include headers which checked for it.)
Now, as it is handled in SetupBoot which is invoked for all boot objects, it will be applied consistently throughout. We can thus drop the manual additions of it from all Jamfiles.
show more ...
|
#
46b7da1f |
| 08-May-2022 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
Merge branch 'master' into dev/netservices
Change-Id: I1eb6c2ea2fd0d794ad6378eab8bbb80ce46dfbb8
|
#
367beefa |
| 13-Jan-2022 |
David Karoly <karolyd577@gmail.com> |
boot/x86: move HPET initialization to arch folder
Change-Id: Iac3f4923f132c4c3328fde5af1dad75af5b2efbd Reviewed-on: https://review.haiku-os.org/c/haiku/+/4864 Tested-by: Commit checker robot <no-rep
boot/x86: move HPET initialization to arch folder
Change-Id: Iac3f4923f132c4c3328fde5af1dad75af5b2efbd Reviewed-on: https://review.haiku-os.org/c/haiku/+/4864 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com> Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
show more ...
|
#
2ef7fd71 |
| 30-Dec-2020 |
PulkoMandy <pulkomandy@pulkomandy.tk> |
bootloader elf: fix elf64 loading for non-x86 platforms
Some code was enabled only for EFI, but is in fact correct for all platforms except BIOS. Switch the defines around to have the correct code e
bootloader elf: fix elf64 loading for non-x86 platforms
Some code was enabled only for EFI, but is in fact correct for all platforms except BIOS. Switch the defines around to have the correct code enabled by default.
Change-Id: I58b1d17a78dcf273ceee88318338b4770b500bb3 Reviewed-on: https://review.haiku-os.org/c/haiku/+/3566 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
show more ...
|
#
e39df8a9 |
| 17-Oct-2018 |
Augustin Cavalier <waddlesplash@gmail.com> |
bios_ia32: Remove some extra debug info.
|
#
1f96a3cb |
| 09-Oct-2018 |
Jessica Hamilton <jessica.l.hamilton@gmail.com> |
system/boot: Add support for multiple bootloaders
|
#
f4ff9cb0 |
| 13-Nov-2016 |
Jessica Hamilton <jessica.l.hamilton@gmail.com> |
Merge branch 'uefi-support'
|
#
c0bdc8be |
| 22-Apr-2016 |
Jessica Hamilton <jessica.l.hamilton@gmail.com> |
bootloader: build objects in $(TARGET_BOOT_PLATFORM)
This separates the objects required for the various boot loaders, allowing the build system to be able to build for different targets alongside e
bootloader: build objects in $(TARGET_BOOT_PLATFORM)
This separates the objects required for the various boot loaders, allowing the build system to be able to build for different targets alongside each other. Currently only done for bios_ia32 vs efi, as both loaders will be needed for the x86_64 images.
show more ...
|
#
bd060476 |
| 06-Nov-2013 |
Fredrik Holmqvist <fredrik.holmqvist@gmail.com> |
Setup -fno-pic or -fpic in Architecture Rules.
EFI boot needs -fpic but all boot code was built with -fno-pic. This is now set accordingly in HAIKU_BOOT_CCFLAGS and HAIKU_BOOT_C++FLAGS.
Also setup
Setup -fno-pic or -fpic in Architecture Rules.
EFI boot needs -fpic but all boot code was built with -fno-pic. This is now set accordingly in HAIKU_BOOT_CCFLAGS and HAIKU_BOOT_C++FLAGS.
Also setup compile flags for EFI platform.
show more ...
|
#
f0b0d657 |
| 15-Sep-2014 |
Jessica Hamilton <jessica.l.hamilton@gmail.com> |
Undo accidental file mode changes.
|
#
e5476626 |
| 10-Sep-2014 |
Jessica Hamilton <jessica.l.hamilton@gmail.com> |
stage1/2 loaders: auto-generate binary files. Fixes #10723
|
#
25a7b01d |
| 05-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Merge branch 'master' into package-management
Additional changes: * Add src/system/kernel/lib/zlib, which builds a kernel version of zlib, needed by packagefs. * BuildFeatures: Add a build feature
Merge branch 'master' into package-management
Additional changes: * Add src/system/kernel/lib/zlib, which builds a kernel version of zlib, needed by packagefs. * BuildFeatures: Add a build feature "gcc2" to allow for easier checks. * Referenceable.cpp: Include <OS.h> instead of <debugger.h>. The latter is not needed and prevents building for the build platform. * zlib/zutil.h: Fix gcc 2 build. We really should use the external package instead.
Conflicts: .gitignore build/jam/BuildSetup build/jam/FileRules build/jam/FloppyBootImage build/jam/HaikuImage build/jam/ImageRules build/jam/KernelRules build/jam/NetBootArchive build/jam/OptionalBuildFeatures build/jam/OptionalLibPackages build/jam/OptionalPackageDependencies build/jam/OptionalPackages build/scripts/build_haiku_image configure data/bin/installoptionalpackage data/system/boot/Bootscript headers/os/app/Message.h headers/os/package/PackageInfo.h headers/os/package/PackageInfoAttributes.h headers/os/package/PackageInfoSet.h headers/os/package/PackageRoster.h headers/os/package/PackageVersion.h headers/os/package/hpkg/PackageInfoAttributeValue.h headers/os/storage/FindDirectory.h headers/os/storage/Node.h headers/os/support/StringList.h headers/private/system/directories.h src/add-ons/kernel/drivers/audio/ac97/es1370/Jamfile src/add-ons/kernel/file_systems/packagefs/AttributeIndex.cpp src/add-ons/kernel/file_systems/packagefs/Jamfile src/add-ons/kernel/file_systems/packagefs/Package.cpp src/add-ons/kernel/file_systems/packagefs/Package.h src/add-ons/kernel/file_systems/packagefs/PackageDomain.cpp src/add-ons/kernel/file_systems/packagefs/PackageDomain.h src/add-ons/kernel/file_systems/packagefs/PackageFSRoot.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.h src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.h src/add-ons/kernel/file_systems/packagefs/PackageLinksDirectory.cpp src/add-ons/kernel/file_systems/packagefs/PackageNode.h src/add-ons/kernel/file_systems/packagefs/ResolvableFamily.cpp src/add-ons/kernel/file_systems/packagefs/Version.cpp src/add-ons/kernel/file_systems/packagefs/Version.h src/add-ons/kernel/file_systems/packagefs/Volume.cpp src/add-ons/kernel/file_systems/packagefs/Volume.h src/add-ons/kernel/file_systems/packagefs/kernel_interface.cpp src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c src/apps/deskbar/BarApp.cpp src/apps/deskbar/BarMenuBar.cpp src/apps/deskbar/BarMenuBar.h src/apps/deskbar/BarView.cpp src/apps/deskbar/BarView.h src/apps/deskbar/BarWindow.cpp src/apps/deskbar/BarWindow.h src/apps/deskbar/DeskbarMenu.cpp src/apps/deskbar/DeskbarMenu.h src/apps/deskbar/DeskbarUtils.cpp src/apps/deskbar/DeskbarUtils.h src/apps/deskbar/ExpandoMenuBar.cpp src/apps/deskbar/ExpandoMenuBar.h src/apps/deskbar/TeamMenu.cpp src/apps/processcontroller/ProcessController.cpp src/apps/remotedesktop/RemoteDesktop.cpp src/bin/bash/config-top.h src/bin/finddir.c src/bin/package/Jamfile src/bin/package/command_add.cpp src/bin/package/command_create.cpp src/bin/package/command_list.cpp src/bin/package_repo/command_list.cpp src/bin/pkgman/command_refresh.cpp src/build/libbe/support/Jamfile src/build/libpackage/Jamfile src/build/libroot/Jamfile src/build/libroot/fs.cpp src/build/libroot/remapped_functions.h src/kits/locale/MutableLocaleRoster.cpp src/kits/opengl/GLRendererRoster.cpp src/kits/package/PackageInfo.cpp src/kits/package/PackageInfoSet.cpp src/kits/package/PackageRoster.cpp src/kits/package/PackageVersion.cpp src/kits/package/RepositoryCache.cpp src/kits/package/hpkg/PackageWriterImpl.cpp src/kits/package/hpkg/ReaderImplBase.cpp src/kits/package/hpkg/WriterImplBase.cpp src/kits/print/PrintTransport.cpp src/kits/print/Printer.cpp src/kits/screensaver/ScreenSaverRunner.cpp src/kits/support/StringList.cpp src/kits/tracker/ContainerWindow.cpp src/kits/tracker/DeskWindow.cpp src/kits/tracker/PoseView.cpp src/libs/print/libprint/Transport.cpp src/preferences/printers/AddPrinterDialog.cpp src/preferences/screensaver/ScreenSaverWindow.cpp src/servers/debug/DebugServer.cpp src/servers/input/AddOnManager.cpp src/servers/media_addon/MediaAddonServer.cpp src/system/boot/Jamfile src/system/boot/loader/Jamfile src/system/boot/loader/loader.cpp src/system/boot/loader/vfs.cpp src/system/kernel/fs/vfs.cpp src/system/kernel/fs/vfs_boot.cpp src/system/libroot/os/find_directory.cpp src/system/runtime_loader/runtime_loader.cpp src/tools/package/Jamfile
show more ...
|
#
77d95e1d |
| 18-Nov-2012 |
François Revol <revol@free.fr> |
Merge branch 'master' into sam460ex
Conflicts: src/system/boot/platform/u-boot/arch/ppc/Jamfile
|
#
30afb18c |
| 18-Nov-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Merge branch 'x86_64'
|
#
e5fc2bfc |
| 26-Jun-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mapp
Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
show more ...
|
#
65ad1ba3 |
| 26-May-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Made it possible to build the bootloader when targetting x86_64.
* x86_64 is using the existing *_ia32 boot platforms. * Special flags are required when compiling the loader to get GCC to compile
Made it possible to build the bootloader when targetting x86_64.
* x86_64 is using the existing *_ia32 boot platforms. * Special flags are required when compiling the loader to get GCC to compile 32-bit code. This adds a new set of rules for compiling boot code rather than using the kernel rules, which compile using the necessary flags. * Some x86_64 private headers have been stubbed by #include'ing the x86 versions. These will be replaced later.
show more ...
|
#
2e8aa19c |
| 11-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* The boot loader does now set up an IDT that allows it to catch processor exceptions (page faults and the like). The handler dumps possibly interesting information (registers, a (numerical) stac
* The boot loader does now set up an IDT that allows it to catch processor exceptions (page faults and the like). The handler dumps possibly interesting information (registers, a (numerical) stack trace) to the serial output, and, if possible, also to the screen. That should help debugging boot loader crashes. * For the IDT the boot loader sets up for the kernel the descriptors are set up the same way, so until the kernel initializes the IDT itself (arch_init()) the facility is still in place and can thus catch very early kernel boot crashes. Unfortunately the on-screen output doesn't seem to work anymore at that point, so the output only goes to the serial port... * ... and to the debug syslog -- dprintf() does now append it there after debug_cleanup() has been called. Seems to work fine in qemu, but when I tested it on real hardware the debug syslog was gone.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42092 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
4499da39 |
| 17-Jan-2011 |
Philippe Houdoin <philippe.houdoin@gmail.com> |
Moved generic boot platform code to its own static lib, boot_platform_generic.a. I hope I didn't break anything, as I can and have only test bios_ia32's haiku_loader. Flame me otherwise.
git-svn-i
Moved generic boot platform code to its own static lib, boot_platform_generic.a. I hope I didn't break anything, as I can and have only test bios_ia32's haiku_loader. Flame me otherwise.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40240 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
67938b0d |
| 12-Jan-2011 |
Philippe Houdoin <philippe.houdoin@gmail.com> |
Switched boot splash compression to use boot_zlib (which was already used by tarfs anyway) instead of RLE. While this should allows larger logo/icons, it doesn't remove the current 300000 bytes size
Switched boot splash compression to use boot_zlib (which was already used by tarfs anyway) instead of RLE. While this should allows larger logo/icons, it doesn't remove the current 300000 bytes size limits for haiku_loader, so #6710 is not yet fixed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40215 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
08e6655a |
| 05-Nov-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by kaliber (ticket #6333): Removed many instances of passing an additional -Wall to the compiler, which may actually have unwanted effects. -Wall is standard by the build system. Also, -Wno-mul
Patch by kaliber (ticket #6333): Removed many instances of passing an additional -Wall to the compiler, which may actually have unwanted effects. -Wall is standard by the build system. Also, -Wno-multichar was passed unnecessarily for Haiku targets. I didn't remove it for the bfs_shell, hope this is what Ingo meant in the ticket.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39314 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
b6add3ff |
| 25-Jun-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* Renamed remaining .c files to .cpp, and made the necessary changes to let them compile still. * Some cleanup in ARM's start2.cpp. * m68k stuff is still missing, though.
git-svn-id: file:///srv/
* Renamed remaining .c files to .cpp, and made the necessary changes to let them compile still. * Some cleanup in ARM's start2.cpp. * m68k stuff is still missing, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37249 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
28a2172c |
| 11-Mar-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
kernel: * The kernel syslog ring buffer is no longer emptied by the syslog sender thread. Instead we only drop the oldest data from the buffer when we're writing to it and there's not enough free
kernel: * The kernel syslog ring buffer is no longer emptied by the syslog sender thread. Instead we only drop the oldest data from the buffer when we're writing to it and there's not enough free space in it. Advantages: We drop old data rather than the most recent data when the buffer is full. The "syslog" KDL command has more data available now. So the odds are that kernel syslog messages not written to disk yet are at least still in the kernel buffer. * Changed dprintf_no_syslog() semantics: Now it writes to the syslog, but doesn't notify the syslog sender thread.
boot loader: * Added the ring_buffer implementation and a dummy user_memcpy(). * bios_x86: Moved the syslog stuff from serial.{cpp,h} to debug.{cpp.h}. * Moved the debug options from the "Select safe mode options" menu to a new "Select debug options" menu. * Added option "Enable debug syslog" to the new menu (ATM available on x86 only). It allocates a 1 MB in-memory buffer for the syslog for this session in such a way that it can be accessed by the boot loader after a reset. * Added item "Display syslog from previous session" to the new menu, doing what its name suggests.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35816 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
7db9fbfe |
| 14-Aug-2009 |
François Revol <revol@free.fr> |
Factor out the splash image display logic too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32395 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0573d397 |
| 14-Aug-2009 |
François Revol <revol@free.fr> |
Factor out the RLE and blitting functions from bios_ia32 to platform/generic/ so it can be reused by other platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32383 a95241bf-73f2-0310-85
Factor out the RLE and blitting functions from bios_ia32 to platform/generic/ so it can be reused by other platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32383 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
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
- 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
show more ...
|