Initial fix for wrong in EP count

This commit is contained in:
Ed
2024-05-01 09:50:39 +01:00
parent 8c4043fd4c
commit 7a52b7dd83
2 changed files with 10 additions and 1 deletions

View File

@@ -1273,7 +1273,9 @@ enum USBEndpointNumber_In
#if (NUM_USB_CHAN_IN == 0) || defined (UAC_FORCE_FEEDBACK_EP) #if (NUM_USB_CHAN_IN == 0) || defined (UAC_FORCE_FEEDBACK_EP)
ENDPOINT_NUMBER_IN_FEEDBACK, ENDPOINT_NUMBER_IN_FEEDBACK,
#endif #endif
#if (NUM_USB_CHAN_IN != 0)
ENDPOINT_NUMBER_IN_AUDIO, ENDPOINT_NUMBER_IN_AUDIO,
#endif
#if (XUA_SPDIF_RX_EN) || (XUA_ADAT_RX_EN) #if (XUA_SPDIF_RX_EN) || (XUA_ADAT_RX_EN)
ENDPOINT_NUMBER_IN_INTERRUPT, /* Audio interrupt/status EP */ ENDPOINT_NUMBER_IN_INTERRUPT, /* Audio interrupt/status EP */
#endif #endif

View File

@@ -814,7 +814,14 @@ void XUA_Endpoint0_loop(XUD_Result_t result, USB_SetupPacket_t sp, chanend c_ep0
{ {
unsigned epNum = sp.wIndex & 0xff; unsigned epNum = sp.wIndex & 0xff;
if ((epNum == ENDPOINT_ADDRESS_OUT_AUDIO) || (epNum == ENDPOINT_ADDRESS_IN_AUDIO)) // Ensure we only check for AUDIO EPs if enabled
#if (NUM_USB_CHAN_IN != 0 && NUM_USB_CHAN_OUT == 0)
if (epNum == ENDPOINT_ADDRESS_IN_AUDIO)
#elif (NUM_USB_CHAN_IN == 0 && NUM_USB_CHAN_OUT != 0)
if (epNum == ENDPOINT_ADDRESS_OUT_AUDIO)
#elif (NUM_USB_CHAN_IN != 0 && NUM_USB_CHAN_OUT != 0)
if ((epNum == ENDPOINT_ADDRESS_IN_AUDIO) || (epNum == ENDPOINT_ADDRESS_OUT_AUDIO))
#endif
{ {
#if (AUDIO_CLASS == 2) && (AUDIO_CLASS_FALLBACK) #if (AUDIO_CLASS == 2) && (AUDIO_CLASS_FALLBACK)
if(g_curUsbSpeed == XUD_SPEED_FS) if(g_curUsbSpeed == XUD_SPEED_FS)