update(class/wireless/usbh_rndis): reduce rndis control buffer
This commit is contained in:
@@ -118,7 +118,7 @@ CherryUSB Host Stack resource usage (GCC 10.2 with -O2):
|
|||||||
|usbh_hid.c | ~1400 | 256 | 4 + sizeof(struct usbh_hid) * x | 0 |
|
|usbh_hid.c | ~1400 | 256 | 4 + sizeof(struct usbh_hid) * x | 0 |
|
||||||
|usbh_video.c | ~3800 | 128 | 4 + sizeof(struct usbh_video) * x | 0 |
|
|usbh_video.c | ~3800 | 128 | 4 + sizeof(struct usbh_video) * x | 0 |
|
||||||
|usbh_audio.c | ~4100 | 128 | 4 + sizeof(struct usbh_audio) * x | 0 |
|
|usbh_audio.c | ~4100 | 128 | 4 + sizeof(struct usbh_audio) * x | 0 |
|
||||||
|usbh_rndis.c | ~4200 | 4096 + 2 * 2048(default)| sizeof(struct usbh_rndis) * 1 | 0 |
|
|usbh_rndis.c | ~4200 | 512 + 2 * 2048(default)| sizeof(struct usbh_rndis) * 1 | 0 |
|
||||||
|usbh_cdc_ecm.c | ~2200 | 2 * 1514 + 16 | sizeof(struct usbh_cdc_ecm) * 1 | 0 |
|
|usbh_cdc_ecm.c | ~2200 | 2 * 1514 + 16 | sizeof(struct usbh_cdc_ecm) * 1 | 0 |
|
||||||
|usbh_cdc_ncm.c | ~3300 | 2 * 2048(default) + 16 + 32 | sizeof(struct usbh_cdc_ncm) * 1 | 0 |
|
|usbh_cdc_ncm.c | ~3300 | 2 * 2048(default) + 16 + 32 | sizeof(struct usbh_cdc_ncm) * 1 | 0 |
|
||||||
|usbh_bluetooth.c | ~1000 | 2 * 2048(default) | sizeof(struct usbh_bluetooth) * 1 | 0 |
|
|usbh_bluetooth.c | ~1000 | 2 * 2048(default) | sizeof(struct usbh_bluetooth) * 1 | 0 |
|
||||||
|
|||||||
@@ -118,7 +118,7 @@ CherryUSB Host 协议栈资源占用说明(GCC 10.2 with -O2):
|
|||||||
|usbh_hid.c | ~1400 | 256 | 4 + sizeof(struct usbh_hid) * x | 0 |
|
|usbh_hid.c | ~1400 | 256 | 4 + sizeof(struct usbh_hid) * x | 0 |
|
||||||
|usbh_video.c | ~3800 | 128 | 4 + sizeof(struct usbh_video) * x | 0 |
|
|usbh_video.c | ~3800 | 128 | 4 + sizeof(struct usbh_video) * x | 0 |
|
||||||
|usbh_audio.c | ~4100 | 128 | 4 + sizeof(struct usbh_audio) * x | 0 |
|
|usbh_audio.c | ~4100 | 128 | 4 + sizeof(struct usbh_audio) * x | 0 |
|
||||||
|usbh_rndis.c | ~4200 | 4096 + 2 * 2048(default)| sizeof(struct usbh_rndis) * 1 | 0 |
|
|usbh_rndis.c | ~4200 | 512 + 2 * 2048(default)| sizeof(struct usbh_rndis) * 1 | 0 |
|
||||||
|usbh_cdc_ecm.c | ~2200 | 2 * 1514 + 16 | sizeof(struct usbh_cdc_ecm) * 1 | 0 |
|
|usbh_cdc_ecm.c | ~2200 | 2 * 1514 + 16 | sizeof(struct usbh_cdc_ecm) * 1 | 0 |
|
||||||
|usbh_cdc_ncm.c | ~3300 | 2 * 2048(default) + 16 + 32 | sizeof(struct usbh_cdc_ncm) * 1 | 0 |
|
|usbh_cdc_ncm.c | ~3300 | 2 * 2048(default) + 16 + 32 | sizeof(struct usbh_cdc_ncm) * 1 | 0 |
|
||||||
|usbh_bluetooth.c | ~1000 | 2 * 2048(default) | sizeof(struct usbh_bluetooth) * 1 | 0 |
|
|usbh_bluetooth.c | ~1000 | 2 * 2048(default) | sizeof(struct usbh_bluetooth) * 1 | 0 |
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
#define DEV_FORMAT "/dev/rndis"
|
#define DEV_FORMAT "/dev/rndis"
|
||||||
|
|
||||||
USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t g_rndis_buf[4096];
|
USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t g_rndis_buf[512];
|
||||||
|
|
||||||
#define CONFIG_USBHOST_RNDIS_ETH_MAX_FRAME_SIZE 1514
|
#define CONFIG_USBHOST_RNDIS_ETH_MAX_FRAME_SIZE 1514
|
||||||
#define CONFIG_USBHOST_RNDIS_ETH_MSG_SIZE (CONFIG_USBHOST_RNDIS_ETH_MAX_FRAME_SIZE + 44)
|
#define CONFIG_USBHOST_RNDIS_ETH_MSG_SIZE (CONFIG_USBHOST_RNDIS_ETH_MAX_FRAME_SIZE + 44)
|
||||||
@@ -80,7 +80,7 @@ static int usbh_rndis_init_msg_transfer(struct usbh_rndis *rndis_class)
|
|||||||
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
||||||
setup->wValue = 0;
|
setup->wValue = 0;
|
||||||
setup->wIndex = 0;
|
setup->wIndex = 0;
|
||||||
setup->wLength = 4096;
|
setup->wLength = sizeof(g_rndis_buf);
|
||||||
|
|
||||||
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@@ -138,7 +138,7 @@ int usbh_rndis_query_msg_transfer(struct usbh_rndis *rndis_class, uint32_t oid,
|
|||||||
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
||||||
setup->wValue = 0;
|
setup->wValue = 0;
|
||||||
setup->wIndex = 0;
|
setup->wIndex = 0;
|
||||||
setup->wLength = 4096;
|
setup->wLength = sizeof(g_rndis_buf);
|
||||||
|
|
||||||
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@@ -195,7 +195,7 @@ static int usbh_rndis_set_msg_transfer(struct usbh_rndis *rndis_class, uint32_t
|
|||||||
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
||||||
setup->wValue = 0;
|
setup->wValue = 0;
|
||||||
setup->wIndex = 0;
|
setup->wIndex = 0;
|
||||||
setup->wLength = 4096;
|
setup->wLength = sizeof(g_rndis_buf);
|
||||||
|
|
||||||
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@@ -262,7 +262,7 @@ int usbh_rndis_keepalive(struct usbh_rndis *rndis_class)
|
|||||||
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
setup->bRequest = CDC_REQUEST_GET_ENCAPSULATED_RESPONSE;
|
||||||
setup->wValue = 0;
|
setup->wValue = 0;
|
||||||
setup->wIndex = 0;
|
setup->wIndex = 0;
|
||||||
setup->wLength = 4096;
|
setup->wLength = sizeof(g_rndis_buf);
|
||||||
|
|
||||||
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
ret = usbh_control_transfer(rndis_class->hport, setup, (uint8_t *)resp);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user