Files
banan-os/kernel/kernel/Terminal/TerminalDriver.cpp
Bananymous 554b13ac50 Kernel: Restructure terminal initialization
This is still very ugly and will be rewritten in the future :D
2025-04-18 01:19:59 +03:00

26 lines
580 B
C++

#include <kernel/BootInfo.h>
#include <kernel/Terminal/FramebufferTerminal.h>
namespace Kernel
{
BAN::RefPtr<TerminalDriver> g_terminal_driver;
BAN::ErrorOr<void> TerminalDriver::initialize_from_boot_info()
{
switch (g_boot_info.framebuffer.type)
{
case FramebufferInfo::Type::None:
case FramebufferInfo::Type::Unknown:
return BAN::Error::from_errno(ENODEV);
case FramebufferInfo::Type::RGB:
g_terminal_driver = TRY(FramebufferTerminalDriver::create(
TRY(FramebufferDevice::create_from_boot_framebuffer())
));
break;
}
return {};
}
}