Commit Graph

197 Commits

Author SHA1 Message Date
romanstingler 9a3161ad4c
drm: fix typo in schedule (#62)
Co-authored-by: Roman Stingler <roman.stingler@waterdrop.com>
2024-08-21 21:59:51 +01:00
Tom Englund a17f9218d9
drm: add missing destructor (#63)
add missing default constructor to base class IDRMImplentation
2024-08-21 21:59:19 +01:00
Colt-M16A1 41d842669b
drm: request page flip events after commit (#60)
Apparently fixes stuff.
2024-08-21 20:36:34 +01:00
Vaxry 1c3256287c drm: verify output format in commit 2024-08-21 12:17:50 +02:00
Vaxry 2cd1f78241 GBM: fixup good() return value 2024-08-21 12:17:34 +02:00
Tom Englund b02d4f4d72
output: avoid crashing on no crtc (#58)
dual gpus can init with no crtc and later rescan for them, however
getRenderFormats might be called before that happends and null ptr
deref, guard against it.
2024-08-20 20:10:13 +01:00
Vaxry b474796cdb drm: reconfigure swapchain props after creating 2024-08-20 20:58:07 +02:00
Vaxry 1e43d9a719 gbm: improve trace logging around allocs 2024-08-20 19:09:03 +02:00
Vaxry 8079098326 drm: fix crash on null crtc setCursor
ref #54
2024-08-20 18:44:18 +02:00
Vaxry 00d51a053c props: bump version to 0.3.3 2024-08-19 20:21:51 +02:00
Vaxry 696a5ad4ec gbm: guard for drm renderer being present before clearing
ref #56
2024-08-19 18:26:38 +02:00
Florian Klink 71da3e00a0
CMakeLists: wayland.xml is in wayland-scanner pkgdatadir (#55)
See 6c4a695045/meson.build (L129-136)
2024-08-19 14:02:14 +01:00
Vaxry 7f8df01d42 props: bump version to 0.3.2 2024-08-18 20:36:13 +02:00
Vaxry 2bff4a4521
drm: don't schedule new frame events on disabled outputs (#52)
* drm: don't schedule new frame events on disabled outputs

* e

* test
2024-08-18 19:24:52 +01:00
Vaxry 2d29c86d69 drm: use modelines in vt restore 2024-08-18 20:15:46 +02:00
Vaxry 71d49670fe
drm: clear buffer on creation for scanout DRM buffers (#51) 2024-08-17 19:42:51 +01:00
Vaxry cd152140fd drm: don't report pointer capability when no HW cursor plane is present
ref https://github.com/hyprwm/Hyprland/issues/7364
2024-08-17 19:18:46 +02:00
Tom Englund 05f4efca81
buffer: align size to stride (#50)
calculate the size to the stride we get from gb_bo_map to better align
it.
2024-08-17 17:47:57 +01:00
Vaxry 4f6642808b drm: avoid crashes on connecting a null crtc 2024-08-16 09:06:27 +02:00
Vaxry e947af7894 drm/atomic: clip damage to pixel size
ref https://github.com/hyprwm/Hyprland/issues/7356
2024-08-15 22:34:45 +02:00
Vaxry 589346162f DRM: Allow checking no-crtc connectors (#49) 2024-08-15 18:01:37 +02:00
Vaxry 9312aa2827 docs: document AQ_DRM_DEVICES
fixes #47
2024-08-11 21:43:58 +02:00
Ziyao 9b33a38f86
cmake: link libOpenGL instead of legacy libGL (#44)
From cmake documentation, Linux-specific chapter:

  Projects may use the ``OpenGL::GL`` target (or ``OPENGL_LIBRARIES``
  variable) to use legacy GL interfaces.  These will use the legacy GL
  library located by ``OPENGL_gl_LIBRARY``, if available.  If
  ``OPENGL_gl_LIBRARY`` is empty or not found and GLVND is available,
  the ``OpenGL::GL`` target will use GLVND ``OpenGL::OpenGL`` and
  ``OpenGL::GLX`` (and the ``OPENGL_LIBRARIES`` variable will use the
  corresponding libraries).  Thus, for non-EGL-based Linux targets, the
  ``OpenGL::GL`` target is most portable.

which means linking with OpenGL::GL makes cmake find legacy libGL.so or
GLX libraries, and as for now, the former contains GLX symbols and cannot
be built without X libraries. Since we are working with EGL, it wouldn't
provide extra portability, either.

This patch switches to link aquamarine with modern OpenGL::OpenGL, which
contains core OpenGL API only, makes it possible to build on a
wayland-only system. Tested on eweOS, which is a distro without X
libraries.

Link: https://os.ewe.moe/

Signed-off-by: Yao Zi <ziyao@disroot.org>
2024-08-10 17:22:37 +01:00
Vaxry 295d37df17 props: bump version to 0.3.1 2024-08-09 20:32:21 +02:00
Vaxry daf96f0da7 drm: fixup modeline calculations 2024-08-09 19:20:25 +02:00
Vaxry c94060b22c drm: log calculated modeline for custom modes 2024-08-09 19:06:34 +02:00
Vaxry 1a7ca38fa3 drm: fix custom mode check 2024-08-09 18:02:03 +02:00
Jan Beich 131ed05f99
drm: add missing include to fix BSD (#42)
src/backend/drm/Renderer.cpp:504:13: error: use of undeclared identifier 'close'
  504 |             close(dupFd);
      |             ^
src/backend/drm/Renderer.cpp:532:13: error: use of undeclared identifier 'close'
  532 |             close(egl.lastBlitSyncFD);
      |             ^
2024-08-06 22:06:30 +02:00
Vaxry 940980244e version: bump to 0.3.0 2024-08-06 16:29:49 +02:00
Vaxry 21f9c44789 drm: don't use explicit in blit without explicit requested from user 2024-08-06 13:19:53 +02:00
Vaxry 8a8afd3896 drm: add AQ_MGPU_NO_EXPLICIT 2024-08-05 16:42:03 +02:00
Vaxry 6f5adc0568 drm: s
upport explicit sync with multi-gpu destinations

will break o
n mgpu nvidia before 560 driver
2024-08-05 00:27:09 +02:00
Vaxry a70fc6a2fd drm: avoid testing with a pf event 2024-08-03 19:10:09 +02:00
Vaxry 18c6a8ccaf drm: immediately send presentation events for tearing 2024-08-03 18:23:24 +02:00
toamz 339337cc7b
libinput: Update switch state in libinput event (#38) 2024-08-03 12:57:30 +01:00
Vaxry 7c3565f9be drm: don't rollback cursors on test 2024-07-30 15:55:39 +02:00
Vaxry 9ccb4411ee utils: fix missing include 2024-07-29 22:04:50 +02:00
Vaxry 544395c1b0 version/cmake: bump version to 0.2.0 2024-07-29 20:37:28 +02:00
Mihai Fufezan 4918e57979
Nix: fix cross-compilation 2024-07-27 20:21:53 +03:00
Samuel Cobb f95d150937
drm: Follow symlinks for AQ_DRM_DEVICES (#34) 2024-07-26 12:17:06 +01:00
Ikalco 0ab8ffa67d
output: fix destroying wl and headless outputs (#32) 2024-07-25 22:14:05 +01:00
moetayuko a7d77c60ee
gbm: manually set modifier for implicit bo allocation (#30)
Ported from wlroots

Fixes https://github.com/hyprwm/Hyprland/issues/7001
2024-07-25 21:41:46 +01:00
UjinT34 0720a5cbae gbm: Fix cursor bo for nvidia (#29) 2024-07-25 00:18:17 +02:00
Vaxry 353dc1b729 drm: conform to both renderable and scanoutable formats in scanout buffers
fixes #28
2024-07-24 22:41:58 +02:00
Vaxry 744a383a52 gbm: log scanout flag state in trace 2024-07-24 21:59:40 +02:00
Khiet Tam Nguyen e569340c6b
drm: ignore primary argument when using evdi drivers (#25)
* fix: ignore primary if using evdi drivers for displaylink

* style: removed curly braces from evdi if-check
2024-07-24 20:14:29 +02:00
Vaxry 4a1424e85b gbm: use flags in create_with_modifiers
amdeeznuts
2024-07-24 20:11:55 +02:00
Vaxry 07eb70afb1
gbm: Nvidia fixes for scanout gbm allocation (#27)
* nv fixes

* fix
2024-07-24 18:41:13 +02:00
Vaxry 4c72cd4d0b session/input: add missing pos to touch down events 2024-07-23 19:18:57 +02:00
Vaxry 601f6cf95c wayland: drop required zwp_linux_dmabuf_v1 version to 4
compatibility reasons, we don't really need 5
2024-07-21 16:22:23 +02:00