diff --git a/usb/usb/Usb.cpp b/usb/usb/Usb.cpp index 270a2227..e4f0b354 100644 --- a/usb/usb/Usb.cpp +++ b/usb/usb/Usb.cpp @@ -327,7 +327,8 @@ Status queryNonCompliantChargerStatus(std::vector *currentPortStatus continue; } } - if ((*currentPortStatus)[i].complianceWarnings.size() > 0) { + if ((*currentPortStatus)[i].complianceWarnings.size() > 0 && + (*currentPortStatus)[i].currentPowerRole == PortPowerRole::NONE) { (*currentPortStatus)[i].currentMode = PortMode::UFP; (*currentPortStatus)[i].currentPowerRole = PortPowerRole::SINK; (*currentPortStatus)[i].currentDataRole = PortDataRole::NONE; @@ -902,9 +903,7 @@ void queryVersionHelper(android::hardware::usb::Usb *usb, status = getPortStatusHelper(usb, currentPortStatus); queryMoistureDetectionStatus(currentPortStatus); queryPowerTransferStatus(currentPortStatus); -#if 0 /* b/278018111 disable compliance warning; revert it after fixing the issue */ queryNonCompliantChargerStatus(currentPortStatus); -#endif if (usb->mCallback != NULL) { ScopedAStatus ret = usb->mCallback->notifyPortStatusChange(*currentPortStatus, status);