Commit Graph
90 Commits
Author SHA1 Message Date
Roman Leonov 7aa117477d fix(ext_hub): Added processing waiting_release flag while dev changed to IDLE
11382a2a fix(ext_hub): Added processing waiting_release flag while dev changed to IDLE

Co-authored-by: Roman Leonov <roman.leonov@espressif.com>
2025-06-02 11:44:32 +02:00
Roman Leonov 628d7ad77d refactor(ext_hub): Device release (allows to run usb_host test with ext hub)
754d357f refactor(ext_hub): Fixed device release, optimized the order of closing usbh device
fc61875a refactor(ext_hub): Pospone the device release, if device is not IDLE
3fd17b8b refactor(hub): Applied new ext_hub api, refactor func names
3003362b refactor(usb_host): Cancel hub porpagation to the user, rename non-critical func
19ce9ed6 refactor(test_usb_host_async): Added host_lib_task finish notification
f238d75b refactor(ext_port): Remove the error verification, as error will be handled in ext hub driver

Co-authored-by: Roman Leonov <roman.leonov@espressif.com>
2025-06-02 11:44:22 +02:00
Roman Leonov 2034360d96 refactor(hcd_dwc): Apply ls_via_fs_hub delay for all targets 2025-05-14 13:53:34 +02:00
Roman Leonov e329d34109 refactor(ext_port): Removed ext_hub dependency 2025-05-06 15:22:15 +02:00
Roman Leonov f78927334f refactor(ext_port): Changed the mechanism for hub class request
Merged all Hub Class specific request to one function.
Added a callback for the External Port Driver to break the dependency from ext_hub.h
2025-05-06 15:02:03 +02:00
Roman Leonov 08fd2d8d4e feat(ext_hub): Added device error handling 2025-05-06 14:58:26 +02:00
Roman Leonov fb6e803bfa feat(usbh): Added uid presence check in USBH device object list 2025-05-06 14:58:26 +02:00
Roman Leonov b760531d5b fix(usb_host): Correctly initialize set pipe ep char 2025-04-23 10:09:18 +02:00
Roman Leonov 56daed6169 fix(hcd): Added delay to slow down scatter-gather dma for ls device via fs hubs 2025-04-23 10:09:18 +02:00
Roman Leonov 894cecf174 fix(usb_phy): Removed pad pull override config for Full-speed 2025-02-27 15:08:28 +01:00
Roman Leonov 65aa60f844 fix(usb_host): Fixed unchecked return value in enum driver (coverity) 2025-01-29 12:51:39 +01:00
Roman Leonov 8fc6dad7ff fix(tusb_msc): Added SD power supply configuration for p4 2024-11-21 13:10:03 +01:00
Roman Leonov adb468bade docs(ext_port): Maintainers Notes for the External Port Driver 2024-11-21 12:49:32 +01:00
Roman Leonov 501e4e6c81 Merge branch 'refactor/usb_host_hcd_dwc_enum_messages' into 'master'
refactor(usb_host):  HCD DWC and Enum additional error messages

See merge request espressif/esp-idf!34236
2024-10-25 16:09:25 +08:00
Roman Leonov c19e2b7f8d refactor(usb_host): Removed error in enum when stalled, added hcd_dwc no more free channels 2024-10-24 16:40:55 +08:00
Roman Leonov e26ad72c28 Merge branch 'fix/usb_host_ext_port_recovery_delay' into 'master'
fix(ext_port): Added port recovery delay

Closes IDF-11357

See merge request espressif/esp-idf!33984
2024-10-21 16:05:44 +08:00
Roman Leonov 4677ccee86 fix(ext_port): ESP_LOGW() -> ESP_LOGD() changed back 2024-10-17 19:44:00 +08:00
Roman Leonov 76293e3356 fix(ext_port): Moved reset recovery delay in correct place, removed delay while polling port which in reset state 2024-10-17 19:44:00 +08:00
Roman Leonov 30f199562b fix(ext_port): Added port recovery delay 2024-10-17 19:44:00 +08:00
Roman Leonov 7e0fc6a156 Merge branch 'feature/usb_host_hubs_support_msg' into 'master'
feat(hub): Added notification when hubs support is disabled

Closes IDF-11254

See merge request espressif/esp-idf!33703
2024-10-15 09:16:27 +08:00
Roman Leonov f333131063 feat(hub): Added notification when hubs support disabled 2024-10-14 12:37:34 +02:00
Roman Leonov 0be9d7d3f2 Merge branch 'fix/usb_host_lib_example' into 'master'
fix(usb_host_lib): Returned task suspend

