clean up example to use CFG_TUD_ENABLED + CFG_TUD_MAX_SPEED instead of CFG_TUSB_RHPORT0_MODE
This commit is contained in:
		| @@ -81,7 +81,8 @@ int main(void) | ||||
| { | ||||
|   board_init(); | ||||
|  | ||||
|   tusb_init(); | ||||
|   // init device stack on configured roothub port | ||||
|   tud_init(BOARD_TUD_RHPORT); | ||||
|  | ||||
|   // Init values | ||||
|   sampFreq = AUDIO_SAMPLE_RATE; | ||||
|   | ||||
| @@ -30,6 +30,20 @@ | ||||
| extern "C" { | ||||
| #endif | ||||
|  | ||||
| //--------------------------------------------------------------------+ | ||||
| // Board Specific Configuration | ||||
| //--------------------------------------------------------------------+ | ||||
|  | ||||
| // RHPort number used for device can be defined by board.mk, default to port 0 | ||||
| #ifndef BOARD_TUD_RHPORT | ||||
| #define BOARD_TUD_RHPORT      0 | ||||
| #endif | ||||
|  | ||||
| // RHPort max operational speed can defined by board.mk | ||||
| #ifndef BOARD_TUD_MAX_SPEED | ||||
| #define BOARD_TUD_MAX_SPEED   OPT_MODE_DEFAULT_SPEED | ||||
| #endif | ||||
|  | ||||
| //-------------------------------------------------------------------- | ||||
| // COMMON CONFIGURATION | ||||
| //-------------------------------------------------------------------- | ||||
| @@ -39,18 +53,19 @@ extern "C" { | ||||
| #error CFG_TUSB_MCU must be defined | ||||
| #endif | ||||
|  | ||||
| #define CFG_TUSB_RHPORT0_MODE       OPT_MODE_DEVICE | ||||
|  | ||||
| #ifndef CFG_TUSB_OS | ||||
| #define CFG_TUSB_OS                 OPT_OS_NONE | ||||
| #define CFG_TUSB_OS               OPT_OS_NONE | ||||
| #endif | ||||
|  | ||||
| #ifndef CFG_TUSB_DEBUG | ||||
| #define CFG_TUSB_DEBUG              0 | ||||
| #define CFG_TUSB_DEBUG            0 | ||||
| #endif | ||||
|  | ||||
| // CFG_TUSB_DEBUG is defined by compiler in DEBUG build | ||||
| // #define CFG_TUSB_DEBUG           0 | ||||
| // Enable Device stack | ||||
| #define CFG_TUD_ENABLED           1 | ||||
|  | ||||
| // Default is max speed that hardware controller could support with on-chip PHY | ||||
| #define CFG_TUD_MAX_SPEED         BOARD_TUD_MAX_SPEED | ||||
|  | ||||
| /* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. | ||||
|  * Tinyusb use follows macros to declare transferring memory so that they can be put | ||||
| @@ -64,7 +79,7 @@ extern "C" { | ||||
| #endif | ||||
|  | ||||
| #ifndef CFG_TUSB_MEM_ALIGN | ||||
| #define CFG_TUSB_MEM_ALIGN          __attribute__ ((aligned(4))) | ||||
| #define CFG_TUSB_MEM_ALIGN        __attribute__ ((aligned(4))) | ||||
| #endif | ||||
|  | ||||
| //-------------------------------------------------------------------- | ||||
| @@ -75,13 +90,7 @@ extern "C" { | ||||
| #define CFG_TUD_ENDPOINT0_SIZE    64 | ||||
| #endif | ||||
|  | ||||
| //------------- CLASS -------------// | ||||
| #define CFG_TUD_CDC               0 | ||||
| #define CFG_TUD_MSC               0 | ||||
| #define CFG_TUD_HID               0 | ||||
| #define CFG_TUD_MIDI              0 | ||||
| #define CFG_TUD_AUDIO             1 | ||||
| #define CFG_TUD_VENDOR            0 | ||||
|  | ||||
| //-------------------------------------------------------------------- | ||||
| // AUDIO CLASS DRIVER CONFIGURATION | ||||
| @@ -89,23 +98,23 @@ extern "C" { | ||||
|  | ||||
| // Have a look into audio_device.h for all configurations | ||||
|  | ||||
| #define CFG_TUD_AUDIO_FUNC_1_DESC_LEN                                 TUD_AUDIO_MIC_FOUR_CH_DESC_LEN | ||||
| #define CFG_TUD_AUDIO_FUNC_1_DESC_LEN                 TUD_AUDIO_MIC_FOUR_CH_DESC_LEN | ||||
|  | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_AS_INT                                 1 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_CTRL_BUF_SZ                              64 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_AS_INT                 1 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_CTRL_BUF_SZ              64 | ||||
|  | ||||
| #define CFG_TUD_AUDIO_ENABLE_EP_IN                                    1 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_BYTES_PER_SAMPLE_TX                    2         // This value is not required by the driver, it parses this information from the descriptor once the alternate interface is set by the host - we use it for the setup | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_CHANNELS_TX                            4         // This value is not required by the driver, it parses this information from the descriptor once the alternate interface is set by the host - we use it for the setup | ||||
| #define CFG_TUD_AUDIO_EP_SZ_IN                                        (48 + 1) * CFG_TUD_AUDIO_FUNC_1_N_BYTES_PER_SAMPLE_TX * CFG_TUD_AUDIO_FUNC_1_N_CHANNELS_TX      // 48 Samples (48 kHz) x 2 Bytes/Sample x CFG_TUD_AUDIO_N_CHANNELS_TX Channels - the Windows driver always needs an extra sample per channel of space more, otherwise it complains... found by trial and error | ||||
| #define CFG_TUD_AUDIO_FUNC_1_EP_IN_SZ_MAX                             CFG_TUD_AUDIO_EP_SZ_IN | ||||
| #define CFG_TUD_AUDIO_FUNC_1_EP_IN_SW_BUF_SZ                          CFG_TUD_AUDIO_EP_SZ_IN | ||||
| #define CFG_TUD_AUDIO_ENABLE_EP_IN                    1 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_BYTES_PER_SAMPLE_TX    2         // This value is not required by the driver, it parses this information from the descriptor once the alternate interface is set by the host - we use it for the setup | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_CHANNELS_TX            4         // This value is not required by the driver, it parses this information from the descriptor once the alternate interface is set by the host - we use it for the setup | ||||
| #define CFG_TUD_AUDIO_EP_SZ_IN                        (48 + 1) * CFG_TUD_AUDIO_FUNC_1_N_BYTES_PER_SAMPLE_TX * CFG_TUD_AUDIO_FUNC_1_N_CHANNELS_TX      // 48 Samples (48 kHz) x 2 Bytes/Sample x CFG_TUD_AUDIO_N_CHANNELS_TX Channels - the Windows driver always needs an extra sample per channel of space more, otherwise it complains... found by trial and error | ||||
| #define CFG_TUD_AUDIO_FUNC_1_EP_IN_SZ_MAX             CFG_TUD_AUDIO_EP_SZ_IN | ||||
| #define CFG_TUD_AUDIO_FUNC_1_EP_IN_SW_BUF_SZ          CFG_TUD_AUDIO_EP_SZ_IN | ||||
|  | ||||
| #define CFG_TUD_AUDIO_ENABLE_ENCODING                                 1 | ||||
| #define CFG_TUD_AUDIO_ENABLE_TYPE_I_ENCODING                          1 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_CHANNEL_PER_FIFO_TX                      2         // One I2S stream contains two channels, each stream is saved within one support FIFO - this value is currently fixed, the driver does not support a changing value | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_TX_SUPP_SW_FIFO                        (CFG_TUD_AUDIO_FUNC_1_N_CHANNELS_TX / CFG_TUD_AUDIO_FUNC_1_CHANNEL_PER_FIFO_TX) | ||||
| #define CFG_TUD_AUDIO_FUNC_1_TX_SUPP_SW_FIFO_SZ                       (CFG_TUD_AUDIO_EP_SZ_IN / CFG_TUD_AUDIO_FUNC_1_N_TX_SUPP_SW_FIFO) | ||||
| #define CFG_TUD_AUDIO_ENABLE_ENCODING                 1 | ||||
| #define CFG_TUD_AUDIO_ENABLE_TYPE_I_ENCODING          1 | ||||
| #define CFG_TUD_AUDIO_FUNC_1_CHANNEL_PER_FIFO_TX      2         // One I2S stream contains two channels, each stream is saved within one support FIFO - this value is currently fixed, the driver does not support a changing value | ||||
| #define CFG_TUD_AUDIO_FUNC_1_N_TX_SUPP_SW_FIFO        (CFG_TUD_AUDIO_FUNC_1_N_CHANNELS_TX / CFG_TUD_AUDIO_FUNC_1_CHANNEL_PER_FIFO_TX) | ||||
| #define CFG_TUD_AUDIO_FUNC_1_TX_SUPP_SW_FIFO_SZ       (CFG_TUD_AUDIO_EP_SZ_IN / CFG_TUD_AUDIO_FUNC_1_N_TX_SUPP_SW_FIFO) | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 hathach
					hathach