48 Commits

Author SHA1 Message Date
Derek Konigsberg
7c38af1b04 Clear error code after intentionally ignoring it
In the case of handling a stall on a max lun request, we need to clear the error code in `ret` after ignoring it. This is necessary so the connect function won't fail.

Fix #339
2025-07-19 09:20:49 +08:00
sakumisu
bff8a632a9 feat(class): add usb_osal_thread_schedule_other to allow the applications which use the struct usbh_xxx to exit properly before free struct usbh_xxx
Signed-off-by: sakumisu <1203593632@qq.com>
2025-06-03 22:43:35 +08:00
sakumisu
c827c2e50b update(class/msc/usbh_msc): move msc scsi commands out to prevent blocking enum thread
Signed-off-by: sakumisu <1203593632@qq.com>
2025-01-26 12:50:48 +08:00
sakumisu
6c3b828e77 update(class/msc/usbh_msc): add retry macro
Signed-off-by: sakumisu <1203593632@qq.com>
2025-01-16 16:49:58 +08:00
chenzhihong007
5b74cecc4a [update] class: msc host: update msc host class stack (#285)
- use CONFIG_USBHOST_MSC_TIMEOUT as inquiry timeout
- separate cbw/csw from g_msc_buf
- try again ready check when device not ready
- print errcode in error log

Signed-off-by: Zhihong Chen <zhihong.chen@hpmicro.com>
2025-01-16 10:48:11 +08:00
electretmike
149fb046bc fix: rename class to class_code, for c++ compatibility (#269)
Co-authored-by: Michiel van Leeuwen <michiel@embeddedacoustics.com>
2024-10-30 15:11:46 +08:00
sakumisu
2b6eebcbb2 fix(class/msc/usbh_msc): when device stalls by usbh_msc_get_maxlun, ingore error and set lun=0, refs:#259 2024-09-27 19:03:33 +08:00
sakumisu
02340e0f44 chore: static code analysis 2024-09-19 09:50:18 +08:00
sakumisu
35da8d6747 fix: fix -Wunused-parameter warning with -Wextra cflag 2024-08-21 20:08:47 +08:00
sakumisu
393756f111 fix(class): use different buffer for cdc_acm,hid,msc,serial 2024-08-15 17:34:02 +08:00
sakumisu
dc0070b054 update(class/msc/usbh_msc): add MSC_INQUIRY_TIMEOUT to break quickly in inquiry stage 2024-06-23 14:46:50 +08:00
sakumisu
755d067650 update: check class->hport validity 2024-06-23 14:16:57 +08:00
sakumisu
5fec929b93 support id table for multi vid pid 2024-05-03 18:54:36 +08:00
sakumisu
4da3550582 fix msc buf overflow because of SCSICMD_INQUIRY_SIZEOF 2024-03-28 20:42:31 +08:00
sakumisu
eeb304ae08 update log tag 2024-01-30 23:04:35 +08:00
sakumisu
14f1f597f1 add usb errno, do not use system errno 2023-12-05 21:34:32 +08:00
sakumisu
5bbe2a97f2 refactor urb, add ep & hport in urb to make hardware pipe more reusable 2023-11-16 19:56:52 +08:00
sakumisu
e795ab73a0 check and execute modeswitch first 2023-11-13 19:50:37 +08:00
sakumisu
7acb667e20 support usb modeswitch 2023-11-04 16:45:20 +08:00
sakimisu
c8b832e1a0 fix function name 2023-08-05 11:08:24 +08:00
sakimisu
3057f41020 use static memory to malloc & free class 2023-07-12 22:48:18 +08:00
heyuanjie87
01c6d60076 修复requestsense设定数据长度错误的问题 2023-05-19 19:57:43 +08:00
sakimisu
9172223fe6 call usbh_xxx_stop when class enumerates completely 2023-05-17 20:43:23 +08:00
sakumisu
70a22c24c7 fix print log 2023-03-16 15:12:41 +08:00
sakimisu
80f19f738c format code 2023-03-12 14:49:24 +08:00
zhouji
79f0a1989e [update] Improve the compatibility of USB flash drive enumeration。 2023-03-11 18:52:25 +08:00
sakumisu
75ddfc8e4d move hub and hport variable into common ram to reduce nocache ram usage 2023-02-18 15:19:52 +08:00
sakimisu
512de54d33 add host class run and stop callback 2022-11-26 23:52:58 +08:00
sakumisu
212a727cbd remove irq protect when allocates devnum 2022-10-01 16:15:53 +08:00
sakumisu
09c6f2b655 add urb for msc class 2022-09-15 20:46:14 +08:00
sakumisu
b25b0f0b6c add interface altsetting struct 2022-09-14 20:33:13 +08:00
sakumisu
62d0000926 refactor usb host stack: hcd api, hub process and usb no cache ram process 2022-09-09 19:09:22 +08:00
sakumisu
7377b5183d Simplify the license rows, standardize header macro name 2022-08-18 21:41:19 +08:00
sakumisu
628ee1f74d add mount callback for device, move tests in mount callback 2022-08-12 21:35:17 +08:00
sakumisu
e922b589f8 fix warnings 2022-06-15 22:14:53 +08:00
sakumisu
56364f2903 alloc class name after the necessary commands are completed 2022-05-22 17:09:47 +08:00
sakumisu
a5ee5b4152 Standardized function parameter with xxx_class 2022-04-04 15:37:14 +08:00
xieyangrun
322964f598 fixed osal critical section protect adapt 64bits CPU. 2022-03-31 18:40:11 +08:00
aozima
3cce9e7d78 clean compiler warning. 2022-03-27 14:58:25 +08:00
jzlv
563888ec14 update class driver info,support class driver export 2022-03-23 17:30:53 +08:00
jzlv
c44a26d69f psc thread use event instead,add timeout for transfer 2022-03-23 14:47:18 +08:00
sakumisu
be3e9d5425 expand msc tx_buffer to 64 2022-03-23 14:33:51 +08:00
aozima
5e455c2331 update host class driver struct: add hport. 2022-03-19 12:26:37 +08:00
sakumisu
ba8c528918 use hport setup to replace class setup,move out test demo 2022-02-24 12:29:06 +08:00
jzlv
e63b2ce974 update msc scsi macro 2022-02-09 15:22:28 +08:00
sakimisu
1edbae8e07 format codes 2022-02-08 11:44:46 +08:00
sakumisu
1cb56fe0ef replace ssize_t with int 2022-02-07 17:32:36 +08:00
sakimusu
b44617212b add usb host stack(class not release completely) 2022-02-01 23:02:59 +08:00