See merge request espressif/esp-idf!34046
2024-10-09 18:24:54 +08:00
Roman Leonov 418583a5be fix(usb_host_lib): Returned task suspend 2024-10-09 11:05:21 +02:00
Roman Leonov a7cdabff06 Merge branch 'refactor/usb_host_examples_ext_hub_support' into 'master'
refactor(usb_host/examples): Enabled external Hub support feature

Closes IDF-2635

See merge request espressif/esp-idf!30393
2024-10-07 18:48:11 +08:00
Roman Leonov 3d07895c8f refactor(usb_host_examples): Enabled Hub support by default 2024-10-07 10:13:10 +02:00
Roman Leonov d50a64ea84 Merge branch 'feature/usb_host_ext_port_driver' into 'master'
feat(ext_port): Added External Port Driver

Closes IDF-9698, IDF-10237, IDF-10054, IDF-10070, and IDFGH-11416

See merge request espressif/esp-idf!30392
2024-10-01 01:33:05 +08:00
Roman Leonov 70f222e5d2 feat(ext_port): Added External Port driver
Closes https://github.com/espressif/esp-idf/issues/12554
2024-09-26 12:38:24 +02:00
Roman Leonov fac1966c9b Merge branch 'refactor/usb_host_ext_hub_cleanup' into 'master'
refactor(hub): Cleaned up dev_tree_node debug output, moved node freeing

See merge request espressif/esp-idf!33380
2024-09-12 16:01:36 +08:00
Roman Leonov a9d960a81f refactor(hub): Cleaned up dev_tree_node debug output, moved node freeing 2024-09-06 22:44:37 +02:00
Roman Leonov 6ee1c300c2 Merge branch 'refactor/usb_host_ext_port_prereq' into 'master'
refactor(ext_hub): Prerequisites for the Ext Port Driver

See merge request espressif/esp-idf!32213
2024-09-03 19:17:22 +08:00
Roman Leonov a971ddf17a refactor(ext_hub): Added port creation and freeing, cleaned up members 2024-09-02 14:25:21 +02:00
Roman Leonov 184eeccc71 Merge branch 'fix/usb_host_enum_cancellation' into 'master'
fix(usb_host): The Enumeration Driver, cancellation on error

See merge request espressif/esp-idf!32212
2024-08-13 00:42:00 +08:00
Roman Leonov 0a9bd7aa50 fix(enum): Added cancellation stage to process, second reset stage, remove dynamic members 2024-08-12 09:11:02 +02:00
Roman Leonov d108ba14ac Merge branch 'fix/usb_host_hcd_dconn_hs' into 'master'
fix(usb_dwc_hal): Enabled precise VBUS detection

Closes IDF-9953

See merge request espressif/esp-idf!32031
2024-07-13 00:45:56 +08:00
Roman Leonov 97d30e7c48 fix(usb_dwc_hal): Enabled precise detection of VBUS 2024-07-12 10:51:31 +02:00
Roman Leonov 11e780ca20 Merge branch 'fix/usb_host_addr_map_and_hub_uid' into 'master'
fix(usb_host): Increased address map for clients and changed the uid member type

See merge request espressif/esp-idf!31887
2024-07-05 00:47:36 +08:00
Roman Leonov eceb27a835 fix(usb_host): Changed addr_map to 4x array of uint32 2024-07-03 11:01:17 +02:00
Roman Leonov 1526b80e08 fix(hub): Changed type of next_uid member (uint8_t -> unsigned int) 2024-07-03 10:43:08 +02:00
Roman Leonov d4f0b77d29 Merge branch 'feature/usb_host_ext_hub_driver' into 'master'
feat(ext_hub): Added External Hub Driver

Closes IDF-9697, IDF-9205, IDF-10073, and IDF-10100

See merge request espressif/esp-idf!30391
2024-06-26 04:37:22 +08:00
Roman Leonov 5527ee588e docs(ext_hub): Added description for External Hub Driver 2024-06-25 11:28:03 +02:00
Roman Leonov 548b03c69f feat(ext_hub): Added External Hub driver 2024-06-25 11:28:03 +02:00
Roman Leonov f5c1039de3 fix(enum): Returned usb_round_up_to_mps for control request of string descriptors 2024-06-13 09:23:34 +02:00
Roman Leonov 0a78f7207b Merge branch 'feature/usb_host_hub_uid_prereq' into 'master'
feat(hub): Added device tree nodes list and uid calculation logic

See merge request espressif/esp-idf!31043
2024-06-12 15:30:27 +08:00
Roman Leonov b688ee2cba feat(hub): Added device tree nodes list and uid calculation 2024-06-11 09:20:42 +02:00
Roman Leonov b86bd6bcdc Merge branch 'bugfix/usb_host_enum_unused_value' into 'master'
fix(enum): Fixed STALL on descriptor request, removed unused value

Closes IDF-10067

