Commit Graph

21157 Commits

Author SHA1 Message Date
Dai Zi Yan
3278cdd21d Merge branch 'docs/update_CN_trans_spi-flash_BLE-MESH' into 'master'
docs: Updated CN translation for wifi, spi_flash and fatal-errors

Closes DOC-2423

See merge request espressif/esp-idf!16543
2022-01-07 09:02:41 +00:00
Fu Hanxi
73c5644044 ci: update dockerfile to 5.0 2022-01-07 16:18:32 +08:00
Fu Hanxi
8b928bf22f ci: temporary bypass tinyxml2 cmake deprecated warning 2022-01-07 16:18:32 +08:00
David Cermak
1882cbe44e mdns: Make fuzzer layers compatible with llvm>=6 2022-01-07 16:18:32 +08:00
Fu Hanxi
4f779bb7c6 ci: use python -m coverage instead of coverage executable 2022-01-07 16:18:32 +08:00
Fu Hanxi
0282cedd0b docs: drop support for v3.x grammar 2022-01-07 16:18:32 +08:00
Fu Hanxi
172854a850 refactor: rewrite ldgen fragment file parser
closes https://github.com/espressif/esp-idf/issues/7940
2022-01-07 16:18:32 +08:00
Fu Hanxi
a44953ecd4 refactor: move ldgen into a separate package 2022-01-07 16:18:32 +08:00
daiziyan
20374161a6 docs: Updated CN translation for esp-ble-mesh, wifi, spi_flash and fata-errors; And keep line number consistency for en/index and versions 2022-01-07 16:05:16 +08:00
morris
705788a13f unit_tests: replace legacy timer group with gptimer 2022-01-07 14:59:09 +08:00
morris
6bf3af7c8e examples: replace legacy timer group with gptimer 2022-01-07 14:59:09 +08:00
morris
02f6b83f47 app_trace: support gptimer as timestamp source 2022-01-07 14:59:09 +08:00
morris
e36f47a153 doc: API reference for GPTimer 2022-01-07 14:59:09 +08:00
morris
7000f5d85a legacy_timer: move unit test to test app 2022-01-07 14:44:50 +08:00
morris
25490dd45f gptimer: add example with various use cases 2022-01-07 14:44:50 +08:00
morris
5deb83b12d gptimer: new driver for previous timer group 2022-01-07 14:44:50 +08:00
Marius Vikhammer
79cc650d75 Merge branch 'feature/deprecate_freertos_assert' into 'master'
freertos: remove FREERTOS_ASSERT option

Closes IDF-2294

See merge request espressif/esp-idf!16563
2022-01-07 06:35:05 +00:00
Mahavir Jain
7b11094306 Merge branch 'contrib/github_pr_8201' into 'master'
Fix typo (GitHub PR)

Closes IDFGH-6556

See merge request espressif/esp-idf!16684
2022-01-07 05:47:35 +00:00
Omar Chebib
598246d287 CI: idf_as_lib is now run on all suported targets 2022-01-07 12:10:35 +08:00
Anton Maklakov
d500c8205e Merge branch 'bugfix/fix_spi_cs_hold_time_issue' into 'master'
spi_master: fix spi cs_ena_posttrans issue

Closes IDFGH-6077

See merge request espressif/esp-idf!15925
2022-01-07 04:06:12 +00:00
Marius Vikhammer
ba3f12a9fe rsa: add generate RSA keys test case 2022-01-07 11:35:35 +08:00
Wang Meng Yang
da63b3bb5a Merge branch 'bugfix/config_parse_crash_after_flash_erase' into 'master'
component_bt: fixed config parse crash after flash_erase

Closes IDFGH-4331

See merge request espressif/esp-idf!16677
2022-01-07 03:05:40 +00:00
Wang Meng Yang
5f28c0c36b Merge branch 'bugfix/PRs_on_esp_hid' into 'master'
bugfix/handle_3_esp_hid_PRs

Closes IDFGH-5889, IDFGH-3402, and IDFGH-2586

See merge request espressif/esp-idf!16538
2022-01-07 01:49:47 +00:00
Marius Vikhammer
7255497146 freertos: remove FREERTOS_ASSERT option
Freertos asserts are now configured the same way as all other asserts in IDF,
i.e. by configuring COMPILER_OPTIMIZATION_ASSERTION_LEVEL.
2022-01-07 09:16:48 +08:00
morris
4bf67afd0a Merge branch 'refactor/remove_public_api_soc_dependency' into 'master'
remove public api soc dependency

