summaryrefslogtreecommitdiff
path: root/usb
AgeCommit message (Collapse)Author
2023-02-02[DO NOT MERGE] Usb Gadget HAL: modify monitorfs behaviorRay Chi
Currently, monitorffs will pull up gadget when the ffs endpoints are ready. When the device change the data role from peripheral to host, the pullup behavior will still occur. It will cause the host mode and peripheral mode start in the same time. This patch will check typec and USB gadget state before pulling up gadget. Bug: 263435622 Bug: 266635426 Test: verified pass Change-Id: Ibd8d3c3c34b91657327903e1063351448722e41c Merged-In: Ibd8d3c3c34b91657327903e1063351448722e41c Signed-off-by: Ray Chi <raychi@google.com> (cherry picked from commit 502013d5347849aa9a2ec95d114998c22b646b17)
2021-09-01Merge "libpixelusb: Cancel pending timer when port is cold" into sc-qpr1-devBadhri Jagan Sridharan
2021-08-29Usb Gadget HAL: support usbuwb bootmodePuma Hsu
In previous we created a new bootmode "uwb" which will enable the ACM port, but the name was wrong. Rename it as "usbuwb" Bug: 187877902 Test: ACM port can be enabled Signed-off-by: Puma Hsu <pumahsu@google.com> Change-Id: Iac381109379e6646be36cfdd26af033a1f6b8038
2021-08-26Usb Gadget HAL: support uwb bootmodePuma Hsu
Create a new bootmode "uwb" which will enable ACM port Bug: 187877902 Test: ACM port can be enabled Signed-off-by: Puma Hsu <pumahsu@google.com> Change-Id: I59ba51fb971b5078ce4462d4724057eee4ea788d
2021-08-25libpixelusb: Cancel pending timer when port is coldBadhri Jagan Sridharan
Pending timer would post events to the timerfd when the timer expires. This would prevent system from suspending as the monitor thread might be in condition variable as the port might already be cold. To prevent this: 1. Cancel timer when woken up due to cold port. 2. Make the monitor wait in the epollfd instead of waiting in the cv. This makes sure that the monitor thread is not sleeping when there are pending events to be processed which in turn blocks suspend. Bug: 197529577 Test: Emulate port status to hot; adb shell "echo 35001 > dev/thermal/tz-by-name/usb_pwr_therm2/emul_temp"; adb shell "echo 31000 > dev/thermal/tz-by-name/usb_pwr_therm/emul_temp"; adb shell "echo 21000 > dev/thermal/tz-by-name/qi_therm/emul_temp"; Emulate cold right after the timer wakeup; adb shell "echo 10000 > dev/thermal/tz-by-name/usb_pwr_therm2/emul_temp"; /d/wakeup_sources does not list timerfd7:android.hardwar as active wakeup source. Signed-off-by: Badhri Jagan Sridharan <badhri@google.com> Change-Id: I0f6a54868d8e2b80df5ae794db4955ac217a964c
2021-08-17libpixelusb: Do not write into eventfd when temperature is not monitoredBadhri Jagan Sridharan
b9f33ac34dbe2a1505dcea7f24004c42ea2a8a70 ("thermal: send notification after callback registered") makes thermal hal to send out a callback, right after the registration, even when there is no change in the throttling status. This causes a pending event to be posted to the eventfd eventhough monitorThread is waiting in the cv_ for the throttling status to be hot. This prevents system from suspending as the pending event in evenfd would never be cleared. To prevent this check for monitorTemperature and bail out if needed. Bug: 196755565 Test: test for eventfd wakelock upon boot; Test for port overheat. Signed-off-by: Badhri Jagan Sridharan <badhri@google.com> Change-Id: I3918e9c41d50948f79f0856c4da62be99df5907d
2021-07-21libpixelusb: Add logic to gather termperature stats for overheatBadhri Jagan Sridharan
Added UsbPortOverheat which subscribes to thermal hal's notification callback for monitoring usb port thermal zone's throttling status. When throttled, the relevant thermal zones are queried for temperature and the maximum temperature is stored. The maximum temperature reached during the throttling window is then reported through suez. Bug: 193615568 Test: adb shell "echo 35001 > dev/thermal/tz-by-name/usb_pwr_therm2/emul_temp"; adb shell "echo 31000 > dev/thermal/tz-by-name/usb_pwr_therm/emul_temp"; adb shell "echo 21000 > dev/thermal/tz-by-name/qi_therm/emul_temp"; wait for few seconds, adb shell "echo 10000 > dev/thermal/tz-by-name/usb_pwr_therm2/emul_temp"; Change-Id: I2b3ee4197205f07bf5b3763176233e0fc89519c1
2021-05-24Revert "Usb Gadget HAL: modify monitorfs behavior"Ray Chi
This reverts commit 9cf018372ba8527af4bc54d453f1e2a5d0a9749f. Reason for revert: using alternate method for original behavior change Bug: 187261232 Test: build pass Merged-In: I3de693862ae49d78ca41b09cb7450fb5a8f9d2a3 Change-Id: Idb35b586f39c6e6bf772c219c7e4ed9f3cee4778
2021-05-24Revert "Usb Gadget HAL: Partial revert due to power regression"Ray Chi
This reverts commit 8a02cb1253d13a6aff6e32f0c719c1341e0d525c. Reason for revert: using alternate method for original behavior change Bug: 187261232 Test: build pass Merged-In: I1bf406343b061485184c0d025847cb03ceca2320 Change-Id: I66bcc277578cc81036a89c3017c4306cb3bdb4f5
2021-04-30Usb Gadget HAL: Partial revert due to power regressionBadhri Jagan Sridharan
9cf018372ba8527af4bc54d453f1e2a5d0a9749f introduced a power regression where adbd would keep spinning the CPU waiting for FUNCTIONFS_BIND. adbd : timed out while waiting for FUNCTIONFS_BIND, trying again Partially reverting the CL. Complete revert would have to revert CLs across multiple devices. Bug: 186824331 Test: adb while have usb booted. adb on unplug. adbd does not spin. Change-Id: Ie666eb5318914a0b5b4e7edc14e0cda50f896f96
2021-04-26Usb Gadget HAL: modify monitorfs behaviorRay Chi
Currently, monitorffs will pull up gadget when the ffs endpoints are ready. When the device change the data role from peripheral to host, the pullup behavior will still occur. It will cause the host mode and peripheral mode start in the same time. This patch will check USB state before pulling up gadget. Bug: 173086594 Test: build pass Signed-off-by: Ray Chi <raychi@google.com> Change-Id: Ic2a318f37d3c18e8f473ab85a996fea7f65194f1
2021-03-15DO NOT MERGE resolve merge conflicts of ↵Bob Badour
0c82fe16a1f5f956cc4906e55230fa8921644a52 to sc-dev Change-Id: Ia4cbb3e2b746c9c19a3084085c4f2c4fbc8297ca
2021-03-12[LSC] Add LOCAL_LICENSE_KINDS to hardware/google/pixelBob Badour
Added SPDX-license-identifier-Apache-2.0 to: atrace/Android.bp bootctrl/Android.bp dynamic_partitions/Android.bp fastboot/Android.bp health/Android.bp kernel_headers/Android.bp misc_writer/Android.bp mm/Android.bp perfstatsd/Android.bp pixelstats/Android.bp power-libperfmgr/Android.bp power-libperfmgr/libperfmgr/Android.bp powerstats/Android.bp powerstats/aidl/Android.bp pwrstats_util/Android.bp radio/Android.bp radio/gril_carrier_nv_headers/Android.bp recovery/Android.bp usb/Android.bp vibrator/Android.bp vibrator/common/Android.bp vibrator/common/bench/Android.bp vibrator/cs40l25/Android.bp vibrator/cs40l25/bench/Android.bp vibrator/cs40l25/diag/Android.bp vibrator/cs40l25/tests/Android.bp vibrator/drv2624/Android.bp vibrator/drv2624/bench/Android.bp vibrator/drv2624/tests/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to: Android.bp thermal/Android.bp Bug: 68860345 Bug: 151177513 Bug: 151953481 Test: m all Exempt-From-Owner-Approval: janitorial work Change-Id: I58efe8db7cc3f22a585c6e3a80bef41c48b49c8d Merged-in: I58efe8db7cc3f22a585c6e3a80bef41c48b49c8d
2020-11-19UsbGadgetUtils: Fuzzer for setVidPid am: fa5177845c am: 8733083f75 am: ↵Kyle Tso
5b35ee9fea am: 085cf7d501 Original change: https://android-review.googlesource.com/c/platform/hardware/google/pixel/+/1498460 Change-Id: I7c71f48d96513e5e378f174214c16382c38172c9
2020-11-18UsbGadgetUtils: Fuzzer for setVidPidKyle Tso
Bug: 173562848 Test: run the fuzzer on Pixel 5 Signed-off-by: Kyle Tso <kyletso@google.com> Change-Id: I77929744d41d21eb4472c75a139afabdb7d55f0d
2020-11-04libpixelusb: remove logspamAndrew Chant
Current adb logspams with the following logs repeating every 1ms: 06-30 20:46:06.504 4387 4403 I libpixelusb: event=1 on fd=8 06-30 20:46:06.504 4389 4412 I adbd : USB event: FUNCTIONFS_SUSPEND 06-30 20:46:06.504 4387 4403 I libpixelusb: event=1 on fd=8 06-30 20:46:06.504 4389 4412 I adbd : USB event: FUNCTIONFS_SUSPEND 06-30 20:46:06.504 4387 4403 I libpixelusb: event=1 on fd=8 06-30 20:46:06.504 4389 4412 I adbd : USB event: FUNCTIONFS_SUSPEND 06-30 20:46:06.505 4387 4403 I libpixelusb: event=1 on fd=8 06-30 20:46:06.505 4389 4412 I adbd : USB event: FUNCTIONFS_SUSPEND 06-30 20:46:06.505 4389 4412 I adbd : USB event: FUNCTIONFS_SUSPEND 06-30 20:46:06.505 4387 4403 I libpixelusb: event=1 on fd= Bug: 59724343 Change-Id: I22723ba94341a8d11f27d8f2ec2dd77e78f89290
2020-04-22Usb Gadget HAL: link rndis function with the propertyraychi
USB tethering could be supported by different drivers. The property is named vendor.usb.rndis.config. Using this property shows the current rndis driver. Bug: 154071503 Test: vts-hal -m VtsHalUsbGadgetV1_1HostTest Signed-off-by: raychi <raychi@google.com> Change-Id: Ic3ed85dce8566eea88e1cd9606038b15238114b7
2020-01-27Merge changes Ic8ff7f34,Ibe4ba3d6Josh Gao
* changes: Enable MS OS descriptors for adb. Remove uses of sprintf.
2019-10-01Remove libhwbinder/libhidltransport depsSteven Moreland
Since these were combined into libhidlbase. Bug: 135686713 Test: build only (libhwbinder/libhidltransport are empty) Change-Id: Ifcbd0675df88cb43afe98b1dfe0c5da396384eee
2019-09-06Enable MS OS descriptors for adb.Josh Gao
Bug: http://b/68993980 Test: check_ms_os_desc Change-Id: Ic8ff7f34b08030ce590298e33e8498d61fafed47
2019-09-06Remove uses of sprintf.Josh Gao
Test: mma Change-Id: Ibe4ba3d68de5f3a409e445511872b76c558d208c
2019-01-08Usb Gadget HAL: enable oem functions in particular bootmoderaychi
There is new requirement to check the physical sim card. It need oem functions to get information from subsystems. The bootmode in provisioning station is "ffbm-01". Therefore, to enable oem functions in new bootmode is necessary. In addition, the feature between "ffbm-00" and "ffbm-01" should be the same, so it need to be enabled on two bootmodes. Bug: 122281469 Test: verify oem functions Change-Id: I2cb2a91de781f3d2b0508aa5d1360478aa2a6eab Signed-off-by: raychi <raychi@google.com>
2018-10-25Usb Gadget HAL: static library of common codeBadhri Jagan Sridharan
Bug: 115777500 Test: vts -m VtsHalUsbGadgetV1_0Target Change-Id: Icd8243fa7368cedba439cfe9083f49b4d1beb7a2