Tux Machines
Posted by Roy Schestowitz on May 10, 2023
=> Top 5 Best Linux Distributions for Laptops [2023 Edition] | Haiku Makes Huge Progress on RISC-V Support and 432-Core Chiplet-Based RISC-V Chip
=> ↺ Maira Canal: Rotating Planes on VKMS
In my last blog post, I described a bit of my previous work on the rustgem project, and after that, as I had finished the VGEM features, I sent a RFC to the mailing list. Although I still need to work on some rustgem feedback, I started to explore more of the KMS (Kernel Mode Setting) and its properties.
=> ↺ RFC
I talked to my mentor Melissa Wen, one of the VKMS maintainers, and she proposed implementing plane rotation capabilities to VKMS. The VKMS (Virtual Kernel Mode Setting) is a software-only KMS driver that is quite useful for testing and running X (or similar compositors) on headless machines. It sounded like a great idea, as I would like to explore a bit more of the KMS side of things.
In order to have an image on a display, we need to go through the whole Kernel Mode Setting (KMS) Display Pipeline. The pipeline has a couple of different objects, such as framebuffers, planes, and CRTCs, and the relationship between them can be quite complicated. If you are interested in the KMS Display Pipeline, I recommend reading the great KMS documentation. But here we are focused in only one of those abstractions, the plane.
=> ↺ RFC | ↺ Melissa Wen | ↺ KMS documentation
=> ↺ Peter Hutterer: libei and a fancy protocol
libei is the library for Emulated Input - see this post for an introduction. Like many projects, libei was started when it was still unclear if it could be the right solution to the problem. In the years (!) since, we've upgraded the answer to that question from "hopefully" to "yeah, I reckon" - doubly so since we added support for receiver contexts and got InputLeap working through the various portal changes.
=> ↺ libei | ↺ this post | ↺ receiver contexts | ↺ InputLeap | ↺ portal changes
=> ↺ libei | ↺ this post | ↺ receiver contexts | ↺ InputLeap | ↺ portal changes
=> gemini.tuxmachines.org This content has been proxied by September (3851b).Proxy Information
text/gemini;lang=en-GB