OSDN Git Service

drm_hwcomposer: Mark tests as vendor, fix build
[android-x86/external-drm_hwcomposer.git] / drmconnector.cpp
index 7f1f2b0..10b96b5 100644 (file)
@@ -22,7 +22,7 @@
 #include <errno.h>
 #include <stdint.h>
 
-#include <cutils/log.h>
+#include <log/log.h>
 #include <xf86drmMode.h>
 
 namespace android {
@@ -67,9 +67,19 @@ void DrmConnector::set_display(int display) {
   display_ = display;
 }
 
-bool DrmConnector::built_in() const {
+bool DrmConnector::internal() const {
   return type_ == DRM_MODE_CONNECTOR_LVDS || type_ == DRM_MODE_CONNECTOR_eDP ||
-         type_ == DRM_MODE_CONNECTOR_DSI;
+         type_ == DRM_MODE_CONNECTOR_DSI || type_ == DRM_MODE_CONNECTOR_VIRTUAL;
+}
+
+bool DrmConnector::external() const {
+  return type_ == DRM_MODE_CONNECTOR_HDMIA || type_ == DRM_MODE_CONNECTOR_DisplayPort ||
+         type_ == DRM_MODE_CONNECTOR_DVID || type_ == DRM_MODE_CONNECTOR_DVII ||
+         type_ == DRM_MODE_CONNECTOR_VGA;
+}
+
+bool DrmConnector::valid_type() const {
+  return internal() || external();
 }
 
 int DrmConnector::UpdateModes() {
@@ -81,6 +91,8 @@ int DrmConnector::UpdateModes() {
     return -ENODEV;
   }
 
+  state_ = c->connection;
+
   std::vector<DrmMode> new_modes;
   for (int i = 0; i < c->count_modes; ++i) {
     bool exists = false;
@@ -126,6 +138,10 @@ void DrmConnector::set_encoder(DrmEncoder *encoder) {
   encoder_ = encoder;
 }
 
+drmModeConnection DrmConnector::state() const {
+  return state_;
+}
+
 uint32_t DrmConnector::mm_width() const {
   return mm_width_;
 }