From 03c3022ac4095fdadd0f107d6da2c0abf379dedb Mon Sep 17 00:00:00 2001 From: Ross Owen Date: Tue, 7 Apr 2015 14:58:14 +0100 Subject: [PATCH] Changes to allow new descriptor_defs.h file to be included in XC --- module_usb_audio/endpoint0/descriptor_defs.h | 61 ++++++++++++++++++++ module_usb_audio/endpoint0/descriptors.h | 60 ++----------------- 2 files changed, 67 insertions(+), 54 deletions(-) create mode 100644 module_usb_audio/endpoint0/descriptor_defs.h diff --git a/module_usb_audio/endpoint0/descriptor_defs.h b/module_usb_audio/endpoint0/descriptor_defs.h new file mode 100644 index 00000000..390a66b0 --- /dev/null +++ b/module_usb_audio/endpoint0/descriptor_defs.h @@ -0,0 +1,61 @@ + +#ifndef __DESCRIPTOR_DEFS_H__ +#define __DESCRIPTOR_DEFS_H__ + +#if (NUM_USB_CHAN_IN > 0) && (NUM_USB_CHAN_OUT > 0) +#define AUDIO_INTERFACE_COUNT 3 +#elif (NUM_USB_CHAN_IN > 0) || (NUM_USB_CHAN_OUT > 0) +#define AUDIO_INTERFACE_COUNT 2 +#else +#define AUDIO_INTERFACE_COUNT 1 +#endif + +/* Endpoint address defines */ +#define ENDPOINT_ADDRESS_IN_CONTROL (ENDPOINT_NUMBER_IN_CONTROL | 0x80) +#define ENDPOINT_ADDRESS_IN_FEEDBACK (ENDPOINT_NUMBER_IN_FEEDBACK | 0x80) +#define ENDPOINT_ADDRESS_IN_AUDIO (ENDPOINT_NUMBER_IN_AUDIO | 0x80) +#define ENDPOINT_ADDRESS_IN_INTERRUPT (ENDPOINT_NUMBER_IN_INTERRUPT | 0x80) +#define ENDPOINT_ADDRESS_IN_MIDI (ENDPOINT_NUMBER_IN_MIDI | 0x80) +#define ENDPOINT_ADDRESS_IN_HID (ENDPOINT_NUMBER_IN_HID | 0x80) +#define ENDPOINT_ADDRESS_IN_IAP_INT (ENDPOINT_NUMBER_IN_IAP_INT | 0x80) +#define ENDPOINT_ADDRESS_IN_IAP (ENDPOINT_NUMBER_IN_IAP | 0x80) +#define ENDPOINT_ADDRESS_IN_IAP_EA_NATIVE_TRANS (ENDPOINT_NUMBER_IN_IAP_EA_NATIVE_TRANS | 0x80) + +#define ENDPOINT_ADDRESS_OUT_CONTROL (ENDPOINT_NUMBER_OUT_CONTROL) +#define ENDPOINT_ADDRESS_OUT_AUDIO (ENDPOINT_NUMBER_OUT_AUDIO) +#define ENDPOINT_ADDRESS_OUT_MIDI (ENDPOINT_NUMBER_OUT_MIDI) +#define ENDPOINT_ADDRESS_OUT_IAP (ENDPOINT_NUMBER_OUT_IAP) +#define ENDPOINT_ADDRESS_OUT_IAP_EA_NATIVE_TRANS (ENDPOINT_NUMBER_OUT_IAP_EA_NATIVE_TRANS) + + + +/* Interface numbers enum */ +enum USBInterfaceNumber +{ + INTERFACE_NUMBER_AUDIO_CONTROL = 0, +#if (NUM_USB_CHAN_OUT > 0) + INTERFACE_NUMBER_AUDIO_OUTPUT, +#endif +#if (NUM_USB_CHAN_IN > 0) + INTERFACE_NUMBER_AUDIO_INPUT, +#endif +#if defined(MIDI) && (MIDI != 0) + INTERFACE_NUMBER_MIDI_CONTROL, + INTERFACE_NUMBER_MIDI_STREAM, +#endif +#if defined(DFU) && (DFU != 0) + INTERFACE_NUMBER_DFU, +#endif +#if defined(IAP) && (IAP != 0) + INTERFACE_NUMBER_IAP, +#if defined(IAP_EA_NATIVE_TRANS) && (IAP_EA_NATIVE_TRANS != 0) + INTERFACE_NUMBER_IAP_EA_NATIVE_TRANS, +#endif +#endif +#if defined(HID_CONTROLS) && (HID_CONTROLS != 0) + INTERFACE_NUMBER_HID, +#endif + INTERFACE_COUNT /* End marker */ +}; + +#endif diff --git a/module_usb_audio/endpoint0/descriptors.h b/module_usb_audio/endpoint0/descriptors.h index 6d2c8361..22f97b96 100644 --- a/module_usb_audio/endpoint0/descriptors.h +++ b/module_usb_audio/endpoint0/descriptors.h @@ -7,10 +7,14 @@ #ifndef _DEVICE_DESCRIPTORS_ #define _DEVICE_DESCRIPTORS_ +#include #include "devicedefines.h" /* Device specific define */ +#include "descriptor_defs.h" #include "usbaudio20.h" /* Defines from the USB Audio 2.0 Specifications */ #include "usbaudiocommon.h" #include "usb_std_descriptors.h" +#include "usbaudio20.h" /* Defines from USB Audio 2.0 spec */ +#include "usb_defs.h" #ifdef IAP_EA_NATIVE_TRANS #include "iap2.h" /* Defines iAP EA Native Transport protocol name */ @@ -24,6 +28,7 @@ #define STR_TABLE_ENTRY(name) char *name +#if __STDC__ typedef struct { STR_TABLE_ENTRY(langID); @@ -369,60 +374,6 @@ StringDescTable_t g_strTable = #endif }; -/* Interface numbers enum */ -enum USBInterfaceNumber -{ - INTERFACE_NUMBER_AUDIO_CONTROL = 0, -#if (NUM_USB_CHAN_OUT > 0) - INTERFACE_NUMBER_AUDIO_OUTPUT, -#endif -#if (NUM_USB_CHAN_IN > 0) - INTERFACE_NUMBER_AUDIO_INPUT, -#endif -#if defined(MIDI) && (MIDI != 0) - INTERFACE_NUMBER_MIDI_CONTROL, - INTERFACE_NUMBER_MIDI_STREAM, -#endif -#if defined(DFU) && (DFU != 0) - INTERFACE_NUMBER_DFU, -#endif -#if defined(IAP) && (IAP != 0) - INTERFACE_NUMBER_IAP, -#if defined(IAP_EA_NATIVE_TRANS) && (IAP_EA_NATIVE_TRANS != 0) - INTERFACE_NUMBER_IAP_EA_NATIVE_TRANS, -#endif -#endif -#if defined(HID_CONTROLS) && (HID_CONTROLS != 0) - INTERFACE_NUMBER_HID, -#endif - INTERFACE_COUNT /* End marker */ -}; - -#if (NUM_USB_CHAN_IN > 0) && (NUM_USB_CHAN_OUT > 0) -#define AUDIO_INTERFACE_COUNT 3 -#elif (NUM_USB_CHAN_IN > 0) || (NUM_USB_CHAN_OUT > 0) -#define AUDIO_INTERFACE_COUNT 2 -#else -#define AUDIO_INTERFACE_COUNT 1 -#endif - -/* Endpoint address defines */ -#define ENDPOINT_ADDRESS_IN_CONTROL (ENDPOINT_NUMBER_IN_CONTROL | 0x80) -#define ENDPOINT_ADDRESS_IN_FEEDBACK (ENDPOINT_NUMBER_IN_FEEDBACK | 0x80) -#define ENDPOINT_ADDRESS_IN_AUDIO (ENDPOINT_NUMBER_IN_AUDIO | 0x80) -#define ENDPOINT_ADDRESS_IN_INTERRUPT (ENDPOINT_NUMBER_IN_INTERRUPT | 0x80) -#define ENDPOINT_ADDRESS_IN_MIDI (ENDPOINT_NUMBER_IN_MIDI | 0x80) -#define ENDPOINT_ADDRESS_IN_HID (ENDPOINT_NUMBER_IN_HID | 0x80) -#define ENDPOINT_ADDRESS_IN_IAP_INT (ENDPOINT_NUMBER_IN_IAP_INT | 0x80) -#define ENDPOINT_ADDRESS_IN_IAP (ENDPOINT_NUMBER_IN_IAP | 0x80) -#define ENDPOINT_ADDRESS_IN_IAP_EA_NATIVE_TRANS (ENDPOINT_NUMBER_IN_IAP_EA_NATIVE_TRANS | 0x80) - -#define ENDPOINT_ADDRESS_OUT_CONTROL (ENDPOINT_NUMBER_OUT_CONTROL) -#define ENDPOINT_ADDRESS_OUT_AUDIO (ENDPOINT_NUMBER_OUT_AUDIO) -#define ENDPOINT_ADDRESS_OUT_MIDI (ENDPOINT_NUMBER_OUT_MIDI) -#define ENDPOINT_ADDRESS_OUT_IAP (ENDPOINT_NUMBER_OUT_IAP) -#define ENDPOINT_ADDRESS_OUT_IAP_EA_NATIVE_TRANS (ENDPOINT_NUMBER_OUT_IAP_EA_NATIVE_TRANS) - /***** Device Descriptors *****/ #if defined(AUDIO_CLASS_FALLBACK) || (AUDIO_CLASS==1) @@ -2516,3 +2467,4 @@ unsigned char cfgDesc_Audio1[] = #endif #endif +#endif