Merge "hwc2: validate display id in SetColorModeById"
diff --git a/gpu_tonemapper/Android.mk b/gpu_tonemapper/Android.mk
index 769d0ab..89bad79 100644
--- a/gpu_tonemapper/Android.mk
+++ b/gpu_tonemapper/Android.mk
@@ -4,6 +4,7 @@
include $(CLEAR_VARS)
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)
LOCAL_COPY_HEADERS := TonemapFactory.h Tonemapper.h
+LOCAL_VENDOR_MODULE := true
include $(BUILD_COPY_HEADERS)
include $(CLEAR_VARS)
diff --git a/include/Android.mk b/include/Android.mk
index 6aacfb8..a72d5c3 100644
--- a/include/Android.mk
+++ b/include/Android.mk
@@ -2,6 +2,7 @@
include $(LOCAL_PATH)/../common.mk
include $(CLEAR_VARS)
+LOCAL_VENDOR_MODULE := true
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)
LOCAL_COPY_HEADERS := color_metadata.h
@@ -9,7 +10,8 @@
include $(CLEAR_VARS)
#TODO move all exported headers to this directory
-LOCAL_MODULE := display_headers
+LOCAL_MODULE := display_headers
+LOCAL_VENDOR_MODULE := true
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) \
$(display_top)/libcopybit \
$(display_top)/libdrmutils \
diff --git a/libcopybit/Android.mk b/libcopybit/Android.mk
index a363b85..8396d51 100644
--- a/libcopybit/Android.mk
+++ b/libcopybit/Android.mk
@@ -16,6 +16,7 @@
include $(LOCAL_PATH)/../common.mk
include $(CLEAR_VARS)
+LOCAL_VENDOR_MODULE := true
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)
LOCAL_COPY_HEADERS := copybit.h copybit_priv.h c2d2.h
#Copy the headers regardless of whether copybit is built
diff --git a/libqdutils/Android.mk b/libqdutils/Android.mk
index 60efb3a..5dac581 100644
--- a/libqdutils/Android.mk
+++ b/libqdutils/Android.mk
@@ -8,6 +8,7 @@
LOCAL_SHARED_LIBRARIES := $(common_libs) libbinder libqservice
LOCAL_C_INCLUDES := $(common_includes) $(kernel_includes)
LOCAL_HEADER_LIBRARIES := display_headers
+LOCAL_HEADER_LIBRARIES += libhardware_headers
LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdutils\" -Wno-sign-conversion
LOCAL_ADDITIONAL_DEPENDENCIES := $(common_deps)
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)
diff --git a/sdm/libs/core/Android.mk b/sdm/libs/core/Android.mk
index cf3543c..bb3b71d 100644
--- a/sdm/libs/core/Android.mk
+++ b/sdm/libs/core/Android.mk
@@ -60,6 +60,7 @@
SDM_HEADER_PATH := ../../include
include $(CLEAR_VARS)
+LOCAL_VENDOR_MODULE := true
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)/sdm/core
LOCAL_COPY_HEADERS = $(SDM_HEADER_PATH)/core/buffer_allocator.h \
$(SDM_HEADER_PATH)/core/buffer_sync_handler.h \
@@ -74,6 +75,7 @@
include $(BUILD_COPY_HEADERS)
include $(CLEAR_VARS)
+LOCAL_VENDOR_MODULE := true
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)/sdm/private
LOCAL_COPY_HEADERS = $(SDM_HEADER_PATH)/private/color_interface.h \
$(SDM_HEADER_PATH)/private/color_params.h \
diff --git a/sdm/libs/core/fb/hw_device.cpp b/sdm/libs/core/fb/hw_device.cpp
index 4931e1b..8d76a09 100644
--- a/sdm/libs/core/fb/hw_device.cpp
+++ b/sdm/libs/core/fb/hw_device.cpp
@@ -46,6 +46,7 @@
#include <vector>
#include <algorithm>
#include <string>
+#include <sstream>
#include "hw_device.h"
#include "hw_primary.h"
@@ -1363,7 +1364,14 @@
DLOGW("Pingpong timeout occurred in the driver.");
#ifdef USER_DEBUG
// Save the xlogs on ping pong time out
- std::ofstream dst("/data/vendor/display/mdp_xlog");
+ const char* xlog_path = "/data/vendor/display/mdp_xlog";
+ DLOGD("Dumping debugfs data to %s", xlog_path);
+ std::ostringstream dst;
+ auto file = open(xlog_path, O_CREAT | O_DSYNC | O_RDWR, "w+");
+ if (file < 0) {
+ DLOGE("Couldn't open file: err:%d (%s)",errno, strerror(errno));
+ return kErrorResources;
+ }
dst << "+++ MDP:XLOG +++" << std::endl;
std::ifstream src("/sys/kernel/debug/mdp/xlog/dump");
dst << src.rdbuf() << std::endl;
@@ -1383,6 +1391,14 @@
src.open("/sys/kernel/debug/mdp/xlog/vbif_dbgbus_xlog");
dst << src.rdbuf() << std::endl;
src.close();
+ auto ret = write(file, dst.str().c_str(), dst.str().size());
+ if (ret < 0) {
+ DLOGE("Failed to write xlog data err: %d (%s)", errno, strerror(errno));
+ } else {
+ fsync(file);
+ }
+ close(file);
+ DLOGD("Finished dumping xlogs");;
#endif
return kErrorNone;
}
diff --git a/sdm/libs/hwc2/hwc_color_manager.cpp b/sdm/libs/hwc2/hwc_color_manager.cpp
index 6f33a6d..d753fdc 100644
--- a/sdm/libs/hwc2/hwc_color_manager.cpp
+++ b/sdm/libs/hwc2/hwc_color_manager.cpp
@@ -404,8 +404,8 @@
};
if (socket_fd_ < 0) {
- DLOGW("No socket connection available!");
- return -EFAULT;
+ DLOGW("No socket connection available - assuming dpps is not enabled");
+ return 0;
}
if (!enable) { // if client requesting to disable it.
diff --git a/sdm/libs/hwc2/hwc_layers.h b/sdm/libs/hwc2/hwc_layers.h
index 30fc362..25ec4dc 100644
--- a/sdm/libs/hwc2/hwc_layers.h
+++ b/sdm/libs/hwc2/hwc_layers.h
@@ -119,7 +119,7 @@
};
struct SortLayersByZ {
- bool operator()(const HWCLayer *lhs, const HWCLayer *rhs) {
+ bool operator()(const HWCLayer *lhs, const HWCLayer *rhs) const {
return lhs->GetZ() < rhs->GetZ();
}
};
diff --git a/sdm/libs/utils/Android.mk b/sdm/libs/utils/Android.mk
index 09e1414..481ea39 100644
--- a/sdm/libs/utils/Android.mk
+++ b/sdm/libs/utils/Android.mk
@@ -18,6 +18,7 @@
SDM_HEADER_PATH := ../../include
include $(CLEAR_VARS)
+LOCAL_VENDOR_MODULE := true
LOCAL_COPY_HEADERS_TO := $(common_header_export_path)/sdm/utils
LOCAL_COPY_HEADERS = $(SDM_HEADER_PATH)/utils/constants.h \
$(SDM_HEADER_PATH)/utils/debug.h \