emersion/libliftoff

Figure out how to properly support multi-output

Closed this issue · 1 comments

Currently the API is designed around liftoff_device_apply, which is per-DRM-device. If we want to change allocation, we need to be able to do it across multiple outputs (for instance to move one plane from a CRTC to another).

This conflicts with each output having its own timings (and maybe a different refresh rate).

I think we'll want to have liftoff_output_apply with some logic to move planes between multiple outputs.

We need to handle the case where an output is hotplugged but cannot be enabled because of bandwidth limits. In this case, we need to disable planes on other outputs.