summaryrefslogtreecommitdiffstats
path: root/services/usb
Commit message (Collapse)AuthorAgeFilesLines
...
* UsbDevice: Add support for retrieving version string for a USB deviceMike Lockwood2015-04-291-2/+5
| | | | Change-Id: Ia8630f5ffd05f90347b971110a81f4927060cc4b
* UsbAlsaManager: Fix NPE when running in emulatorMike Lockwood2015-04-241-2/+4
| | | | | Bug: 20537358 Change-Id: I46693e45eb6127118cbd54fc3490dc58840b5797
* Add user visible name for USB peripheral MIDI deviceMike Lockwood2015-04-101-1/+3
| | | | Change-Id: I075a54dc3890bc5cf3927cecba3750e1d342d290
* Add support for flushing MIDI all scheduled MIDI events on a portMike Lockwood2015-04-091-28/+38
| | | | Change-Id: I39d7862540d4d4b9e2df1265f9dd253541adb4c2
* Add event scheduling support to USB MIDI Manager codeMike Lockwood2015-03-311-17/+43
| | | | Change-Id: I9fdaaac35c296acc67ee0cf346b0c7b56bf58393
* Move MIDI utilities for internal use to com.android.internal.midi packageMike Lockwood2015-03-301-1/+0
| | | | Change-Id: I7393ae1d4bca61667fb6ee809a7aa22c5c48de56
* Make the MIDI Manager optional, enabled by "android.software.midi" featureMike Lockwood2015-03-271-1/+8
| | | | Change-Id: I76d442ea28beea4b9e2876bfef501d8f61403702
* Merge "UsbDeviceManager: delete obsolete code"Nick Kralevich2015-03-261-12/+0
|\
| * UsbDeviceManager: delete obsolete codeNick Kralevich2015-03-251-12/+0
| | | | | | | | | | | | | | | | We stopped using persist.service.adb.enable almost 4 years ago (commit 02e4569b5f126ca916a7473117ddd17d4f2ccbbb). Delete backwards compatibility code. Change-Id: Ic656e834e79361b27ca2afcd3705d0523c23717d
* | MIDI Manager: remove USB peripheral MIDI device when USB is disconnectedMike Lockwood2015-03-253-14/+19
|/ | | | | | | | | Otherwise, the MIDI device would appear available always, rather than only when USB is connected. Also fixed file descriptor leak in UsbMidiDevice Change-Id: I0d38e81c488de4748eef36ca359635fa59e0e636
* Replace usages of deprecated Resources.getColor() and getColorStateList()Alan Viverette2015-03-181-2/+2
| | | | Change-Id: I8f64fe6c4c44a92ff6d07250223ba590a1d691b0
* Merge "Add MidiManager to public API"Mike Lockwood2015-03-141-3/+2
|\
| * Add MidiManager to public APIMike Lockwood2015-03-131-3/+2
| | | | | | | | | | | | Also made some small API changes based on feedback from the lint tool. Change-Id: Ibcf1e9107d86d3a364f811ce47a13aa0da653366
* | Merge "MidiDeviceInfo meta-data improvements:"Mike Lockwood2015-03-132-5/+15
|\ \ | |/
| * MidiDeviceInfo meta-data improvements:Mike Lockwood2015-03-122-5/+15
| | | | | | | | | | | | | | | | Add property for user visible device name Add names for input and output ports Rename "model" to "product" to match USB specification. Change-Id: I8dc50da935f26825ffc73de456d34e7933aa987c
* | AudioService: Write base stream volume changes to the event log.John Spurlock2015-03-121-2/+2
|/ | | | | | | | | | | | - Add a new volume_changed event, reported at the stream level. - Only include changes to base streams (no aliases). - Include the caller for each change. A caller is either: - a pkg name (for external calls or known media sessions) - a system server class's log tag (for internal calls, disambiguates "android") Bug: 19599935 Change-Id: Ia61b68ff1e7e2907a24972790ec052bfe099e665
* Merge "MidiManager: Add MIDI device status notifications"Mike Lockwood2015-03-111-1/+1
|\
| * MidiManager: Add MIDI device status notificationsMike Lockwood2015-03-111-1/+1
| | | | | | | | | | | | | | | | | | MidiManager clients can be notified of device status changes via a new MidiDeviceStatus object. MidiDeviceStatus contains the busy status of the device's input ports and number of connections to the output ports. MidiDeviceService now has an optional callback for receiving notifications when its ports change as well. Change-Id: I1600df4464d82724bc026c27b9633ae9c412d3f0
* | Merge "Add MidiReceiver.send() and MidiReceiver.getMaxMessageSize()"Mike Lockwood2015-03-111-1/+1
|\ \ | |/
| * Add MidiReceiver.send() and MidiReceiver.getMaxMessageSize()Mike Lockwood2015-03-111-1/+1
| | | | | | | | Change-Id: I10d4f5e2400fcaf41f455e56ca25bbc0c781a042
* | Handle simultaneous connect of devices with the same "type" (as in USB)Paul McLean2015-03-101-28/+23
|/ | | | | Change-Id: I163bf8e33ccf5aacc7ba21775916727430327f18 Bug: 19563570
* Make MidiSender and MidiReceiver abstract classes, rename ↵Mike Lockwood2015-03-041-2/+2
| | | | | | MidiReceiver.post() to receive() Change-Id: I1cef3bd48ca0acf2968c9de223f78445f3434404
* Eliminate MidiPort base class for MidiInputPort and MidiOutputPortMike Lockwood2015-03-041-2/+3
| | | | Change-Id: I628c0468ac980eee909add53a4d6e55e9b358603
* Merge "MidiManager: Virtual MIDI devices are now implemented as Services"Mike Lockwood2015-03-051-30/+39
|\
| * MidiManager: Virtual MIDI devices are now implemented as ServicesMike Lockwood2015-03-041-30/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To implement a virtual MIDI device, include a subclass of MidiDeviceService in your application. This service is identified by an intent filter and meta-data in the application's manifest to allow the MIDI manager to register the virtual device without actually running the application. Instead, the application's MidiDeviceService subclass is started on demand when MIDI manager clients want to open the device. Here is an example of how the MidiDeviceService might be described in the application manifest: <service android:name="VirtualDeviceService"> <intent-filter> <action android:name="android.media.midi.MidiDeviceService" /> </intent-filter> <meta-data android:name="android.media.midi.MidiDeviceService" android:resource="@xml/device_info" /> </service> and the device_info.xml meta-data: <devices> <device manufacturer="Sample Manufacturer" model="Sample Model" private="false"> <input-port name="my input port" /> <output-port name="my output port" /> </device> </devices> (note that the <input-port> and <output-port> names are not currently used, but support for these will be added in a subsequent change) Client's of the virtual device will bind directly to the hosting application's MidiDeviceService subclass. To support this, MidiManager.openDevice() now returns the MidiDevice asynchronously via a callback. This change also adds a utility class called MidiDispatcher, which is a MidiReceiver that dispatches all data it receives to a list of other MidiReceivers. We now use this internally in MidiInputPort and MidiDeviceServer, but developers may use it for other purposes as well. Change-Id: Ic3009f06d56f3d5edbd87de3f0c330b51a1c217d
* | Fix a regression in UsbDebuggingManagerAmith Yamasani2015-03-041-1/+1
| | | | | | | | | | | | | | Catch NPE as well if socket object is null. Bug: 19602060 Change-Id: I7cf9cb16abc3fde626170c1aefeba5fc91c5734f
* | Merge "Remove unused imports in frameworks/base."John Spurlock2015-03-025-9/+0
|\ \ | |/ |/|
| * Remove unused imports in frameworks/base.John Spurlock2015-02-285-9/+0
| | | | | | | | Change-Id: I031443de83f93eb57a98863001826671b18f3b17
* | Merge "Avoid NPE when quickly toggling USB debugging state"Amith Yamasani2015-03-021-69/+123
|\ \ | |/ |/|
| * Avoid NPE when quickly toggling USB debugging stateAmith Yamasani2015-03-021-69/+123
| | | | | | | | | | | | | | | | | | | | | | | | If you try to disable USB debugging before the socket to listen is opened in the thread, it will end up with an NPE. Do some locking around socket creation and closing to avoid this. Bug: 18708503 Change-Id: Iac43e4806fff1e411772b1ba1a070d8a7c776fcb
* | Move ALSA utilities to com.android.internal.alsa packageMike Lockwood2015-02-261-2/+2
| | | | | | | | Change-Id: Icbd45ec97a942e44e60f8d4ba0bb58c97f85b55f
* | Add MIDI Manager API tweaks:Mike Lockwood2015-02-233-8/+7
| | | | | | | | | | | | | | | | - Change the package name from android.midi to android.media.midi - Add option for specifying a Handler for DeviceCallback notifications Change-Id: Ia9e9817a651c06299f4e02ee1da3c9666ff64cb9
* | Add support for USB notification when connected as a MIDI peripheralMike Lockwood2015-02-201-0/+2
|/ | | | Change-Id: Ib3efcda6af976c878e63b0d35a8e47a3ea9435a3
* Audio Device Enumeration API.Paul McLean2015-02-191-2/+2
| | | | Change-Id: Ic78fda8b2a6f6ac0f37a1f665b29f3359cfc5ecc
* Merge "MidiManager API tweaks:"Mike Lockwood2015-02-131-2/+2
|\
| * MidiManager API tweaks:Mike Lockwood2015-02-121-2/+2
| | | | | | | | | | | | | | | | Rename MidiReceiver.onPost() to post() Change MidiManager.DeviceCallback from an interface to a class Change-Id: I939ba7a7d82e721b90a3d80252a88e7a650c9396
* | Move AudioService to services.John Spurlock2015-02-091-1/+2
| | | | | | | | | | | | ...and a few dependencies. Move remaining shared items to AudioSystem. Change-Id: Ib9623ff867678d34977337856bb0156e8cdaeeb5
* | Merge "Revert "Revert "Do not display ADB confirm dialog during boot"""Craig Mautner2015-02-061-1/+9
|\ \
| * | Revert "Revert "Do not display ADB confirm dialog during boot""Craig Mautner2015-02-061-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e37099ffdfc966d52b4323a3705359ea42fa283e. Fixes bug 18652251 Change-Id: Ib00e8269558aae294ff6453d1f6ceef1771c4572
* | | Merge "Revert "Do not display ADB confirm dialog during boot""Craig Mautner2015-02-061-9/+1
|\ \ \ | |/ /
| * | Revert "Do not display ADB confirm dialog during boot"Craig Mautner2015-02-061-9/+1
| | | | | | | | | | | | | | | | | | This reverts commit 34e90b2214b39db31bccaf24644d0db55bcde965. Change-Id: Ib385793aa2b7472933bdb0c707b10e2bac1a4cb3
* | | Merge "Do not display ADB confirm dialog during boot"Craig Mautner2015-02-051-1/+9
|\ \ \ | |/ /
| * | Do not display ADB confirm dialog during bootCraig Mautner2015-02-041-1/+9
| |/ | | | | | | | | | | | | | | | | Wait until after encrypted volume has been mounted. Also eliminate warning by starting UsbDebuggingActivity as owner. Fixes bug 19217173. Change-Id: I6da530259bb02eb1892509ec5085a471f9893714
* | Add additional info to AudioPort for enum/selection API.Paul McLean2015-02-042-4/+6
|/ | | | | | | | | | | Add "device name" member to AudioPort. Moved unique device ID from DevicePort to AudioPort. Straighten out confusion between "name" and "address" Created string constants for Intent "extra" data keys. Combine card/address data into "address" at sender.Add additional info to AudioPort for enum/selection API. Parse out USB Device name in UsbCardsParser. Change-Id: Ifd76b0298312090a8f39e638339f993b86d47080
* Merge "UsbAlsaManager: Don't reselect current USB audio device on all USB ↵Mike Lockwood2015-01-291-5/+4
|\ | | | | | | disconnects"
| * UsbAlsaManager: Don't reselect current USB audio device on all USB disconnectsMike Lockwood2015-01-291-5/+4
| | | | | | | | Change-Id: I4d3a0d803a6d1eb02ff48a7e8587a1ff6c66a500
* | MidiManager: Add USB peripheral MIDI supportMike Lockwood2015-01-293-10/+66
| | | | | | | | | | | | | | This allows the android device to appear as a USB MIDI device to a USB host (like a Mac or a PC) using the f_midi USB gadget driver. Change-Id: I14f1ba73bcce2c894e77efb8810beac4ffe246d8
* | MIDI Manager: Remove message packetization from MIDI transportMike Lockwood2015-01-291-24/+7
|/ | | | | | | | | | | | | | Instead of attempting to package exactly one MIDI message in each call to MidiReceiver.onPost(), we now pass messages as a raw stream of bytes. This means we may now receive multiple MIDI messages in MidiReceiver.onPost(). We make this change to avoid the complexity of taking the single message approach with SysEx and realtime messages. This shifts some of the burden of parsing MIDI messages to the client application. But the parsing is best handled in the application anyway, rather than having the framework impose its own policy on how the messages are parsed. Change-Id: Idb6c200037f827cc618bc7d9455a7aa864b494a7
* Replace broadcasts with calls to ↵Mike Lockwood2015-01-164-48/+104
| | | | | | IAudioService.setWiredDeviceConnectionState() to report USB device status Change-Id: Ic96cffaa63b6c6350b76e7cb29398c5f5dc86962
* MidiManager bug fixing:Mike Lockwood2015-01-151-2/+7
| | | | | | | | | | - fix off by one error that caused failure handling one byte messages - poll thread now terminates properly in UsbMidiDevice - fix cleanup logic in MidiDeviceServer Change-Id: I0c13a98b6542cfb271b51678e81d1822c8da2985