You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
169 lines
4.4 KiB
169 lines
4.4 KiB
/* |
|
* Copyright (c) 2022, sakumisu |
|
* |
|
* SPDX-License-Identifier: Apache-2.0 |
|
*/ |
|
#ifndef CHERRYUSB_CONFIG_H |
|
#define CHERRYUSB_CONFIG_H |
|
|
|
#define CHERRYUSB_VERSION 0x010200 |
|
#define CHERRYUSB_VERSION_STR "v1.2.0" |
|
|
|
/* ================ USB common Configuration ================ */ |
|
|
|
#define CONFIG_USB_PRINTF(...) //printf(__VA_ARGS__) |
|
|
|
#define usb_malloc(size) malloc(size) |
|
#define usb_free(ptr) free(ptr) |
|
|
|
#ifndef CONFIG_USB_DBG_LEVEL |
|
#define CONFIG_USB_DBG_LEVEL USB_DBG_ERROR |
|
#endif |
|
|
|
/* Enable print with color */ |
|
#define CONFIG_USB_PRINTF_COLOR_ENABLE |
|
|
|
/* data align size when use dma */ |
|
#ifndef CONFIG_USB_ALIGN_SIZE |
|
#define CONFIG_USB_ALIGN_SIZE 4 |
|
#endif |
|
|
|
/* attribute data into no cache ram */ |
|
#define USB_NOCACHE_RAM_SECTION __attribute__((section(".noncacheable"))) |
|
|
|
/* ================= USB Device Stack Configuration ================ */ |
|
|
|
#define CONFIG_USBDEV_MAX_BUS 1 // for now, bus num must be 1 except hpm ip |
|
|
|
/* Ep0 max transfer buffer, specially for receiving data from ep0 out */ |
|
#define CONFIG_USBDEV_REQUEST_BUFFER_LEN 256 |
|
|
|
/* Setup packet log for debug */ |
|
// #define CONFIG_USBDEV_SETUP_LOG_PRINT |
|
|
|
/* Check if the input descriptor is correct */ |
|
// #define CONFIG_USBDEV_DESC_CHECK |
|
|
|
/* Enable test mode */ |
|
// #define CONFIG_USBDEV_TEST_MODE |
|
|
|
#ifndef CONFIG_USBDEV_MSC_MAX_LUN |
|
#define CONFIG_USBDEV_MSC_MAX_LUN 1 |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_MSC_MAX_BUFSIZE |
|
#define CONFIG_USBDEV_MSC_MAX_BUFSIZE 512 |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_MSC_MANUFACTURER_STRING |
|
#define CONFIG_USBDEV_MSC_MANUFACTURER_STRING "" |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_MSC_PRODUCT_STRING |
|
#define CONFIG_USBDEV_MSC_PRODUCT_STRING "" |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_MSC_VERSION_STRING |
|
#define CONFIG_USBDEV_MSC_VERSION_STRING "0.01" |
|
#endif |
|
|
|
// #define CONFIG_USBDEV_MSC_THREAD |
|
|
|
#ifndef CONFIG_USBDEV_MSC_PRIO |
|
#define CONFIG_USBDEV_MSC_PRIO 4 |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_MSC_STACKSIZE |
|
#define CONFIG_USBDEV_MSC_STACKSIZE 2048 |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_RNDIS_RESP_BUFFER_SIZE |
|
#define CONFIG_USBDEV_RNDIS_RESP_BUFFER_SIZE 156 |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_RNDIS_ETH_MAX_FRAME_SIZE |
|
#define CONFIG_USBDEV_RNDIS_ETH_MAX_FRAME_SIZE 1536 |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_RNDIS_VENDOR_ID |
|
#define CONFIG_USBDEV_RNDIS_VENDOR_ID 0x0000ffff |
|
#endif |
|
|
|
#ifndef CONFIG_USBDEV_RNDIS_VENDOR_DESC |
|
#define CONFIG_USBDEV_RNDIS_VENDOR_DESC "CherryUSB" |
|
#endif |
|
|
|
#define CONFIG_USBDEV_RNDIS_USING_LWIP |
|
|
|
/* ================ USB HOST Stack Configuration ================== */ |
|
|
|
#define CONFIG_USBHOST_MAX_BUS 1 |
|
#define CONFIG_USBHOST_MAX_RHPORTS 1 |
|
#define CONFIG_USBHOST_MAX_EXTHUBS 1 |
|
#define CONFIG_USBHOST_MAX_EHPORTS 4 |
|
#define CONFIG_USBHOST_MAX_INTERFACES 8 |
|
#define CONFIG_USBHOST_MAX_INTF_ALTSETTINGS 8 |
|
#define CONFIG_USBHOST_MAX_ENDPOINTS 4 |
|
|
|
#define CONFIG_USBHOST_MAX_CDC_ACM_CLASS 4 |
|
#define CONFIG_USBHOST_MAX_HID_CLASS 4 |
|
#define CONFIG_USBHOST_MAX_MSC_CLASS 2 |
|
#define CONFIG_USBHOST_MAX_AUDIO_CLASS 1 |
|
#define CONFIG_USBHOST_MAX_VIDEO_CLASS 1 |
|
|
|
#define CONFIG_USBHOST_DEV_NAMELEN 16 |
|
|
|
#ifndef CONFIG_USBHOST_PSC_PRIO |
|
#define CONFIG_USBHOST_PSC_PRIO 0 |
|
#endif |
|
#ifndef CONFIG_USBHOST_PSC_STACKSIZE |
|
#define CONFIG_USBHOST_PSC_STACKSIZE 2048 |
|
#endif |
|
|
|
//#define CONFIG_USBHOST_GET_STRING_DESC |
|
|
|
// #define CONFIG_USBHOST_MSOS_ENABLE |
|
#define CONFIG_USBHOST_MSOS_VENDOR_CODE 0x00 |
|
|
|
/* Ep0 max transfer buffer */ |
|
#define CONFIG_USBHOST_REQUEST_BUFFER_LEN 512 |
|
|
|
#ifndef CONFIG_USBHOST_CONTROL_TRANSFER_TIMEOUT |
|
#define CONFIG_USBHOST_CONTROL_TRANSFER_TIMEOUT 500 |
|
#endif |
|
|
|
#ifndef CONFIG_USBHOST_MSC_TIMEOUT |
|
#define CONFIG_USBHOST_MSC_TIMEOUT 5000 |
|
#endif |
|
|
|
#define CONFIG_USBHOST_BLUETOOTH_HCI_H4 |
|
// #define CONFIG_USBHOST_BLUETOOTH_HCI_LOG |
|
|
|
#ifndef CONFIG_USBHOST_BLUETOOTH_TX_SIZE |
|
#define CONFIG_USBHOST_BLUETOOTH_TX_SIZE 2048 |
|
#endif |
|
#ifndef CONFIG_USBHOST_BLUETOOTH_RX_SIZE |
|
#define CONFIG_USBHOST_BLUETOOTH_RX_SIZE 2048 |
|
#endif |
|
|
|
/* ================ USB Device Port Configuration ================*/ |
|
|
|
#ifndef CONFIG_USBDEV_EP_NUM |
|
#define CONFIG_USBDEV_EP_NUM 8 |
|
#endif |
|
|
|
/* ================ USB Host Port Configuration ==================*/ |
|
|
|
// #define CONFIG_USBHOST_PIPE_NUM 10 |
|
|
|
/* ================ EHCI Configuration ================ */ |
|
|
|
#define CONFIG_USB_EHCI_HCCR_OFFSET (0x0) |
|
#define CONFIG_USB_EHCI_HCOR_OFFSET (0x10) |
|
#define CONFIG_USB_EHCI_FRAME_LIST_SIZE 1024 |
|
// #define CONFIG_USB_EHCI_HCOR_RESERVED_DISABLE |
|
// #define CONFIG_USB_EHCI_CONFIGFLAG |
|
// #define CONFIG_USB_EHCI_PORT_POWER |
|
// #define CONFIG_USB_EHCI_PRINT_HW_PARAM |
|
|
|
#endif
|
|
|