aboutsummaryrefslogtreecommitdiff
path: root/backend/drm/backend.c
AgeCommit message (Collapse)Author
2018-05-25backends: implement custom EGL and renderer initializationIlia Bozhinov
Compositors now have more control over how the backend creates its renderer. Currently all backends create an EGL/GLES2 renderer, so the necessary attributes for creating the context are passed to a user-provided callback function. It is responsible for initializing provided wlr_egl and to return a renderer. On fail, return 0. Fixes #987
2018-04-25Don't use the wlr_ prefix for static functionsemersion
2018-04-25Make sure we don't use others' prefixesemersion
2018-04-25Remove wlr_ prefix from local symbolsemersion
2018-04-08backend: remove wlr_backend_get_eglemersion
2018-03-21render/egl: use EGL_KHR_debugemersion
2018-03-01prevent current_mode null on output_enable(false)Markus Ongyerth
The current mode was set to NULL to abuse it as state variable persisting DRM suspend/resume, this results resulted in a segfault on normal DPMS cycle. This reverts that change and uses the wlr_output enabled variable, which also persists and makes more sense.
2018-02-26restore dpms state on drm resumeMarkus Ongyerth
If there is no current mode, set outputs to dpms off in drm resume. Sets current mode to null on disable to ensure this can be checked.
2018-02-19Revert "ELF Visibility"Drew DeVault
2018-02-19Explicitly export EFL symbolsScott Anderson
2018-02-12Reformat all #include directivesemersion
2018-02-12Make wlr_signal_emit_safe privateemersion
2018-02-12Add wlr_signal_emit_safeemersion
2018-02-03Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-02-02backend/drm: support updating cursor when session is pausedemersion
2018-01-30backend: fix use-after-free when destroying backendsemersion
The backend destroy signal is emitted before the output_remove signal is. When the destroy signal is emitted listeners remove their output_remove listener, so the output_remove signal is never received and listeners have an invalid output pointer. The correct way to solve this would be to remove the output_remove signal completely and use the wlr_output.events.destroy signal instead. This isn't yet possible because wl_signal_emit is unsafe and listeners cannot be removed in listeners.
2018-01-30Fix some typosGuido Günther
Prefer initialize over initialise since used more often in the sources.
2018-01-29Merge pull request #580 from emersion/screenshooter-renderer-backportTony Crisci
Backport screenshooter fixes from the renderer redesign v1
2018-01-24Clean up session signal handler on drm init failVincent Vanlaer
2018-01-23Backport screenshooter fixes from the renderer redesign v1emersion
This backports some changes to #319 to fix the screenshooter data format. This also adds wlr_backend_get_renderer which will be useful to support multiple renderers.
2017-12-19remove session from multibackendTony Crisci
2017-12-07Listen to display destroy in backendsemersion
2017-11-01rootston exit: fix drm destroyDominique Martinet
wlr_drm_connector were being freed without removing them from the drm->outputs list, segfaulting on destroy
2017-10-26Do not set hw cursor if disabled when switching VTemersion
2017-10-22Rescan connectors on DRM resumeVersus Void
2017-10-21Merge branch 'master' into heghe/wl_listDrew DeVault
2017-10-21Rename remaining refs to wlr_listDrew DeVault
2017-10-22Move egl.h to render/egl.hScott Anderson
2017-10-20Replace list_t with wl_list for wlr_input_deviceHeghedus Razvan
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
2017-10-20Replace list_t with wl_list in wlr_drm_backendHeghedus Razvan
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
2017-10-05Fix memory leaksVersus Void
2017-10-01Minor fixesScott Anderson
2017-10-01Multi-GPU DRMScott Anderson
2017-10-01Change wlr_session to open every GPUScott Anderson
2017-09-30Rename wlr_drm_output to wlr_drm_connectorScott Anderson
2017-09-30Rename backend to drmScott Anderson
2017-09-30Split DRM rendering to its own fileScott Anderson
2017-09-30Rename files to remove pointless drm prefixScott Anderson
2017-09-30Removed unused fieldsScott Anderson
2017-09-23Add timeout to DRM cleanupScott Anderson
This prevents a potential infinite loop preventing us from closing properly.
2017-08-26Merge wlr_udev into wlr_sessionScott Anderson
2017-08-13Add backend detection functionsCalvin Lee
Resolves #80
2017-08-13Remove wlr_output_state, update backendsDrew DeVault
2017-08-13wlr_backend_init -> wlr_backend_startDrew DeVault
Also renames create to init. We'll use create for anything that allocates and init for anything that takes a pointer and initializes it.
2017-08-12Refactor wlr_backend_state out of DRM backendDrew DeVault
2017-08-11Complete a few destroy functionsDominique Martinet
This adds missing free calls for: - drm outputs - libinput backend in general - final udev free - output mode state
2017-08-10Refactor EGL handlingDrew DeVault
2017-08-10Implement drm (egl) buffer attachingnyorain
2017-08-10Added null check on crtcScott Anderson
2017-08-09Atomic modesettingScott Anderson