Everywhere: Get rid of the fbdev kernel boot argument remainders

This commit is contained in:
Liav A 2022-08-12 08:37:23 +03:00 committed by Linus Groh
parent a5cef2c41a
commit 6164729d06
Notes: sideshowbarker 2024-07-17 08:36:27 +09:00
14 changed files with 15 additions and 16 deletions

View file

@ -191,7 +191,7 @@ jobs:
working-directory: ${{ github.workspace }}/Build/${{ matrix.arch }}
env:
SERENITY_QEMU_CPU: "max,vmx=off"
SERENITY_KERNEL_CMDLINE: "fbdev=off panic=shutdown system_mode=self-test"
SERENITY_KERNEL_CMDLINE: "graphics_subsystem_mode=off panic=shutdown system_mode=self-test"
SERENITY_RUN: "ci"
run: |
echo "::group::ninja run # Qemu output"

View file

@ -81,7 +81,7 @@ has set up before booting the Kernel, don't initialize any driver.
* **`system_mode`** - This parameter is not interpreted by the Kernel, and is made available at `/proc/system_mode`. SystemServer uses it to select the set of services that should be started. Common values are:
- **`graphical`** (default) - Boots the system in the normal graphical mode.
- **`self-test`** - Boots the system in self-test, validation mode.
- **`text`** - Boots the system in text only mode. (You may need to also set **`fbdev=off`**.)
- **`text`** - Boots the system in text only mode. (You may need to also set **`graphics_subsystem_mode=off`**.)
* **`time`** - This parameter expects one of the following values. **`modern`** - This configures the system to attempt
to use High Precision Event Timer (HPET) on boot. **`legacy`** - Configures the system to use the legacy programmable interrupt

View file

@ -56,7 +56,6 @@ framebuffer with 8x8 font glyphs.
You can force capable multiboot bootloaders to boot Serenity into high resolution mode by editing **Kernel/Arch/i386/Boot/boot.S** and
adding **| MULTIBOOT_VIDEO_MODE** to the end of the **multiboot_flags** before building Serenity.
Setting a boot argument of `fbdev=off` will force the kernel to not initialize any framebuffer devices, hence allowing the system
to boot into console-only mode as `SystemServer` will detect this condition and will not initialize `WindowServer`.
Setting a boot argument of `graphics_subsystem_mode=limited` will force the kernel to not initialize any framebuffer devices, hence allowing the system to boot into console-only mode as `SystemServer` will detect this condition and will not initialize `WindowServer`.
If you do not see any output, it's possible that the Kernel panics before any video is initialized. In that case, you might try debugging the init sequence with the PC speaker to see where it gets stuck.

View file

