Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 623f1338 authored by Badhri Jagan Sridharan's avatar Badhri Jagan Sridharan Committed by Ricky Niu
Browse files

Add limitPowerTransfer API to IUsb



limitPowerTransfer is invoked to limit power transfer
in and out of the Usb port.

Bug: 199357330
Signed-off-by: default avatarBadhri Jagan Sridharan <badhri@google.com>
Change-Id: I5f4991d024ad827ae8148fc143a44cc05bafdcb4
parent aef9dec7
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -39,4 +39,5 @@ interface IUsb {
  oneway void queryPortStatus(long transactionId);
  oneway void setCallback(in android.hardware.usb.IUsbCallback callback);
  oneway void switchRole(in String portName, in android.hardware.usb.PortRole role, long transactionId);
  oneway void limitPowerTransfer(in String portName, boolean limit, long transactionId);
}
+1 −0
Original line number Diff line number Diff line
@@ -39,4 +39,5 @@ interface IUsbCallback {
  oneway void notifyEnableUsbDataStatus(in String portName, boolean enable, in android.hardware.usb.Status retval, long transactionId);
  oneway void notifyContaminantEnabledStatus(in String portName, boolean enable, in android.hardware.usb.Status retval, long transactionId);
  oneway void notifyQueryPortStatus(in String portName, in android.hardware.usb.Status retval, long transactionId);
  oneway void notifyLimitPowerTransferStatus(in String portName, boolean limit, in android.hardware.usb.Status retval, long transactionId);
}
+1 −0
Original line number Diff line number Diff line
@@ -48,4 +48,5 @@ parcelable PortStatus {
  boolean supportsEnableContaminantPresenceDetection;
  android.hardware.usb.ContaminantDetectionStatus contaminantDetectionStatus = android.hardware.usb.ContaminantDetectionStatus.NOT_SUPPORTED;
  boolean usbDataEnabled;
  boolean powerTransferLimited;
}
+13 −0
Original line number Diff line number Diff line
@@ -82,4 +82,17 @@ oneway interface IUsb {
     * @param transactionId ID to be used when invoking the callback.
     */
    void switchRole(in String portName, in PortRole role, long transactionId);

    /**
     * This function is used to limit power transfer in and out of the port.
     * When limited, the port does not charge from the partner port.
     * Also, the port limits sourcing power to the partner port when the USB
     * specification allows it to do so.
     *
     * @param portName name of the port for which power transfer is being limited.
     * @param limit true limit power transfer.
     *              false relax limiting power transfer.
     * @param transactionId ID to be used when invoking the callback.
     */
    void limitPowerTransfer(in String portName, boolean limit, long transactionId);
}
+12 −0
Original line number Diff line number Diff line
@@ -83,4 +83,16 @@ oneway interface IUsbCallback {
     * @param transactionId transactionId sent during queryPortStatus request
     */
    void notifyQueryPortStatus(in String portName, in Status retval, long transactionId);

    /**
     * Used to notify the result of requesting limitPowerTransfer.
     *
     * @param portName name of the port for which power transfer is being limited.
     * @param limit true limit power transfer.
     *              false relax limiting power transfer.
     * @param retval SUCCESS if the request to enable/disable limitPowerTransfer succeeds.
     *               FAILURE otherwise.
     * @param transactionId ID sent during limitPowerTransfer request.
     */
    void notifyLimitPowerTransferStatus(in String portName, boolean limit, in Status retval, long transactionId);
}
Loading