summaryrefslogtreecommitdiff
path: root/Kernel/Graphics/VirtIOGPU/GraphicsAdapter.h
AgeCommit message (Collapse)Author
2021-12-28Kernel: Remove the kmalloc_eternal heap :^)Andreas Kling
This was a premature optimization from the early days of SerenityOS. The eternal heap was a simple bump pointer allocator over a static byte array. My original idea was to avoid heap fragmentation and improve data locality, but both ideas were rooted in cargo culting, not data. We would reserve 4 MiB at boot and only ended up using ~256 KiB, wasting the rest. This patch replaces all kmalloc_eternal() usage by regular kmalloc().
2021-10-27Kernel/Graphics: Rename GraphicsDevice => GenericGraphicsAdapterLiav A
We already use the term adapter for instances of this class, so let's better represent this class by changing its name to what it really is.
2021-10-27Kernel/Graphics: Re-order parameters in VirtIO GraphicsAdapter methodsLiav A
As suggested by @ccapitalK, it makes the interface more neat and clean. The proper order is to get ScanoutID first, then ResourceID and after it everything else that is needed to complete the operation successfully.
2021-10-27Kernel/Graphics: Merge VirtIO GraphicsAdapter and VirtIO GPU codeLiav A
A VirtIO graphics adapter is really the VirtIO GPU, so the virtualized hardware has no distinction between both components so there's no need to put such distinction in software. We might need to split things in the future, but when we do so, we must take proper care to ensure that the interface between the components is correct and use the usual codebase patterns.
2021-10-27Kernel/Graphics: Convert type method => bool vga compatible methodLiav A
We never used that type method except in initialization in GraphicsManagement, and we used it there to query whether the device is VGA compatible or not.
2021-10-27Kernel/Graphics: Rename VirtIO FrameBufferDevice => FramebufferDeviceLiav A
2021-09-29Kernel/PCI: Propagate usage of DeviceIdentifier everywhereLiav A
This allows us to remove a bunch of PCI API functions, and instead to leverage the cached data from DeviceIdentifier object in many places.
2021-08-23Kernel: Rename PCI::DeviceController => PCI::DeviceLiav A
Now that the old PCI::Device was removed, we can complete the PCI changes by making the PCI::DeviceController to be named PCI::Device. Really the entire purpose and the distinction between the two was about interrupts, but since this is no longer a problem, just rename it to simplify things further.
2021-07-18Kernel: Rename VirtIOGPU/VirtIOGPU.cpp to VirtIOGPU/GPU.cppSahan Fernando
2021-07-18Kernel: Put VirtIOGPU related types into a namespaceSahan Fernando