diff options
author | Sahan Fernando <sahan.h.fernando@gmail.com> | 2021-06-12 22:30:05 +1000 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-06-25 19:26:30 +0200 |
commit | 34e9fa4d3be0284ac120e885ab920bb6024e4f04 (patch) | |
tree | 93f68ce4b61cb50f7440d4558b969d8f23341b2a /Kernel/Graphics/IntelNativeGraphicsAdapter.cpp | |
parent | cf1c8eb77862b9ef489619c73d16ace92b0aedf9 (diff) | |
download | serenity-34e9fa4d3be0284ac120e885ab920bb6024e4f04.zip |
Kernel: Abstract FramebufferConsole away from contiguous physical range
Currently, Kernel::Graphics::FramebufferConsole is written assuming that
the underlying framebuffer memory exists in physically contiguous
memory. There are a bunch of framebuffer devices that would need to use
the components of FramebufferConsole (in particular access to the kernel
bitmap font rendering logic). To reduce code duplication, framebuffer
console has been split into two parts, the abstract
GenericFramebufferConsole class which does the rendering, and the
ContiguousFramebufferConsole class which contains all logic related to
managing the underling vm object.
Also, a new flush method has been added to the class, to support devices
that require an extra flush step to render.
Diffstat (limited to 'Kernel/Graphics/IntelNativeGraphicsAdapter.cpp')
-rw-r--r-- | Kernel/Graphics/IntelNativeGraphicsAdapter.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp b/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp index 89d1e0278a..a84f67921b 100644 --- a/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp +++ b/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp @@ -4,7 +4,7 @@ * SPDX-License-Identifier: BSD-2-Clause */ -#include <Kernel/Graphics/Console/FramebufferConsole.h> +#include <Kernel/Graphics/Console/ContiguousFramebufferConsole.h> #include <Kernel/Graphics/Definitions.h> #include <Kernel/Graphics/GraphicsManagement.h> #include <Kernel/Graphics/IntelNativeGraphicsAdapter.h> @@ -206,7 +206,7 @@ IntelNativeGraphicsAdapter::IntelNativeGraphicsAdapter(PCI::Address address) VERIFY(m_framebuffer_pitch != 0); VERIFY(m_framebuffer_height != 0); VERIFY(m_framebuffer_width != 0); - m_framebuffer_console = Graphics::FramebufferConsole::initialize(framebuffer_address, m_framebuffer_width, m_framebuffer_height, m_framebuffer_pitch); + m_framebuffer_console = Graphics::ContiguousFramebufferConsole::initialize(framebuffer_address, m_framebuffer_width, m_framebuffer_height, m_framebuffer_pitch); // FIXME: This is a very wrong way to do this... GraphicsManagement::the().m_console = m_framebuffer_console; } |