drm: only scan connected connectors (#155)

only scan connected connectors when deciding which gpu to become primary
mux switched laptops still have connectors for internal panel but not
connected.
This commit is contained in:
Tom Englund 2025-03-04 14:58:38 +01:00 committed by GitHub
parent 7b5db3d8a2
commit b236a43699
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -76,7 +76,7 @@ static int gpuNumBuiltinPanels(const SP<CSessionDevice> gpu) {
int num = 0;
for (int i = 0; i < resources->count_connectors; ++i) {
auto drmConn = drmModeGetConnector(gpu->fd, resources->connectors[i]);
if (!drmConn)
if (!drmConn || drmConn->connection != DRM_MODE_CONNECTED)
continue;
if (drmConn->connector_type == DRM_MODE_CONNECTOR_LVDS || drmConn->connector_type == DRM_MODE_CONNECTOR_eDP || drmConn->connector_type == DRM_MODE_CONNECTOR_DSI)