diff --git a/conf/init.gs101.rc b/conf/init.gs101.rc index 4627df69..636d4a78 100644 --- a/conf/init.gs101.rc +++ b/conf/init.gs101.rc @@ -987,10 +987,19 @@ on property:vendor.thermal.link_ready=1 chown system system /dev/thermal/cdev-by-name/wlc_fcc/cur_state chown system system /dev/thermal/cdev-by-name/usbc-port/cur_state +# Create thermal symlink in off charging mode on charger + mkdir /dev/thermal 0750 system system + mkdir /dev/thermal/tz-by-name 0750 system system + mkdir /dev/thermal/cdev-by-name 0750 system system + start vendor.thermal.symlinks write /proc/vendor_sched/sys_uclamp_min 0 write /proc/vendor_sched/sys_prefer_idle 0 +# Launch thermal hal in off charging mode +on charger && property:vendor.thermal.link_ready=1 + start vendor.thermal-hal-2-0 + on property:vendor.disable.bcl.control=1 write /sys/devices/virtual/pmic/mitigation/instruction/enable_mitigation 0 diff --git a/powerhint_a0.json b/powerhint_a0.json index 47873678..76472db1 100644 --- a/powerhint_a0.json +++ b/powerhint_a0.json @@ -75,15 +75,6 @@ ], "ResetOnInit": true }, - { - "Name": "F2fsRecessModeEnable", - "Path": "/dev/sys/fs/by-name/userdata/gc_urgent", - "Values": [ - "2", - "0" - ], - "ResetOnInit": true - }, { "Name": "PowerHALRenderingState", "Path": "vendor.powerhal.rendering", @@ -184,12 +175,6 @@ "Duration": 200, "Value": "0" }, - { - "PowerHint": "DEVICE_IDLE", - "Node": "F2fsRecessModeEnable", - "Duration": 0, - "Value": "2" - }, { "PowerHint": "LAUNCH", "Type": "EndHint", @@ -231,12 +216,6 @@ "Duration": 5000, "Value": "0" }, - { - "PowerHint": "DISPLAY_INACTIVE", - "Node": "F2fsRecessModeEnable", - "Duration": 0, - "Value": "2" - }, { "PowerHint": "CAMERA_LAUNCH", "Node": "CPUBigClusterMaxFreq", diff --git a/powerhint_a1.json b/powerhint_a1.json index 81b4b659..7a980ba5 100644 --- a/powerhint_a1.json +++ b/powerhint_a1.json @@ -95,15 +95,6 @@ ], "ResetOnInit": true }, - { - "Name": "F2fsRecessModeEnable", - "Path": "/dev/sys/fs/by-name/userdata/gc_urgent", - "Values": [ - "2", - "0" - ], - "ResetOnInit": true - }, { "Name": "LimitFlashCurrent", "Path": "vendor.camera.max_flash_current", @@ -214,12 +205,6 @@ "Duration": 200, "Value": "0" }, - { - "PowerHint": "DEVICE_IDLE", - "Node": "F2fsRecessModeEnable", - "Duration": 0, - "Value": "2" - }, { "PowerHint": "LAUNCH", "Type": "EndHint", @@ -261,12 +246,6 @@ "Duration": 5000, "Value": "0" }, - { - "PowerHint": "DISPLAY_INACTIVE", - "Node": "F2fsRecessModeEnable", - "Duration": 0, - "Value": "2" - }, { "PowerHint": "CAMERA_LAUNCH", "Node": "CPUBigClusterMaxFreq", diff --git a/usb/usb/Usb.cpp b/usb/usb/Usb.cpp index b8ad7c5f..6cff2f26 100644 --- a/usb/usb/Usb.cpp +++ b/usb/usb/Usb.cpp @@ -83,23 +83,39 @@ ScopedAStatus Usb::enableUsbData(const string& in_portName, bool in_enable, int64_t in_transactionId) { bool result = true; std::vector currentPortStatus; + string pullup; ALOGI("Userspace turn %s USB data signaling. opID:%ld", in_enable ? "on" : "off", in_transactionId); if (in_enable) { if (!mUsbDataEnabled) { + if (ReadFileToString(PULLUP_PATH, &pullup)) { + pullup = Trim(pullup); + if (pullup != kGadgetName) { + if (!WriteStringToFile(kGadgetName, PULLUP_PATH)) { + ALOGE("Gadget cannot be pulled up"); + result = false; + } + } + } + if (!WriteStringToFile("1", USB_DATA_PATH)) { ALOGE("Not able to turn on usb connection notification"); result = false; } - - if (!WriteStringToFile(kGadgetName, PULLUP_PATH)) { - ALOGE("Gadget cannot be pulled up"); - result = false; - } } } else { + if (ReadFileToString(PULLUP_PATH, &pullup)) { + pullup = Trim(pullup); + if (pullup == kGadgetName) { + if (!WriteStringToFile("none", PULLUP_PATH)) { + ALOGE("Gadget cannot be pulled down"); + result = false; + } + } + } + if (!WriteStringToFile("1", ID_PATH)) { ALOGE("Not able to turn off host mode"); result = false; @@ -114,11 +130,6 @@ ScopedAStatus Usb::enableUsbData(const string& in_portName, bool in_enable, ALOGE("Not able to turn on usb connection notification"); result = false; } - - if (!WriteStringToFile("none", PULLUP_PATH)) { - ALOGE("Gadget cannot be pulled down"); - result = false; - } } if (result) {