Simon Ser
8f90d7f8f5
backend/drm: take wlr_output_state as arg in crtc_commit
...
Stop assuming that the state to be applied is in output->pending in
crtc_commit. This will allow us to remove ephemeral fields in
wlr_drm_crtc, which are used scratch fields to stash temporary
per-commit data.
2021-04-29 19:51:57 +02:00
Simon Ser
347bdb6d9a
output: make wlr_output_set_gamma atomic
...
wlr_output_set_gamma is now double-buffered and applies the gamma LUT on
the next output commit.
2020-05-14 20:09:28 +02:00
Simon Ser
06d5aa5780
backend/drm: GAMMA_LUT_SIZE isn't atomic
...
GAMMA_LUT_SIZE isn't an atomic property. It can be used with the legacy
interface too. So we can unify both codepaths and remove
wlr_drm_interface.crtc_get_gamma_size.
It's no guaranteed to exist though, so we still need to keep the
fallback.
2020-05-10 09:20:46 +02:00
Simon Ser
da63d11d34
backend/drm: remove crtc_set_cursor from interface
2020-05-09 16:42:25 +02:00
Simon Ser
f8e02db4bc
backend/drm: remove conn_enable from interface
...
Use crtc_commit instead.
2020-05-09 16:42:25 +02:00
Simon Ser
c608fc89d8
backend/drm: rename crtc_pageflip to crtc_commit
...
Also add a flags argument.
The commit function will also be used for disabling the CRTC.
2020-05-09 16:42:25 +02:00
Simon Ser
70883fd10b
backend/drm: apply gamma LUT on page-flip
2020-05-09 16:42:25 +02:00
Simon Ser
69b2279092
backend/drm: remove mode argument to crtc_pageflip
...
Add a new wlr_drm_crtc.pending bitfield which keeps track of pending
output changes. More fields will be added in the future (e.g. active,
gamma).
2020-05-09 16:42:25 +02:00
Simon Ser
c9d6b18eef
backend/drm: remove wlr_drm_interface.crtc_move_cursor
...
Instead, make the legacy backend call drmModeMoveCursor on page-flip.
2020-05-09 16:42:25 +02:00
Scott Anderson
52281cb8ba
backend/drm: move atomic cursor code into pageflip code
...
It makes sense to construct as much atomic state as possible in the same
place, so it doesn't get lost if we "reset" it.
2020-04-28 09:54:52 +02:00
emersion
2beb68007e
output: make gamma size a size_t and gamma table const
2018-10-03 10:36:33 +02:00
emersion
c2e1474010
Reformat all #include directives
2018-02-12 21:29:23 +01:00
Vincent Vanlaer
ab011406ad
Add atomic gamma lut size fetching
...
Legacy gamma lut size now uses the new legacy_crtc member of
wlr_drm_crtc. This was Previously doen using old_crtc in
wlr_drm_connector, but since this refers to the crtc that was connected to
the ouput, this could give the wrong result.
2018-02-09 17:29:14 +01:00
Vincent Vanlaer
cc1229e75e
Add atomic gamma setting
2018-02-09 17:29:04 +01:00
emersion
53ba9b4eec
Fix output enable in DRM backend
2018-01-07 00:28:21 +01:00
Scott Anderson
f193623ca1
Change iface prefix to suffix
2017-10-02 21:44:33 +13:00
Scott Anderson
4101b89700
Rename wlr_drm_output to wlr_drm_connector
2017-09-30 23:31:08 +13:00
Scott Anderson
22e77d9195
Rename backend to drm
2017-09-30 22:22:26 +13:00
Scott Anderson
d0708b1a3a
Split DRM internal interface to its own header
2017-09-30 19:11:41 +13:00