/* * Copyright (C) 2017 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.gadget@1.0; enum GadgetFunction : uint64_t { /** * Removes all the functions and pulls down the gadget. */ NONE = 0, /** * Android Debug Bridge function. */ ADB = 1 << 0, /** * Android open accessory protocol function. */ ACCESSORY = 1 << 1, /** * Media Transfer protocol function. */ MTP = 1 << 2, /** * Peripheral mode USB Midi function. */ MIDI = 1 << 3, /** * Picture transfer protocol function. */ PTP = 1 << 4, /** * Tethering function. */ RNDIS = 1 << 5, /** * AOAv2.0 - Audio Source function. */ AUDIO_SOURCE = 1 << 6, }; enum Status : uint32_t { SUCCESS = 0, /** * Error value when the HAL operation fails for reasons not listed here. */ ERROR = 1, /** * USB configuration applied successfully. */ FUNCTIONS_APPLIED = 2, /** * USB confgiuration failed to apply. */ FUNCTIONS_NOT_APPLIED = 3, /** * USB configuration not supported. */ CONFIGURATION_NOT_SUPPORTED = 4, };