summaryrefslogtreecommitdiff
path: root/drmresources.cpp
diff options
context:
space:
mode:
authorRobert Foss <robert.foss@collabora.com>2017-11-01 12:50:04 -0500
committerRobert Foss <robert.foss@collabora.com>2017-11-01 19:05:45 +0100
commit610d98990b9fee441e53476a94ee8e636096c120 (patch)
tree0aad7f620e99cc710a20bccf91422517d7beafe8 /drmresources.cpp
parentbd03b9996a4015e9b562b3b9861ebd706bcafb6a (diff)
drm_hwcomposer: Add HDMI connector as a valid type
Accept DRM_MODE_CONNECTOR_HDMIA connector type. Look for primary DrmConnector amongst external connectors after looking for primary amongst internal ones first. Signed-off-by: Robert Foss <robert.foss@collabora.com> Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'drmresources.cpp')
-rw-r--r--drmresources.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/drmresources.cpp b/drmresources.cpp
index 67a853c..32dd376 100644
--- a/drmresources.cpp
+++ b/drmresources.cpp
@@ -154,16 +154,28 @@ int DrmResources::Init() {
break;
}
- if (conn->built_in() && !found_primary) {
+ connectors_.emplace_back(std::move(conn));
+ }
+
+ // First look for primary amongst internal connectors
+ for (auto &conn : connectors_) {
+ if (conn->internal() && !found_primary) {
conn->set_display(0);
found_primary = true;
} else {
conn->set_display(display_num);
++display_num;
}
+ }
- connectors_.emplace_back(std::move(conn));
+ // Then look for primary amongst external connectors
+ for (auto &conn : connectors_) {
+ if (conn->external() && !found_primary) {
+ conn->set_display(0);
+ found_primary = true;
+ }
}
+
if (res)
drmModeFreeResources(res);