Commit Graph

21319 Commits

Author SHA1 Message Date
Darian Leung
22c152c388 usb: Hub Driver and USBH recover port automatically after disconnection
This commit updates the Hub Driver and USBH as follows:
- Updated communication mechanism between Hub Driver and USBH
    - USBH notifies the Hub Driver via Hub request callback (usbh_hub_req_cb_t)
    - Hub Driver notifies the USBH via usbh_hub_pass_event()
- Hub Driver now defers all event handling to hub_process.
- Hub Driver and USBH will now automatically recover the port after a disconnected
    device has been closed.
- Fixed incorrect assert in usbh_dev_close()
2022-01-06 15:12:16 +08:00
Darian Leung
1aad12468a usb: Hub Driver Update and Refactor
Hub Driver is refactored as follows:

This commit update and refactors the Hub Driver as follows:

- Refactored enumeration state machine and stage functions
    - Enumeration stage is now incremented
    - Combined transfer stages of enumeration into common functions
- Comments updated
- Fixed usbh_hal_disable_debounce_lock() that would cause root_port_handle_events()
    to fail the HCD_PORT_CMD_RESET call because the previous port connection interrupt
    was not cleared.

The following features were added to the Hub Driver

- Enumeration config descriptor is now fetched in two separate stages
    - Header is fetched first to determine the wTotalLength of the descriptor
    - Fetching the full descriptor will request exactly wTotalLength bytes
    - This works around some non-compliant devices that will babble/return zero
        when requesting a length > wTotalLength
    - Closes https://github.com/espressif/esp-idf/issues/7799
- Enumeration now stores string descriptors
    - The Manufacturer, Product, and Serial Number string descriptors are
        now read and stored during enumeration
    - String descriptors are now part of usb_device_info_t
- Added unit test to test enumeration
2022-01-06 15:11:13 +08:00
Darian Leung
854127a57c usb: USB Host stack uses USB PHY driver
This commit updates the USB Host stack to use the USB PHY driver. The
USB PHY and the OTG Controller should now both be setup/deleted using
usb_new_phy() and usb_del_phy() respectively.

- The hcd_install() now expects the USB PHY and OTG Contorller to be
    already setup before it is called
- usb_host_install() now has an option to skip calling usb_del_phy() if
    the user wants to setup their own USB PHY (e.g., in the case of using
    and external PHY).
- CDC-ACM and MSC examples/test updated to use internal PHY

Closes https://github.com/espressif/esp-idf/issues/8061
2022-01-06 15:09:39 +08:00
Darian Leung
5a2ef15565 usb: HCD multiple fixes
This commit fixes the following bugs in the HCD

- HCD control pipes fill incorrect transfer size

_buffer_fill_ctrl() would fill the transfer descriptors length with
wLength instead of transfer->num_bytes. Therefore, the remaining length
would be incorrect when a control transfer requests more bytes than are
available.

- Fix USB_TRANSFER_FLAG_ZERO_PACK behavior

The previous behavior of USB_TRANSFER_FLAG_ZERO_PACK was incorrect, and did not
support interrupt pipes. A zero length packet can now be added to Bulk/Interrupt
OUT transfers where the length is a multiple of the endpoint's MPS.

- Fixed HCD port suspend and resume test case

Halting a control pipe mid control transfer can lead some test devices to get stuck
2022-01-06 15:07:56 +08:00
Darian Leung
bb29b199ad usb: Tidy up usbh
- Remove enum_todo_flags from usbh
- USBH move config_desc to constant fields
2022-01-06 15:06:44 +08:00
xiongweichao
83b9320d2e btc_a2dp_control_set_datachnl_stat is only used by a2dp sink 2022-01-06 14:10:18 +08:00
xiongweichao
688700f33b remove btc_a2dp_dispatch_datapath_evt and event 2022-01-06 14:02:03 +08:00
xiongweichao
c5af97759f Fixed the crash caused by calling esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_START) after stream started 2022-01-06 14:02:03 +08:00
xiongweichao
061ae4c07a Fixed a2dp source audio data packet congestion causing choppy audio in a2dp sink 2022-01-06 14:02:03 +08:00
Marius Vikhammer
5d47efb72d Merge branch 'docs/s3_not_updated_docs' into 'master'
docs: update docs with S3 specific information.

Closes IDF-3272, IDF-3279, IDF-3283, IDF-3290, and IDF-3303

See merge request espressif/esp-idf!16635
2022-01-06 04:44:27 +00:00
Michael (XIAO Xufeng)
476da74796 Merge branch 'bugfix/ledc_fade_array_check' into 'master'
ledc: fixed check to s_ledc_fade_rec array

