topaz: Import device-specifics overlays

Change-Id: Ie9eabba9841ce8bded3998e99ce473a4bd60035b
This commit is contained in:
boedhack99
2023-05-05 19:18:52 +08:00
parent 193a24a646
commit 40cd1a4a45
12 changed files with 677 additions and 1 deletions

View File

@@ -74,10 +74,13 @@ PRODUCT_ENFORCE_RRO_TARGETS := *
PRODUCT_PACKAGES += \
CarrierConfigResCommon \
FrameworksResCommon \
FrameworksResTarget \
FrameworksResTopaz \
SystemUIResCommon \
TelecommResCommon \
TelephonyResCommon \
WifiResCommon
WifiResCommon \
WifiResTarget
# Partitions
PRODUCT_USE_DYNAMIC_PARTITIONS := true

View File

@@ -0,0 +1,10 @@
//
// Copyright (C) 2023 The LineageOS Project
//
// SPDX-License-Identifier: Apache-2.0
//
runtime_resource_overlay {
name: "FrameworksResTarget",
vendor: true,
}

View File

@@ -0,0 +1,12 @@
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android.overlay.target">
<overlay
android:isStatic="true"
android:priority="500"
android:targetPackage="android" />
</manifest>

View File

@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Control whether the always on display mode is available. This should only be enabled on
devices where the display has been tuned to be power efficient in DOZE and/or DOZE_SUSPEND
states. -->
<bool name="config_dozeAlwaysOnDisplayAvailable">true</bool>
<!-- Control whether the always on display mode is enabled by default. This value will be used
during initialization when the setting is still null. -->
<bool name="config_dozeAlwaysOnEnabled">false</bool>
<!-- Power Management: Specifies whether to decouple the auto-suspend state of the
device from the display on/off state.
When false, autosuspend_disable() will be called before the display is turned on
and autosuspend_enable() will be called after the display is turned off.
This mode provides best compatibility for devices using legacy power management
features such as early suspend / late resume.
When true, autosuspend_display() and autosuspend_enable() will be called
independently of whether the display is being turned on or off. This mode
enables the power manager to suspend the application processor while the
display is on.
This resource should be set to "true" when a doze component has been specified
to maximize power savings but not all devices support it.
Refer to autosuspend.h for details.
-->
<bool name="config_powerDecoupleAutoSuspendModeFromDisplay">true</bool>
<!-- When true use the linux /dev/input/event subsystem to detect the switch changes
on the headphone/microphone jack. When false use the older uevent framework. -->
<bool name="config_useDevInputEventForAudioJack">true</bool>
<!-- Default files to pin via Pinner Service -->
<string-array name="config_defaultPinnerServiceFiles" translatable="false">
<item>/system/framework/arm64/boot.oat</item>
<item>/system/framework/arm/boot.oat</item>
<item>/system/framework/oat/arm/services.odex</item>
<item>/system/framework/arm64/boot-framework.oat</item>
<item>/system/framework/arm/boot-framework.oat</item>
<item>/system/framework/arm64/boot-core-libart.oat</item>
<item>/system/framework/arm/boot-core-libart.oat</item>
<item>/system/lib64/libRScpp.so</item>
<item>/system/lib64/libRS.so</item>
<item>/system/lib64/libRS_internal.so</item>
<item>/system/lib64/libbcinfo.so</item>
<item>/system/lib64/libRSDriver.so</item>
<item>/system/lib64/libRSCpuRef.so</item>
<item>/system/lib64/libblas.so</item>
</string-array>
</resources>

View File

@@ -0,0 +1,10 @@
//
// Copyright (C) 2023 The LineageOS Project
//
// SPDX-License-Identifier: Apache-2.0
//
runtime_resource_overlay {
name: "FrameworksResTopaz",
device_specific: true,
}

View File

@@ -0,0 +1,12 @@
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android.overlay.xiaomi_topaz">
<overlay
android:isStatic="true"
android:priority="700"
android:targetPackage="android" />
</manifest>

View File

