896 Commits (324e894bf0d0e54e2dda0a84980a11acd224d2bb)

Author SHA1 Message Date
Simon Ser 5088e25eaf backend/drm: don't set NONBLOCK with TEST_ONLY
4 years ago
Simon Ser 6bfbf35618 backend/drm: reject DMA-BUFs with flags
4 years ago
Simon Ser 1ec97bdf4f backend/drm: improve logs in drm_fb_create
4 years ago
Simon Ser 511e42be5e backend/drm: try to import buffer when testing it
4 years ago
Simon Ser 7709a965e5 backend/drm: use format table in test_buffer
4 years ago
Simon Zeni c8b3536b01 backend/drm: use pixel format table in renderer
4 years ago
Simon Ser c740fccc9d Fix buffer blit matrices
4 years ago
Simon Ser 44fa2c4b49 output: fix transform matrix for 90/270 rotations
4 years ago
Simon Zeni 9601a2abf0 output: improve transform matrix calculation
4 years ago
Simon Ser a02da8e6f6 backend/drm: add new writeback and SPI connector types
4 years ago
Simon Ser f3758d1d0a backend: add error messages in attach_render impls
4 years ago
Manuel Stoeckl a290d7a78d Make implementation function lists static const
4 years ago
Simon Ser 73ffab70b0 backend/drm: don't blit in drm_fb_import
4 years ago
Simon Ser 4af85f4c19 backend/drm: simplify drm_fb_lock_surface
4 years ago
Simon Ser 04d89a8bc5
backend/drm: fix modifiers for cursor plane buffers
4 years ago
Simon Ser f17b0f975d backend/drm: add wlr_drm_connector_get_id
4 years ago
Simon Ser cb6f584496 backend/drm: add support for the subconnector property
4 years ago
Simon Ser 9e98f497af backend/drm: use local DRM FD for wlr_rend
4 years ago
Simon Ser afdf4dc890 render/gles2: make EGL context current in bind_buffer
4 years ago
Simon Zeni 08a4c62aac render: remove egl include from wlr_renderer
4 years ago
Simon Zeni e128e6c08d render: drop egl parameters from wlr_renderer_autocreate
4 years ago
Simon Ser b7c95d483a backend/drm: implement get_drm_fd
4 years ago
Simon Ser a6a0568316
backend: remove unnecessary GLES2 includes
4 years ago
Simon Ser dc61f471da
backend/drm: remove unnecessary wlr_drm_fb.wlr_buf check
4 years ago
Simon Ser 5d054258af
backend/drm: fix segfault in page_flip_handler
4 years ago
Simon Ser 3f7e0cf5f0 render/egl: remove surface and buffer age args from make_current
4 years ago
Simon Ser c94728b53a
backend/drm: stop using surface size for BO
4 years ago
Simon Ser d9bbc416a6 backend/drm: re-use FBs
4 years ago
Simon Ser 91cb0fc443 backend/drm: only keep track of local buffer
4 years ago
Simon Ser 5bd86b94f9 backend/drm: add wlr_drm_buf.local_wlr_buf
4 years ago
Simon Ser cd64610c66 backend/drm: introduce drm_fb_create
4 years ago
Simon Ser 5b1b43c68c backend/drm: make wlr_drm_plane.{pending,queued,current}_fb pointers
4 years ago
Simon Zeni 9192c0480a remove unnecessary egl includes
4 years ago
Simon Zeni b899a412e3 backend: remove wlr_egl from all backends
4 years ago
Simon Ser 5773794baf
backend/drm: don't log errno on plane_get_next_fb failure
4 years ago
Simon Ser 07d75c99db render: remove EGL config and visual from wlr_renderer_autocreate
4 years ago
Simon Ser adfb7cd35a backend/drm: stash pending page-flip CRTC
4 years ago
Simon Ser 576ff57db0 backend/drm: ignore hotplug events while inactive
4 years ago
Simon Ser 4b03bdc3ab Remove wlr_create_renderer_func_t
4 years ago
Simon Ser bec1e6b149 backend/drm: remove special linear case for cursor plane
4 years ago
Simon Ser 92a0fc0435 backend/drm: extract linear format creation into function
4 years ago
Simon Ser 7ea0e9f277 backend/drm: force LINEAR for cursor plane formats
4 years ago
Ariadne Conill 23b6f3e3f5 drm: add fallback drmModeAddFB for drivers which do not support drmModeAddFB2
4 years ago
Simon Ser c5f239f411
backend/drm: make listener names more idiomatic
4 years ago
Simon Ser b9460ab724
Stop using wlr_texture_get_size
4 years ago
Simon Ser 17dd4c9e9a
backend/drm: use connector log helpers in atomic backend
4 years ago
Simon Ser a7a230ebef
backend/drm: make drmModePlane arg in add_plane const
4 years ago
Simon Ser c011a0e2ed
backend/drm: add special case for cursor in add_plane
4 years ago
Simon Ser 5548406667
backend/drm: log whether ADDFB2 modifiers are supported
4 years ago
Simon Ser 64a2ca4dba
backend/drm: don't retry page-flip when modifiers are unsupported
4 years ago
Simon Ser 54ec17ff64
backend/drm: use plural form for possible_crtcs
4 years ago
Simon Ser 2de400a541
backend/drm: assert connector state after wlr_output_destroy
4 years ago
Simon Ser 85cf4b235d
backend/drm: destroy DRM connectors that disappear
4 years ago
Simon Ser ad4dae0844 backend/drm: error on size mismatch in drm_surface_blit
4 years ago
Simon Ser d3bcd63a40 backend/drm: remove drm_fb_acquire
4 years ago
Simon Ser 5ee8b12dc3 backend/drm: make drm_fb_acquire return a FB ID
4 years ago
Simon Ser d09abe86c1 backend/drm: drop export_drm_bo
4 years ago
Simon Ser dabd2e7207 backend/drm: grab DMA-BUF from wlr_buffer instead of gbm_bo
4 years ago
Simon Ser 83925f04c3 backend/drm: don't save texture in gbm_bo user data
4 years ago
Ronan Pigott 917ecca58e backend/drm: avoid gcc stringop-truncation warning
4 years ago
Simon Ser 352fdd1bb0
backend/drm: remove unused wlr_drm_plane.drm_format
4 years ago
Simon Ser 248c7787c7 backend/drm: refactor wlr_output destruction
4 years ago
Simon Ser 019ffe8a5b backend/drm: introduce wlr_drm_connector.name
4 years ago
Simon Ser c89b131f29 backend/drm: introduce wlr_drm_conn_log
4 years ago
Simon Ser 1e2c7fce86 backend/drm: use wlr_drm_format_{create,add}
4 years ago
Simon Ser 253f447329
backend/drm: print DRM device name when scanning connectors
4 years ago
Simon Ser 9cd3f03f65
backend/drm: add wlr_drm_backend.name
4 years ago
Simon Ser 60001a75a2
backend/drm: remove nouveau workaround
4 years ago
Simon Ser da2a216934
backend/drm: add wlr_drm_connector.backend
4 years ago
Simon Ser 1ca4d6b029
backend/drm: dup FD before wlr_gbm_allocator_create
4 years ago
Simon Ser e57a52e7f7
Remove inline keyword
4 years ago
Simon Ser 93cd3a79b2 backend/drm: stop using GBM flags
4 years ago
Simon Ser 4c363a564f backend/drm: remove workaround for amdgpu DP MST
4 years ago
Simon Ser 6ff478632a backend/drm: remove EGL config
4 years ago
Simon Ser 06ab41a160
backend/drm: fix missing wlr_drm_format.cap
4 years ago
Stephane Chauveau b790e5ea34 backend/drm: don't assume possible_crtcs has only one bit set
4 years ago
Simon Ser 863acb26c0 backend/drm: stop tracking overlay planes
4 years ago
Simon Ser e69bbfd0d6 backend/drm: unset current surface before importing
4 years ago
Simon Ser 325cba6414
backend/drm: use EGL_PLATFORM_GBM_KHR
4 years ago
Ilia Bozhinov 54b7ca56c0 drm: do not unset make/model before emitting destroy event
4 years ago
Simon Ser 1336ad2a23
backend/drm: remove unused if in drm_connector_move_cursor
4 years ago
Simon Ser 0e927533b0 backend/drm: query render formats
4 years ago
Simon Ser 237c2cf2fb backend/drm: take a wlr_drm_format in init_drm_surface
4 years ago
Simon Ser 8bc5a92a98 Revert "backend/drm: stop force-probing connectors"
4 years ago
Simon Ser de9ff46629
backend/drm: "scaling mode" is a connector property
4 years ago
Simon Ser 2649600fa1
backend/drm: rotation is a plane property
4 years ago
Simon Ser 713c1661b7 backend/drm: stop force-probing connectors
4 years ago
Simon Ser 0e76f92de7 backend/session: replace session_signal with events.active
4 years ago
Simon Ser 44a4792fd8 backend/session: operate on wlr_device
4 years ago
Kenny Levinsen fb3bea8014 backend/drm: Use legacy gamma size for legacy backend
4 years ago
Simon Ser eef8b3dde8 backend/drm: check drm_surface_render_black_frame return value
4 years ago
Simon Ser c881008e1c backend/drm: add support for wlr_swapchain multi-GPU
4 years ago
Simon Ser 8058e338ea backend/drm: get rid of wlr_drm_fb_type
4 years ago
Simon Ser 68a8d99055 backend/drm: add support for wlr_swapchain buffer age
4 years ago
Simon Ser ef846a8839 backend/drm: use wlr_swapchain
4 years ago
Simon Ser 1328477a82 backend/drm: export pending FB in export_dmabuf, if any
4 years ago
Simon Ser ee43ef3c9d backend/drm: fix "a page-flip is already pending" errors on modeset
4 years ago
Marten Ringwelski 85757665e6 backend/drm: Check if output is enabled before sending frame event
4 years ago
Devin J. Pohly aaf490d794 drm: fix uninitialized read
4 years ago
Antonin Décimo d9bb792794 Fix incorrect format parameters
4 years ago
Simon Ser b6377b59ff backend/drm: check drm_surface_make_current return value
4 years ago
Simon Ser cccca368c5
backend/drm: fix typo in drm_surface_make_current arg
4 years ago
Simon Ser f82a27f55a backend/drm: fix DPMS on legacy interface
4 years ago
Simon Ser bf93d2e67c output: rename impl->rollback to rollback_render
4 years ago
Andri Yngvason a6a5a19356 backend: drm: Fix dmabuf resource leak
5 years ago
Simon Ser e77c046cf9 backend/drm: fix stack overflow in dealloc_crtc
5 years ago
Simon Ser 8f28f5b2f8 backend/drm: fix black screens when enabling output
5 years ago
Simon Ser b03eebf7d4 backend/drm: always perform a CRTC commit in drm_connector_commit
5 years ago
Simon Ser 1a2e82e327 backend/drm: drop extra wlr_output_update_enabled call
5 years ago
Simon Ser 80467f6ae8 backend/drm: commit/rollback FBs in drm_crtc_commit
5 years ago
Simon Ser 70f3a0bb27 backend/drm: make adaptive_sync atomic
5 years ago
Simon Ser 42126c2022 backend/drm: rollback pending CRTC state on test commit
5 years ago
Simon Ser d66b9966e9 backend/drm: fix missing crtc->cursor NULL check
5 years ago
Simon Ser e7a8ea84c3 backend/drm: don't set cursor if off-screen
5 years ago
Simon Ser 15d8f1806e backend/drm: introduce pending and current CRTC state
5 years ago
Simon Ser d6cc718472 backend/drm: nuke retry_pageflip
5 years ago
Simon Ser 61095f4a12 backend/drm: make drm_connector_set_mode take a wlr_drm_connector
5 years ago
Simon Ser 445750aa9a backend/drm: remove enable_drm_connector
5 years ago
Simon Ser c02e9c2bb1 backend/drm: remove drm_connector_set_custom_mode
5 years ago
Simon Ser 21c6cc5e4c backend/drm: refuse to enable an output without a mode
5 years ago
Simon Ser 47e5212823 backend/drm: rollback atomic blobs
5 years ago
Simon Ser af2f69e6c1 render/egl: unset current context after swapping buffers
5 years ago
Simon Ser d28a7da95d backend/drm: add missing wlr_egl_unset_current
5 years ago
Simon Ser cfed5766b7 backend/drm: fix current EGL context on multi-GPU
5 years ago
Simon Ser 1edc42157b render/egl: introduce wlr_egl_unset_current
5 years ago
Simon Ser 2988ebb6f3 backend/drm: fix atomic commits when the GAMMA_LUT prop is missing
5 years ago
Simon Ser 347bdb6d9a output: make wlr_output_set_gamma atomic
5 years ago
Simon Ser 42e485dcc3 backend/drm: fix segfault in drm_crtc_page_flip
5 years ago
Simon Ser 51bbf31742 backend/drm: print error in set_plane_props
5 years ago
Simon Ser 9412d34e2d backend/drm: disable cursor in dealloc_crtc
5 years ago
Simon Ser da4df82532 backend/drm: fix combined modeset+enable commits
5 years ago
Simon Ser cdb6fdbc6c backend/drm: remove missing cursor plane workaround
5 years ago
JonnyMako 1139234117
backend/drm: fix missing cursor on external monitors with multi-GPU setup and nouveau
5 years ago
Simon Ser f72686c0b6 backend/drm: fix crash in session_signal
5 years ago
Simon Ser 2ca3bdc35e backend/drm: simplify atomic commit logic
5 years ago
Simon Ser 06d5aa5780 backend/drm: GAMMA_LUT_SIZE isn't atomic
5 years ago
Simon Ser da63d11d34 backend/drm: remove crtc_set_cursor from interface
5 years ago
Simon Ser f8e02db4bc backend/drm: remove conn_enable from interface
5 years ago
Simon Ser c608fc89d8 backend/drm: rename crtc_pageflip to crtc_commit
5 years ago
Simon Ser 70883fd10b backend/drm: apply gamma LUT on page-flip
5 years ago
Simon Ser 69b2279092 backend/drm: remove mode argument to crtc_pageflip
5 years ago
Simon Ser c9d6b18eef backend/drm: remove wlr_drm_interface.crtc_move_cursor
5 years ago
Simon Ser 90ede7f838 backend/drm: make page-flip error scarier
5 years ago
Will Daly 044a9f28d6 Fix error when reconnecting external display
5 years ago
Simon Ser 98d949718c backend/drm: strip alpha channel if necessary
5 years ago
Scott Anderson 321537ee92 backend/drm: don't allow legacy to use direct scanout
5 years ago
Scott Anderson 52281cb8ba backend/drm: move atomic cursor code into pageflip code
5 years ago
Scott Anderson be90062c51 backend/drm: don't have fallback atomic commits
5 years ago
Scott Anderson 8da9d9679e backend/drm: introduce wlr_drm_fb
5 years ago
Simon Ser 50ade3671f output: check for buffer size compatibility in common code
5 years ago
Simon Ser 5f092c55d1 output: fix blurred hw cursors with fractional scaling
5 years ago
Simon Ser 9acca4fc73 backend: set EGL_RENDERABLE_TYPE and EGL_SURFACE_TYPE
5 years ago
Simon Ser 507d9bc19e Add wlr_output_impl.rollback
5 years ago
Simon Ser d3bd5f2a7b backend: reset EGL surface after buffer swap
5 years ago
Simon Ser 6977f3a843 output: check buffer in wlr_output_test
5 years ago
Simon Ser e041158988 output: introduce wlr_output_test
5 years ago
Simon Ser 6595db6409 buffer: add a release event
5 years ago
Filip Sandborg 5ee52a3ab9
Fix uint32 overflow in fill_empty_gamma_table on Icelake platform
5 years ago
Simon Ser 52c67284e2 backend/drm: add support for adaptive_sync_enabled
5 years ago
Simon Ser 348f52b5fc output: remove wlr_output_impl.schedule_frame
5 years ago
Rouven Czerwinski 144d2041ad backend/drm: remove overzealous finish_drm_surface
5 years ago
Rouven Czerwinski f0594fb732 backend/drm: add env variable to disable modifiers
5 years ago
Simon Ser 7c05933e51 backend/drm: prevent outputs from being destroyed on commit
5 years ago
Simon Ser 21e1953b61 backend/drm: don't modeset with a NULL mode after TTY switch
5 years ago
Simon Ser 8fc16890c7 output: refuse to commit a buffer or modeset a disabled output
5 years ago
Simon Ser f0781cd792 backend/drm: modeset before enabling an output
5 years ago
Simon Ser 5d1ba0f446 output: re-introduce atomic mode, enabled, scale and transform
5 years ago
Simon Ser 4da4a15d6b output: add description
5 years ago
Scott Anderson cff1c2f740 meson: Various improvements
5 years ago
Rouven Czerwinski be4b9f7f5b backend/drm: print preferred mode
5 years ago
Simon Ser 515679e4fe Refactor EGL/GL API loading
5 years ago
Simon Ser efd294ef09 backend/drm: add BenQ to manufacturer list
5 years ago
Simon Ser 6ca82087b1 backend/drm: fix segfault in init_drm_surface
5 years ago
Simon Ser 8681e4ab8a backend/drm, backend/libinput: listen to session destroy
5 years ago
Jason e8855ee462 Amend typos
5 years ago
Simon Ser 16e5e9541b Add -Wmissing-prototypes
5 years ago
Simon Ser 6c649bab53 output: add wlr_output_event_present.commit_seq
5 years ago
Simon Ser 0e57effd38 backend/drm: add support for custom modes
5 years ago
Simon Ser e97c2c3639 backend/drm: retry without modifiers for the primary plane
5 years ago
Simon Ser fd25e2ca11 backend/drm: track gbm_bo during direct scan-out
5 years ago
Simon Ser 2bdd1d0896 backend/drm: use modifiers for our GBM buffers
5 years ago
Ivan Molodetskikh 5f78ea20fa drm: use IMPORT_FD for INVALID modifier
5 years ago
Rouven Czerwinski bf90474b74 backend/drm: check for mst: in path property
5 years ago
Simon Ser 8d2ea9544b backend/drm: fix missing plane formats
5 years ago
Antonin Décimo 39c5d93dea backend/drm: use UINT64_C for uint64_t literals
5 years ago
Rouven Czerwinski 01f903874b Revert "output: atomic mode"
5 years ago
Rouven Czerwinski 4d36cc86eb backend/drm: destroy output immediately
5 years ago
Simon Ser ee5f98ad49 output: atomic mode, enabled, scale and transform
5 years ago
Simon Ser ca45f4490c Remove all wayland-server.h includes
5 years ago
Rouven Czerwinski d10072e76c backend: drm: switch to pageflip_handler_2
5 years ago
Scott Anderson 46dc4100d6 backend/drm: Exit-early if 0 crtcs
6 years ago
Scott Anderson b3f42548d0 backend/drm: Simplify object matching code
6 years ago
Simon Ser ce3f4c3fe1 output: remove wlr_output_impl.transform
6 years ago
Scott Anderson b85f0cbff9 Remove WLR_DRM_NO_ATOMIC_GAMMA workaround
6 years ago
Simon Ser d201fc3506 backend/drm: add support for multiplanar BOs
6 years ago
Simon Ser e8057bb60c backend/drm: fallback to drmModeAddFB2
6 years ago
Simon Ser d1766547bd backend/drm: reject DMA-BUFs with flags
6 years ago
Simon Ser 44ba603c0e backend/drm: hold buffers while scanning out
6 years ago
Simon Ser afe7b207d5 output: fix attach_buffer semantics
6 years ago
Simon Ser 1d222309b8 output: change set_dmabuf to attach_buffer
6 years ago
Simon Ser 5c78f1b0d5 backend/drm: strip alpha channel on scan-out
6 years ago
Simon Ser e516ea4c79 backend/drm: check format when scanning out DMA-BUF
6 years ago
emersion 96d6fde5dc backend/drm: add basic support for direct scan-out
6 years ago
Rouven Czerwinski 96e9c0f9c8 drm: legacy: issue a NULL modeset on disable
6 years ago
Simon Ser 20690346c7 output: rename needs_commit to needs_frame
6 years ago
Simon Ser 9a0f8a194c output: refactor backend API
6 years ago
Alyssa Ross 95b22619e0 Fix missing headers when building without X11
6 years ago
Guido Günther cd60f40bbb wlr_output: Add preferred property (#1625)
6 years ago
Scott Anderson 6a8f17b5f6 backend/drm: Don't fail on failing to find overlay format
6 years ago
Scott Anderson d945c97926 backend/drm: Unset cursor on cleanup
6 years ago
Rouven Czerwinski e1834ace28 backend/drm: fix memory leak in realloc crtcs
6 years ago
Brian Ashworth 50011e7170 backend/drm: fix modeset on drm fd resume
6 years ago
emersion 2a738803b2
backend/drm: fix NULL dereference when unsetting cursor
6 years ago
Drew DeVault 2d2c79e37c
Merge pull request #1537 from VincentVanlaer/cursor-dmabuf-nouveau
6 years ago
Vincent Vanlaer 26a9fa8148 Add workaround for hardware cursors on nouveau
6 years ago
Drew DeVault 9a5d59a839 Revert "drm: do not modeset to current mode"
6 years ago
Vincent Vanlaer bc048b22fb Copy cursor surface to secondary gpu if necessary
6 years ago
Brian Ashworth 72c76b128e drm: do not modeset to current mode
6 years ago
Vincent Vanlaer 7bc43413ed Allow cursor render surface to be used as fb
6 years ago
emersion 75371d2c88
Require libdrm >= 2.4.95
6 years ago
emersion ee293fab58
backend/drm: fix GBM format mismatch
6 years ago
emersion d4ffa5b7a6
backend/drm: fix state for outputs loosing their CRTC
6 years ago
emersion 9b1d9fb91e
backend/drm: get physical size from libdrm
6 years ago
Timidger 9af0c5338f
Standardize the wlr_box input paramaters
6 years ago
emersion ff6c4f80b2
backend/drm: don't insert duplicate custom modes, fix refresh rate
6 years ago
Scott Anderson fec88770dd backend/drm: Fix uninitialized variable
6 years ago
Scott Anderson efdd4d6ea2 backend/drm: Improve encoder logic
6 years ago
emersion f8056a0350
backend/drm: fix disappeared output indices
6 years ago
emersion 491f1dbf75
backend/drm: fix VLA overflow
6 years ago
Rostislav Pehlivanov 91513c89cd Fix interlaced mode rejection
6 years ago
Rostislav Pehlivanov dc9fdd6385 Skip interlaced modes during drm mode detection
6 years ago
emersion b5125ff328
backend/drm: specify minimum config attributes
6 years ago
Drew DeVault 70ca7daeb2
Merge pull request #1346 from emersion/fix-schedule-frame-mgpu
6 years ago
emersion 68362b37a8
backend/drm: fix frame scheduling on secondary GPUs
6 years ago
emersion 443a38bd3f
backend/drm: add WLR_DRM_NO_ATOMIC_GAMMA env variable
6 years ago
sghctoma fa587b8ea9 Increase _POSIX_C_SOURCE to 200112L
6 years ago
emersion b66041a9e5 backend/drm: don't reset conn->pageflip_pending in drm_connector_cleanup
6 years ago
Drew DeVault 8488ed2997
Merge pull request #1298 from emersion/output-dangling-idle-frame
6 years ago
Rouven Czerwinski 77478ac302 backend/drm: set drmEventContext version to 2
6 years ago
emersion 46b1ba386f output: remove idle_frame event source when destroying output
6 years ago
Scott Anderson 885586a831
Merge pull request #1280 from emersion/drm-link-status
6 years ago
emersion 37de179013 backend/drm: fix zero-length VLAs
6 years ago
emersion 776008da69 backend/drm: properly handle GPUs without CRTCs
6 years ago
emersion ba91422747 output: don't trigger a frame immediately in schedule_frame
6 years ago
emersion eac7c2ad2f output: add presentation refresh prediction
6 years ago
emersion b0635bf3e7 Rename get_present_clock to get_presentation clock, use it
6 years ago
emersion 54e1287f30 backend: add get_present_clock
6 years ago
emersion 78389fe722 output: add present event
6 years ago
emersion f5a147b739 backend/drm: add support for the link-status property
6 years ago
Drew DeVault 841d04db99
Merge pull request #1262 from nyorain/session_fix
6 years ago
emersion 7ab37bf152 backend/drm: update EDID manufacturers database
6 years ago
emersion e88db9a3fb backend/drm: reset gamma table on VT switch
6 years ago
emersion 2beb68007e output: make gamma size a size_t and gamma table const
6 years ago
emersion 79dd9ba151 backend/drm: don't free connector immediately
6 years ago
nyorain 7b52388424 Rework session handling
6 years ago
emersion 139a905924 backend/drm: add assertions
6 years ago
emersion f8a50e4fe7 backend/drm: steal CRTCs from disabled outputs
6 years ago
emersion cb293f09e7 output: make wlr_output_enable return a bool
6 years ago
Drew DeVault ca331c0468
Merge pull request #1235 from emersion/dealloc-unused-crtcs
6 years ago
emersion 1fcecd68df backend/drm: de-allocate unused CRTCs
6 years ago
mntmn e1c91884fb fix cursor loss w/ legacy drm and software cursor (tested on etnaviv)
6 years ago
emersion 8a6bdc193d backend/drm: damage outputs when switching CRTCs
6 years ago
emersion 1342393632 backend/drm: cosmetic enhancements
6 years ago
emersion 5b13b8a12c backend/drm: consider continue not using resources
6 years ago
emersion fb94f03b43 backend/drm: prevent use of uninitialized data
6 years ago
emersion d605b2ea07 backend/drm: remove unused if
6 years ago
emersion 017cfb0b86 backend/drm: log when de-allocating CRTC
6 years ago
emersion b877daded1 backend/drm: better hotplug handling
6 years ago
emersion 95d05acda5 backend/drm: fix invalid VLA size in scan_drm_connectors
6 years ago
emersion ef88df2142 backend/drm: emit new_output after scanning connectors
6 years ago
emersion e84f01168d backend/drm: allow disabling outputs in NEEDS_MODESET state
6 years ago
Drew DeVault 633663cdde Use legacy modesetting for gamma control
6 years ago
emersion 7a3f7b3c8a backend/drm: add support for DRM_MODE_CONNECTOR_DPI
6 years ago
Scott Anderson 2d8f53affd Check for DRM prime
6 years ago
Scott Anderson 1a2b3445dc Remove unused data from gbm_bo userdata
6 years ago
Scott Anderson 4bee710c30 Fix hardware cursor on secondary GPU
6 years ago
Mariusz Bialonczyk e547e55be0 multi-gpu: do not flip screens on secondary GPU
6 years ago
Mariusz Bialonczyk 15dacebc36 multi-backend: do not expose internal renderers
6 years ago
emersion 364afced3e backend/drm: remove unnecessary casts
6 years ago
emersion 2ebecb6727 backend/drm: allow to pass empty gamma ramp to reset it
6 years ago
emersion a149c2370a Implement wlr-gamma-control-unstable-v1
6 years ago
emersion 7cbef15206
util: add wlr_ prefix to log symbols
6 years ago
Drew DeVault be54278207
Merge pull request #1095 from agx/output-add-mode
6 years ago
Guido Günther 8d72090afe drm: Allow to add additional modes
6 years ago
emersion 2b9cbaddf3
screencopy: add support for frame flags
6 years ago
Dominique Martinet f0d455f088 drm backend: overflow fixes
7 years ago
emersion 21928cbe61
Merge branch 'master' into screencontent
7 years ago
emersion 28020ff577
Only allow one modifier per DMA-BUF, split attributes struct in render/
7 years ago
emersion bd430b8620
backend/drm: support multi-planar DMA-BUFs when exporting
7 years ago
emersion 9e26808c28
output, backend/drm: add wlr_output_export_dmabuf
7 years ago
emersion 79683ee497
backend/drm: better connector cleanup, add more logs
7 years ago
emersion 6eb4b5b54d
Merge pull request #993 from emersion/bind-wl-drm-in-renderer
7 years ago
Ilia Bozhinov 24cf70ae96 backends: implement custom EGL and renderer initialization
7 years ago
emersion 41130fe54b
render: bind wl_drm in renderer
7 years ago
Markus Ongyerth 6a46fcc6f2 recalculate cursor projection matrix on set_cursor
7 years ago
emersion 13098a18ea
Fix hardware cursors scale & transform
7 years ago
emersion caf9f9022c
Merge pull request #936 from emersion/full-hardware-cursors
7 years ago
morganamilo 6305e6327f
Fix typos in comments and strings
7 years ago
Guido Günther 1637053ef8 drm: only disable atomic modesetting when WLR_DRM_NO_ATOMIC == 1
7 years ago
emersion 225d182765
output: always use hardware cursors if available
7 years ago
emersion 625a7a48dc
Don't use the wlr_ prefix for static functions
7 years ago
emersion 71ca45e2c0
Make sure we don't use others' prefixes
7 years ago
emersion b0d99f5c67
Remove wlr_ prefix from local symbols
7 years ago
emersion 018b82c01e
render/egl: allow passing NULL to surface and image destructors
7 years ago
emersion eaed6bd03b
render/egl: add wlr_egl_destroy_surface
7 years ago
emersion 94fa6c88f4
output: don't emit the mode event if it hasn't changed
7 years ago
emersion d2ebbd103c
backend: remove wlr_backend_get_egl
7 years ago
Drew DeVault b60e31e5c0
Merge pull request #794 from emersion/renderer-untie-backend
7 years ago
emersion a2391a6047
Fix cursor transform on DRM backend
7 years ago
emersion 33a2eb4b77
Untie wlr_backend from wlr_renderer
7 years ago
Drew DeVault 324b9d910d Remove width_mm from wlr_touch events
7 years ago
emersion 3bda7e2ef8
Use DRM_FORMAT_MOD_LINEAR instead of a hardcoded constant
7 years ago
emersion c63d94483b
Redesign wlr_texture
7 years ago
emersion a854c2f246
Merge branch 'master' into gles2-renderer-redesign
7 years ago
emersion 60bfe0a6aa
backend/drm: remove remaining raw GL call
7 years ago
emersion b1f93bc5cc
render/egl: use EGL_KHR_debug
7 years ago
emersion 3581573bdc
render/gles2: make wlr_renderer_begin take viewport size
7 years ago
emersion c41de2d1be
render: split render.h into wlr_renderer.h and wlr_texture.h
7 years ago
emersion 6227da96b1
backend/drm: don't hardcode matrix
7 years ago
emersion 7894fca224
matrix: rename wlr_matrix_texture to wlr_matrix_projection
7 years ago
emersion 876f07e9f1
renderer: replace wlr_texture_get_matrix by wlr_render_texture
7 years ago
emersion 824a95ad19
matrix: use 2D matrices
7 years ago
emersion d26b67cb06
matrix: unify API, don't use array pointers
7 years ago
emersion b6a3f240c7
matrix: move to types/
7 years ago
emersion d24f868bbe
backend/drm: fix cursor hotspot not updated
7 years ago
emersion 92ca4ad474
backend/drm: refactor wlr_drm_connector_set_cursor
7 years ago
Markus Ongyerth 2cea430488 prevent current_mode null on output_enable(false)
7 years ago
Markus Ongyerth a65ef8ea86 restore dpms state on drm resume
7 years ago
Guido Günther d08792bfff Add alpha to wlr_render_with_matrix
7 years ago
Drew DeVault 1d9be89e2d
Revert "ELF Visibility"
7 years ago
Scott Anderson 86269052eb Explicitly export EFL symbols
7 years ago
emersion c2e1474010
Reformat all #include directives
7 years ago
emersion 36ead80cd1
Make wlr_signal_emit_safe private
7 years ago
emersion 10ecf871f2
Remove wlr_backend.events.{output_remove,device_remove}
7 years ago
emersion 5e58d46cc1
Add wlr_signal_emit_safe
7 years ago
Drew DeVault 664d7bfe4e
Merge pull request #618 from VincentVanlaer/atomic-gamma
7 years ago
Vincent Vanlaer 7cb828ac70 Fallback gamma on legacy if properties don't exist
7 years ago
emersion bf6d245400
Swap buffers with damage
7 years ago
Vincent Vanlaer dd69d7b764 Use VLA instead of heap alloc
7 years ago
Vincent Vanlaer 0232269a2d Fix style
7 years ago
Vincent Vanlaer b2f6941617 Free gamma when property blob creation fails
7 years ago
Vincent Vanlaer 2df97ed16a Set needs_swap on output when gamma changes
7 years ago
Vincent Vanlaer f5e5d1983b Do not allow gamma control without a crtc
7 years ago
Vincent Vanlaer ab011406ad Add atomic gamma lut size fetching
7 years ago
Vincent Vanlaer cc1229e75e Add atomic gamma setting
7 years ago
emersion cdd55b5d19
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Markus Ongyerth 08fda567d2 prevents reuse of outdated wlr_output state
7 years ago
emersion 3d3ea32137
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
emersion bb39277e97
backend/drm: update output enabled property on modeset
7 years ago
emersion bb4aeb3b2f
backend/drm: support updating cursor when session is paused
7 years ago
emersion babdd6ccf7
backend: fix use-after-free when destroying backends
7 years ago
Guido Günther c5aac77692 Fix some typos
7 years ago
emersion f152fdb4c5
Merge pull request #594 from Ongy/drm-surface-buffers
7 years ago
emersion d498855b9d
backend/drm: fix hw cursor position on rotated and scaled outputs
7 years ago
emersion 51c22d39a4
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Tony Crisci ed5b1fdedd
Merge pull request #580 from emersion/screenshooter-renderer-backport
7 years ago
Markus Ongyerth cde0f454b3 Clean up the gbm/egl as well
7 years ago
Markus Ongyerth 2cdb646531 relases gbm buffers on init
7 years ago
emersion b47e8c4a1d
backend/drm: do not retry pageflip when swapping buffers
7 years ago
emersion 20e6861021
Do not flush damage if swapping buffers failed
7 years ago
emersion 1ee61dbd0f
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Guido Günther d7dfbd23fa drm: Use ptrdiff_t instead of intmax_t in format string
7 years ago
emersion 7adf13e284
Fix flickering when switching VT
7 years ago
emersion 8d58ed502b
output: add wlr_output_schedule_frame
7 years ago
emersion ece2c1e4e2
Damage tracking for transformed outputs
7 years ago
Vincent Vanlaer 72507f9820 Clean up session signal handler on drm init fail
7 years ago
emersion 4fa90b0511
Backport screenshooter fixes from the renderer redesign v1
7 years ago
emersion 59c53e8333
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Timidger f8b9f44ff5
Add con/crtc null check to move_cursor in drm
7 years ago
Timidger 9d4ea146b6
Added crtc null check for other drm funcs
7 years ago
Timidger 4478cf1ddc
Fixes #575
7 years ago
emersion 0365b587f0
output: add damage tracking via buffer age
7 years ago
emersion 4ca38b84ed
backend/drm: fix hardware cursors not moving
7 years ago
emersion 584f06ad2f
backend/drm: do not try a pageflip is another one is in pending
7 years ago
emersion f0f97280a0
backend/drm: fix retry pageflip
7 years ago
Drew DeVault b331c5c2c5
Merge pull request #549 from emersion/output-enabled
7 years ago
emersion 0eebaf98d0
drm: do not pageflip when enabling output
7 years ago
Guido Günther 3101c300b1 Don't crash if crtc->cursor is NULL
7 years ago
emersion 53ba9b4eec
Fix output enable in DRM backend
7 years ago
emersion 771263380c
Add wlr_output::enabled
7 years ago
Dominique Martinet 8e24aaa3c6 style: fix sizeof() calls without parentheses
7 years ago
emersion e737f65e38
Fix cursor on transformed output with DRM backend
7 years ago
Tony Crisci a937016e38 remove session from multibackend
7 years ago
Dominique Martinet be95147385 drm backend: add wlr_output_is_drm
7 years ago
emersion b99d1f4fcc
Refactor wlr_egl_init to accept config_attribs
7 years ago
emersion 0256de0002
Add full refresh rate support to custom modes
7 years ago
Drew DeVault 23fb663ea4
Merge pull request #453 from emersion/surface-transform
7 years ago
emersion 466e86b7b2
Merge branch 'master' into surface-transform
7 years ago
emersion 75ef7860bb
Merge branch 'master' into display-destroy
7 years ago
emersion 3b4b8953d9
Update output layout when scale or transform changes
7 years ago
emersion c67a5824b8
Merge branch 'master' into display-destroy
7 years ago
emersion 18eb1eee3f
Listen to display destroy in xwayland, rename wlr_egl_free
7 years ago
emersion 9d43adaafa
Listen to display destroy in backends
7 years ago
emersion 91d72040e5
Configure outputs with make, model, serial in rootston
7 years ago
emersion 8af779fae6
Fix segfault when moving hardware cursor
7 years ago
emersion 6a69b4419f
Make wlr_output_transform_* functions public, refactoring
7 years ago
Scott Anderson bc113c16aa Use correct include path for glapi.h
7 years ago
emersion 09279b90a6
Add wlr_output.serial
7 years ago
Dominique Martinet f451ea3639 rootston exit: fix drm destroy
7 years ago
emersion a15b35aa10
Remove mysterious hotspot switch in DRM backend
7 years ago