@ -87,7 +87,7 @@ menuentry 'SerenityOS - netboot diskless text mode' {
set gfxkeep=text
terminal_output console
echo 'Loading prekernel...'
multiboot (tftp)/serenity/prekernel root=/dev/ramdisk0 fbdev=off
multiboot (tftp)/serenity/prekernel root=/dev/ramdisk0 graphics_subsystem_mode=off
echo 'Loading kernel...'
module (tftp)/serenity/kernel
echo 'Loading ramdisk...'
@ -179,7 +179,7 @@ For troubleshooting purposes, you can add the following command line arguments i
- `disable_uhci_controller`
Because iPXE (unlike GRUB) doesn't support VESA VBE modesetting when booting a multiboot kernel,
you might not see any output, so add the `fbdev=off` argument as well to boot into VGA text mode.
you might not see any output, so add the `graphics_subsystem_mode=off` argument as well to boot into VGA text mode.
Afterwards you will need to enable the `console` iPXE command by uncommenting the following line in `src/config/general.h`:
```c

View file

@ -116,6 +116,6 @@ the default value `halt` keeps qemu around, which allows you to inspect the stat
```sh
export SERENITY_RUN=ci
export SERENITY_KERNEL_CMDLINE="fbdev=off system_mode=self-test"
export SERENITY_KERNEL_CMDLINE="graphics_subsystem_mode=off system_mode=self-test"
ninja run
```

View file

@ -49,7 +49,7 @@ UNMAP_AFTER_INIT void CommandLine::initialize()
// I know, we don't do legacy, but even though I eliminated 'boot_mode' from the codebase, there
// is a good chance that someone's still using it. Let's be nice and tell them where to look.
// TODO: Remove this in 2022.
PANIC("'boot_mode' is now split into panic=[halt|shutdown], fbdev=[on|off], and system_mode=[graphical|text|selftest].");
PANIC("'boot_mode' is now split into panic=[halt|shutdown], graphics_subsystem_mode=[on|limited|off], and system_mode=[graphical|text|selftest].");
}
}

View file

@ -90,7 +90,7 @@ jobs:
timeoutInMinutes: 60
env:
SERENITY_QEMU_CPU: 'max,vmx=off'
SERENITY_KERNEL_CMDLINE: 'fbdev=off panic=shutdown system_mode=self-test'
SERENITY_KERNEL_CMDLINE: 'graphics_subsystem_mode=off panic=shutdown system_mode=self-test'
SERENITY_RUN: 'ci'
- script: |

View file

@ -49,7 +49,7 @@ fi
echo "Using 'ninja run' to generate manpages ..."
export SERENITY_RUN="ci"
export SERENITY_KERNEL_CMDLINE="fbdev=off panic=shutdown system_mode=generate-manpages"
export SERENITY_KERNEL_CMDLINE="graphics_subsystem_mode=off panic=shutdown system_mode=generate-manpages"
# The 'sed' gets rid of the clear-screen escape sequence.
ninja -C "$BUILD_DIR" -- run | sed -re 's,''c,,'
echo

View file

@ -13,7 +13,7 @@ LABEL SerenityOS
LABEL SerenityOSText
MENU LABEL SerenityOS (text mode)
KERNEL mboot.c32
APPEND ../Prekernel root=/dev/hda1 fbdev=off --- ../Kernel
APPEND ../Prekernel root=/dev/hda1 graphics_subsystem_mode=off --- ../Kernel
LABEL SerenityOSNoACPI
MENU LABEL SerenityOS (No ACPI)

View file

@ -8,7 +8,7 @@ menuentry 'SerenityOS (normal)' {
menuentry 'SerenityOS (text mode)' {
root=hd0,5
multiboot /boot/Prekernel fbdev=off root=/dev/hda4
multiboot /boot/Prekernel graphics_subsystem_mode=off root=/dev/hda4
module /boot/Kernel
}

View file

@ -8,7 +8,7 @@ menuentry 'SerenityOS (normal)' {
menuentry 'SerenityOS (text mode)' {
root=hd0,2
multiboot /boot/Prekernel fbdev=off root=/dev/hda2
multiboot /boot/Prekernel graphics_subsystem_mode=off root=/dev/hda2
module /boot/Kernel
}

View file

@ -8,7 +8,7 @@ menuentry 'SerenityOS (normal)' {
menuentry 'SerenityOS (text mode)' {
root=hd0,1
multiboot /boot/Prekernel fbdev=off root=/dev/hda1
multiboot /boot/Prekernel graphics_subsystem_mode=off root=/dev/hda1
module /boot/Kernel
}

View file

@ -8,7 +8,7 @@ MODULE_PATH=boot://2/boot/Kernel
:SerenityOS (text mode)
PROTOCOL=multiboot1
CMDLINE=fbdev=off root=/dev/hda2
CMDLINE=graphics_subsystem_mode=off root=/dev/hda2
KERNEL_PATH=boot://2/boot/Prekernel
MODULE_PATH=boot://2/boot/Kernel

View file

@ -433,7 +433,7 @@ if [[ "$CMD" =~ ^(build|install|image|copy-src|run|gdb|test|rebuild|recreate|kad
build_image
# In contrast to CI, we don't set 'panic=shutdown' here,
# in case the user wants to inspect qemu some more.
export SERENITY_KERNEL_CMDLINE="fbdev=off system_mode=self-test"
export SERENITY_KERNEL_CMDLINE="graphics_subsystem_mode=off system_mode=self-test"
export SERENITY_RUN="ci"
build_target run
fi