Closes IDF-4424, IDF-3670, and IDFGH-6525

See merge request espressif/esp-idf!16541
2022-01-06 23:50:24 +00:00
Radu
9c1983d8ff
Fix typo 2022-01-06 22:33:56 +02:00
Jiang Jiang Jian
cde8b94a65 Merge branch 'bugfix/dpp_no_ip_issue' into 'master'
Fix STA not getting IP after DPP issue

Closes IDFGH-5958

See merge request espressif/esp-idf!15578
2022-01-06 15:16:47 +00:00
morris
f7c9b8fd58 soc: remove dport register assert for esp32s2
Closes https://github.com/espressif/esp-idf/issues/8176
2022-01-06 23:10:22 +08:00
morris
869bed1bb5 soc: don't expose unstable soc header files in public api 2022-01-06 23:10:22 +08:00
Ivan Grokhotkov
24c20d188e esp_rom: remove functions which depend on sizeof(struct stat)
...and all their callers.

With the upcoming switch from sizeof(time_t)==4 to sizeof(time_t)==8,
sizeof(struct stat) is also increasing.

A few newlib functions present in ROM allocate 'struct stat' on the
stack and call _fstat_r on this structure. The implementation of
fstat is provided in ESP-IDF. This implementation will often do
memset(st, 0, sizeof(*st)), where st is 'struct stat*', before setting
some fields of this structure. If IDF is built with sizeof(st)
different from sizeof(st) which ROM was built with, this will lead
to an out-of-bounds write and a stack corruption.

This commit removes problematic ROM functions from the linker script.
Here are the functions which allocate 'struct stat':
* _isatty_r (in ROM)
* __swhatbuf_r, called by __smakebuf_r, called by __swsetup_r and
  __srefill_r (in ROM)
* _fseeko_r (not in ROM)
* glob2 (not in ROM)
* _gettemp (not in ROM)

As a result, these functions are used from libc.a, and use correct
size of 'stat' structure.

Closes https://github.com/espressif/esp-idf/issues/7980
2022-01-06 15:20:04 +01:00
morris
24acdf23ee soc: move peripheral base address into reg_base.h 2022-01-06 21:43:12 +08:00
morris
8cdcb4e291 rmt: move RMT item definition from soc to driver 2022-01-06 21:43:12 +08:00
morris
d8f2eaf94e gpio: remove legacy rtc_io description for esp32 2022-01-06 21:43:12 +08:00
morris
3b371d2d64 ci: check unstable soc headers wont be leaked by public api 2022-01-06 21:43:12 +08:00
Darian
d95b15c557 Merge branch 'feature/usb_host_cleanup' into 'master'
USB: Host stack cleanup and QOL update

Closes IDFGH-6120, IDF-2747, IDFGH-4592, and IDFGH-6402

See merge request espressif/esp-idf!16349
2022-01-06 12:18:47 +00:00
xiongweichao
6d86b07546 fixed config parse crash after flash_erase
Closes https://github.com/espressif/esp-idf/issues/6170
2022-01-06 20:17:43 +08:00
Armando
56a707eef4 spi_master: fix spi cs_ena_posttrans issue 2022-01-06 17:54:58 +08:00
Omar Chebib
51917cb49c espcoredump: add a test for coredump dumped sections 2022-01-06 16:53:41 +08:00
Omar Chebib
b0afae5e60 espcoredump: fix a bug where tracked DRAM data where not dumped
Variables marked as COREDUMP_DRAM_ATTR will now be part of the core dump.

* Closes https://github.com/espressif/esp-idf/issues/8151
2022-01-06 16:53:35 +08:00
Darian Leung
ada1c9c5b8 usb: Add USB Host Library documentation
This commit adds the USB Host Library documentation and fixes some nitpicks
in the Host Stack types.

Closes https://github.com/espressif/esp-idf/issues/6408
2022-01-06 15:15:32 +08:00
Darian Leung
630a6b54c2 usb: Add USB Host Library Example
The commit adds a basic example for the USB Host Library
2022-01-06 15:15:15 +08:00
Darian Leung
b6dfadb168 usb: Update USB Host Library
This commit updates the USB Host Library as follows:

- usb_helpers.h
    - Removed dependency on USB Host Library API
    - Added function to print string descriptors
- usbh
    - Fixed bug where an interface/endpoint could be claimed/allocated multiple times
    - Removed redundant device ref_count change
- Added unit test for USB Host Library API usage
2022-01-06 15:14:10 +08:00
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