#pragma once

#include <rtthread.h>
#include <stdint.h>

#ifdef __cplusplus
extern "C" {
#endif

#define CDC_CTRL_SET_TX_TIMEOUT_MS   0x10  /* arg: uint32_t* */
#define CDC_CTRL_GET_TX_TIMEOUT_MS   0x11  /* arg: uint32_t* */
#define CDC_CTRL_GET_DTR             0x12  /* arg: uint8_t*  */
#define CDC_CTRL_SET_REQUIRE_DTR_TX  0x13  /* arg: uint8_t*  (0/1) */
#define CDC_CTRL_GET_CONFIGURED      0x14  /* arg: uint8_t*  (0/1) */

    int rt_hw_usbd_cdc_char_init(const char *dev_name, uint8_t busid, uintptr_t reg_base);

#ifdef __cplusplus
}
#endif
