diff --git a/conf/init.gs201.rc b/conf/init.gs201.rc index 29568c7a..77b489d8 100644 --- a/conf/init.gs201.rc +++ b/conf/init.gs201.rc @@ -41,6 +41,8 @@ on init chown system system /proc/vendor_sched/set_proc_group_dex2oat chown system system /proc/vendor_sched/set_proc_group_cam_power chown system system /proc/vendor_sched/set_proc_group_ota + chown system system /proc/vendor_sched/prefer_idle_set + chown system system /proc/vendor_sched/prefer_idle_clear chmod 0220 /proc/vendor_sched/set_task_group_bg chmod 0220 /proc/vendor_sched/set_task_group_cam @@ -66,6 +68,8 @@ on init chmod 0220 /proc/vendor_sched/set_proc_group_dex2oat chmod 0220 /proc/vendor_sched/set_proc_group_cam_power chmod 0220 /proc/vendor_sched/set_proc_group_ota + chmod 0220 /proc/vendor_sched/prefer_idle_set + chmod 0220 /proc/vendor_sched/prefer_idle_clear wait /dev/block/platform/${ro.boot.boot_devices} symlink /dev/block/platform/${ro.boot.boot_devices} /dev/block/bootdevice @@ -697,6 +701,7 @@ on property:sys.boot_completed=1 setprop vendor.powerhal.init 1 # Setup final cpu.uclamp + write /proc/vendor_sched/uclamp_threshold 8 write /proc/vendor_sched/ta_uclamp_min 1 write /proc/vendor_sched/fg_uclamp_min 0 write /proc/vendor_sched/sys_prefer_idle 0 @@ -900,6 +905,8 @@ on property:vendor.thermal.link_ready=1 chown system system /dev/thermal/tz-by-name/soft_ocp_gpu/trip_point_0_hyst chown system system /dev/thermal/tz-by-name/soc/trip_point_0_temp chown system system /dev/thermal/tz-by-name/soc/trip_point_0_hyst + chown system system /dev/thermal/tz-by-name/batoilo/trip_point_0_temp + chown system system /dev/thermal/tz-by-name/batoilo/trip_point_0_hyst # Thermal chown system system /dev/thermal/tz-by-name/quiet_therm/trip_point_0_temp chown system system /dev/thermal/tz-by-name/quiet_therm/trip_point_0_hyst diff --git a/conf/init.gs201.usb.rc b/conf/init.gs201.usb.rc index 87245709..d8f89965 100644 --- a/conf/init.gs201.usb.rc +++ b/conf/init.gs201.usb.rc @@ -165,12 +165,6 @@ on property:vendor.usb.config=* on property:persist.vendor.usb.usbradio.config=* start usbd -on property:vendor.usb.dwc3_irq=medium - exec /vendor/bin/hw/set_usb_irq.sh medium - -on property:vendor.usb.dwc3_irq=big - exec /vendor/bin/hw/set_usb_irq.sh big - on charger mkdir /config/usb_gadget/g1 mkdir /config/usb_gadget/g1/strings/0x409 diff --git a/device.mk b/device.mk index 6ba0a8e4..629f8407 100644 --- a/device.mk +++ b/device.mk @@ -269,7 +269,6 @@ PRODUCT_COPY_FILES += \ # Shell scripts PRODUCT_COPY_FILES += \ device/google/gs201/init.insmod.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.insmod.sh \ - device/google/$(TARGET_BOARD_PLATFORM)/set_usb_irq.sh:$(TARGET_COPY_OUT_VENDOR)/bin/hw/set_usb_irq.sh # insmod files PRODUCT_COPY_FILES += \ diff --git a/powerstats/Gs201CommonDataProviders.cpp b/powerstats/Gs201CommonDataProviders.cpp index 6232a6e0..b7985f0c 100644 --- a/powerstats/Gs201CommonDataProviders.cpp +++ b/powerstats/Gs201CommonDataProviders.cpp @@ -102,6 +102,7 @@ void addPlaceholderEnergyConsumers(std::shared_ptr p) { } void addAoC(std::shared_ptr p) { + static const uint64_t TIMEOUT_MILLIS = 120; std::string prefix = "/sys/devices/platform/19000000.aoc/control/"; // Add AoC cores (a32, ff1, hf0, and hf1) @@ -114,7 +115,7 @@ void addAoC(std::shared_ptr p) { std::vector> coreStates = { {"DWN", "off"}, {"RET", "retention"}, {"WFI", "wfi"}}; p->addStateResidencyDataProvider(std::make_unique(coreIds, - coreStates)); + coreStates, TIMEOUT_MILLIS)); // Add AoC voltage stats std::vector> voltageIds = { @@ -125,7 +126,8 @@ void addAoC(std::shared_ptr p) { {"UUD", "ultra_underdrive"}, {"UD", "underdrive"}}; p->addStateResidencyDataProvider( - std::make_unique(voltageIds, voltageStates)); + std::make_unique(voltageIds, voltageStates, + TIMEOUT_MILLIS)); // Add AoC monitor mode std::vector> monitorIds = { @@ -135,7 +137,8 @@ void addAoC(std::shared_ptr p) { {"MON", "mode"}, }; p->addStateResidencyDataProvider( - std::make_unique(monitorIds, monitorStates)); + std::make_unique(monitorIds, monitorStates, + TIMEOUT_MILLIS)); // Add AoC restart count const GenericStateResidencyDataProvider::StateResidencyConfig restartCountConfig = { @@ -642,9 +645,7 @@ void addGs201CommonDataProviders(std::shared_ptr p) { setEnergyMeter(p); addPixelStateResidencyDataProvider(p); - // TODO(b/220032540): Re-enable AoC reporting when AoC long latency issue is fixed or - // the timeout mechanism is merged. - //addAoC(p); + addAoC(p); addDvfsStats(p); addSoC(p); addCPUclusters(p); diff --git a/set_usb_irq.sh b/set_usb_irq.sh deleted file mode 100644 index 29d37812..00000000 --- a/set_usb_irq.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/vendor/bin/sh - -# Switch into /proc/irq/$IRQ for the dwc3 usb controller -cd /proc/irq/*/dwc3/.. || exit 7 - -# Move the USB Controller (DWC3) interrupt as requested -# Modem and DIT are on 0/2/5 depending on throughput, so avoid those. -# 0-3 small, 4-5 medium, 6-7 big -case "$1" in - medium) core=4;; - big) core=6;; - *) core=0;; -esac - -# This can sometimes fail due to smp_affinity_list no longer existing... -echo "${core}" > smp_affinity_list