forked from mfulz_github/qmk_firmware
Audio Device Class driver changed to also require the index of the Audio Control interface within the device, for SET/GET/CUR/MIN/MAX/RES property adjustments.
This commit is contained in:
parent
c0f763db04
commit
77adb2ba52
|
@ -44,6 +44,7 @@ USB_ClassInfo_Audio_Device_t Microphone_Audio_Interface =
|
|||
{
|
||||
.Config =
|
||||
{
|
||||
.ControlInterfaceNumber = 0,
|
||||
.StreamingInterfaceNumber = 1,
|
||||
|
||||
.DataINEndpointNumber = AUDIO_STREAM_EPNUM,
|
||||
|
|
|
@ -44,6 +44,7 @@ USB_ClassInfo_Audio_Device_t Speaker_Audio_Interface =
|
|||
{
|
||||
.Config =
|
||||
{
|
||||
.ControlInterfaceNumber = 0,
|
||||
.StreamingInterfaceNumber = 1,
|
||||
|
||||
.DataOUTEndpointNumber = AUDIO_STREAM_EPNUM,
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
* <b>Changed:</b>
|
||||
* - Core:
|
||||
* - Android Accessory Host property strings changed from a struct of pointer to an array to prevent unaligned access on greater than 8-bit architectures
|
||||
* - Audio Device Class driver changed to also require the index of the Audio Control interface within the device, for SET/GET/CUR/MIN/MAX/RES property adjustments
|
||||
* - Library Applications:
|
||||
* - Raised the guard bits in the AVRISP-MKII clone project when in PDI and TPI to 32, to prevent communication errors on low quality connections to a target
|
||||
*
|
||||
|
|
|
@ -11,6 +11,10 @@
|
|||
* areas relevant to making older projects compatible with the API changes of each new release.
|
||||
*
|
||||
* \section Sec_MigrationXXXXXX Migrating from 120219 to XXXXXX
|
||||
* <b>Device Mode</b>
|
||||
* - The device mode Audio Class driver now requires an additional configuration parameter, the Audio Control interface index. Existing applications should
|
||||
* be adjusted to specify the additional configuration parameter.
|
||||
*
|
||||
* <b>Host Mode</b>
|
||||
* - The Android Accessory Host class driver property strings are now a array of \c char* rather than a struct of named pointers. Existing applications
|
||||
* should use C99 Designated Initializers with the property string indexes located in \ref AOA_Strings_t instead.
|
||||
|
|
|
@ -44,7 +44,11 @@ void Audio_Device_ProcessControlRequest(USB_ClassInfo_Audio_Device_t* const Audi
|
|||
|
||||
if ((USB_ControlRequest.bmRequestType & CONTROL_REQTYPE_RECIPIENT) == REQREC_INTERFACE)
|
||||
{
|
||||
if ((USB_ControlRequest.wIndex & 0xFF) != AudioInterfaceInfo->Config.StreamingInterfaceNumber)
|
||||
uint8_t InterfaceIndex = (USB_ControlRequest.wIndex & 0xFF);
|
||||
|
||||
if ((InterfaceIndex != AudioInterfaceInfo->Config.ControlInterfaceNumber) &&
|
||||
(InterfaceIndex != AudioInterfaceInfo->Config.StreamingInterfaceNumber))
|
||||
|
||||
return;
|
||||
}
|
||||
else if ((USB_ControlRequest.bmRequestType & CONTROL_REQTYPE_RECIPIENT) == REQREC_ENDPOINT)
|
||||
|
|
|
@ -79,6 +79,9 @@
|
|||
{
|
||||
struct
|
||||
{
|
||||
uint8_t ControlInterfaceNumber; /**< Index of the Audio Control interface within the device this
|
||||
* structure controls.
|
||||
*/
|
||||
uint8_t StreamingInterfaceNumber; /**< Index of the Audio Streaming interface within the device this
|
||||
* structure controls.
|
||||
*/
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
# www.lufa-lib.org
|
||||
#
|
||||
|
||||
# Maintenance scripts not required by general LUFA users, used for development.
|
||||
# Maintenance scripts not required by general LUFA users, used for project development purposes.
|
||||
|
||||
LUFA_ROOT = ../
|
||||
|
||||
|
|
Loading…
Reference in New Issue