See merge request espressif/esp-idf!16086
2022-01-06 03:28:10 +00:00
Michael (XIAO Xufeng)
466f3a91cb ledc: fixed check to s_ledc_fade_rec array 2022-01-06 03:28:05 +00:00
Aditya Patwardhan
6f20ca93ad Merge branch 'fix/http2_request_example' into 'master'
http2_request_example: Change the target http2 server to http2.github.io

See merge request espressif/esp-idf!16655
2022-01-06 03:26:50 +00:00
Zim Kalinowski
779de561f4 Merge branch 'bugfix/fix_idf_as_lib_build' into 'master'
Build: fix idf_as_lib example not building

Closes IDFGH-6453

See merge request espressif/esp-idf!16514
2022-01-06 03:17:30 +00:00
Omar Chebib
cb90544a04 Build: fix idf_as_lib example not building 2022-01-06 03:17:29 +00:00
Michael (XIAO Xufeng)
b84abb1b17 Merge branch 'bugfix/rtcio_increase_size' into 'master'
sleep: fixed ext1 cannot wakeup via RTCIO >= 18 issue

Closes IDF-4526 and IDF-4505

See merge request espressif/esp-idf!16617
2022-01-06 03:03:58 +00:00
Darian Leung
39fd7525b6 docs: Refactor FreeRTOS documentation
This commit refactors the FreeRTOS documentation as follows:

- Rewrite FreeRTOS SMP changes document (ESP-IDF FreeRTOS SMP)
    - Reorganized sections in kernel behavior changes
    - Rewrote descriptions of each kernel behavior changes
    - Added notes about using ESP-IDF FreeRTOS for single core targets
- Moved TLSP callback section to FreeRTOS Additions document
- Moved FreeRTOS configuration section to FreeRTOS API document
- Added notes about FreeRTOS applications in ESP-IDF
2022-01-06 10:04:36 +08:00
Jakob Hasse
d76cb9f456 docs: fix hard coded target name in essl doc 2022-01-06 10:04:36 +08:00
Darian Leung
3b29030e10 docs: Update Power Management and Sleep Modes docs for ESP32-S3 2022-01-06 10:04:29 +08:00
Darian Leung
b3e889de1c docs: Update TWAI docs for ESP32-S3 2022-01-06 10:04:29 +08:00
Marius Vikhammer
8c0178f73d docs: update performance guide docs with S3 information 2022-01-06 10:04:29 +08:00
Marius Vikhammer
3e756e809e docs: update docs with S3 specific information. 2022-01-06 10:04:25 +08:00
Wang Meng Yang
d29755b7d5 Merge branch 'bugfix/rd_rem_ext_feats_delayed_cs' into 'master'
bugfix/fix cs event for rd_rem_ext_feats delayed issue

Closes ESPCS-7232

See merge request espressif/esp-idf!15919
2022-01-06 00:39:47 +00:00
Ivan Grokhotkov
a17cd24761 Merge branch 'bugfix/idf_tools_python_env' into 'master'
tools: improve virtualenv diagnostics, set python path explicitly

Closes IDFGH-4711, IDFGH-6386, and IDF-4233

See merge request espressif/esp-idf!16650
2022-01-05 13:23:42 +00:00
Tomas Rezucha
af28416116 Merge branch 'feature/usb_device/multi_cdc' into 'master'
USB: Extend USB CDC device with second channel

See merge request espressif/esp-idf!16458
2022-01-05 09:53:04 +00:00
Ondrej Kosta
fa9cc49b9e Merge branch 'bugfix/esp_eth_start_tx_buff' into 'master'
Fixed ESP32 EMAC driver `insufficient TX buffer size`

Closes WIFI-4194

See merge request espressif/esp-idf!16457
2022-01-05 09:40:12 +00:00
Jiang Jiang Jian
477cf09f45 Merge branch 'bugfix/ci_check_blobs' into 'master'
ci: improve checks for Wi-Fi/PHY libraries

See merge request espressif/esp-idf!16625
2022-01-05 09:26:42 +00:00
Mo Fei Fei
097785d6c8 Merge branch 'docs/add_application_example_esp_now' into 'master'
docs: add application example for esp-now

Closes DOC-2452

See merge request espressif/esp-idf!16643
2022-01-05 09:19:14 +00:00
Ivan Grokhotkov
e857b260a5 tools: improve virtualenv diagnostics, set python path explicitly
- Check if pip is installed for sys.executable before attempting to
  create the virtual environment, bail out with an error if not.
- Don't pass --seeder argument to virtualenv if its version is
  too old. For example, on Ubuntu 18.04, virtualenv 15.1.0 doesn't
  support this argument.
