summaryrefslogtreecommitdiff
path: root/sdm/libs/hwc2/hwc_session.cpp
diff options
context:
space:
mode:
authorRamakant Singh <ramakant@codeaurora.org>2020-01-31 14:32:59 -0800
committerRamakant Singh <ramakant@codeaurora.org>2020-02-12 13:34:36 +0530
commit3bdea5973f7d011ba9637614bb8eaddee7f7bbbe (patch)
treee3856e8b25f4fc0b48ad85f354209cd58e635eef /sdm/libs/hwc2/hwc_session.cpp
parent7d493c9981ebb6cdd05ea8c639dca9b931af8017 (diff)
sdm: Implement SetDisplayBrightness, GetDisplayBrightness
Change-Id: Iadc258f0c5b01a411a0c366db7df5c52a17e4f1c
Diffstat (limited to 'sdm/libs/hwc2/hwc_session.cpp')
-rw-r--r--sdm/libs/hwc2/hwc_session.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/sdm/libs/hwc2/hwc_session.cpp b/sdm/libs/hwc2/hwc_session.cpp
index 790e7eb0..7a8c4e2b 100644
--- a/sdm/libs/hwc2/hwc_session.cpp
+++ b/sdm/libs/hwc2/hwc_session.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014-2019, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2014-2020, The Linux Foundation. All rights reserved.
* Not a Contribution.
*
* Copyright 2015 The Android Open Source Project
@@ -1297,6 +1297,8 @@ hwc2_function_pointer_t HWCSession::GetFunction(struct hwc2_device *device,
return AsFP<HWC2_PFN_GET_DISPLAY_CAPABILITIES>(HWCSession::GetDisplayCapabilities);
case HWC2::FunctionDescriptor::GetDisplayBrightnessSupport:
return AsFP<HWC2_PFN_GET_DISPLAY_BRIGHTNESS_SUPPORT>(HWCSession::GetDisplayBrightnessSupport);
+ case HWC2::FunctionDescriptor::SetDisplayBrightness:
+ return AsFP<HWC2_PFN_SET_DISPLAY_BRIGHTNESS>(SetDisplayBrightness);
default:
DLOGD("Unknown/Unimplemented function descriptor: %d (%s)", int_descriptor,
to_string(descriptor).c_str());
@@ -3265,7 +3267,7 @@ int32_t HWCSession::GetDisplayCapabilities(hwc2_device_t *device, hwc2_display_t
if (!outCapabilities) {
*outNumCapabilities = 0;
if (isBuiltin) {
- *outNumCapabilities = 2;
+ *outNumCapabilities = 3;
}
return HWC2_ERROR_NONE;
} else {
@@ -3273,12 +3275,18 @@ int32_t HWCSession::GetDisplayCapabilities(hwc2_device_t *device, hwc2_display_t
// TODO(user): Handle SKIP_CLIENT_COLOR_TRANSFORM based on DSPP availability
outCapabilities[0] = HWC2_DISPLAY_CAPABILITY_SKIP_CLIENT_COLOR_TRANSFORM;
outCapabilities[1] = HWC2_DISPLAY_CAPABILITY_DOZE;
- *outNumCapabilities = 2;
+ outCapabilities[2] = HWC2_DISPLAY_CAPABILITY_BRIGHTNESS;
+ *outNumCapabilities = 3;
}
return HWC2_ERROR_NONE;
}
}
+int32_t HWCSession::SetDisplayBrightness(hwc2_device_t *device, hwc2_display_t display,
+ float brightness) {
+ return INT32(HWC2::Error::None);
+}
+
int32_t HWCSession::GetDisplayBrightnessSupport(hwc2_device_t *device, hwc2_display_t display,
bool *outSupport) {
if (!device || !outSupport) {
@@ -3297,7 +3305,7 @@ int32_t HWCSession::GetDisplayBrightnessSupport(hwc2_device_t *device, hwc2_disp
}
// This function isn't actually used in the framework
// The capability is used instead
- *outSupport = false;
+ *outSupport = (hwc_display->GetDisplayClass() == DISPLAY_CLASS_BUILTIN);
return HWC2_ERROR_NONE;
}