Skip to content

backend-drm: move mode parsing to frontend and add fallback mode

This is a continuation of !1254 (closed), but as the implementation has completely changed, I decided to open a new merge request and close the old one.

The merge request moves the parsing of an output mode from the drm-backend to the frontend and introduces a new struct for representing modelines. This struct drm_modeline is a significant part of the API, and especially I'd like to get feedback on that struct if I am missing anything important there.

In the end, the new API is used to implement the same fallback-mode functionality in the weston.ini that I proposed in !1254 (closed) to handle outputs with broken or invalid EDID.

Furthermore, the new API may be used to present a list of detected modes (including the modeline) to the user. This would allow adding a UI for selecting a mode at runtime in the future.

Merge request reports