@@ -0,0 +1,342 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- The default peak refresh rate for a given device. Change this value if you want to prevent
the framework from using higher refresh rates, even if display modes with higher refresh
rates are available from hardware composer. Only has an effect if the value is
non-zero. -->
<integer name="config_defaultPeakRefreshRate">120</integer>
<!-- The bounding path of the cutout region of the main built-in display.
Must either be empty if there is no cutout region, or a string that is parsable by
{@link android.util.PathParser}.
The path is assumed to be specified in display coordinates with pixel units and in
the display's native orientation, with the origin of the coordinate system at the
center top of the display. Optionally, you can append either `@left` or `@right` to the
end of the path string, in order to change the path origin to either the top left,
or top right of the display.
To facilitate writing device-independent emulation overlays, the marker `@dp` can be
appended after the path string to interpret coordinates in dp instead of px units.
Note that a physical cutout should be configured in pixels for the best results.
If the display supports multiple resolutions, please define the path config based on the
highest resolution so that it can be scaled correctly in each resolution.
Example for a 10px x 10px square top-center cutout:
<string ...>M -5,0 L -5,10 L 5,10 L 5,0 Z</string>
Example for a 10dp x 10dp square top-center cutout:
<string ...>M -5,0 L -5,10 L 5,10 L 5,0 Z @dp</string>
@see https://www.w3.org/TR/SVG/paths.html#PathData
-->
<string name="config_mainBuiltInDisplayCutout">M 0,0 H -28 V 94 H 28 V 0 H 0 Z</string>
<!-- Minimum screen brightness setting allowed by power manager.
-2 is invalid so setting will resort to int value specified above.
Set this to 0.0 to allow screen to go to minimal brightness.
The user is forbidden from setting the brightness below this level. -->
<item name="config_screenBrightnessSettingMinimumFloat" type="dimen">0.00342131</item>
<!-- Maximum screen brightness allowed by the power manager.
-2 is invalid so setting will resort to int value specified above.
Set this to 1.0 for maximum brightness range.
The user is forbidden from setting the brightness above this level. -->
<item name="config_screenBrightnessSettingMaximumFloat" type="dimen">1.0</item>
<!-- Default screen brightness setting set.
-2 is invalid so setting will resort to int value specified above.
Must be in the range specified by minimum and maximum. -->
<item name="config_screenBrightnessSettingDefaultFloat" type="dimen">0.14956012</item>
<!-- Screen brightness used to dim the screen when the user activity
timeout expires. May be less than the minimum allowed brightness setting
that can be set by the user. -->
<integer name="config_screenBrightnessDim">13</integer>
<item name="config_screenBrightnessDimFloat" type="dimen">0.00342131</item>
<!-- Array of light sensor lux values to define our levels for auto backlight brightness support.
The N entries of this array define N + 1 control points as follows:
(1-based arrays)
Point 1: (0, value[1]): lux <= 0
Point 2: (level[1], value[2]): 0 < lux <= level[1]
Point 3: (level[2], value[3]): level[2] < lux <= level[3]
...
Point N+1: (level[N], value[N+1]): level[N] < lux
The control points must be strictly increasing. Each control point
corresponds to an entry in the brightness backlight values arrays.
For example, if lux == level[1] (first element of the levels array)
then the brightness will be determined by value[2] (second element
of the brightness values array).
Spline interpolation is used to determine the auto-brightness
backlight values for lux levels between these control points.
Must be overridden in platform specific overlays -->
<integer-array name="config_autoBrightnessLevels">
<item>1</item>
<item>2</item>
<item>4</item>
<item>6</item>
<item>8</item>
<item>10</item>
<item>15</item>
<item>20</item>
<item>25</item>
<item>30</item>
<item>35</item>
<item>40</item>
<item>45</item>
<item>50</item>
<item>55</item>
<item>60</item>
<item>65</item>
<item>70</item>
<item>75</item>
<item>80</item>
<item>85</item>
<item>90</item>
<item>95</item>
<item>100</item>
<item>120</item>
<item>140</item>
<item>160</item>
<item>180</item>
<item>200</item>
<item>220</item>
<item>240</item>
<item>260</item>
<item>280</item>
<item>300</item>
<item>320</item>
<item>340</item>
<item>360</item>
<item>380</item>
<item>400</item>
<item>420</item>
<item>440</item>
<item>460</item>
<item>480</item>
<item>500</item>
<item>700</item>
<item>900</item>
<item>1100</item>
<item>1300</item>
<item>1500</item>
<item>1700</item>
<item>1900</item>
<item>2000</item>
<item>2500</item>
<item>3000</item>
<item>3500</item>
<item>4000</item>
<item>4500</item>
<item>5000</item>
<item>5500</item>
<item>6000</item>
<item>6500</item>
<item>7000</item>
<item>7500</item>
<item>8000</item>
<item>8500</item>
<item>9000</item>
<item>9500</item>
<item>10000</item>
<item>10500</item>
<item>11000</item>
<item>11500</item>
<item>12000</item>
<item>12500</item>
<item>13000</item>
<item>13500</item>
<item>14000</item>
<item>14500</item>
<item>15000</item>
<item>16000</item>
<item>17000</item>
<item>18000</item>
<item>19000</item>
<item>20000</item>
<item>21000</item>
<item>22000</item>
<item>23000</item>
<item>24000</item>
<item>25000</item>
<item>26000</item>
<item>27000</item>
<item>28000</item>
<item>29000</item>
<item>30000</item>
<item>35000</item>
<item>40000</item>
<item>45000</item>
<item>50000</item>
<item>55000</item>
<item>60000</item>
<item>65000</item>
<item>70000</item>
<item>75000</item>
<item>80000</item>
<item>85000</item>
<item>90000</item>
<item>95000</item>
<item>100000</item>
</integer-array>
<!-- Array of desired screen brightness in nits corresponding to the lux values
in the config_autoBrightnessLevels array. The display brightness is defined as the measured
brightness of an all-white image.
If this is defined then:
- config_autoBrightnessLcdBacklightValues should not be defined
- config_screenBrightnessNits must be defined
- config_screenBrightnessBacklight must be defined
This array should have size one greater than the size of the config_autoBrightnessLevels
array. The brightness values must be non-negative and non-decreasing. This must be
overridden in platform specific overlays -->
<array name="config_autoBrightnessDisplayValuesNits">
<item>3.3</item>
<item>4.3</item>
<item>5.0</item>
<item>17.0</item>
<item>24.0</item>
<item>31.0</item>
<item>34.0</item>
<item>46.0</item>
<item>59.0</item>
<item>76.0</item>
<item>81.0</item>
<item>82.0</item>
<item>82.0</item>
<item>82.0</item>
<item>83.0</item>
<item>83.0</item>
<item>83.0</item>
<item>84.0</item>
<item>84.0</item>
<item>85.0</item>
<item>85.0</item>
<item>85.0</item>
<item>85.0</item>
<item>86.0</item>
<item>86.0</item>
<item>87.0</item>
<item>89.0</item>
<item>90.0</item>
<item>91.0</item>
<item>93.0</item>
<item>94.0</item>
<item>96.0</item>
<item>97.0</item>
<item>99.0</item>
<item>100.0</item>
<item>101.0</item>
<item>104.0</item>
<item>105.0</item>
<item>106.0</item>
<item>108.0</item>
<item>109.0</item>
<item>111.0</item>
<item>112.0</item>
<item>114.0</item>
<item>116.0</item>
<item>137.0</item>
<item>157.0</item>
<item>180.0</item>
<item>205.0</item>
<item>226.0</item>
<item>257.0</item>
<item>280.0</item>
<item>295.0</item>
<item>369.0</item>
<item>400.0</item>
<item>416.7</item>
<item>433.3</item>
<item>450.0</item>
<item>466.7</item>
<item>483.3</item>
<item>500.0</item>
<item>512.5</item>
<item>525.0</item>
<item>537.5</item>
<item>550.0</item>
<item>562.5</item>
<item>575.0</item>
<item>587.5</item>
<item>600.0</item>
<item>610.0</item>
<item>620.0</item>
<item>630.0</item>
<item>640.0</item>
<item>650.0</item>
<item>660.0</item>
<item>670.0</item>
<item>680.0</item>
<item>690.0</item>
<item>700.0</item>
<item>705.0</item>
<item>710.0</item>
<item>715.0</item>
<item>720.0</item>
<item>725.0</item>
<item>730.0</item>
<item>735.0</item>
<item>740.0</item>
<item>745.0</item>
<item>750.0</item>
<item>755.0</item>
<item>760.0</item>
<item>765.0</item>
<item>770.0</item>
<item>775.0</item>
<item>800.0</item>
<item>816.7</item>
<item>833.3</item>
<item>850.0</item>
<item>866.7</item>
<item>883.3</item>
<item>900.0</item>
<item>914.3</item>
<item>928.6</item>
<item>942.9</item>
<item>957.1</item>
<item>971.4</item>
<item>985.7</item>
<item>1000.0</item>
</array>
<!-- An array describing the screen's backlight values corresponding to the brightness
values in the config_screenBrightnessNits array.
This array should be equal in size to config_screenBrightnessBacklight. -->
<integer-array name="config_screenBrightnessBacklight">
<item>1</item>
<item>255</item>
</integer-array>
<!-- An array of floats describing the screen brightness in nits corresponding to the backlight
values in the config_screenBrightnessBacklight array. On OLED displays these values
should be measured with an all white image while the display is in the fully on state.
Note that this value should *not* reflect the maximum brightness value for any high
brightness modes but only the maximum brightness value obtainable in a sustainable manner.
This array should be equal in size to config_screenBrightnessBacklight -->
<array name="config_screenBrightnessNits">
<item>4.3</item>
<item>800.0</item>
</array>
<!-- Indicates whether the system wide captions service should also support
call captioning.
-->
<bool name="config_systemCaptionsServiceCallsEnabled" translatable="false">true</bool>
</resources>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Default radius of the software rounded corners. -->
<dimen name="rounded_corner_radius">102.0px</dimen>
<dimen name="rounded_corner_radius_bottom">102.0px</dimen>
<dimen name="rounded_corner_radius_top">102.0px</dimen>
<!-- Default paddings for content around the corners. -->
<dimen name="rounded_corner_content_padding">49.0px</dimen>
<!-- The default height of the status bar used in {@link SystemBarUtils#getStatusBarHeight} to
calculate the status bar height. -->
<dimen name="status_bar_height_default">94.0px</dimen>
<!-- Height of the status bar in portrait.
Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
-->
<dimen name="status_bar_height_portrait">94.0px</dimen>
</resources>

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
<item name="none">0</item>
<item name="screen.on.display0">0.45</item>
<item name="screen.full.display0">92.95</item>
<array name="cpu.clusters.cores">
<value>4</value>
<value>4</value>
</array>
<array name="cpu.core_speeds.cluster0">
<value>300000</value>
<value>691200</value>
<value>940800</value>
<value>1190400</value>
<value>1516800</value>
<value>1804800</value>
<value>1900800</value>
</array>
<array name="cpu.core_power.cluster0">
<value>3.98</value>
<value>6.44</value>
<value>10.53</value>
<value>14.19</value>
<value>26.28</value>
<value>33.3</value>
<value>37.15</value>
</array>
<array name="cpu.core_speeds.cluster1">
<value>300000</value>
<value>806400</value>
<value>1056000</value>
<value>1344000</value>
<value>1766400</value>
<value>2208000</value>
<value>2400000</value>
<value>2592000</value>
<value>2803200</value>
</array>
<array name="cpu.core_power.cluster1">
<value>18.11</value>
<value>41.28</value>
<value>53.54</value>
<value>66.03</value>
<value>89.63</value>
<value>113.12</value>
<value>132.51</value>
<value>155.62</value>
<value>180.32</value>
</array>
<item name="cpu.active">18.3</item>
<item name="cpu.idle">4.51</item>
<item name="cpu.suspend">0</item>
<item name="cpu.awake">42.86</item>
<item name="battery.capacity">5000</item>
<item name="wifi.on">6.76</item>
<item name="wifi.active">148</item>
<item name="wifi.scan">38.43</item>
<item name="audio">10.51</item>
<item name="video">134.94</item>
<item name="camera.flashlight">530</item>
<item name="camera.avg">320</item>
<item name="gps.on">6.8</item>
<item name="radio.active">172</item>
<item name="radio.scanning">4.4</item>
<array name="radio.on">
<value>85</value>
<value>8.5</value>
</array>
<item name="modem.controller.idle">4.4</item>
<item name="modem.controller.rx">168</item>
<item name="modem.controller.tx">163</item>
<item name="modem.controller.voltage">3700</item>
<array name="memory.bandwidths">
<value>13.5</value>
</array>
<item name="wifi.controller.idle">1.22</item>
<item name="wifi.controller.rx">121</item>
<item name="wifi.controller.tx">156</item>
<array name="wifi.controller.tx_levels">1 </array>
<item name="wifi.controller.voltage">3700</item>
<array name="wifi.batchedscan">
<value>.0001</value>
<value>.001</value>
<value>.01</value>
<value>.1</value>
<value>1</value>
</array>
<item name="bluetooth.active">44.37</item>
<item name="bluetooth.on">0.51</item>
<item name="bluetooth.controller.voltage">3700</item>
</device>

View File

@@ -0,0 +1,10 @@
//
// Copyright (C) 2023 The LineageOS Project
//
// SPDX-License-Identifier: Apache-2.0
//
runtime_resource_overlay {
name: "WifiResTarget",
vendor: true,
}

View File

@@ -0,0 +1,13 @@
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.wifi.resources.overlay.target">
<overlay
android:isStatic="true"
android:priority="500"
android:targetName="WifiCustomization"
android:targetPackage="com.android.wifi.resources" />
</manifest>

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- boolean indicating whether the WiFi chipset has 5GHz band support.
Note: This config is replacing the config_wifi_dual_band_support
since more bands may now be supported (such as 6GHz), the naming dual_band
is no longer indicative, and a separate config now exists for each band -->
<bool name="config_wifi5ghzSupport" translatable="false">true</bool>
<!-- boolean indicating whether the WiFi chipset has 6GHz band support -->
<bool name="config_wifi6ghzSupport" translatable="false">true</bool>
<!-- Boolean indicating whether the wifi chipset supports background scanning mechanism.
This mechanism allows the host to remain in suspend state and the dongle to actively
scan and wake the host when a configured SSID is detected by the dongle. This chipset
capability can provide power savings when wifi needs to be always kept on. -->
<bool name="config_wifi_background_scan_support" translatable="false">true</bool>
<!-- Boolean indicating performing a partial initial scan is enabled -->
<bool name="config_wifiEnablePartialInitialScan" translatable="false">true</bool>
<!-- Boolean indicating connected frequency enhancement is enabled/disabled -->
<bool name="config_wifiConnectedFrequencyEnhancementEnabled" translatable="false">true</bool>
<!-- Wifi driver supports Beacon Protection for SoftAp -->
<bool name="config_vendor_softap_beacon_protection_supported" translatable="false">true</bool>
<!-- Wifi driver supports Ocv for SoftAp -->
<bool name="config_vendor_softap_ocv_supported" translatable="false">true</bool>
<!-- Wifi driver supports Automatic channel selection (ACS) for softap -->
<bool name="config_wifi_softap_acs_supported" translatable="false">true</bool>
<!-- Wifi driver supports IEEE80211AX for softap -->
<bool name="config_wifiSoftapIeee80211axSupported" translatable="false">true</bool>
<!-- Wifi driver supports IEEE80211AX single user beamformer for softap -->
<bool name="config_wifiSoftapHeSuBeamformerSupported" translatable="false">true</bool>
<!-- Wifi driver supports IEEE80211AX single user beamformee for softap -->
<bool name="config_wifiSoftapHeSuBeamformeeSupported" translatable="false">true</bool>
<!-- Wifi driver supports 6GHz band for softap when chip support 6GHz -->
<bool name="config_wifiSoftap6ghzSupported" translatable="false">true</bool>
<!-- Indicates that bridged AP mode is supported on this device -->
<bool name="config_wifiBridgedSoftApSupported" translatable="false">false</bool>
<!-- Configure wifi tcp buffersizes in the form:
rmem_min,rmem_def,rmem_max,wmem_min,wmem_def,wmem_max -->
<string name="config_wifi_tcp_buffers" translatable="false">524288,1048576,2097152,524288,1048576,4194304</string>
<!-- Enable Make-Before-Break Wifi network switching.
Note: this is conditional on the device supporting dual concurrent STAs. -->
<bool name="config_wifiMultiStaNetworkSwitchingMakeBeforeBreakEnabled" translatable="false">false</bool>
<!-- Enable concurrent peer to peer + internet connectivity
Note: this is conditional on the device supporting dual concurrent STAs. -->
<bool name="config_wifiMultiStaLocalOnlyConcurrencyEnabled" translatable="false">false</bool>
<!-- Enable concurrent restricted connectivity + internet connectivity
Note: this is conditional on the device supporting dual concurrent STAs. -->
<bool name="config_wifiMultiStaRestrictedConcurrencyEnabled" translatable="false">false</bool>
<!-- Enable concurrent internet connectivity + internet connectivity
Note: this is conditional on the device supporting dual concurrent STAs. -->
<bool name="config_wifiMultiStaMultiInternetConcurrencyEnabled" translatable="false">true</bool>
<!-- Indicates that SAE Hash-to-Element is supported on this device -->
<bool name="config_wifiSaeH2eSupported" translatable="false">true</bool>
<!-- Indicates whether or not the WLAN driver supports the NL80211_CMD_REG_CHANGE or
NL80211_CMD_WIPHY_REG_CHANGE events which indicate the current country code which is
being used by the WLAN driver. If the driver doesn't support these events
(configuration is `false`) then the driver must handle the setCountryCode request from
HAL as a blocking call. In such a case the country code will be applied
immediately after the country code is sent to the driver (if the method returns a
success). -->
<bool name="config_wifiDriverSupportedNl80211RegChangedEvent" translatable="false">true</bool>
<!-- Indicates whether or not the Soft AP needs to be restarted when country code changed -->
<bool name="config_wifiForcedSoftApRestartWhenCountryCodeChanged" translatable="false">false</bool>
<!-- Indicates whether or not the network-centric QoS policy feature is enabled. -->
<bool name="config_wifiNetworkCentricQosPolicyFeatureEnabled" translatable="false">true</bool>
</resources>