#pragma once #define USB_IRQ_ID_DEVICE 0x0100 #define USB_IRQ_ID_ENDPOINT 0x0200 #define USB_IRQ_ID_INTERFACE 0x0400 #define USB_IRQ_STARTOFFRAME (USB_IRQ_ID_DEVICE | _BV(SOFE)) #define USB_IRQ_ENDOFRESET (USB_IRQ_ID_DEVICE | _BV(EORSTE)) #define USB_IRQ_ENDOFRESUME (USB_IRQ_ID_DEVICE | _BV(EORSME)) #define USB_IRQ_UPSTREAMRESUME (USB_IRQ_ID_DEVICE | _BV(UPRSME)) #define USB_IRQ_WAKEUP (USB_IRQ_ID_DEVICE | _BV(WAKEUPE)) #define USB_IRQ_SUSPEND (USB_IRQ_ID_DEVICE | _BV(SUSPE)) #define USB_IRQ_VBUST (USB_IRQ_ID_INTERFACE | _BV(VBUSTE)) #define USB_IRQ_SETUP (USB_IRQ_ID_ENDPOINT | _BV(RXSTPE)) #define USB_IRQ_FLOWERR (USB_IRQ_ID_ENDPOINT | _BV(FLERRE)) #define USB_IRQ_NAKIN (USB_IRQ_ID_ENDPOINT | _BV(NAKINE)) #define USB_IRQ_NAKOUT (USB_IRQ_ID_ENDPOINT | _BV(NAKOUTE)) #define USB_IRQ_RXOUT (USB_IRQ_ID_ENDPOINT | _BV(RXOUTE)) #define USB_IRQ_STALLED (USB_IRQ_ID_ENDPOINT | _BV(STALLEDE)) #define USB_IRQ_TXIN (USB_IRQ_ID_ENDPOINT | _BV(TXINE))