From 8c7b81d1d3860ca782ff8ee80f203817820aae43 Mon Sep 17 00:00:00 2001 From: Roger Wang Date: Wed, 4 May 2022 15:08:05 +0800 Subject: [PATCH 1/6] wlan: Disable 6GHz softAp Driver actually does not support 6Ghz softAp at current version. Hence, disable it Bug: 231384422 Test: SoftAp can be enabled. Change-Id: I47b39f3d31c1a94de338a2a22dc5b5495b1af1a1 --- rro_overlays/WifiOverlay/res/values/config.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/rro_overlays/WifiOverlay/res/values/config.xml b/rro_overlays/WifiOverlay/res/values/config.xml index 1be46320..c63ff265 100644 --- a/rro_overlays/WifiOverlay/res/values/config.xml +++ b/rro_overlays/WifiOverlay/res/values/config.xml @@ -100,9 +100,6 @@ be checked via NL80211 interface --> true - - true - true From ef12b21dedf6aa9046bd0ad1591fdbe035ba1e0e Mon Sep 17 00:00:00 2001 From: Will McVicker Date: Mon, 2 May 2022 10:17:58 -0700 Subject: [PATCH 2/6] init.gs101.rc: add raw i2c-s2mpg10mfd and i2c-s2mpg11mfd nodes This fixes the permissions for the [067]-001f and [178]-002f raw i2c numberings for the P21-mainline driver which doesn't use the i2c vendor hook to rename these numberings. This is required for the thermal hal to work. Bug: 231155356 Signed-off-by: Will McVicker Change-Id: I2341c78b2ab146713a171eeb436f34c1c8839c6e --- conf/init.gs101.rc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/conf/init.gs101.rc b/conf/init.gs101.rc index fc6a3073..6cfdcef3 100644 --- a/conf/init.gs101.rc +++ b/conf/init.gs101.rc @@ -894,13 +894,19 @@ on post-fs-data # ODPM on fs chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-0/i2c-s2mpg10mfd/s2mpg10-meter/s2mpg10-odpm/iio:device1/enabled_rails + chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-0/0-001f/s2mpg10-meter/s2mpg10-odpm/iio:device1/enabled_rails chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-1/i2c-s2mpg11mfd/s2mpg11-meter/s2mpg11-odpm/iio:device0/enabled_rails + chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-1/1-002f/s2mpg11-meter/s2mpg11-odpm/iio:device0/enabled_rails chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-6/i2c-s2mpg10mfd/s2mpg10-meter/s2mpg10-odpm/iio:device0/enabled_rails + chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-6/6-001f/s2mpg10-meter/s2mpg10-odpm/iio:device0/enabled_rails chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-7/i2c-s2mpg11mfd/s2mpg11-meter/s2mpg11-odpm/iio:device1/enabled_rails + chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-7/7-002f/s2mpg11-meter/s2mpg11-odpm/iio:device1/enabled_rails chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-7/i2c-s2mpg10mfd/s2mpg10-meter/s2mpg10-odpm/iio:device0/enabled_rails + chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-7/7-001f/s2mpg10-meter/s2mpg10-odpm/iio:device0/enabled_rails chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-8/i2c-s2mpg11mfd/s2mpg11-meter/s2mpg11-odpm/iio:device1/enabled_rails + chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-8/8-002f/s2mpg11-meter/s2mpg11-odpm/iio:device1/enabled_rails on post-fs-data mkdir /data/vendor/powerstats 0771 system system From 14e7759e0b4c0c076b8e7446ab8e94367e475927 Mon Sep 17 00:00:00 2001 From: Kris Chen Date: Wed, 20 Apr 2022 00:53:52 +0800 Subject: [PATCH 3/6] Add vendor/goodix/udfps/fp_utils to PRODUCT_SOONG_NAMESPACES Bug: 229716695 Test: build and test fingerprint on device. Change-Id: I017fef77de4709e1767f6e05e3b794b391969659 --- fingerprint/udfps_common.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/fingerprint/udfps_common.mk b/fingerprint/udfps_common.mk index a41b3adf..9d413196 100644 --- a/fingerprint/udfps_common.mk +++ b/fingerprint/udfps_common.mk @@ -24,6 +24,7 @@ DEVICE_MANIFEST_FILE += \ endif # Include the Goodix AIDL HAL namespaces. +PRODUCT_SOONG_NAMESPACES += vendor/goodix/udfps/fp_utils ifeq ($(GOODIX_CONFIG_BUILD_VERSION), g6_trusty) PRODUCT_SOONG_NAMESPACES += vendor/goodix/udfps/g6_trusty PRODUCT_SOONG_NAMESPACES += vendor/goodix/udfps/g6_aidl_trusty From 7da5d4f43f0e0d335aa698223a1cd26d853aea55 Mon Sep 17 00:00:00 2001 From: Ray Chi Date: Thu, 3 Mar 2022 14:46:20 +0800 Subject: [PATCH 4/6] usb: move the permission change to usb rc Since permission change in hal rc may be late, gadget hal would enable USB function failed. The solution will change the permission before USB gadget hal starts. Bug: 224699556 Test: build pass and verified pass Change-Id: I45c1318f647220480fa03ba3b813a81b21393d71 Merged-In: I45c1318f647220480fa03ba3b813a81b21393d71 (cherry picked from commit b30924e3599f2e92aeae498a6ae15d3b9a397930) --- conf/init.gs101.usb.rc | 77 ++++++++++++++++++ ...droid.hardware.usb.gadget-service.gs101.rc | 78 ------------------- 2 files changed, 77 insertions(+), 78 deletions(-) diff --git a/conf/init.gs101.usb.rc b/conf/init.gs101.usb.rc index 749d4b4d..3be37bb7 100644 --- a/conf/init.gs101.usb.rc +++ b/conf/init.gs101.usb.rc @@ -71,6 +71,83 @@ on early-boot # acm function for uwb mkdir /config/usb_gadget/g1/functions/acm.uwb0 + # chown file/folder permission + chown system system /config/usb_gadget/ + chown system system /config/usb_gadget/g1 + chown system system /config/usb_gadget/g1/UDC + chown system system /config/usb_gadget/g1/bDeviceClass + chown system system /config/usb_gadget/g1/bDeviceProtocol + chown system system /config/usb_gadget/g1/bDeviceSubClass + chown system system /config/usb_gadget/g1/bMaxPacketSize0 + chown system system /config/usb_gadget/g1/bcdDevice + chown system system /config/usb_gadget/g1/bcdUSB + chown system system /config/usb_gadget/g1/configs + chown system system /config/usb_gadget/g1/configs/b.1 + chown system system /config/usb_gadget/g1/configs/b.1/MaxPower + chown system system /config/usb_gadget/g1/configs/b.1/bmAttributes + chown system system /config/usb_gadget/g1/configs/b.1/strings + chown system system /config/usb_gadget/g1/functions + chown system system /config/usb_gadget/g1/functions/accessory.gs2 + chown system system /config/usb_gadget/g1/functions/acm.gs6 + chown system system /config/usb_gadget/g1/functions/acm.gs6/port_num + chown system system /config/usb_gadget/g1/functions/acm.uwb0 + chown system system /config/usb_gadget/g1/functions/acm.uwb0/port_num + chown system system /config/usb_gadget/g1/functions/audio_source.gs3 + chown system system /config/usb_gadget/g1/functions/dm.gs7 + chown system system /config/usb_gadget/g1/functions/ffs.adb + chown system system /config/usb_gadget/g1/functions/ffs.mtp + chown system system /config/usb_gadget/g1/functions/ffs.ptp + chown system system /config/usb_gadget/g1/functions/midi.gs5 + chown system system /config/usb_gadget/g1/functions/midi.gs5/buflen + chown system system /config/usb_gadget/g1/functions/midi.gs5/id + chown system system /config/usb_gadget/g1/functions/midi.gs5/in_ports + chown system system /config/usb_gadget/g1/functions/midi.gs5/index + chown system system /config/usb_gadget/g1/functions/midi.gs5/out_ports + chown system system /config/usb_gadget/g1/functions/midi.gs5/qlen + chown system system /config/usb_gadget/g1/functions/mtp.gs0 + chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc + chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP + chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id + chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/sub_compatible_id + chown system system /config/usb_gadget/g1/functions/ncm.gs9 + chown system system /config/usb_gadget/g1/functions/ncm.gs9/dev_addr + chown system system /config/usb_gadget/g1/functions/ncm.gs9/host_addr + chown system system /config/usb_gadget/g1/functions/ncm.gs9/ifname + chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc + chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm + chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/compatible_id + chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/sub_compatible_id + chown system system /config/usb_gadget/g1/functions/ncm.gs9/qmult + chown system system /config/usb_gadget/g1/functions/ptp.gs1 + chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc + chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP + chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id + chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/sub_compatible_id + chown system system /config/usb_gadget/g1/functions/rndis.gs4 + chown system system /config/usb_gadget/g1/functions/rndis.gs4/class + chown system system /config/usb_gadget/g1/functions/rndis.gs4/dev_addr + chown system system /config/usb_gadget/g1/functions/rndis.gs4/host_addr + chown system system /config/usb_gadget/g1/functions/rndis.gs4/ifname + chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc + chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis + chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/compatible_id + chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/sub_compatible_id + chown system system /config/usb_gadget/g1/functions/rndis.gs4/protocol + chown system system /config/usb_gadget/g1/functions/rndis.gs4/qmult + chown system system /config/usb_gadget/g1/functions/rndis.gs4/subclass + chown system system /config/usb_gadget/g1/idProduct + chown system system /config/usb_gadget/g1/idVendor + chown system system /config/usb_gadget/g1/max_speed + chown system system /config/usb_gadget/g1/os_desc + chown system system /config/usb_gadget/g1/os_desc/b.1 + chown system system /config/usb_gadget/g1/os_desc/b_vendor_code + chown system system /config/usb_gadget/g1/os_desc/qw_sign + chown system system /config/usb_gadget/g1/os_desc/use + chown system system /config/usb_gadget/g1/strings + chown system system /config/usb_gadget/g1/strings/0x409 + chown system system /config/usb_gadget/g1/strings/0x409/manufacturer + chown system system /config/usb_gadget/g1/strings/0x409/product + chown system system /config/usb_gadget/g1/strings/0x409/serialnumber setprop vendor.usb.functions.ready 1 on boot diff --git a/usb/gadget/android.hardware.usb.gadget-service.gs101.rc b/usb/gadget/android.hardware.usb.gadget-service.gs101.rc index d0e355c3..8fa88680 100644 --- a/usb/gadget/android.hardware.usb.gadget-service.gs101.rc +++ b/usb/gadget/android.hardware.usb.gadget-service.gs101.rc @@ -21,81 +21,3 @@ on post-fs chmod 664 /sys/devices/platform/11110000.usb/dwc3_exynos_otg_b_sess chmod 664 /sys/devices/platform/11110000.usb/dwc3_exynos_otg_id chmod 664 /sys/devices/platform/11110000.usb/usb_data_enabled - -on property:vendor.usb.functions.ready=1 - chown system system /config/usb_gadget/ - chown system system /config/usb_gadget/g1 - chown system system /config/usb_gadget/g1/UDC - chown system system /config/usb_gadget/g1/bDeviceClass - chown system system /config/usb_gadget/g1/bDeviceProtocol - chown system system /config/usb_gadget/g1/bDeviceSubClass - chown system system /config/usb_gadget/g1/bMaxPacketSize0 - chown system system /config/usb_gadget/g1/bcdDevice - chown system system /config/usb_gadget/g1/bcdUSB - chown system system /config/usb_gadget/g1/configs - chown system system /config/usb_gadget/g1/configs/b.1 - chown system system /config/usb_gadget/g1/configs/b.1/MaxPower - chown system system /config/usb_gadget/g1/configs/b.1/bmAttributes - chown system system /config/usb_gadget/g1/configs/b.1/strings - chown system system /config/usb_gadget/g1/functions - chown system system /config/usb_gadget/g1/functions/accessory.gs2 - chown system system /config/usb_gadget/g1/functions/acm.gs6 - chown system system /config/usb_gadget/g1/functions/acm.gs6/port_num - chown system system /config/usb_gadget/g1/functions/acm.uwb0 - chown system system /config/usb_gadget/g1/functions/acm.uwb0/port_num - chown system system /config/usb_gadget/g1/functions/audio_source.gs3 - chown system system /config/usb_gadget/g1/functions/dm.gs7 - chown system system /config/usb_gadget/g1/functions/ffs.adb - chown system system /config/usb_gadget/g1/functions/ffs.mtp - chown system system /config/usb_gadget/g1/functions/ffs.ptp - chown system system /config/usb_gadget/g1/functions/midi.gs5 - chown system system /config/usb_gadget/g1/functions/midi.gs5/buflen - chown system system /config/usb_gadget/g1/functions/midi.gs5/id - chown system system /config/usb_gadget/g1/functions/midi.gs5/in_ports - chown system system /config/usb_gadget/g1/functions/midi.gs5/index - chown system system /config/usb_gadget/g1/functions/midi.gs5/out_ports - chown system system /config/usb_gadget/g1/functions/midi.gs5/qlen - chown system system /config/usb_gadget/g1/functions/mtp.gs0 - chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc - chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP - chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id - chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/sub_compatible_id - chown system system /config/usb_gadget/g1/functions/ncm.gs9 - chown system system /config/usb_gadget/g1/functions/ncm.gs9/dev_addr - chown system system /config/usb_gadget/g1/functions/ncm.gs9/host_addr - chown system system /config/usb_gadget/g1/functions/ncm.gs9/ifname - chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc - chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm - chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/compatible_id - chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/sub_compatible_id - chown system system /config/usb_gadget/g1/functions/ncm.gs9/qmult - chown system system /config/usb_gadget/g1/functions/ptp.gs1 - chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc - chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP - chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id - chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/sub_compatible_id - chown system system /config/usb_gadget/g1/functions/rndis.gs4 - chown system system /config/usb_gadget/g1/functions/rndis.gs4/class - chown system system /config/usb_gadget/g1/functions/rndis.gs4/dev_addr - chown system system /config/usb_gadget/g1/functions/rndis.gs4/host_addr - chown system system /config/usb_gadget/g1/functions/rndis.gs4/ifname - chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc - chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis - chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/compatible_id - chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/sub_compatible_id - chown system system /config/usb_gadget/g1/functions/rndis.gs4/protocol - chown system system /config/usb_gadget/g1/functions/rndis.gs4/qmult - chown system system /config/usb_gadget/g1/functions/rndis.gs4/subclass - chown system system /config/usb_gadget/g1/idProduct - chown system system /config/usb_gadget/g1/idVendor - chown system system /config/usb_gadget/g1/max_speed - chown system system /config/usb_gadget/g1/os_desc - chown system system /config/usb_gadget/g1/os_desc/b.1 - chown system system /config/usb_gadget/g1/os_desc/b_vendor_code - chown system system /config/usb_gadget/g1/os_desc/qw_sign - chown system system /config/usb_gadget/g1/os_desc/use - chown system system /config/usb_gadget/g1/strings - chown system system /config/usb_gadget/g1/strings/0x409 - chown system system /config/usb_gadget/g1/strings/0x409/manufacturer - chown system system /config/usb_gadget/g1/strings/0x409/product - chown system system /config/usb_gadget/g1/strings/0x409/serialnumber From ba3dc9b3da5ea1c65d26ab52a541b6dfb04ebb63 Mon Sep 17 00:00:00 2001 From: Ray Chi Date: Tue, 1 Mar 2022 21:57:03 +0800 Subject: [PATCH 5/6] tune usb irq (dwc3) in usb gadget hal Since affinity permission is changed from root to system, original permission change by script can't be used. Therefore, this patch will move the functionality to usb gadget hal. Bug: 224699556 Test: dwc3 irq could be located in medium/big cores after USB function switch Change-Id: Id993db9fc303e85a9a6337a0e41b1dfd6fc9a86a Merged-In: Id993db9fc303e85a9a6337a0e41b1dfd6fc9a86a (cherry picked from commit f363704a92fd7611cf01c8b3bcaf6e8913255207) --- usb/gadget/UsbGadget.cpp | 58 +++++++++++++++++++++++++++++++++++++--- usb/gadget/UsbGadget.h | 10 +++++++ 2 files changed, 65 insertions(+), 3 deletions(-) diff --git a/usb/gadget/UsbGadget.cpp b/usb/gadget/UsbGadget.cpp index 5c0021fe..361cefd7 100644 --- a/usb/gadget/UsbGadget.cpp +++ b/usb/gadget/UsbGadget.cpp @@ -33,13 +33,55 @@ namespace gadget { namespace V1_2 { namespace implementation { -UsbGadget::UsbGadget() { +UsbGadget::UsbGadget() : mGadgetIrqPath("") { if (access(OS_DESC_PATH, R_OK) != 0) { ALOGE("configfs setup not done yet"); abort(); } } +V1_0::Status UsbGadget::getUsbGadgetIrqPath() { + std::string irqs; + size_t read_pos = 0; + size_t found_pos = 0; + + if (!ReadFileToString(kProcInterruptsPath, &irqs)) { + ALOGE("cannot read all interrupts"); + return Status::ERROR; + } + + while (true) { + found_pos = irqs.find_first_of("\n", read_pos); + if (found_pos == std::string::npos) { + ALOGI("the string of all interrupts is unexpected"); + return Status::ERROR; + } + + std::string single_irq = irqs.substr(read_pos, found_pos - read_pos); + + if (single_irq.find("dwc3", 0) != std::string::npos) { + unsigned int dwc3_irq_number; + size_t dwc3_pos = single_irq.find_first_of(":"); + if (!ParseUint(single_irq.substr(0, dwc3_pos), &dwc3_irq_number)) { + ALOGI("unknown IRQ strings"); + return Status::ERROR; + } + + mGadgetIrqPath = kProcIrqPath + single_irq.substr(0, dwc3_pos) + kSmpAffinityList; + break; + } + + if (found_pos == irqs.npos) { + ALOGI("USB gadget doesn't start"); + return Status::ERROR; + } + + read_pos = found_pos + 1; + } + + return Status::SUCCESS; +} + void currentFunctionsAppliedCallback(bool functionsApplied, void *payload) { UsbGadget *gadget = (UsbGadget *)payload; gadget->mCurrentUsbFunctionsApplied = functionsApplied; @@ -346,6 +388,10 @@ Return UsbGadget::setCurrentUsbFunctions(uint64_t functions, mCurrentUsbFunctions = functions; mCurrentUsbFunctionsApplied = false; + // Get the gadget IRQ number before tearDownGadget() + if (mGadgetIrqPath.empty()) + getUsbGadgetIrqPath(); + // Unlink the gadget and stop the monitor if running. V1_0::Status status = tearDownGadget(); if (status != Status::SUCCESS) { @@ -378,9 +424,15 @@ Return UsbGadget::setCurrentUsbFunctions(uint64_t functions, } if (functions & GadgetFunction::NCM) { - SetProperty("vendor.usb.dwc3_irq", "big"); + if (!mGadgetIrqPath.empty()) { + if (!WriteStringToFile(BIG_CORE, mGadgetIrqPath)) + ALOGI("Cannot move gadget IRQ to big core, path:%s", mGadgetIrqPath.c_str()); + } } else { - SetProperty("vendor.usb.dwc3_irq", "medium"); + if (!mGadgetIrqPath.empty()) { + if (!WriteStringToFile(MEDIUM_CORE, mGadgetIrqPath)) + ALOGI("Cannot move gadget IRQ to medium core, path:%s", mGadgetIrqPath.c_str()); + } } ALOGI("Usb Gadget setcurrent functions called successfully"); diff --git a/usb/gadget/UsbGadget.h b/usb/gadget/UsbGadget.h index 2669f8da..f89476d8 100644 --- a/usb/gadget/UsbGadget.h +++ b/usb/gadget/UsbGadget.h @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -44,6 +45,7 @@ namespace implementation { using ::android::sp; using ::android::base::GetProperty; using ::android::base::SetProperty; +using ::android::base::ParseUint; using ::android::base::unique_fd; using ::android::base::ReadFileToString; using ::android::base::Trim; @@ -71,6 +73,9 @@ using ::android::hardware::usb::gadget::V1_2::GadgetFunction; using ::std::string; constexpr char kGadgetName[] = "11110000.dwc3"; +constexpr char kProcInterruptsPath[] = "/proc/interrupts"; +constexpr char kProcIrqPath[] = "/proc/irq/"; +constexpr char kSmpAffinityList[] = "/smp_affinity_list"; #ifndef UDC_PATH #define UDC_PATH "/sys/class/udc/11110000.dwc3/" #endif @@ -78,11 +83,15 @@ static MonitorFfs monitorFfs(kGadgetName); #define SPEED_PATH UDC_PATH "current_speed" +#define BIG_CORE "6" +#define MEDIUM_CORE "4" + struct UsbGadget : public IUsbGadget { UsbGadget(); // Makes sure that only one request is processed at a time. std::mutex mLockSetCurrentFunction; + std::string mGadgetIrqPath; uint64_t mCurrentUsbFunctions; bool mCurrentUsbFunctionsApplied; UsbSpeed mUsbSpeed; @@ -99,6 +108,7 @@ struct UsbGadget : public IUsbGadget { private: Status tearDownGadget(); + Status getUsbGadgetIrqPath(); Status setupFunctions(uint64_t functions, const sp &callback, uint64_t timeout); }; From b1f75858c89b64a308d25540739c1db3218dd885 Mon Sep 17 00:00:00 2001 From: Ray Chi Date: Wed, 4 May 2022 09:43:58 +0800 Subject: [PATCH 6/6] usb: remove set_usb_irq script for irq change Since the dwc3 irq is moved by USB gadget hal now, the script is not needed. Bug: 224699556 Test: build pass Change-Id: Iea0aed110183d9583db00d9b182d351de41573cd Merged-In: Iea0aed110183d9583db00d9b182d351de41573cd (cherry picked from commit a5f995d2f66b02746946e87a2709f975bede4fb6) --- conf/init.gs101.usb.rc | 6 ------ device.mk | 1 - set_usb_irq.sh | 16 ---------------- 3 files changed, 23 deletions(-) delete mode 100755 set_usb_irq.sh diff --git a/conf/init.gs101.usb.rc b/conf/init.gs101.usb.rc index 3be37bb7..6b04012e 100644 --- a/conf/init.gs101.usb.rc +++ b/conf/init.gs101.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 927d413d..fda1dd67 100644 --- a/device.mk +++ b/device.mk @@ -313,7 +313,6 @@ PRODUCT_COPY_FILES += \ # Shell scripts PRODUCT_COPY_FILES += \ device/google/gs101/init.insmod.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.insmod.sh \ - device/google/gs101/set_usb_irq.sh:$(TARGET_COPY_OUT_VENDOR)/bin/hw/set_usb_irq.sh \ device/google/gs101/disable_contaminant_detection.sh:$(TARGET_COPY_OUT_VENDOR)/bin/hw/disable_contaminant_detection.sh # insmod files diff --git a/set_usb_irq.sh b/set_usb_irq.sh deleted file mode 100755 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