See merge request espressif/esp-idf!31349
2024-06-11 02:55:27 +08:00
Roman Leonov d214c482f6 fix(enum): Added STALL handling on descriptor fetching 2024-06-10 19:45:15 +02:00
Roman Leonov db1f13d259 fix(enum): Removed unused value 2024-06-10 19:45:15 +02:00
Roman Leonov 8d3f4cad1e Merge branch 'refactor/usb_host_enum_as_driver' into 'master'
refactor(hub): ENUM Driver

Closes IDF-9523

See merge request espressif/esp-idf!29892
2024-06-03 19:59:50 +08:00
Roman Leonov 0de6267eeb docs(enum): Added description for Enumeration process (Enum Driver) 2024-06-03 10:27:37 +02:00
Roman Leonov 39f91a3d5a refactor(enum): Curved out Enumeration process from Hub Driver 2024-06-03 10:27:37 +02:00
Roman Leonov f86758f785 Merge branch 'refactor/usb_host_hub_api_prepeq_for_enum_driver' into 'master'
refactor(hub): Updated HUB api for ENUM driver

Closes IDF-9790

See merge request espressif/esp-idf!29912
2024-05-08 19:52:09 +08:00
Roman Leonov 7b7b8680ca Merge branch 'refactor/usb_host_usbh_api_prereq_for_enum_driver' into 'master'
refactor(usbh): Updated USBH api for ENUM driver

Closes IDF-9723

See merge request espressif/esp-idf!29913
2024-05-08 15:02:08 +08:00
Roman Leonov 325bbfb8d5 refactor(hub): Updated HUB api (enum driver) 2024-05-07 15:09:06 +02:00
Roman Leonov 596672fdcd refactor(usbh): Updated USBH api (enum driver) 2024-05-07 15:07:51 +02:00
Roman Leonov fc326374e0 Merge branch 'refactor/usb_host_add_hcd_mps_request' into 'master'
refactor(hcd_dwc): Added mps request from hcd_dwc

See merge request espressif/esp-idf!29904
2024-04-02 20:49:29 +08:00
Roman Leonov dbad0df765 refactor(hcd_dwc): Added mps request from hcd_dwc 2024-04-02 10:23:52 +02:00
Roman Leonov ca201b83ec Merge branch 'refactor/usb_device_examples_prereq_for_hs' into 'master'
USB Device examples: Added HS and FS configuration

Closes IDF-9048

See merge request espressif/esp-idf!29580
2024-03-29 03:26:50 +08:00
Roman Leonov d734f150ee docs(usb_device): Added HighSpeed description for tinyusb config structure 2024-03-28 16:40:55 +01:00
Roman Leonov a3191451bc refactor(usb_device): Fixed examples with esp_tinyusb v1.4.4 2024-03-28 16:40:49 +01:00
Roman Leonov de2486bff0 Merge branch 'refactor/usb_host_hub_driver_state' into 'master'
refactor(usb_host): Renamed hub driver_state to root_port_state

See merge request espressif/esp-idf!29788
2024-03-22 15:43:16 +08:00
Roman Leonov b90c7e585a refactor(usb_host): Renamed hub_driver_state to root_port_state 2024-03-21 13:16:28 +01:00
Roman Leonov 4d24ce3e13 Merge branch 'refactor/usb_host_add_ch11_types' into 'master'
refactor(usb_host): Added chapter11 header, refactor chapter9 header

See merge request espressif/esp-idf!29344
2024-03-15 05:14:39 +08:00
Roman Leonov 029c286a21 feat(usb_host): Added KConfig parameter for External HUB support enable 2024-03-14 21:06:34 +01:00
Roman Leonov 8d93d18451 refactor(usb_host): Added chapter11 header, refactor chapter9 header 2024-03-14 21:06:34 +01:00
Roman Leonov da8c926e9d feat(usb/device): Add esp32p4 prerequisites to examples 2024-01-12 13:04:38 +01:00
Roman Leonov cdc0e78057 feat(soc/usb): Add ESP32-P4 USB OTG struct 2024-01-01 21:34:02 +08:00
Roman Leonov 1d7132ce6b Merge branch 'bugfix/usb_host_binterval_check_loosening' into 'master'
fix(usb/host): Remove bInterval verification during pipe opening for Interrupt and Isochronous EPs

Closes https://github.com/espressif/esp-idf/issues/12336

See merge request espressif/esp-idf!27075
2023-11-18 03:39:18 +08:00
Roman Leonov bd51768340 fix(usb/host): remove bInterval verification during pipe opening for INTR and ISOC EPs 2023-11-16 14:11:01 +01:00
Roman Leonov a001118837 Merge branch 'docs/usb_host_menuconfig' into 'master'
feat(docs): added USB Host Stack Configuration description

