Kernel: Expose boot framebuffer device
This commit is contained in:
parent
37aef630d2
commit
f519cb2cc0
|
|
@ -10,6 +10,7 @@ namespace Kernel
|
|||
{
|
||||
public:
|
||||
static BAN::ErrorOr<BAN::RefPtr<FramebufferDevice>> create_from_boot_framebuffer();
|
||||
static BAN::RefPtr<FramebufferDevice> boot_framebuffer();
|
||||
~FramebufferDevice();
|
||||
|
||||
uint32_t width() const { return m_width; }
|
||||
|
|
|
|||
|
|
@ -12,12 +12,19 @@
|
|||
namespace Kernel
|
||||
{
|
||||
|
||||
static BAN::RefPtr<FramebufferDevice> s_boot_framebuffer;
|
||||
|
||||
static uint32_t get_framebuffer_device_index()
|
||||
{
|
||||
static uint32_t index = 0;
|
||||
return index++;
|
||||
}
|
||||
|
||||
BAN::RefPtr<FramebufferDevice> FramebufferDevice::boot_framebuffer()
|
||||
{
|
||||
return s_boot_framebuffer;
|
||||
}
|
||||
|
||||
BAN::ErrorOr<BAN::RefPtr<FramebufferDevice>> FramebufferDevice::create_from_boot_framebuffer()
|
||||
{
|
||||
ASSERT(g_boot_info.framebuffer.type == FramebufferInfo::Type::RGB);
|
||||
|
|
@ -37,6 +44,7 @@ namespace Kernel
|
|||
auto device = BAN::RefPtr<FramebufferDevice>::adopt(device_ptr);
|
||||
TRY(device->initialize());
|
||||
DevFileSystem::get().add_device(device);
|
||||
s_boot_framebuffer = device;
|
||||
return device;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue