lineage-21

This commit is contained in:
2025-08-12 02:06:49 +08:00
parent 8d559e65a1
commit 548ca7eb1c
24 changed files with 468 additions and 661 deletions

View File

@@ -1,92 +0,0 @@
From 4891f5c311d7854b4d7b8357290ed08b866240d9 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Sun, 4 Jun 2023 14:34:32 +0200
Subject: [PATCH] Revert "sepolicy:qcc: switch to platform app"
---
generic/private/file.te | 6 +-----
generic/private/qcc_app.te | 14 +++++++++-----
generic/private/seapp_contexts | 6 +-----
3 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/generic/private/file.te b/generic/private/file.te
index 79a0416e..c9db4fcf 100644
--- a/generic/private/file.te
+++ b/generic/private/file.te
@@ -24,16 +24,12 @@
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-# Changes from Qualcomm Innovation Center are provided under the following license:
-# Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
-# SPDX-License-Identifier: BSD-3-Clause-Clear
type vendor_seemp_data_file, core_data_file_type, data_file_type, file_type;
type vendor_dpmd_socket, file_type, coredomain_socket;
type vendor_dpmd_data_file, file_type, data_file_type, core_data_file_type;
type vendor_dpmwrapper_socket, file_type, coredomain_socket, mlstrustedobject;
-type vendor_qcc_data_file, file_type, data_file_type, core_data_file_type, mlstrustedobject;
+type vendor_qcc_data_file, file_type, data_file_type, core_data_file_type;
type vendor_qcc_app_socket, file_type, mlstrustedobject, coredomain_socket;
type vendor_sys_sxrauxd_data_file, file_type, data_file_type, core_data_file_type;
type vendor_sys_sxrauxd_socket, file_type, coredomain_socket;
diff --git a/generic/private/qcc_app.te b/generic/private/qcc_app.te
index 014400ce..9bca53a0 100644
--- a/generic/private/qcc_app.te
+++ b/generic/private/qcc_app.te
@@ -30,10 +30,11 @@
# Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
# SPDX-License-Identifier: BSD-3-Clause-Clear
+typeattribute vendor_qcc_app mlstrustedsubject;
+
app_domain(vendor_qcc_app)
net_domain(vendor_qcc_app)
binder_use(vendor_qcc_app)
-hal_client_domain(vendor_qcc_app, vendor_qccsyshal);
allow vendor_qcc_app radio_service:service_manager find;
# for vendor_perf_service
@@ -49,10 +50,13 @@ unix_socket_connect(vendor_qcc_app, vendor_dpmtcm, vendor_tcmd)
# allow access to mediadrmserver for qdmastats/wvstats
allow vendor_qcc_app mediadrmserver_service:service_manager find;
-# allow vendor_qcc_app to access app_data_file
-# necessary for read and write /data/user_de/0/data subdirectory.
-allow vendor_qcc_app app_data_file:dir create_dir_perms;
-allow vendor_qcc_app app_data_file:file create_file_perms;
+# allow vendor_qcc_app to access system_app_data_file
+# necessary for read and write /data/user_de/0/com.---.qti.qdma subdirectory.
+allow vendor_qcc_app system_data_file:dir search;
+allow vendor_qcc_app system_app_data_file:dir create_dir_perms;
+allow vendor_qcc_app system_app_data_file:file create_file_perms;
+
+allow vendor_qcc_app user_profile_root_file:dir search;
# allow cgroup access
allow vendor_qcc_app cgroup:file rw_file_perms;
diff --git a/generic/private/seapp_contexts b/generic/private/seapp_contexts
index bdb1f72c..9132b4ef 100644
--- a/generic/private/seapp_contexts
+++ b/generic/private/seapp_contexts
@@ -24,10 +24,6 @@
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-# Changes from Qualcomm Innovation Center are provided under the following license:
-# Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
-# SPDX-License-Identifier: BSD-3-Clause-Clear
#Add new domain for DataServices
# Needed for CNEService , uceShimService and other connectivity services
@@ -51,7 +47,7 @@ user=_app seinfo=platform name=com.qualcomm.wfd.service:wfd_service domain=vendo
user=_app seinfo=platform name=com.qualcomm.wfd.client domain=vendor_wfd_app type=app_data_file levelfrom=all
#Add new domain for QCC
-user=_app seinfo=platform name=com.qti.qcc domain=vendor_qcc_app type=app_data_file levelFrom=all
+user=system seinfo=platform name=com.qti.qcc isPrivApp=true domain=vendor_qcc_app type=system_app_data_file
#Add new domain for QCCLMTP
user=system seinfo=platform name=com.qualcomm.qti.qcclmtp isPrivApp=true domain=vendor_qcc_lmtp_app type=system_app_data_file
#Add new domain for QCCNetstat

View File

@@ -0,0 +1,38 @@
From cc113d7ceeea056cdf9017631c49d15761331746 Mon Sep 17 00:00:00 2001
From: Luofan Chen <clfbbn@gmail.com>
Date: Thu, 4 Jul 2024 17:24:02 +0000
Subject: [PATCH] sepolicy_vndr: Label proc firmware config node
Change-Id: Icbb7fdf23e4a76c542a15693feb46bec99ac8df8
---
generic/vendor/common/file.te | 1 +
generic/vendor/common/genfs_contexts | 1 +
2 files changed, 2 insertions(+)
diff --git a/generic/vendor/common/file.te b/generic/vendor/common/file.te
index 75eaf0a1..10d5ed38 100644
--- a/generic/vendor/common/file.te
+++ b/generic/vendor/common/file.te
@@ -121,6 +121,7 @@ type vendor_sysfs_haptics, fs_type, sysfs_type;
type vendor_proc_wifi_dbg, fs_type, proc_type;
type vendor_proc_audiod, fs_type, proc_type;
type vendor_proc_shs, fs_type, proc_type;
+type vendor_proc_firmware_cfg, fs_type, proc_type;
type vendor_qmuxd_socket, file_type;
type vendor_rild_socket, file_type;
diff --git a/generic/vendor/common/genfs_contexts b/generic/vendor/common/genfs_contexts
index 3654c726..a4f95d16 100644
--- a/generic/vendor/common/genfs_contexts
+++ b/generic/vendor/common/genfs_contexts
@@ -63,6 +63,7 @@ genfscon proc /debug/fwdump u:object_r:vendor_proc_wif
genfscon proc /debugdriver/driverdump u:object_r:vendor_proc_wifi_dbg:s0
genfscon proc /ath_pktlog/cld u:object_r:vendor_proc_wifi_dbg:s0
genfscon proc /shs u:object_r:vendor_proc_shs:s0
+genfscon proc /sys/kernel/firmware_config u:object_r:vendor_proc_firmware_cfg:s0
genfscon sysfs /android_touch u:object_r:vendor_sysfs_touch:s0
genfscon sysfs /devices/virtual/input/ftm4_touch u:object_r:vendor_sysfs_touch:s0
--
2.25.1

View File

@@ -0,0 +1,37 @@
From 43f02ac5348f4f130ede6bf3daf0d27035d39344 Mon Sep 17 00:00:00 2001
From: Luofan Chen <clfbbn@gmail.com>
Date: Thu, 4 Jul 2024 17:24:45 +0000
Subject: [PATCH] sepolicy_vndr: Allow init/vendor_init to write proc firmware
config
Change-Id: Id0e64302dbbdc53620cbc1825c36e13bb9e58aef
---
generic/vendor/common/init.te | 2 ++
generic/vendor/common/vendor_init.te | 1 +
2 files changed, 3 insertions(+)
diff --git a/generic/vendor/common/init.te b/generic/vendor/common/init.te
index 826c2b6f..312d751c 100644
--- a/generic/vendor/common/init.te
+++ b/generic/vendor/common/init.te
@@ -87,3 +87,5 @@ allow init vendor_sysfs_graphics:file w_file_perms;
allow init vendor_sysfs_graphics:dir search;
allow init vendor_sysfs_usb_device:file w_file_perms;
')
+
+allow init vendor_proc_firmware_cfg:file w_file_perms;
diff --git a/generic/vendor/common/vendor_init.te b/generic/vendor/common/vendor_init.te
index ef568d45..da45aaf5 100644
--- a/generic/vendor/common/vendor_init.te
+++ b/generic/vendor/common/vendor_init.te
@@ -30,6 +30,7 @@ allow vendor_init unlabeled:dir { r_dir_perms setattr relabelfrom };
allow vendor_init unlabeled:file { r_file_perms setattr relabelfrom };
allow vendor_init vendor_ipa_dev:chr_file w_file_perms;
allow vendor_init proc:file write;
+allow vendor_init vendor_proc_firmware_cfg:file w_file_perms;
allow vendor_init self:capability sys_module;
--
2.25.1

View File

@@ -1,25 +0,0 @@
From f46c758ba07baed14622b342b09b2df5a51a2984 Mon Sep 17 00:00:00 2001
From: kuailexs <952415538@qq.com>
Date: Mon, 22 Apr 2024 22:39:39 +0800
Subject: [PATCH] fix build
---
gps/android/2.1/service.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gps/android/2.1/service.cpp b/gps/android/2.1/service.cpp
index 22cc0f2..7579a06 100644
--- a/gps/android/2.1/service.cpp
+++ b/gps/android/2.1/service.cpp
@@ -53,7 +53,7 @@ typedef const void* (*gnssAutoPowerHandler)(void);
void initializeGnssPowerHandler() {
void * handle = nullptr;
- const char* error = nullptr;
+ //const char* error = nullptr;
gnssAutoPowerHandler getter = nullptr;
getter = (gnssAutoPowerHandler) dlGetSymFromLib(handle, GNSS_POWER_LIBNAME,
--
2.25.1

View File

@@ -1,22 +0,0 @@
From 966aae39fb309ed56c3836926623c5ce858ce077 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Wed, 15 Mar 2023 11:15:25 +0100
Subject: [PATCH] SessionConfigurationUtils: Allow privileged camera apps to create raw streams for raw capable cameras
Change-Id: I4e82027917e458e1472464e7317bb1968ff7ee2c
---
diff --git a/services/camera/libcameraservice/utils/SessionConfigurationUtils.cpp b/services/camera/libcameraservice/utils/SessionConfigurationUtils.cpp
index eb45fbe..7e80052 100644
--- a/services/camera/libcameraservice/utils/SessionConfigurationUtils.cpp
+++ b/services/camera/libcameraservice/utils/SessionConfigurationUtils.cpp
@@ -198,7 +198,8 @@
auto entry = info.find(ANDROID_REQUEST_AVAILABLE_CAPABILITIES);
for (size_t i = 0; i < entry.count; ++i) {
uint8_t capability = entry.data.u8[i];
- if (capability == ANDROID_REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA) {
+ if (capability == ANDROID_REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA ||
+ capability == ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW) {
isLogicalCamera = true;
break;
}

View File

@@ -1,27 +0,0 @@
From 4ae78da655484f99715fa8ad7550d2086ee19871 Mon Sep 17 00:00:00 2001
From: wbs306 <wbs306@gmail.com>
Date: Thu, 27 Oct 2022 20:58:17 +0800
Subject: [PATCH] Camera: Expose aux camera if packagename is null
In case of the pacckage name not being found properly
the name would always be found in the excludelist, even
if the list is empty. This leads to denying aux camera
access in some cases where it is not intended to be
blocked.
Change-Id: I75c620ab876ebabf71c740e04004e4120edd93ae
---
diff --git a/core/java/android/hardware/Camera.java b/core/java/android/hardware/Camera.java
index 7193b93..3f82ea7 100644
--- a/core/java/android/hardware/Camera.java
+++ b/core/java/android/hardware/Camera.java
@@ -276,6 +276,8 @@
* if the package name does not falls in this bucket
*/
String packageName = ActivityThread.currentOpPackageName();
+ if (packageName == null)
+ return true;
List<String> packageList = new ArrayList<>(Arrays.asList(
SystemProperties.get("vendor.camera.aux.packagelist", ",").split(",")));
List<String> packageExcludelist = new ArrayList<>(Arrays.asList(

View File

@@ -1,26 +0,0 @@
From d18b2cba982f64c4098ebc063ff0caeb82f9b16a Mon Sep 17 00:00:00 2001
From: Avinash Nalluri <quic_analluri@quicinc.com>
Date: Mon, 24 Jan 2022 12:21:45 -0800
Subject: [PATCH] Disable proguard for CellularNetworkServiceProvider
It prevents the CellularNetworkServiceProvider class
gets shrunk by the ProGuard so that the class methods
are accessible at run time.
Change-Id: Idb34c1dcd5ca0d449b0202bea774c68dab3b0ee8
CRs-Fixed: 3115662
---
diff --git a/proguard.flags b/proguard.flags
index ebc8922..e930de0 100644
--- a/proguard.flags
+++ b/proguard.flags
@@ -27,3 +27,8 @@
-keepclassmembers class * {
@**.UnsupportedAppUsage *;
}
+
+# Keep CellularNetworkServiceProvider members
+-keepclasseswithmembers class com.android.internal.telephony.CellularNetworkService$CellularNetworkServiceProvider {
+*;
+}

View File

@@ -1,62 +0,0 @@
From dd06504666b2183f8dbff45e4fbff5305ad70dae Mon Sep 17 00:00:00 2001
From: Sneh Bansal <snehb@codeaurora.org>
Date: Tue, 09 Mar 2021 15:51:47 +0530
Subject: [PATCH] Add provision to override CellularNetworkService
- Add a default constructor
- Change access specifier of some members to protected
- Make SST's registration managers accessible to its derived classes.
Change-Id: Iff2d36075a79721bd71754ff37999289494bafff
CRs-Fixed: 2838720
---
diff --git a/src/java/com/android/internal/telephony/CellularNetworkService.java b/src/java/com/android/internal/telephony/CellularNetworkService.java
index 4253905..5f19b7f 100644
--- a/src/java/com/android/internal/telephony/CellularNetworkService.java
+++ b/src/java/com/android/internal/telephony/CellularNetworkService.java
@@ -109,7 +109,7 @@
TelephonyManager.NETWORK_TYPE_TD_SCDMA}));
}
- private class CellularNetworkServiceProvider extends NetworkServiceProvider {
+ protected class CellularNetworkServiceProvider extends NetworkServiceProvider {
private final Map<Message, NetworkServiceCallback> mCallbackMap = new HashMap<>();
@@ -117,6 +117,12 @@
private final Phone mPhone;
+ protected CellularNetworkServiceProvider() {
+ super(SubscriptionManager.DEFAULT_SIM_SLOT_INDEX);
+ mHandler = null;
+ mPhone = null;
+ }
+
CellularNetworkServiceProvider(int slotId) {
super(slotId);
@@ -236,7 +242,8 @@
return availableServices;
}
- private NetworkRegistrationInfo getRegistrationStateFromResult(Object result, int domain) {
+ protected NetworkRegistrationInfo getRegistrationStateFromResult(Object result,
+ int domain) {
if (result == null) {
return null;
}
diff --git a/src/java/com/android/internal/telephony/ServiceStateTracker.java b/src/java/com/android/internal/telephony/ServiceStateTracker.java
index 3ed4578..9210a21 100755
--- a/src/java/com/android/internal/telephony/ServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/ServiceStateTracker.java
@@ -614,7 +614,7 @@
private String mCurrentCarrier = null;
private final AccessNetworksManager mAccessNetworksManager;
- private final SparseArray<NetworkRegistrationManager> mRegStateManagers = new SparseArray<>();
+ protected final SparseArray<NetworkRegistrationManager> mRegStateManagers = new SparseArray<>();
/* Last known TAC/LAC */
private int mLastKnownAreaCode = CellInfo.UNAVAILABLE;

View File

@@ -1,35 +0,0 @@
From 7f1ca2eae8ace66efca12c4b47614f6b2f0915fa Mon Sep 17 00:00:00 2001
From: Mengjun Leng <quic_mengjunl@quicinc.com>
Date: Wed, 12 Oct 2022 10:28:16 +0800
Subject: [PATCH] Make a few members of DSM overridable and accessible
Changes the API updateDataEnabledAndNotify as protected.
Changes the member variable mPhone as protected.
Change-Id: I48d23c2c6229d44922ba5ba9927cfa03de367a9f
CRs-Fixed: 3310431
---
diff --git a/src/java/com/android/internal/telephony/data/DataSettingsManager.java b/src/java/com/android/internal/telephony/data/DataSettingsManager.java
index c593f88..6347ed8 100644
--- a/src/java/com/android/internal/telephony/data/DataSettingsManager.java
+++ b/src/java/com/android/internal/telephony/data/DataSettingsManager.java
@@ -78,7 +78,7 @@
/** Event for initializing DataSettingsManager. */
private static final int EVENT_INITIALIZE = 11;
- private final Phone mPhone;
+ protected final Phone mPhone;
private final ContentResolver mResolver;
private final SettingsObserver mSettingsObserver;
private final String mLogTag;
@@ -332,7 +332,8 @@
}
}
- private void updateDataEnabledAndNotify(@TelephonyManager.DataEnabledChangedReason int reason) {
+ protected void updateDataEnabledAndNotify(
+ @TelephonyManager.DataEnabledChangedReason int reason) {
updateDataEnabledAndNotify(reason, mPhone.getContext().getOpPackageName());
}

View File

@@ -1,39 +0,0 @@
From c73da56d5ceb5e23d723387c96cd331fd9de11d6 Mon Sep 17 00:00:00 2001
From: Mengjun Leng <quic_mengjunl@quicinc.com>
Date: Thu, 17 Nov 2022 16:20:34 +0800
Subject: [PATCH] Reset data activity after traffic status poll stops
After default route moves to other network, the data activity is still
kept as a stale state. Once there is any active link, the stale state is
propagated to upper layer.
Change-Id: I75879d53a94a548c7b87a8516014672935a01704
CRs-Fixed: 3339456
---
diff --git a/src/java/com/android/internal/telephony/data/LinkBandwidthEstimator.java b/src/java/com/android/internal/telephony/data/LinkBandwidthEstimator.java
index c225b3f..f5ba0d9 100644
--- a/src/java/com/android/internal/telephony/data/LinkBandwidthEstimator.java
+++ b/src/java/com/android/internal/telephony/data/LinkBandwidthEstimator.java
@@ -441,6 +441,7 @@
return;
}
mIsOnDefaultRoute = isOnDefaultRoute;
+ logd("mIsOnDefaultRoute " + mIsOnDefaultRoute);
handleTrafficStatsPollConditionChanged();
}
@@ -465,6 +466,13 @@
if (mScreenOn && mIsOnDefaultRoute && mIsOnActiveData) {
updateDataRatCellIdentityBandwidth();
handleTrafficStatsPoll();
+ } else {
+ logd("Traffic status poll stopped");
+ if (mDataActivity != TelephonyManager.DATA_ACTIVITY_NONE) {
+ mDataActivity = TelephonyManager.DATA_ACTIVITY_NONE;
+ mLinkBandwidthEstimatorCallbacks.forEach(callback -> callback.invokeFromExecutor(
+ () -> callback.onDataActivityChanged(mDataActivity)));
+ }
}
}

View File

@@ -1,106 +0,0 @@
From 9e34e75de76288987a641e054297ff6fce6abfbb Mon Sep 17 00:00:00 2001
From: Sandeep Gutta <sangutta@codeaurora.org>
Date: Wed, 06 Feb 2019 15:25:00 +0530
Subject: [PATCH] Start using inject framework support
- Start using inject mechanism to invoke vendor specific code.
- Add the inject support for the classes extended in vendor space.
Change-Id: I35b9761c15aebc32f48107bbe6b3bcec9a1eb670
CRs-Fixed: 2394018
---
diff --git a/src/java/com/android/internal/telephony/PhoneFactory.java b/src/java/com/android/internal/telephony/PhoneFactory.java
index 3361b74..ef5f9db 100644
--- a/src/java/com/android/internal/telephony/PhoneFactory.java
+++ b/src/java/com/android/internal/telephony/PhoneFactory.java
@@ -172,9 +172,11 @@
networkModes[i] = RILConstants.PREFERRED_NETWORK_MODE;
Rlog.i(LOG_TAG, "Network Mode set to " + Integer.toString(networkModes[i]));
- sCommandsInterfaces[i] = new RIL(context,
- RadioAccessFamily.getRafFromNetworkType(networkModes[i]),
- cdmaSubscription, i);
+ sCommandsInterfaces[i] = TelephonyComponentFactory.getInstance().inject(
+ RIL.class.getName()).
+ makeRIL(context,
+ RadioAccessFamily.getRafFromNetworkType(networkModes[i]),
+ cdmaSubscription, i);
}
if (numPhones > 0) {
@@ -271,8 +273,11 @@
for (int i = 0; i < numPhones; i++) {
sTelephonyNetworkFactories[i] = new TelephonyNetworkFactory(
- Looper.myLooper(), sPhones[i]);
+ Looper.myLooper(), sPhones[i], sPhoneSwitcher);
}
+ TelephonyComponentFactory.getInstance().inject(
+ TelephonyComponentFactory.class.getName()).
+ makeExtTelephonyClasses(context, sPhones, sCommandsInterfaces);
}
}
}
@@ -299,7 +304,9 @@
int cdmaSubscription = CdmaSubscriptionSourceManager.getDefault(context);
for (int i = prevActiveModemCount; i < activeModemCount; i++) {
- sCommandsInterfaces[i] = new RIL(context, RadioAccessFamily.getRafFromNetworkType(
+ sCommandsInterfaces[i] = TelephonyComponentFactory.getInstance().inject(
+ RIL.class.getName()).
+ makeRIL(context, RadioAccessFamily.getRafFromNetworkType(
RILConstants.PREFERRED_NETWORK_MODE),
cdmaSubscription, i);
sPhones[i] = createPhone(context, i);
@@ -308,7 +315,7 @@
sPhones[i].createImsPhone();
}
sTelephonyNetworkFactories[i] = new TelephonyNetworkFactory(
- Looper.myLooper(), sPhones[i]);
+ Looper.myLooper(), sPhones[i], sPhoneSwitcher);
}
}
}
diff --git a/src/java/com/android/internal/telephony/TelephonyComponentFactory.java b/src/java/com/android/internal/telephony/TelephonyComponentFactory.java
index dcbd2d5..c694999 100644
--- a/src/java/com/android/internal/telephony/TelephonyComponentFactory.java
+++ b/src/java/com/android/internal/telephony/TelephonyComponentFactory.java
@@ -481,6 +481,15 @@
return new LinkBandwidthEstimator(phone, mTelephonyFacade);
}
+ public RIL makeRIL(Context context, int preferredNetworkType,
+ int cdmaSubscription, Integer instanceId) {
+ return new RIL(context, preferredNetworkType, cdmaSubscription, instanceId);
+ }
+
+ public void makeExtTelephonyClasses(Context context,
+ Phone[] phones, CommandsInterface[] commandsInterfaces) {
+ }
+
/**
* Create a new data network controller instance. The instance is per-SIM. On multi-sim devices,
* there will be multiple {@link DataNetworkController} instances.
diff --git a/src/java/com/android/internal/telephony/data/TelephonyNetworkFactory.java b/src/java/com/android/internal/telephony/data/TelephonyNetworkFactory.java
index 85f0ae1..4b6352d 100644
--- a/src/java/com/android/internal/telephony/data/TelephonyNetworkFactory.java
+++ b/src/java/com/android/internal/telephony/data/TelephonyNetworkFactory.java
@@ -95,7 +95,7 @@
public final Handler mInternalHandler;
- public TelephonyNetworkFactory(Looper looper, Phone phone) {
+ public TelephonyNetworkFactory(Looper looper, Phone phone, PhoneSwitcher phoneSwitcher) {
super(looper, phone.getContext(), "TelephonyNetworkFactory[" + phone.getPhoneId()
+ "]", null);
mPhone = phone;
@@ -107,7 +107,7 @@
setCapabilityFilter(makeNetworkFilter(mSubscriptionController, mPhone.getPhoneId()));
setScoreFilter(TELEPHONY_NETWORK_SCORE);
- mPhoneSwitcher = PhoneSwitcher.getInstance();
+ mPhoneSwitcher = phoneSwitcher;
LOG_TAG = "TelephonyNetworkFactory[" + mPhone.getPhoneId() + "]";
mPhoneSwitcher.registerForActivePhoneSwitch(mInternalHandler, EVENT_ACTIVE_PHONE_SWITCH,

View File

@@ -1,25 +0,0 @@
From 395258167060762d433c15b79ca4f90a97b2c5cd Mon Sep 17 00:00:00 2001
From: Sandeep Gutta <sangutta@codeaurora.org>
Date: Fri, 03 Jul 2020 22:43:33 +0530
Subject: [PATCH] Skip sending duplicate requests
Code fix to avoid sending duplicate SIM ON/OFF requests
during device power-up.
Change-Id: Id7b496f09306712555e5f9f3828e739a26cb5aee
CRs-Fixed: 2670662
---
diff --git a/src/java/com/android/internal/telephony/GsmCdmaPhone.java b/src/java/com/android/internal/telephony/GsmCdmaPhone.java
index ff8412f..f8d35b6 100644
--- a/src/java/com/android/internal/telephony/GsmCdmaPhone.java
+++ b/src/java/com/android/internal/telephony/GsmCdmaPhone.java
@@ -4669,7 +4669,7 @@
updateUiTtyMode(ttyMode);
}
- private void reapplyUiccAppsEnablementIfNeeded(int retries) {
+ protected void reapplyUiccAppsEnablementIfNeeded(int retries) {
UiccSlot slot = mUiccController.getUiccSlotForPhone(mPhoneId);
// If no card is present or we don't have mUiccApplicationsEnabled yet, do nothing.

View File

@@ -1,42 +0,0 @@
From 11f62715d87ab7251d3ff064bd9adf1d30965a20 Mon Sep 17 00:00:00 2001
From: Sneh Bansal <snehb@codeaurora.org>
Date: Fri, 19 Jan 2018 17:18:32 +0530
Subject: [PATCH] Enable vendor Telephony plugin: MSIM Changes
MSIM Changes that are needed to enable vendor telephony framework.
CRs-Fixed: 2172757
Change-Id: I80a46de96c34d5e2a4ce952830f6beb862522de5
---
diff --git a/src/java/com/android/internal/telephony/SubscriptionController.java b/src/java/com/android/internal/telephony/SubscriptionController.java
index ff34cbe..eb8367b 100644
--- a/src/java/com/android/internal/telephony/SubscriptionController.java
+++ b/src/java/com/android/internal/telephony/SubscriptionController.java
@@ -123,7 +123,7 @@
*/
public class SubscriptionController extends ISub.Stub {
private static final String LOG_TAG = "SubscriptionController";
- private static final boolean DBG = false;
+ protected static final boolean DBG = false;
private static final boolean VDBG = Rlog.isLoggable(LOG_TAG, Log.VERBOSE);
private static final boolean DBG_CACHE = false;
private static final int DEPRECATED_SETTING = -1;
@@ -2963,7 +2963,7 @@
}
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
- private void broadcastDefaultDataSubIdChanged(int subId) {
+ protected void broadcastDefaultDataSubIdChanged(int subId) {
// Broadcast an Intent for default data sub change
if (DBG) logdl("[broadcastDefaultDataSubIdChanged] subId=" + subId);
Intent intent = new Intent(TelephonyIntents.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
@@ -4784,7 +4784,7 @@
/**
* @hide
*/
- private void setGlobalSetting(String name, int value) {
+ protected void setGlobalSetting(String name, int value) {
Settings.Global.putInt(mContext.getContentResolver(), name, value);
if (name == Settings.Global.MULTI_SIM_DATA_CALL_SUBSCRIPTION) {
invalidateDefaultDataSubIdCaches();

View File

@@ -0,0 +1,27 @@
From a2e774ac8c1b1a6e189d3ca1a40a74a99255f1ba Mon Sep 17 00:00:00 2001
From: Bruno Martins <bgcngm@gmail.com>
Date: Mon, 9 Sep 2024 23:19:59 +0100
Subject: [PATCH] hal: Guard primary audio HAL in case target provides prebuilt
Change-Id: I49e8f21386353b7e2cc56cf7ed74213f44cd4478
---
hal/Android.mk | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hal/Android.mk b/hal/Android.mk
index cb037c4a..f53e78ff 100644
--- a/hal/Android.mk
+++ b/hal/Android.mk
@@ -1,3 +1,4 @@
+ifneq ($(TARGET_PROVIDES_AUDIO_HAL),true)
LOCAL_PATH := $(call my-dir)
LOCAL_AUDIO_SERVICE_64 := taro parrot bengal holi blair
@@ -126,3 +127,4 @@ endif
endif
include $(BUILD_SHARED_LIBRARY)
+endif
--
2.25.1

View File

@@ -0,0 +1,69 @@
From 20c0fb4d2d150418666e638505e04de21718d9d7 Mon Sep 17 00:00:00 2001
From: Ivan Vecera <ivan@cera.cz>
Date: Wed, 3 Jul 2024 11:40:30 +0200
Subject: [PATCH] gralloc: Allow devices to opt-in for YCrCb camera video
encode
DeviceAsWebcam is using USAGE_VIDEO_ENCODE [1] for buffers and
this results in combined usage: (VIDEO_ENCODER | CAMERA_OUTPUT).
On some Qcom devices (verified on pyxis (sdm710)) and maybe others
DeviceAsWebcam has red & blue colors swapped with HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS.
When using HAL_PIXEL_FORMAT_YCrCb_420_SP_VENUS the output from
DeviceAsWebcam has correct colors.
[1] https://android.googlesource.com/platform/packages/services/DeviceAsWebcam/+/d079a82ba4f773210c01d488d2dfa1d4d25be8e2
Change-Id: I4376102e2b0eeaefed536eff29c315a71e469b57
---
Android.bp | 4 ++++
gralloc/gr_utils.cpp | 10 +++++++++-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/Android.bp b/Android.bp
index 21e66a0c..1d103583 100644
--- a/Android.bp
+++ b/Android.bp
@@ -9,6 +9,7 @@ soong_config_module_type {
"gralloc4",
"default",
"var3",
+ "use_ycrcb_camera_encode",
],
properties: [
"cflags",
@@ -103,6 +104,9 @@ qtidisplay_cc_defaults {
enabled: true,
},
},
+ use_ycrcb_camera_encode: {
+ cflags: ["-DUSE_YCRCB_CAMERA_ENCODE"],
+ },
},
}
diff --git a/gralloc/gr_utils.cpp b/gralloc/gr_utils.cpp
index 24d78ebd..7b3e84ca 100644
--- a/gralloc/gr_utils.cpp
+++ b/gralloc/gr_utils.cpp
@@ -1646,7 +1646,15 @@ int GetImplDefinedFormat(uint64_t usage, int format) {
} else if (usage & GRALLOC_USAGE_PRIVATE_HEIF) {
gr_format = HAL_PIXEL_FORMAT_NV12_HEIF;
} else if (format == HAL_PIXEL_FORMAT_YCbCr_420_888) {
- gr_format = HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS;
+#ifdef USE_YCRCB_CAMERA_ENCODE
+ if (usage & BufferUsage::CAMERA_OUTPUT) {
+ gr_format = HAL_PIXEL_FORMAT_YCrCb_420_SP_VENUS;
+ } else {
+ gr_format = HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS;
+ }
+#else
+ gr_format = HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS;
+#endif
} else {
gr_format = HAL_PIXEL_FORMAT_NV12_ENCODEABLE; // NV12
}
--
2.25.1

View File

@@ -0,0 +1,50 @@
From 0fb685b7684e08038c46ec328f01e22e92c31f27 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Tue, 21 May 2024 12:57:47 +0200
Subject: [PATCH] sensors: Let the reading of poll fd be configurable
Change-Id: I554a238c11a87d89687b60d3f39446c8f2ff7e2a
---
sensors/v2/Sensor.cpp | 6 +++++-
sensors/v2/Sensor.h | 1 +
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/sensors/v2/Sensor.cpp b/sensors/v2/Sensor.cpp
index e96ef21..ed3ff71 100644
--- a/sensors/v2/Sensor.cpp
+++ b/sensors/v2/Sensor.cpp
@@ -324,7 +324,7 @@ void SysfsPollingOneShotSensor::run() {
continue;
}
- if (mPolls[1].revents == mPolls[1].events && readBool(mPollFd, true /* seek */)) {
+ if (mPolls[1].revents == mPolls[1].events && readFd(mPollFd)) {
activate(false, false, false);
mCallback->postEvents(readEvents(), isWakeUpSensor());
} else if (mPolls[0].revents == mPolls[0].events) {
@@ -357,6 +357,10 @@ void SysfsPollingOneShotSensor::fillEventData(Event& event) {
event.u.data[1] = 0;
}
+bool SysfsPollingOneShotSensor::readFd(const int fd) {
+ return readBool(fd, true /* seek */);
+}
+
} // namespace implementation
} // namespace subhal
} // namespace V2_1
diff --git a/sensors/v2/Sensor.h b/sensors/v2/Sensor.h
index f6fe7a5..522d194 100644
--- a/sensors/v2/Sensor.h
+++ b/sensors/v2/Sensor.h
@@ -106,6 +106,7 @@ class SysfsPollingOneShotSensor : public OneShotSensor {
virtual void setOperationMode(OperationMode mode) override;
virtual std::vector<Event> readEvents() override;
virtual void fillEventData(Event& event);
+ virtual bool readFd(const int fd);
protected:
virtual void run() override;
--
2.25.1

View File

@@ -0,0 +1,53 @@
From 55b7558c797669c65e78999ed981853f7a160d6e Mon Sep 17 00:00:00 2001
From: Cosmin Tanislav <demonsingur@gmail.com>
Date: Wed, 21 Sep 2022 10:09:08 +0530
Subject: [PATCH] sensors: Implement double tap sensor
Change-Id: I6c217c994d6e4d5ae062a31a44fffc9f097a7f6f
---
sensors/v2/Sensor.h | 11 +++++++++++
sensors/v2/SensorsSubHal.cpp | 6 +++++-
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/sensors/v2/Sensor.h b/sensors/v2/Sensor.h
index 522d194..290d2d9 100644
--- a/sensors/v2/Sensor.h
+++ b/sensors/v2/Sensor.h
@@ -121,6 +121,17 @@ class SysfsPollingOneShotSensor : public OneShotSensor {
int mPollFd;
};
+class DoubleTapSensor : public SysfsPollingOneShotSensor {
+ public:
+ DoubleTapSensor(int32_t sensorHandle, ISensorsEventCallback* callback)
+ : SysfsPollingOneShotSensor(
+ sensorHandle, callback, "/sys/class/touch/touch_dev/gesture_double_tap_state",
+ "/sys/class/touch/touch_dev/gesture_double_tap_enabled", "Double Tap Sensor",
+ "org.lineageos.sensor.double_tap",
+ static_cast<SensorType>(static_cast<int32_t>(SensorType::DEVICE_PRIVATE_BASE) +
+ 1)) {}
+};
+
} // namespace implementation
} // namespace subhal
} // namespace V2_1
diff --git a/sensors/v2/SensorsSubHal.cpp b/sensors/v2/SensorsSubHal.cpp
index 6cbcb56..6d51ea7 100644
--- a/sensors/v2/SensorsSubHal.cpp
+++ b/sensors/v2/SensorsSubHal.cpp
@@ -32,7 +32,11 @@ namespace implementation {
using ::android::hardware::Void;
using ::android::hardware::sensors::V2_0::implementation::ScopedWakelock;
-SensorsSubHal::SensorsSubHal() : mCallback(nullptr), mNextHandle(1) {}
+SensorsSubHal::SensorsSubHal() : mCallback(nullptr), mNextHandle(1) {
+ if (property_get_bool("ro.vendor.sensors.xiaomi.double_tap", false)) {
+ AddSensor<DoubleTapSensor>();
+ }
+}
Return<void> SensorsSubHal::getSensorsList_2_1(ISensors::getSensorsList_2_1_cb _hidl_cb) {
std::vector<SensorInfo> sensors;
--
2.25.1

View File

@@ -0,0 +1,50 @@
From b5ae2b09f294483c91e5320b272afdb16044287b Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Fri, 31 May 2024 02:05:57 +0200
Subject: [PATCH] sensors: Implement single tap sensor
Change-Id: I838121ffc627fb8091ce16e0ec4499f5f44bc446
---
sensors/v2/Sensor.h | 11 +++++++++++
sensors/v2/SensorsSubHal.cpp | 3 +++
2 files changed, 14 insertions(+)
diff --git a/sensors/v2/Sensor.h b/sensors/v2/Sensor.h
index 290d2d9..869f14a 100644
--- a/sensors/v2/Sensor.h
+++ b/sensors/v2/Sensor.h
@@ -132,6 +132,17 @@ class DoubleTapSensor : public SysfsPollingOneShotSensor {
1)) {}
};
+class SingleTapSensor : public SysfsPollingOneShotSensor {
+ public:
+ SingleTapSensor(int32_t sensorHandle, ISensorsEventCallback* callback)
+ : SysfsPollingOneShotSensor(
+ sensorHandle, callback, "/sys/class/touch/touch_dev/gesture_single_tap_state",
+ "/sys/class/touch/touch_dev/gesture_single_tap_enabled", "Single Tap Sensor",
+ "org.lineageos.sensor.single_tap",
+ static_cast<SensorType>(static_cast<int32_t>(SensorType::DEVICE_PRIVATE_BASE) +
+ 2)) {}
+};
+
} // namespace implementation
} // namespace subhal
} // namespace V2_1
diff --git a/sensors/v2/SensorsSubHal.cpp b/sensors/v2/SensorsSubHal.cpp
index 6d51ea7..bb125b5 100644
--- a/sensors/v2/SensorsSubHal.cpp
+++ b/sensors/v2/SensorsSubHal.cpp
@@ -36,6 +36,9 @@ SensorsSubHal::SensorsSubHal() : mCallback(nullptr), mNextHandle(1) {
if (property_get_bool("ro.vendor.sensors.xiaomi.double_tap", false)) {
AddSensor<DoubleTapSensor>();
}
+ if (property_get_bool("ro.vendor.sensors.xiaomi.single_tap", false)) {
+ AddSensor<SingleTapSensor>();
+ }
}
Return<void> SensorsSubHal::getSensorsList_2_1(ISensors::getSensorsList_2_1_cb _hidl_cb) {
--
2.25.1

View File

@@ -1,31 +0,0 @@
From ff3a4c984aa18fac7b39943df3810dbd098053db Mon Sep 17 00:00:00 2001
From: kuailexs <952415538@qq.com>
Date: Mon, 22 Apr 2024 22:46:33 +0800
Subject: [PATCH] dolby framework compatibility
Change-Id: I0c8857fa461fb3c0921d14a1f66c6a94aeffb716
---
vintf/xiaomi_framework_compatibility_matrix.xml | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/vintf/xiaomi_framework_compatibility_matrix.xml b/vintf/xiaomi_framework_compatibility_matrix.xml
index cfc666b..c11acac 100644
--- a/vintf/xiaomi_framework_compatibility_matrix.xml
+++ b/vintf/xiaomi_framework_compatibility_matrix.xml
@@ -100,4 +100,13 @@
<instance>default</instance>
</interface>
</hal>
+ <hal format="hidl">
+ <name>vendor.dolby.hardware.dms</name>
+ <transport>hwbinder</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IDms</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
</compatibility-matrix>
--
2.25.1

View File

@@ -0,0 +1,110 @@
From 4b8b52d599e1a5d2eb797fe3149503a7e7111420 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Tue, 21 May 2024 13:32:01 +0200
Subject: [PATCH] sensors: Implement udfps long press sensor
Change-Id: I49773535f47c538b1ff210245109dd63c18d32cb
---
sensors/v2/Sensor.cpp | 34 ++++++++++++++++++++++++++++++++++
sensors/v2/Sensor.h | 17 +++++++++++++++++
sensors/v2/SensorsSubHal.cpp | 4 ++++
3 files changed, 55 insertions(+)
diff --git a/sensors/v2/Sensor.cpp b/sensors/v2/Sensor.cpp
index ed3ff71..cf9a277 100644
--- a/sensors/v2/Sensor.cpp
+++ b/sensors/v2/Sensor.cpp
@@ -361,6 +361,40 @@ bool SysfsPollingOneShotSensor::readFd(const int fd) {
return readBool(fd, true /* seek */);
}
+void UdfpsSensor::fillEventData(Event& event) {
+ event.u.data[0] = mScreenX;
+ event.u.data[1] = mScreenY;
+}
+
+bool UdfpsSensor::readFd(const int fd) {
+ char buffer[512];
+ int state = 0;
+ int rc;
+
+ rc = lseek(fd, 0, SEEK_SET);
+ if (rc < 0) {
+ ALOGE("failed to seek: %d", rc);
+ return false;
+ }
+ rc = read(fd, &buffer, sizeof(buffer));
+ if (rc < 0) {
+ ALOGE("failed to read state: %d", rc);
+ return false;
+ }
+ rc = sscanf(buffer, "%d,%d,%d", &mScreenX, &mScreenY, &state);
+ if (rc == 1) {
+ // If fod_press_status contains only one value,
+ // assume that just reports the state
+ state = mScreenX;
+ mScreenX = 0;
+ mScreenY = 0;
+ } else if (rc < 3) {
+ ALOGE("failed to parse fp state: %d", rc);
+ return false;
+ }
+ return state > 0;
+}
+
} // namespace implementation
} // namespace subhal
} // namespace V2_1
diff --git a/sensors/v2/Sensor.h b/sensors/v2/Sensor.h
index 869f14a..02c0c73 100644
--- a/sensors/v2/Sensor.h
+++ b/sensors/v2/Sensor.h
@@ -143,6 +143,23 @@ class SingleTapSensor : public SysfsPollingOneShotSensor {
2)) {}
};
+class UdfpsSensor : public SysfsPollingOneShotSensor {
+ public:
+ UdfpsSensor(int32_t sensorHandle, ISensorsEventCallback* callback)
+ : SysfsPollingOneShotSensor(
+ sensorHandle, callback, "/sys/class/touch/touch_dev/fod_press_status",
+ "/sys/class/touch/touch_dev/fod_longpress_gesture_enabled", "UDFPS Sensor",
+ "org.lineageos.sensor.udfps",
+ static_cast<SensorType>(static_cast<int32_t>(SensorType::DEVICE_PRIVATE_BASE) +
+ 3)) {}
+ virtual void fillEventData(Event& event);
+ virtual bool readFd(const int fd);
+
+ private:
+ int mScreenX;
+ int mScreenY;
+};
+
} // namespace implementation
} // namespace subhal
} // namespace V2_1
diff --git a/sensors/v2/SensorsSubHal.cpp b/sensors/v2/SensorsSubHal.cpp
index bb125b5..b1d499c 100644
--- a/sensors/v2/SensorsSubHal.cpp
+++ b/sensors/v2/SensorsSubHal.cpp
@@ -17,6 +17,7 @@
#include "SensorsSubHal.h"
#include <android/hardware/sensors/2.1/types.h>
+#include <cutils/properties.h>
#include <log/log.h>
using ::android::hardware::sensors::V2_1::implementation::ISensorsSubHal;
@@ -39,6 +40,9 @@ SensorsSubHal::SensorsSubHal() : mCallback(nullptr), mNextHandle(1) {
if (property_get_bool("ro.vendor.sensors.xiaomi.single_tap", false)) {
AddSensor<SingleTapSensor>();
}
+ if (property_get_bool("ro.vendor.sensors.xiaomi.udfps", false)) {
+ AddSensor<UdfpsSensor>();
+ }
}
Return<void> SensorsSubHal::getSensorsList_2_1(ISensors::getSensorsList_2_1_cb _hidl_cb) {
--
2.25.1

View File

@@ -1,22 +0,0 @@
From 5508feb9255ea79d4dc206f33efbcbe3e570021e Mon Sep 17 00:00:00 2001
From: kuailexs <952415538@qq.com>
Date: Tue, 20 Aug 2024 00:25:47 +0800
Subject: [PATCH] fix build
---
drivers/input/touchscreen/fts_spi/fts.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/input/touchscreen/fts_spi/fts.c b/drivers/input/touchscreen/fts_spi/fts.c
index c8e29a1ef6d9..50b7ca40d32b 100644
--- a/drivers/input/touchscreen/fts_spi/fts.c
+++ b/drivers/input/touchscreen/fts_spi/fts.c
@@ -2752,7 +2752,7 @@ void fts_enable_thp_onoff(int enable) {
return;
}
-int fts_enable_touch_raw(bool en)
+int fts_enable_touch_raw(int en)
{
fts_enable_thp_onoff(en);
return 0;

View File

@@ -1,26 +0,0 @@
From 6c4bbb2bd3570efd047dd34491cc6a68a808a2bd Mon Sep 17 00:00:00 2001
From: kuailexs <952415538@qq.com>
Date: Fri, 20 Sep 2024 01:45:08 +0800
Subject: [PATCH] Do not process unsupported links
Change-Id: Ie45cb78be056e8ed82302806bf2b71e96fd5cd82
---
app/src/main/java/org/lineageos/jelly/webview/WebClient.kt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/java/org/lineageos/jelly/webview/WebClient.kt b/app/src/main/java/org/lineageos/jelly/webview/WebClient.kt
index 07d65c3..42f6348 100644
--- a/app/src/main/java/org/lineageos/jelly/webview/WebClient.kt
+++ b/app/src/main/java/org/lineageos/jelly/webview/WebClient.kt
@@ -132,7 +132,7 @@ internal class WebClient(private val urlBarLayout: UrlBarLayout) : WebViewClient
Snackbar.LENGTH_LONG
).show()
}
- return false
+ return true
}
@SuppressLint("QueryPermissionsNeeded")
--
2.25.1

View File

@@ -1,35 +0,0 @@
From 48c190771825033f3ddb139ba721ae53b2acc4c4 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Sun, 4 Jun 2023 14:34:32 +0200
Subject: [PATCH] devicesettings: Import popupcamera strings
Change-Id: I26c49025a6c85db88a1194de138e1c5911de8934
---
res/values/strings.xml | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/res/values/strings.xml b/res/values/strings.xml
index d810086..54c5d2f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -189,4 +189,20 @@
<!-- Wake on gesture -->
<string name="wake_on_gesture_title">Wake up on gestures</string>
<string name="wake_on_gesture_summary">Wake the device instead of pulsing notifications on gesture events</string>
+
+ <!-- Popup camera -->
+ <string name="popup_title">Front camera settings</string>
+ <string name="popup_calibration_title">Calibration</string>
+ <string name="popup_calibration_summary">Calibrate the popup camera motor</string>
+ <string name="popup_calibration_warning_title">Motor calibration</string>
+ <string name="popup_calibration_warning_text">Unnecessary use of calibration may cause permanent damage. It is recommended to calibrate the popup camera motor only in case of it not moving properly or it being in incorrect position!</string>
+ <string name="popup_camera_tip">Warning</string>
+ <string name="popup_camera_takeback_failed_calibrate">Couldn\'t close front camera. Try calibrating the motor.</string>
+ <string name="popup_camera_popup_failed_calibrate">Couldn\'t open front camera. Try calibrating the motor.</string>
+ <string name="popup_camera_calibrate_running">Front camera cannot be used during calibration.</string>
+ <string name="popup_camera_calibrate_now">Calibrate</string>
+ <string name="popup_camera_calibrate_failed">Couldn\'t calibrate</string>
+ <string name="popup_camera_calibrate_success">Calibrated successfully. You can open the front camera now.</string>
+ <string name="popup_led_title">Camera LED</string>
+ <string name="popup_led_summary">Enable LED light while the front camera appears and retracts</string>
</resources>

80
patch.sh Executable file → Normal file
View File

@@ -3,58 +3,46 @@ cd vendor/lineage
git apply ../../patches/vendor/lineage/0001-android-merge_dtbs-Respect-miboard-id-while-merging.patch
cd ../../
cd hardware/xiaomi
git apply ../../patches/hardware/xiaomi/0001-Add-dummy-sensors-sub-HAL.patch
git apply ../../patches/hardware/xiaomi/0002-sensors-Make-sensor-batch-function-virtual.patch
git apply ../../patches/hardware/xiaomi/0003-sensors-Make-sensor-run-function-virtual.patch
git apply ../../patches/hardware/xiaomi/0004-sensors-Make-sensor-flush-function-virtual.patch
git apply ../../patches/hardware/xiaomi/0005-sensors-Make-sensor-set-mode-operation-function-virt.patch
git apply ../../patches/hardware/xiaomi/0006-sensors-Move-one-shot-sensor-out-of-main-class.patch
git apply ../../patches/hardware/xiaomi/0007-sensors-Fix-locking-around-setOperationMode-and-acti.patch
git apply ../../patches/hardware/xiaomi/0008-sensors-Add-udfps-long-press-sensor.patch
git apply ../../patches/hardware/xiaomi/0009-sensors-Handle-fod-press-status-without-coordinates.patch
# git apply ../../patches/hardware/xiaomi/0010-hidl-biometrics-fingerprint-Add-enroll-methods-to-ud.patch
git apply ../../patches/hardware/xiaomi/0011-dolby-framework-compatibility.patch
cd ../../
# cd device/qcom/sepolicy_vndr/sm8450
# git apply ../../../../patches/device/qcom/sepolicy_vndr/sm8450/0001-sepolicy_vndr-update-sepolicy-for-health-HAL-service.patch
# git apply ../../../../patches/device/qcom/sepolicy_vndr/sm8450/0002-sepolicy_vndr-Label-proc-firmware-config-node.patch
# git apply ../../../../patches/device/qcom/sepolicy_vndr/sm8450/0003-sepolicy_vndr-Allow-init-vendor_init-to-write-proc-f.patch
# cd ../../../../
cd frameworks/base
git apply ../../patches/frameworks/base/4ae78da655484f99715fa8ad7550d2086ee19871.patch
cd ../../
#cd hardware/xiaomi
# git apply ../../patches/hardware/xiaomi/0001-Add-dummy-sensors-sub-HAL.patch
# git apply ../../patches/hardware/xiaomi/0002-sensors-Make-sensor-batch-function-virtual.patch
# git apply ../../patches/hardware/xiaomi/0003-sensors-Make-sensor-run-function-virtual.patch
# git apply ../../patches/hardware/xiaomi/0004-sensors-Make-sensor-flush-function-virtual.patch
# git apply ../../patches/hardware/xiaomi/0005-sensors-Make-sensor-set-mode-operation-function-virt.patch
# git apply ../../patches/hardware/xiaomi/0006-sensors-Move-one-shot-sensor-out-of-main-class.patch
# git apply ../../patches/hardware/xiaomi/0007-sensors-Fix-locking-around-setOperationMode-and-acti.patch
cd frameworks/av
git apply ../../patches/frameworks/av/966aae39fb309ed56c3836926623c5ce858ce077.patch
cd ../../
#git apply ../../patches/hardware/xiaomi/0008-sensors-Add-udfps-long-press-sensor.patch
#git apply ../../patches/hardware/xiaomi/0009-sensors-Handle-fod-press-status-without-coordinates.patch
#git apply ../../patches/hardware/xiaomi/0010-hidl-biometrics-fingerprint-Add-enroll-methods-to-ud.patch
cd frameworks/opt/telephony
git apply ../../../patches/frameworks/opt/telephony/001-d18b2cb.diff
git apply ../../../patches/frameworks/opt/telephony/002-dd06504.diff
git apply ../../../patches/frameworks/opt/telephony/003-7f1ca2e.diff
git apply ../../../patches/frameworks/opt/telephony/004-c73da56.diff
git apply ../../../patches/frameworks/opt/telephony/005-9e34e75.diff
git apply ../../../patches/frameworks/opt/telephony/006-3952581.diff
git apply ../../../patches/frameworks/opt/telephony/007-11f6271.diff
cd ../../../
#git apply ../../patches/hardware/xiaomi/0008-sensors-Let-the-reading-of-poll-fd-be-configurable.patch
#git apply ../../patches/hardware/xiaomi/0009-sensors-Implement-double-tap-sensor.patch
#git apply ../../patches/hardware/xiaomi/0010-sensors-Implement-single-tap-sensor.patch
#git apply ../../patches/hardware/xiaomi/0011-sensors-Implement-udfps-long-press-sensor.patch
cd device/qcom/sepolicy
git apply ../../../patches/device/qcom/sepolicy/4891f5c311d7854b4d7b8357290ed08b866240d9.patch
cd ../../../
#cd ../../
#cd device/xiaomi/sm8450-common
#git apply ../../../patches/device/xiaomi/sm8450-common/0001-fix-build.patch
#cd ../../../
cd packages/resources/devicesettings
git apply ../../../patches/packages/resources/devicesettings/48c190771825033f3ddb139ba721ae53b2acc4c4.patch
cd ../../../
cd kernel/xiaomi/sm8450
git apply ../../../patches/kernel/xiaomi/sm8450/5508feb9255ea79d4dc206f33efbcbe3e570021e.patch
cd ../../../
cd packages/apps/Jelly
git apply ../../../patches/packages/apps/Jelly/0001-Do-not-process-unsupported-links.patch
cd ../../../
#cd frameworks/base
#git apply ../../patches/frameworks/base/0001-Add-5G-Ultra-Wideband-icon-carrier-config-keys.patch
#git apply ../../patches/frameworks/base/0002-Fix-default-values-for-5G-Ultra-Wideband-icon-carrie.patch
#cd ../../
cd hardware/qcom-caf/sm8450/display
git apply ../../../../patches/hardware/qcom-caf/sm8450/display/0001-gralloc-Allow-devices-to-opt-in-for-YCrCb-camera-vid.patch
cd ../../../../
cd hardware/qcom-caf/sm8450/audio/primary-hal
git apply ../../../../../patches/hardware/qcom-caf/sm8450/audio/primary-hal/0001-hal-Guard-primary-audio-HAL-in-case-target-provides-.patch
cd ../../../../../