Closes IDF-8447

See merge request espressif/esp-idf!26573
2023-11-02 15:49:13 +08:00
Roman Leonov 46cbbdd48c feat(docs): added USB Host Stack Configuration description 2023-11-01 12:47:27 +01:00
Roman Leonov 2aa59af5f0 Merge branch 'bugfix/usb_host_hid_driver_uninstall' into 'master'
fix(usb/host): added hid_driver_uninstall call during APP_QUIT for HID Host example

Closes IDF-8446

See merge request espressif/esp-idf!26306
2023-10-26 14:56:09 +08:00
Roman Leonov 375907299e fix(usb/host): added hid_driver_uninstall call during APP_QUIT for HID Host example 2023-10-25 09:04:20 +02:00
Roman Leonov 7b0b7a8bf0 Merge branch 'feature/usb_host_uvc_example_kconfig' into 'master'
feat(usb/host): add Kconfig for negotiation protocol configuration in UVC example

Closes IDF-7975

See merge request espressif/esp-idf!26275
2023-10-10 17:26:08 +08:00
Roman Leonov 1bd0c0f6f6 feat(usb/host): add Kconfig for negotiation protocol configuration in UVC example 2023-10-06 12:43:17 +02:00
Roman Leonov c29db70510 bugfix(usb/host): Fix transfer direction determination during argument checking for regular EP transfer 2023-09-13 21:55:34 +02:00
Roman Leonov e297470e62 Merge branch 'bugfix/usb/host/urb_compliance_verification_add' into 'master'
feature(usb/host) added URB check args and transfer check compliance for regular EP transfer submit

See merge request espressif/esp-idf!24106
2023-08-03 16:20:49 +08:00
Roman Leonov f9bc38f573 Merge branch 'feature/usb/host/hid_host_example_update' into 'master'
USB Host (HID): HID Host example update

Closes IDF-7636

See merge request espressif/esp-idf!24415
2023-06-30 02:05:47 +08:00
Roman Leonov 5ceac3cd19 feat(usb): update HID Host example 2023-06-29 11:58:46 +02:00
Roman Leonov 093bb5cab6 usb_host: added URB check args and transfer check compliance for regular EP transfer submit 2023-06-07 12:08:51 +02:00
Roman Leonov 36a09e957f Merge branch 'feature/usb_host_interface_claim_debug_info' into 'master'
usb_host: better debugging information during usb_host_interface_claim()

Closes IDF-6314

See merge request espressif/esp-idf!22882
2023-04-25 13:15:58 +08:00
Roman Leonov 1be6977a9d usb_host: better debugging information during hcd_pipe_alloc() when usb_host_interface_claim() is being fulfiled. 2023-04-24 08:37:57 +02:00
Roman Leonov 0b08570ae2 usb: usb_reg.h update missing register description 2023-03-14 13:29:20 +01:00
Roman Leonov 6777579cb6 Merge branch 'bugfix/usb_host_enumeration_delay' into 'master'
USB Host: SetAddress recovery interval + menuconfig configuration

Closes IDFGH-9036, IDFGH-9340

See merge request espressif/esp-idf!22607
2023-03-10 20:19:12 +08:00
Roman Leonov be899f6653 usb_host: add recovering interval after SetAddress(). Possibility to change constant delay value via menuconfig.
Closes https://github.com/espressif/esp-idf/issues/10444
Closes https://github.com/espressif/esp-idf/issues/10718
2023-03-09 08:11:05 +01:00
Roman Leonov 456eaf9196 Merge branch 'feature/usbh_hid_keyboard' into 'master'
[Peripheral Drivers/USB Host] HID Host example update

Closes IDF-6649
Closes IDF-6650

See merge request espressif/esp-idf!22052
2023-01-27 20:06:32 +08:00
Roman Leonov bb1e1737d3 usbh: hid change key event handler 2023-01-27 11:13:33 +01:00
Roman Leonov 8a7f6af625 Merge branch 'bugfix/usb_host_hid_example' into 'master'
usb_host: HID example license and typos fixes

See merge request espressif/esp-idf!21989
2023-01-13 02:54:37 +08:00
Roman Leonov 4c162af6c9 usb_host: license and typos fixes 2023-01-11 14:23:22 +01:00
Roman Leonov 0c9e30fa8e Merge branch 'feature/usb_host_hid_example' into 'master'
USB Host: Add HID example

Closes IDF-2213 and IDFGH-7795

Closes https://github.com/espressif/esp-idf/issues/9330

See merge request espressif/esp-idf!20902
2022-12-12 21:36:10 +08:00
Roman Leonov 4a7a6bf35b usb_host: hid example 2022-12-09 17:02:44 +01:00