OSDN Git Service

Adding USB audio-class 2.0 spec descriptors.
authorPaul McLean <pmclean@google.com>
Fri, 7 Jul 2017 14:14:52 +0000 (08:14 -0600)
committerPaul McLean <pmclean@google.com>
Wed, 30 Aug 2017 16:29:16 +0000 (10:29 -0600)
commitfd7cb85feff517f3cc94384102933aa4485e1fc5
treedb4ad9f773e738362188b533088186ef4d18b1c5
parentb140dc40d4aa4f46489f6829dc7faba4060c1a9a
Adding USB audio-class 2.0 spec descriptors.

Added USB audio-class 2.0 format type descriptors.
Added Tree parsing.
Rearchitected reporting (again) to better support reuse and scale.

Bug: 64301464

Test: Run code against representative USB audio peripherals and verify
that each correctly handles or ignores all descriptors and the correct
device semantics (headset / not-headset) are still calculated.

Change-Id: I1b3b01ab1cd804ed876bf6427c3afba15eea6a6e
57 files changed:
services/usb/java/com/android/server/usb/descriptors/ByteStream.java
services/usb/java/com/android/server/usb/descriptors/Usb10ACHeader.java [moved from services/usb/java/com/android/server/usb/descriptors/UsbACHeader.java with 60% similarity]
services/usb/java/com/android/server/usb/descriptors/Usb10ACInputTerminal.java [moved from services/usb/java/com/android/server/usb/descriptors/UsbACInputTerminal.java with 70% similarity]
services/usb/java/com/android/server/usb/descriptors/Usb10ACMixerUnit.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb10ACOutputTerminal.java [moved from services/usb/java/com/android/server/usb/descriptors/UsbACOutputTerminal.java with 71% similarity]
services/usb/java/com/android/server/usb/descriptors/Usb10ASFormatI.java [moved from services/usb/java/com/android/server/usb/descriptors/UsbASFormatI.java with 62% similarity]
services/usb/java/com/android/server/usb/descriptors/Usb10ASFormatII.java [moved from services/usb/java/com/android/server/usb/descriptors/UsbASFormatII.java with 66% similarity]
services/usb/java/com/android/server/usb/descriptors/Usb10ASGeneral.java [moved from services/usb/java/com/android/server/usb/descriptors/UsbASGeneral.java with 68% similarity]
services/usb/java/com/android/server/usb/descriptors/Usb20ACHeader.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ACInputTerminal.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ACMixerUnit.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ACOutputTerminal.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ASFormatI.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ASFormatII.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ASFormatIIEx.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ASFormatIII.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/Usb20ASGeneral.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/UsbACAudioControlEndpoint.java
services/usb/java/com/android/server/usb/descriptors/UsbACAudioStreamEndpoint.java
services/usb/java/com/android/server/usb/descriptors/UsbACEndpoint.java
services/usb/java/com/android/server/usb/descriptors/UsbACFeatureUnit.java
services/usb/java/com/android/server/usb/descriptors/UsbACHeaderInterface.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/UsbACInterface.java
services/usb/java/com/android/server/usb/descriptors/UsbACInterfaceUnparsed.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/UsbACMidiEndpoint.java
services/usb/java/com/android/server/usb/descriptors/UsbACMixerUnit.java
services/usb/java/com/android/server/usb/descriptors/UsbACSelectorUnit.java
services/usb/java/com/android/server/usb/descriptors/UsbACTerminal.java
services/usb/java/com/android/server/usb/descriptors/UsbASFormat.java
services/usb/java/com/android/server/usb/descriptors/UsbBinaryParser.java
services/usb/java/com/android/server/usb/descriptors/UsbConfigDescriptor.java
services/usb/java/com/android/server/usb/descriptors/UsbDescriptor.java
services/usb/java/com/android/server/usb/descriptors/UsbDescriptorParser.java
services/usb/java/com/android/server/usb/descriptors/UsbDeviceDescriptor.java
services/usb/java/com/android/server/usb/descriptors/UsbEndpointDescriptor.java
services/usb/java/com/android/server/usb/descriptors/UsbHIDDescriptor.java
services/usb/java/com/android/server/usb/descriptors/UsbInterfaceAssoc.java
services/usb/java/com/android/server/usb/descriptors/UsbInterfaceDescriptor.java
services/usb/java/com/android/server/usb/descriptors/UsbMSMidiHeader.java
services/usb/java/com/android/server/usb/descriptors/UsbMSMidiInputJack.java
services/usb/java/com/android/server/usb/descriptors/UsbMSMidiOutputJack.java
services/usb/java/com/android/server/usb/descriptors/UsbTerminalTypes.java
services/usb/java/com/android/server/usb/descriptors/UsbUnknown.java
services/usb/java/com/android/server/usb/descriptors/report/HTMLReportCanvas.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/report/HTMLReporter.java [deleted file]
services/usb/java/com/android/server/usb/descriptors/report/ReportCanvas.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/report/Reporter.java [deleted file]
services/usb/java/com/android/server/usb/descriptors/report/Reporting.java
services/usb/java/com/android/server/usb/descriptors/report/TextReportCanvas.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/report/UsbStrings.java
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsACInterfaceNode.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsConfigNode.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsDeviceNode.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsEndpointNode.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsInterfaceNode.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsTree.java [new file with mode: 0644]
services/usb/java/com/android/server/usb/descriptors/tree/UsbDescriptorsTreeNode.java [new file with mode: 0644]