summaryrefslogtreecommitdiff
path: root/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-03-11 04:25:48 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-03-11 04:25:48 +0000
commite900332d6589dd5b25a0d5eb354ee402c55b2376 (patch)
treee40caa739e1f837f4c2ab5848c74595c05b6bb5c /libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
parent58b5e577e66276787edc84445f9bab35debf71d0 (diff)
parente6f8ced56ecc80b00288a21576d376dc02caee7c (diff)
Snap for 9728260 from e6f8ced56ecc80b00288a21576d376dc02caee7c to udc-release
Change-Id: If89d6769c363ddfd9f6a5dc13f7090ade595736a
Diffstat (limited to 'libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp')
-rw-r--r--libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
index 7f565e4..6a2be7d 100644
--- a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
+++ b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
@@ -431,7 +431,8 @@ int32_t ExynosDisplayDrmInterface::getDefaultModeId(int32_t *modeId) {
return NO_ERROR;
}
-ExynosDisplayDrmInterface::ExynosDisplayDrmInterface(ExynosDisplay *exynosDisplay)
+ExynosDisplayDrmInterface::ExynosDisplayDrmInterface(ExynosDisplay *exynosDisplay):
+ mMonitorDescription{0}
{
mType = INTERFACE_TYPE_DRM;
init(exynosDisplay);
@@ -2423,6 +2424,11 @@ int32_t ExynosDisplayDrmInterface::getDisplayFakeEdid(uint8_t &outPort, uint32_t
edid_buf[59] = height & 0xff;
edid_buf[61] = (height >> 4) & 0xf0;
+ if (mMonitorDescription[0] != 0) {
+ /* Descriptor block 3 starts at address 90, data offset is 5 bytes */
+ memcpy(&edid_buf[95], mMonitorDescription.data(), mMonitorDescription.size());
+ }
+
unsigned int sum = std::accumulate(edid_buf.begin(), edid_buf.end() - 1, 0);
edid_buf[127] = (0x100 - (sum & 0xFF)) & 0xFF;
if (outData) {