b577571fd9
Supports reporting and userspace control of USB contamination presence. Bug: 117330206 Bug: 77606903 Bug: 119642987 Test: USB HAL V1.2 HIDL tests. Change-Id: I70219641cdd48d59d217334dbd6d4ed8a8ce4927
65 lines
2.9 KiB
Text
65 lines
2.9 KiB
Text
/*
|
|
* Copyright (C) 2018 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
package android.hardware.usb@1.2;
|
|
|
|
import android.hardware.usb@1.1::IUsb;
|
|
|
|
/**
|
|
* The setCallback function in V1_0 is used to register the V1_2
|
|
* IUsbCallback object as well. The implementation can use the
|
|
* castFrom method to cast the IUsbCallback object.
|
|
*/
|
|
interface IUsb extends @1.1::IUsb {
|
|
/**
|
|
* When supportsEnableContaminantPresenceDetection is true,
|
|
* enableContaminantPresenceDetection enables/disables contaminant
|
|
* presence detection algorithm. Calling enableContaminantPresenceDetection
|
|
* when supportsEnableContaminantPresenceDetection is false does
|
|
* not have any effect.
|
|
* Change in contantaminant presence status should notify should
|
|
* be notified to the client via notifyPortStatusChange_1_2 through
|
|
* PortStatus.
|
|
*
|
|
* @param portName name of the port.
|
|
* @param enable true Enable contaminant presence detection algorithm.
|
|
* false Disable contaminant presence detection algorithm.
|
|
*/
|
|
oneway enableContaminantPresenceDetection(string portName, bool enable);
|
|
|
|
/**
|
|
* When supportsEnableContaminantPresenceProtection is true,
|
|
* enableContaminantPresenceProtection enables/disables contaminant
|
|
* presence protection algorithm. Calling
|
|
* enableContaminantPresenceProtection
|
|
* when supportsEnableContaminantPresenceProtection is false does
|
|
* not have any effect.
|
|
* Used to enable/disable contaminant presence protection algorithm.
|
|
* Enabling port protection algoritm must make the lower layers to autonomously
|
|
* act on taking the corresponding preventive measure mentioned at
|
|
* ContaminantProtectionModes when contaminant is detected on the USB Port.
|
|
* Calling this method with enable set to true must set to contaminantProtectionEnabled
|
|
* to true upon success and vice versa.
|
|
* currentContaminantProtectionMode should be updated whenever there is a
|
|
* change in the status of contaminant presence protection algorithm.
|
|
*
|
|
* @param portName name of the port.
|
|
* @param enable true Reduce capabilities of the port to protect port
|
|
* from damage due to contaminant presence.
|
|
* false No action is taken upon contaminant presence.
|
|
*/
|
|
oneway enableContaminantPresenceProtection(string portName, bool enable);
|
|
};
|