feat: Add a DRM/KMS backend

This adds a DRM/KMS based backend to the system, as per #42. This system finds a CRTC and a connector, then uses that to create a frame buffer and a DUMB buffer that it can render to.

There's much more to do, and is left as an exercise for anyone with a significant DRM-based use case to pick up and fix.

Signed-off-by: John Nunley <dev@notgull.net>
This commit is contained in:
John Nunley 2023-08-12 13:39:13 -07:00 committed by GitHub
parent 2689cec2ca
commit ac0b7f5e14
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 665 additions and 3 deletions

View file

@ -1,6 +1,7 @@
fn main() {
cfg_aliases::cfg_aliases! {
free_unix: { all(unix, not(any(target_vendor = "apple", target_os = "android", target_os = "redox"))) },
kms_platform: { all(feature = "kms", free_unix, not(target_arch = "wasm32")) },
x11_platform: { all(feature = "x11", free_unix, not(target_arch = "wasm32")) },
wayland_platform: { all(feature = "wayland", free_unix, not(target_arch = "wasm32")) },
}