Merge 24Q4 into AOSP main

Bug: 370570306
Merged-In: I3c1c31b871275bf2b5ceb93120918f749f828cd1
Change-Id: I7da0085965df8fd7a5feb3ef0547e217f10a93b5
This commit is contained in:
Xin Li 2024-12-13 11:15:10 -08:00
commit 99862216a4
8 changed files with 43 additions and 336 deletions

View file

@ -187,7 +187,7 @@
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output,immersive_out"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output,immersive_out"/>
<route type="mix" sink="Speaker Safe" <route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output"/> sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output,immersive_out"/>
<route type="mix" sink="BT A2DP Out" <route type="mix" sink="BT A2DP Out"
sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out,immersive_out"/> sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out,immersive_out"/>
<route type="mix" sink="BT A2DP Headphones" <route type="mix" sink="BT A2DP Headphones"

View file

@ -1,7 +1,11 @@
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Builds android.hardware.drm-service.castkey // Builds android.hardware.drm-service.castkey
// //
// TODO(b/366426322): Merge these targets into `device/google/gs-common`.
soong_namespace {
}
package { package {
// See: http://go/android-license-faq // See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import // A large-scale-change added 'default_applicable_licenses' to import
@ -32,7 +36,10 @@ cc_defaults {
relative_install_path: "hw", relative_install_path: "hw",
cflags: ["-Wall", "-Werror"], cflags: [
"-Wall",
"-Werror",
],
include_dirs: [ include_dirs: [
"device/google/tangorpro/cast_auth/mediadrm/include", "device/google/tangorpro/cast_auth/mediadrm/include",

View file

@ -258,7 +258,10 @@ PRODUCT_VENDOR_PROPERTIES += \
PRODUCT_SOONG_NAMESPACES += \ PRODUCT_SOONG_NAMESPACES += \
vendor/lib64 vendor/lib64
# TODO(b/366426322): Merge CastKey Drm plugin into `device/google/gs-common`.
# CastKey Drm plugin modules # CastKey Drm plugin modules
PRODUCT_SOONG_NAMESPACES += \
device/google/tangorpro/cast_auth/mediadrm
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
android.hardware.drm-service.castkey android.hardware.drm-service.castkey
@ -282,6 +285,25 @@ PRODUCT_PROPERTY_OVERRIDES += \
PRODUCT_VENDOR_PROPERTIES += \ PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.camera.exif_reveal_make_model=true persist.vendor.camera.exif_reveal_make_model=true
# Set device family property for SMR
PRODUCT_PROPERTY_OVERRIDES += \
ro.build.device_family=T6P
# Set build properties for SMR builds
ifeq ($(RELEASE_IS_SMR), true)
ifneq (,$(RELEASE_BASE_OS_TANGORPRO))
PRODUCT_BASE_OS := $(RELEASE_BASE_OS_TANGORPRO)
endif
endif
# Set build properties for EMR builds
ifeq ($(RELEASE_IS_EMR), true)
ifneq (,$(RELEASE_BASE_OS_TANGORPRO))
PRODUCT_PROPERTY_OVERRIDES += \
ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_TANGORPRO)
endif
endif
# Audio # Audio
PRODUCT_PROPERTY_OVERRIDES += \ PRODUCT_PROPERTY_OVERRIDES += \
ro.audio.multi_usb_mode=true ro.audio.multi_usb_mode=true

View file

@ -48,15 +48,6 @@
<instance>default</instance> <instance>default</instance>
</interface> </interface>
</hal> </hal>
<hal format="hidl">
<name>android.hardware.graphics.mapper</name>
<transport arch="32+64">passthrough</transport>
<version>4.0</version>
<interface>
<name>IMapper</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl"> <hal format="hidl">
<name>android.hardware.graphics.composer</name> <name>android.hardware.graphics.composer</name>
<transport>hwbinder</transport> <transport>hwbinder</transport>

View file

@ -1632,18 +1632,6 @@
"Duration": 50, "Duration": 50,
"Value": "1" "Value": "1"
}, },
{
"PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
"Node": "LimitFlashCurrent",
"Duration": 0,
"Value": "100"
},
{
"PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
"Node": "LimitFlashCurrent",
"Duration": 0,
"Value": "1500"
},
{ {
"PowerHint": "EXPENSIVE_RENDERING", "PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState", "Node": "PowerHALRenderingState",
@ -1894,11 +1882,12 @@
"TargetTimeFactor": 1.0, "TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0, "StaleTimeFactor": 15.0,
"HeuristicBoost_On": true, "HeuristicBoost_On": true,
"HBoostOnMissedCycles": 8, "HBoostModerateJankThreshold": 2,
"HBoostOffMaxAvgRatio": 4.0, "HBoostOffMaxAvgDurRatio": 4.0,
"HBoostOffMissedCycles": 5, "HBoostSevereJankPidPu": 0.5,
"HBoostPidPuFactor": 0.5, "HBoostSevereJankThreshold": 8,
"HBoostUclampMin": 722, "HBoostUclampMinCeilingRange": [480, 722],
"HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2, "JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25, "LowFrameRateThreshold": 25,
"MaxRecordsNum": 300 "MaxRecordsNum": 300

View file

@ -38,6 +38,7 @@ BOARD_KERNEL_CMDLINE += swiotlb=noforce
include device/google/gs201/BoardConfig-common.mk include device/google/gs201/BoardConfig-common.mk
-include vendor/google_devices/gs201/prebuilts/BoardConfigVendor.mk -include vendor/google_devices/gs201/prebuilts/BoardConfigVendor.mk
include device/google/gs-common/check_current_prebuilt/check_current_prebuilt.mk
-include vendor/google_devices/tangorpro/proprietary/BoardConfigVendor.mk -include vendor/google_devices/tangorpro/proprietary/BoardConfigVendor.mk
include device/google/tangorpro-sepolicy/tangorpro-sepolicy.mk include device/google/tangorpro-sepolicy/tangorpro-sepolicy.mk
include device/google/tangorpro/wifi/BoardConfig-wifi.mk include device/google/tangorpro/wifi/BoardConfig-wifi.mk

View file

@ -8,21 +8,18 @@
{ {
"Name":"neutral_therm", "Name":"neutral_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"TempPath":"/dev/thermal/tz-by-name/neutral_therm/tz_temp",
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {
"Name":"quiet_therm", "Name":"quiet_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "35.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "35.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/quiet_therm/tz_temp",
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {
"Name":"charger_skin_therm", "Name":"charger_skin_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "39.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "39.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/charger_skin_therm/tz_temp",
"Multiplier":0.001, "Multiplier":0.001,
"PollingDelay":60000, "PollingDelay":60000,
"PassiveDelay":7000 "PassiveDelay":7000
@ -30,14 +27,12 @@
{ {
"Name":"disp_therm", "Name":"disp_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"TempPath":"/dev/thermal/tz-by-name/disp_therm/tz_temp",
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {
"Name":"usb_pwr_therm", "Name":"usb_pwr_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "37.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "37.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/usb_pwr_therm/tz_temp",
"Multiplier":0.001, "Multiplier":0.001,
"PollingDelay":300000, "PollingDelay":300000,
"PassiveDelay":7000 "PassiveDelay":7000
@ -45,7 +40,6 @@
{ {
"Name":"usb_pwr_therm2", "Name":"usb_pwr_therm2",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"TempPath":"/dev/thermal/tz-by-name/usb_pwr_therm2/tz_temp",
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {

View file

@ -4,7 +4,6 @@
"Name":"neutral_therm", "Name":"neutral_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "50.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "50.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/neutral_therm/tz_temp",
"Multiplier":0.001, "Multiplier":0.001,
"PollingDelay":60000, "PollingDelay":60000,
"PassiveDelay":7000 "PassiveDelay":7000
@ -12,14 +11,12 @@
{ {
"Name":"quiet_therm", "Name":"quiet_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"TempPath":"/dev/thermal/tz-by-name/quiet_therm/tz_temp",
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {
"Name":"charger_skin_therm", "Name":"charger_skin_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "39.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "39.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/charger_skin_therm/tz_temp",
"Multiplier":0.001, "Multiplier":0.001,
"PollingDelay":60000, "PollingDelay":60000,
"PassiveDelay":7000 "PassiveDelay":7000
@ -28,7 +25,6 @@
"Name":"disp_therm", "Name":"disp_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "37.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "37.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/disp_therm/tz_temp",
"Multiplier":0.001, "Multiplier":0.001,
"PollingDelay":60000, "PollingDelay":60000,
"PassiveDelay":7000 "PassiveDelay":7000
@ -42,7 +38,6 @@
"Name":"usb_pwr_therm", "Name":"usb_pwr_therm",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"HotThreshold":["NAN", "37.0", "NAN", "NAN", "NAN", "NAN", "NAN"], "HotThreshold":["NAN", "37.0", "NAN", "NAN", "NAN", "NAN", "NAN"],
"TempPath":"/dev/thermal/tz-by-name/usb_pwr_therm/tz_temp",
"Multiplier":0.001, "Multiplier":0.001,
"PollingDelay":300000, "PollingDelay":300000,
"PassiveDelay":7000 "PassiveDelay":7000
@ -50,7 +45,6 @@
{ {
"Name":"usb_pwr_therm2", "Name":"usb_pwr_therm2",
"Type":"UNKNOWN", "Type":"UNKNOWN",
"TempPath":"/dev/thermal/tz-by-name/usb_pwr_therm2/tz_temp",
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {
@ -343,319 +337,28 @@
"Name":"ISP", "Name":"ISP",
"Type":"NPU", "Type":"NPU",
"Multiplier":0.001 "Multiplier":0.001
},
{
"Name":"battery_cycle",
"Type":"BCL_VOLTAGE",
"Multiplier":1
},
{
"Name":"critical-battery-cell",
"Type":"BCL_VOLTAGE",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "vdroop1",
"Combination":["battery", "battery_cycle", "vdroop1"],
"Coefficient":[-10000, 400, 1000],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 3.00, "NAN"],
"Multiplier":1,
"Monitor":true
},
{
"Name":"FLASH_LED_REDUCE",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "vdroop1",
"Combination":["battery", "battery_cycle", "vdroop1"],
"Coefficient":[-10000, 400, 1000],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 3.00, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"SendPowerHint":true
},
{
"Name":"soc",
"Type":"BCL_PERCENTAGE",
"HotThreshold":["NAN", "NAN", 70, "NAN", "NAN", "NAN", "NAN"],
"Multiplier":1
},
{
"Name":"BCL_TPU_LOW_TEMP",
"Type":"BCL_CURRENT",
"VirtualSensor":true,
"Formula":"WEIGHTED_AVG",
"TriggerSensor": "ocp_tpu",
"Combination":["ocp_tpu", "battery"],
"Coefficient":[1, -10],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 13000, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"BindedCdevInfo": [
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 7, 7, 7]
}
]
},
{
"Name":"BCL_GPU_LOW_TEMP",
"Type":"BCL_CURRENT",
"VirtualSensor":true,
"Formula":"WEIGHTED_AVG",
"TriggerSensor": "ocp_gpu",
"Combination":["ocp_gpu", "battery"],
"Coefficient":[1, -10],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 13000, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 11, 11, 11]
}
]
},
{
"Name":"BCL_BATOILO_GPU_LOW_TEMP",
"Type":"BCL_CURRENT",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "batoilo",
"Combination":["batoilo", "ocp_gpu", "battery"],
"Coefficient":[5000, 12000, -1000 ],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 3.0, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 11, 11, 11]
}
]
},
{
"Name":"BCL_BATOILO_TPU_LOW_TEMP",
"Type":"BCL_CURRENT",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "batoilo",
"Combination":["batoilo", "ocp_tpu", "battery"],
"Coefficient":[5000, 12000, -1000],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 3.0, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"BindedCdevInfo": [
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 7, 7, 7]
}
]
},
{
"Name":"BCL_BATOILO_GPU",
"Type":"BCL_CURRENT",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "batoilo",
"Combination":["batoilo", "ocp_gpu"],
"Coefficient":[5000, 12000],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 5, 5, 5]
}
]
},
{
"Name":"BCL_BATOILO_TPU",
"Type":"BCL_CURRENT",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "batoilo",
"Combination":[
"batoilo",
"ocp_tpu"
],
"Coefficient":[5000, 12000],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true,
"BindedCdevInfo": [
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 6, 6, 6]
}
]
},
{
"Name":"batoilo",
"Type":"BCL_CURRENT",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 5000, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Monitor":true,
"PollingDelay":0,
"PassiveDelay":60000,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-cpufreq-2",
"LimitInfo": [0, 0, 0, 0, 7, 7, 7]
},
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 4, 4, 4]
},
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 5, 5, 5]
}
]
},
{
"Name":"BCL_AUDIO_BAACL",
"Type":"BCL_VOLTAGE",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"TriggerSensor": "soc",
"Combination":["battery", "soc"],
"Coefficient":[-45000, 70],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
"Multiplier":1,
"Monitor":true
},
{
"Name":"vdroop1",
"Type":"BCL_VOLTAGE",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 1000, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Monitor":true,
"PollingDelay":0,
"PassiveDelay":60000,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-cpufreq-2",
"LimitInfo": [0, 0, 0, 0, 7, 7, 7]
},
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 3, 3, 3]
},
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 3, 3, 3]
}
]
},
{
"Name":"vdroop2",
"Type":"BCL_VOLTAGE",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 1200, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Monitor":true,
"PollingDelay":0,
"PassiveDelay":60000,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-cpufreq-2",
"LimitInfo": [0, 0, 0, 0, 7, 7, 7]
},
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 5, 5, 5]
},
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 3, 3, 3]
}
]
},
{
"Name":"smpl_gm",
"Type":"BCL_VOLTAGE",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 1100, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Monitor":true,
"PollingDelay":0,
"PassiveDelay":60000,
"BindedCdevInfo": [
{
"CdevRequest": "thermal-cpufreq-2",
"LimitInfo": [0, 0, 0, 0, 7, 7, 7]
},
{
"CdevRequest": "thermal-gpufreq-0",
"LimitInfo": [0, 0, 0, 0, 4, 4, 4]
},
{
"CdevRequest": "tpu_cooling",
"LimitInfo": [0, 0, 0, 0, 3, 3, 3]
}
]
},
{
"Name":"ocp_cpu1",
"Type":"BCL_CURRENT",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 8000, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Hidden":true
},
{
"Name":"ocp_cpu2",
"Type":"BCL_CURRENT",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 12000, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Hidden":true
},
{
"Name":"ocp_tpu",
"Type":"BCL_CURRENT",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 12000, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Hidden":true
},
{
"Name":"ocp_gpu",
"Type":"BCL_CURRENT",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", 12000, "NAN", "NAN"],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
"Multiplier":1,
"Hidden":true
} }
], ],
"CoolingDevices":[ "CoolingDevices":[
{ {
"Name":"thermal-cpufreq-0", "Name":"thermal-cpufreq-0",
"Type":"CPU", "Type":"CPU",
"WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote", "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote"
"State2Power":[1100, 1050, 1000, 950, 900, 850, 800, 750, 700, 650, 600]
}, },
{ {
"Name":"thermal-cpufreq-1", "Name":"thermal-cpufreq-1",
"Type":"CPU", "Type":"CPU",
"WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote", "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote"
"State2Power":[1400, 1350, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 850, 800, 750]
}, },
{ {
"Name":"thermal-cpufreq-2", "Name":"thermal-cpufreq-2",
"Type":"CPU", "Type":"CPU",
"WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote", "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote"
"State2Power":[1450, 1400, 1350, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 850, 800, 750]
}, },
{ {
"Name":"thermal-gpufreq-0", "Name":"thermal-gpufreq-0",
"Type":"GPU", "Type":"GPU",
"WritePath":"/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote", "WritePath":"/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote"
"State2Power":[4371, 3543, 3085, 2293, 1927, 1707, 1394, 1171, 967, 768, 592, 433]
}, },
{ {
"Name":"tpu_cooling", "Name":"tpu_cooling",