diff options
| author | sakumisu <[email protected]> | 2025-10-11 20:26:19 +0800 |
|---|---|---|
| committer | sakumisu <[email protected]> | 2025-10-11 20:26:19 +0800 |
| commit | 3aa842034270372990ca1ca8ef24beb88196308f (patch) | |
| tree | 352c4d234b79d90ff73820c447483752ae45f79a /platform/rtthread/usbh_serial.c | |
| parent | 498ba9b4e1e7faf60cff6d7322bb78a429d3a1ec (diff) | |
update(platform): remove CONFIG_USB_DCACHE_ENABLE, always check align size
Signed-off-by: sakumisu <[email protected]>
Diffstat (limited to 'platform/rtthread/usbh_serial.c')
| -rw-r--r-- | platform/rtthread/usbh_serial.c | 27 |
1 files changed, 6 insertions, 21 deletions
diff --git a/platform/rtthread/usbh_serial.c b/platform/rtthread/usbh_serial.c index cbfbc49e..912258e0 100644 --- a/platform/rtthread/usbh_serial.c +++ b/platform/rtthread/usbh_serial.c @@ -193,9 +193,9 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, serial = (struct usbh_serial *)dev; align_buf = (rt_uint8_t *)buffer; -#ifdef CONFIG_USB_DCACHE_ENABLE + if ((uint32_t)buffer & (CONFIG_USB_ALIGN_SIZE - 1)) { - align_buf = rt_malloc_align(size, CONFIG_USB_ALIGN_SIZE); + align_buf = rt_malloc_align(USB_ALIGN_UP(size, CONFIG_USB_ALIGN_SIZE), CONFIG_USB_ALIGN_SIZE); if (!align_buf) { USB_LOG_ERR("serial get align buf failed\n"); return 0; @@ -203,7 +203,6 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, usb_memcpy(align_buf, buffer, size); } -#endif switch (serial->type) { #if defined(PKG_CHERRYUSB_HOST_CDC_ACM) || defined(RT_CHERRYUSB_HOST_CDC_ACM) @@ -211,10 +210,7 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, ret = usbh_cdc_acm_bulk_out_transfer((struct usbh_cdc_acm *)dev->user_data, (uint8_t *)align_buf, size, RT_WAITING_FOREVER); if (ret < 0) { USB_LOG_ERR("usbh_cdc_acm_bulk_out_transfer failed: %d\n", ret); -#ifdef CONFIG_USB_DCACHE_ENABLE - rt_free_align(align_buf); -#endif - return 0; + ret = 0; } break; #endif @@ -223,10 +219,7 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, ret = usbh_ftdi_bulk_out_transfer((struct usbh_ftdi *)dev->user_data, (uint8_t *)align_buf, size, RT_WAITING_FOREVER); if (ret < 0) { USB_LOG_ERR("usbh_ftdi_bulk_out_transfer failed: %d\n", ret); -#ifdef CONFIG_USB_DCACHE_ENABLE - rt_free_align(align_buf); -#endif - return 0; + ret = 0; } break; #endif @@ -235,10 +228,7 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, ret = usbh_ch34x_bulk_out_transfer((struct usbh_ch34x *)dev->user_data, (uint8_t *)align_buf, size, RT_WAITING_FOREVER); if (ret < 0) { USB_LOG_ERR("usbh_ch34x_bulk_out_transfer failed: %d\n", ret); -#ifdef CONFIG_USB_DCACHE_ENABLE - rt_free_align(align_buf); -#endif - return 0; + ret = 0; } break; #endif @@ -247,10 +237,7 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, ret = usbh_pl2303_bulk_out_transfer((struct usbh_pl2303 *)dev->user_data, (uint8_t *)align_buf, size, RT_WAITING_FOREVER); if (ret < 0) { USB_LOG_ERR("usbh_pl2303_bulk_out_transfer failed: %d\n", ret); -#ifdef CONFIG_USB_DCACHE_ENABLE - rt_free_align(align_buf); -#endif - return 0; + ret = 0; } break; #endif @@ -258,11 +245,9 @@ static rt_ssize_t usbh_serial_write(struct rt_device *dev, break; } -#ifdef CONFIG_USB_DCACHE_ENABLE if ((uint32_t)buffer & (CONFIG_USB_ALIGN_SIZE - 1)) { rt_free_align(align_buf); } -#endif return ret; } |
