1 /*
2  * Copyright (C) 2017 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package com.android.server.usb.descriptors;
17 
18 /**
19  * @hide
20  * A class for decoding information in Terminal Descriptors.
21  * see termt10.pdf
22  */
23 public final class UsbTerminalTypes {
24     private static final String TAG = "UsbTerminalTypes";
25 
26     // USB
27     public static final int TERMINAL_USB_UNDEFINED   = 0x0100;
28     public static final int TERMINAL_USB_STREAMING   = 0x0101;
29 
30     // Inputs
31     public static final int TERMINAL_IN_UNDEFINED    = 0x0200;
32     public static final int TERMINAL_IN_MIC          = 0x0201;
33     public static final int TERMINAL_IN_DESKTOP_MIC  = 0x0202;
34     public static final int TERMINAL_IN_PERSONAL_MIC = 0x0203;
35     public static final int TERMINAL_IN_OMNI_MIC     = 0x0204;
36     public static final int TERMINAL_IN_MIC_ARRAY    = 0x0205;
37     public static final int TERMINAL_IN_PROC_MIC_ARRAY = 0x0206;
38 
39     // Outputs
40     public static final int TERMINAL_OUT_UNDEFINED       = 0x0300;
41     public static final int TERMINAL_OUT_SPEAKER         = 0x0301;
42     public static final int TERMINAL_OUT_HEADPHONES      = 0x0302;
43     public static final int TERMINAL_OUT_HEADMOUNTED     = 0x0303;
44     public static final int TERMINAL_OUT_DESKTOPSPEAKER  = 0x0304;
45     public static final int TERMINAL_OUT_ROOMSPEAKER     = 0x0305;
46     public static final int TERMINAL_OUT_COMSPEAKER      = 0x0306;
47     public static final int TERMINAL_OUT_LFSPEAKER       = 0x0307;
48 
49     // Bi-directional
50     public static final int TERMINAL_BIDIR_UNDEFINED    = 0x0400;
51     public static final int TERMINAL_BIDIR_HANDSET      = 0x0401;
52     public static final int TERMINAL_BIDIR_HEADSET      = 0x0402;
53     public static final int TERMINAL_BIDIR_SKRPHONE     = 0x0403;
54     public static final int TERMINAL_BIDIR_SKRPHONE_SUPRESS = 0x0404;
55     public static final int TERMINAL_BIDIR_SKRPHONE_CANCEL = 0x0405;
56 
57     // Telephony
58     public static final int TERMINAL_TELE_UNDEFINED     = 0x0500;
59     public static final int TERMINAL_TELE_PHONELINE     = 0x0501;
60     public static final int TERMINAL_TELE_PHONE         = 0x0502;
61     public static final int TERMINAL_TELE_DOWNLINEPHONE = 0x0503;
62 
63     // External
64     public static final int TERMINAL_EXTERN_UNDEFINED   = 0x0600;
65     public static final int TERMINAL_EXTERN_ANALOG      = 0x0601;
66     public static final int TERMINAL_EXTERN_DIGITAL     = 0x0602;
67     public static final int TERMINAL_EXTERN_LINE        = 0x0603;
68     public static final int TERMINAL_EXTERN_LEGACY      = 0x0604;
69     public static final int TERMINAL_EXTERN_SPIDF       = 0x0605;
70     public static final int TERMINAL_EXTERN_1394DA      = 0x0606;
71     public static final int TERMINAL_EXTERN_1394DV      = 0x0607;
72 
73     public static final int TERMINAL_EMBED_UNDEFINED    = 0x0700;
74     public static final int TERMINAL_EMBED_CALNOISE     = 0x0701;
75     public static final int TERMINAL_EMBED_EQNOISE      = 0x0702;
76     public static final int TERMINAL_EMBED_CDPLAYER     = 0x0703;
77     public static final int TERMINAL_EMBED_DAT          = 0x0704;
78     public static final int TERMINAL_EMBED_DCC          = 0x0705;
79     public static final int TERMINAL_EMBED_MINIDISK     = 0x0706;
80     public static final int TERMINAL_EMBED_ANALOGTAPE   = 0x0707;
81     public static final int TERMINAL_EMBED_PHONOGRAPH   = 0x0708;
82     public static final int TERMINAL_EMBED_VCRAUDIO     = 0x0709;
83     public static final int TERMINAL_EMBED_VIDDISKAUDIO = 0x070A;
84     public static final int TERMINAL_EMBED_DVDAUDIO     = 0x070B;
85     public static final int TERMINAL_EMBED_TVAUDIO      = 0x070C;
86     public static final int TERMINAL_EMBED_SATELLITEAUDIO = 0x070D;
87     public static final int TERMINAL_EMBED_CABLEAUDIO   = 0x070E;
88     public static final int TERMINAL_EMBED_DSSAUDIO     = 0x070F;
89     public static final int TERMINAL_EMBED_RADIOAUDIO   = 0x0710;
90     public static final int TERMINAL_EMBED_RADIOTRANSMITTER = 0x0711;
91     public static final int TERMINAL_EMBED_MULTITRACK   = 0x0712;
92     public static final int TERMINAL_EMBED_SYNTHESIZER  = 0x0713;
93 
94 }
95