Initial unified commit for Android 14, with TrebleDroid GSI target, syncing up to 20240208
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
From b4326dbe1c0ad9c80c5a5da3b6222f08f25628ab Mon Sep 17 00:00:00 2001
|
||||
From: Pierre-Hugues Husson <phh@phh.me>
|
||||
Date: Sun, 19 Dec 2021 17:03:15 -0500
|
||||
Subject: [PATCH 1/3] Add a vendor800 command, to be able to call
|
||||
vendor-specific hwc functions
|
||||
|
||||
Change-Id: Icbef1e9e3a331ae3bd5a05687d545851d94d88a8
|
||||
---
|
||||
.../composer-command-buffer/2.1/ComposerCommandBuffer.h | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/graphics/composer/2.1/utils/command-buffer/include/composer-command-buffer/2.1/ComposerCommandBuffer.h b/graphics/composer/2.1/utils/command-buffer/include/composer-command-buffer/2.1/ComposerCommandBuffer.h
|
||||
index 499d3b96e..489578468 100644
|
||||
--- a/graphics/composer/2.1/utils/command-buffer/include/composer-command-buffer/2.1/ComposerCommandBuffer.h
|
||||
+++ b/graphics/composer/2.1/utils/command-buffer/include/composer-command-buffer/2.1/ComposerCommandBuffer.h
|
||||
@@ -402,6 +402,12 @@ class CommandWriterBase {
|
||||
endCommand();
|
||||
}
|
||||
|
||||
+ void vendor800_1(uint32_t val) {
|
||||
+ beginCommand(0x800 << 16, 1);
|
||||
+ write(val);
|
||||
+ endCommand();
|
||||
+ }
|
||||
+
|
||||
protected:
|
||||
template <typename T>
|
||||
void beginCommand(T command, uint16_t length) {
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
From 7adc66904796a05023a6ed6ec81e5ada75fe3991 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 18 Apr 2023 23:48:15 +0000
|
||||
Subject: [PATCH 2/3] Fix light sensor crash on Xiaomi 13
|
||||
|
||||
SensorService expects a scalar, but Xiaomi HAL returns a pose6DOF vector encapsulation
|
||||
Thanks @phhusson for the analysis
|
||||
|
||||
Change-Id: Ie358321d5328d01541f455d6af86944ff413c9c9
|
||||
---
|
||||
sensors/aidl/convert/convert.cpp | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/sensors/aidl/convert/convert.cpp b/sensors/aidl/convert/convert.cpp
|
||||
index 2dc7a177a..be3833dfa 100644
|
||||
--- a/sensors/aidl/convert/convert.cpp
|
||||
+++ b/sensors/aidl/convert/convert.cpp
|
||||
@@ -162,7 +162,14 @@ void convertToSensorEvent(const Event& src, sensors_event_t* dst) {
|
||||
case SensorType::MOTION_DETECT:
|
||||
case SensorType::HEART_BEAT:
|
||||
case SensorType::LOW_LATENCY_OFFBODY_DETECT: {
|
||||
- dst->data[0] = src.payload.get<Event::EventPayload::scalar>();
|
||||
+ if (src.payload.getTag() == Event::EventPayload::pose6DOF) {
|
||||
+ auto d = src.payload.get<Event::EventPayload::pose6DOF>();
|
||||
+ auto dstr = ::android::internal::ToString(d);
|
||||
+ // ALOGE("Received 6DOF for expected scalar %s", dstr.c_str());
|
||||
+ dst->data[0] = d.values[0];
|
||||
+ } else {
|
||||
+ dst->data[0] = src.payload.get<Event::EventPayload::scalar>();
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
From cd80c23bc3bd357946d679da60704a70757eaffd Mon Sep 17 00:00:00 2001
|
||||
From: Pierre-Hugues Husson <phh@phh.me>
|
||||
Date: Tue, 24 Oct 2023 04:59:57 -0400
|
||||
Subject: [PATCH 3/3] Fix crash on Samsung S23 using stock properties, because
|
||||
of sensor reporting vec3 instead of scalar. Likely the device orientation
|
||||
sensor
|
||||
|
||||
---
|
||||
sensors/aidl/convert/convert.cpp | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/sensors/aidl/convert/convert.cpp b/sensors/aidl/convert/convert.cpp
|
||||
index be3833dfa..c56b30475 100644
|
||||
--- a/sensors/aidl/convert/convert.cpp
|
||||
+++ b/sensors/aidl/convert/convert.cpp
|
||||
@@ -167,6 +167,9 @@ void convertToSensorEvent(const Event& src, sensors_event_t* dst) {
|
||||
auto dstr = ::android::internal::ToString(d);
|
||||
// ALOGE("Received 6DOF for expected scalar %s", dstr.c_str());
|
||||
dst->data[0] = d.values[0];
|
||||
+ } else if (src.payload.getTag() == Event::EventPayload::vec3) {
|
||||
+ auto d = src.payload.get<Event::EventPayload::vec3>();
|
||||
+ dst->data[0] = d.x;
|
||||
} else {
|
||||
dst->data[0] = src.payload.get<Event::EventPayload::scalar>();
|
||||
}
|
||||
--
|
||||
2.25.1
|
||||
|
||||
Reference in New Issue
Block a user