- Pass --python argument to virtualenv to request specific interpreter
  to be used.

Closes https://github.com/espressif/esp-idf/issues/8045
2022-01-05 09:55:13 +01:00
intern
b0a2dda075 docs: add application example for esp-now 2022-01-05 16:17:28 +08:00
Tomas Rezucha
6330d5d312 usb: Extend CDC device with second CDC channel
Closes https://github.com/espressif/esp-idf/issues/7020
Closes https://github.com/espressif/esp-idf/pull/8011
2022-01-05 08:18:03 +01:00
Guo Jia Cheng
fa8364a544 Merge branch 'bugfix/openthread-socket-multicast' into 'master'
openthread: sync lwip multicast groups to Thread stack

See merge request espressif/esp-idf!16490
2022-01-05 07:04:30 +00:00
Mahavir Jain
6e1f534cab Merge branch 'feature/esp_tls_api_cleanup' into 'master'
esp-tls: mark esp_tls_conn_delete API as deprecated

See merge request espressif/esp-idf!16647
2022-01-05 07:04:09 +00:00
Aditya Patwardhan
2b026ea1fa http2_request_example: Change the target http2 server to http2.github.io and
perform only a `GET` request.
2022-01-05 12:26:39 +05:30
jincheng
6a9afa65a2 fix cs event for rd_rem_ext_feats delayed issue 2022-01-05 14:48:04 +08:00
Murray Fordyce
00a23ec544 Fixed left right key confusion in comments.
"Left" and "Right" were swapped in some comments.
2022-01-05 14:23:47 +08:00
morris
ce2a220098 Merge branch 'refactor/make_adc2_wifi_private' into 'master'
clean up deprecated and private header files for driver and esp_hw_support component

See merge request espressif/esp-idf!16605
2022-01-05 05:42:42 +00:00
morris
313e36b49e Merge branch 'feature/migration_guide_owners' into 'master'
CI: update migration guide codeowners

See merge request espressif/esp-idf!16651
2022-01-05 05:07:14 +00:00
Xue Yun Fei
ea73daa613 Merge branch 'bugfix/update_esp32s3_docs' into 'master'
Doc:Bugfix/update esp32s3 docs

See merge request espressif/esp-idf!15390
2022-01-05 03:30:56 +00:00
Li Kun Qiao
b05b70c7f3 Merge branch 'feature/Add_zigbee_rcp_gateway' into 'master'
Zigbee example: rcp and gateway

See merge request espressif/esp-idf!16205
2022-01-05 03:28:03 +00:00
Marius Vikhammer
dd341318d0 CI: update docs codeowners 2022-01-05 10:46:07 +08:00
morris
ef5cfb217c Merge branch 'contrib/github_pr_8172' into 'master'
Fix compile issue when TinyUSB task is not enabled. (GitHub PR)

Closes IDFGH-6521

See merge request espressif/esp-idf!16611
2022-01-04 13:21:23 +00:00
Jiacheng Guo
d610282742 openthread: sync lwip multicast groups to Thread stack
This MR synchornizes the lwIP multicast groups to the Thread stack. This
will fix sockets failing to receive messages sent to multicast groups
issue.
2022-01-04 20:08:15 +08:00
Nachiket Kukade
02a415d494 esp_wifi: Update wifi lib
Fix STA not getting IP after DPP

Closes https://github.com/espressif/esp-idf/issues/7646
2022-01-04 16:24:45 +05:30
Jiang Jiang Jian
69757842aa Merge branch 'bugfix/ftm_misc_issues' into 'master'
Miscellaneous FTM bugfixes

Closes WIFI-4126

See merge request espressif/esp-idf!16525
2022-01-04 10:39:42 +00:00
Mahavir Jain
201e0b39a7 esp-tls: remove redundant snippet from CMakeList 2022-01-04 15:41:06 +05:30
Mahavir Jain
c26500cd5a esp-tls: mark esp_tls_conn_delete API as deprecated
It is recommended to use `esp_tls_conn_destroy` API instead
2022-01-04 15:40:07 +05:30
xueyunfei
ec993af322 update s3 doc 2022-01-04 17:50:37 +08:00
likunqiao
8c577cd208 Zigbee example: add rcp and gateway
* provide Zigbee rcp and Zigbee gateway example
 * minor comment fix for light example
2022-01-04 17:46:09 +08:00
Ivan Grokhotkov
637716b310 Merge branch 'feat/code_owner_bootloader_flash' into 'master'
code_owners: add peripherals to the owner of bootloader_flash

See merge request espressif/esp-idf!16628
2022-01-04 09:39:29 +00:00