Compare commits

...

434 Commits
fixes ... v4.4

Author SHA1 Message Date
8153bfe412 versions: Update version to 4.4.0 2022-01-24 23:05:26 +01:00
9f0a6d8e16 Merge branch 'bugfix/mdns_txt_alloc_issue_v4.4' into 'release/v4.4'
mdns: Fix alloc issue if TXT has empty value

See merge request espressif/esp-idf!16889
2022-01-21 18:55:51 +00:00
b3f913a058 mdns: Fix alloc issue if TXT has empty value 2022-01-21 22:52:33 +04:00
0b46ac1732 Merge branch 'bugfix/pppos_client_docs_power' into 'release/v4.4'
Examples/PPPoS: Add troubleshooting to correctly power modem (v4.4)

See merge request espressif/esp-idf!16235
2022-01-21 09:46:13 +00:00
88486324db Merge branch 'bugfix/fix_tcp_transport_exception_v4.4' into 'release/v4.4'
tcp_transport: fix tcp trasnport exception(backport release/v4.4)

See merge request espressif/esp-idf!16811
2022-01-21 09:45:45 +00:00
f4c97455c4 Merge branch 'bugfix/apll_coeff_calculate_v4.4' into 'release/v4.4'
i2s: impove the clock division calculation (v4.4)

See merge request espressif/esp-idf!16783
2022-01-21 07:06:30 +00:00
ab118fe8be Merge branch 'bugfix/i2s_return_error_code_v4.4' into 'release/v4.4'
i2s: revert the reading/writing can return timeout error (v4.4)

See merge request espressif/esp-idf!16749
2022-01-21 01:21:07 +00:00
a48c6e097a tcp_transport: fix tcp trasnport exception 2022-01-20 15:38:44 +08:00
816b0ce878 i2s: impove the apll and clock division calculation 2022-01-13 11:06:40 +08:00
f3e0c8bc41 Merge branch 'feature/oocd_ver_upgrade_v4.4' into 'release/v4.4'
tools: Updates OpenOCD version to 'v0.11.0-esp32-20211220' (v4.4)

See merge request espressif/esp-idf!16765
2022-01-12 14:19:54 +00:00
a3a05dc056 tools: Updates OpenOCD version to 'v0.11.0-esp32-20211220' 2022-01-12 16:39:07 +08:00
813948d137 Merge branch 'bugfix/tools_win_patch2_v4.4' into 'release/v4.4'
Add toolchain patch2 version for Windows with --with-gnu-ld option (v4.4)

See merge request espressif/esp-idf!16758
2022-01-12 08:33:35 +00:00
d0d3a2f2a0 Merge branch 'bugfix/idf_tools_test_without_versions_v4.4' into 'release/v4.4'
Tools: Load tool versions automatically for IDF Tools tests (v4.4)

See merge request espressif/esp-idf!16510
2022-01-12 08:29:46 +00:00
c22e33d2ca tools: Add toolchain esp-2021r2-patch2 version for Windows with --with-gnu-ld option
Closes https://github.com/espressif/esp-idf/issues/7864
2022-01-11 20:20:43 +07:00
f0aaf48a93 i2s: revert reading/writing return error code
Closes https://github.com/espressif/esp-idf/issues/8121

Revert reading/writing return ESP_ERR_TIMEOUT introduced in commit b26da6f
2022-01-11 15:43:29 +08:00
03d3c43882 Merge branch 'bugfix/fix_null_pointer_deference_issue_4.4_mr' into 'release/v4.4'
Fix the null pointer deference issue via Reconnection Spamming

See merge request espressif/esp-idf!16637
2022-01-10 08:31:33 +00:00
22b57850bd Merge branch 'bugfix/dpp_no_ip_issue_v4.4' into 'release/v4.4'
Fix STA not getting IP after DPP issue (Backport v4.4)

See merge request espressif/esp-idf!16645
2022-01-06 10:07:02 +00:00
c1162b15dc Merge branch 'docs/s3_update_v4.4' into 'release/v4.4'
docs: update remaining programming guide docs for S3 (v4.4)

See merge request espressif/esp-idf!16668
2022-01-06 06:39:19 +00:00
b5a1df1db4 Merge branch 'bugfix/spi_slave_test_non_dma_v4.4' into 'release/v4.4'
spi-slave: fix single-board: hd test failing due to DMA buffers ending up in PSRAM (v4.4)

See merge request espressif/esp-idf!16305
2022-01-06 03:11:12 +00:00
219242de89 Merge branch 'bugfix/uart_custom_isr_broken' into 'release/v4.4'
UART: fix a bug preventing the user from freeing a previously registered ISR

See merge request espressif/esp-idf!16581
2022-01-06 03:10:29 +00:00
b64925c567 Merge branch 'docs/fatal_errors_update_4.4' into 'release/v4.4'
refactor (docs): improved fatal errors doc (backport v4.4)

See merge request espressif/esp-idf!16626
2022-01-06 03:10:05 +00:00
116ecf098c 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:19:33 +08:00
5869a4854f docs: fix hard coded target name in essl doc 2022-01-06 10:14:58 +08:00
65e9385d0a docs: Update Power Management and Sleep Modes docs for ESP32-S3 2022-01-06 10:14:57 +08:00
b0812baacd docs: Update TWAI docs for ESP32-S3 2022-01-06 10:14:57 +08:00
a0ed387f71 docs: update performance guide docs with S3 information 2022-01-06 10:14:57 +08:00
02bf07a1a0 docs: update docs with S3 specific information. 2022-01-06 10:14:54 +08:00
2e4c95c1ee update s3 doc 2022-01-06 10:09:51 +08:00
b9989d3644 esp_wifi: Update wifi lib
Fix STA not getting IP after DPP
2022-01-05 16:24:00 +08:00
d83021a6e8 Merge branch 'bugfix/ftm_misc_issues_v4.4' into 'release/v4.4'
Miscellaneous FTM bugfixes (Backport v4.4)

See merge request espressif/esp-idf!16644
2022-01-05 08:12:39 +00:00
53c2b1f65b esp_wifi: Miscellaneous FTM bugfixes
1. Update wifi libs with bugfixes for corner cases
2. Avoid ASSERT for scan failure in FTM example
2022-01-04 15:49:45 +05:30
4288588751 UART: fix a bug preventing the user from freeing a previously registered ISR
* Closes https://github.com/espressif/esp-idf/issues/8150
2022-01-04 13:38:03 +08:00
d1f1b03beb Merge branch 'contrib/github_pr_7971_v4.4' into 'release/v4.4'
bugfix: Conflicting declaration error when include<rom/secure_boot.h> (v4.4)

See merge request espressif/esp-idf!16566
2022-01-04 03:37:35 +00:00
9a00ef1bc2 Merge branch 'feature/s3_rng_v4.4' into 'release/v4.4'
Bootloader add rng sampling (v4.4)

See merge request espressif/esp-idf!16623
2022-01-04 03:37:15 +00:00
abc18659e6 Merge branch 'bugfix/freertos_appcpu_int_disable_v4.4' into 'release/v4.4'
freertos: ensure interrupts are disabled before enabling tick timer (v4.4)

See merge request espressif/esp-idf!16606
2022-01-04 03:36:54 +00:00
8628079c42 There is an issue that if the the btm_cb.p_sec_dev_rec_list is full,but at the same
time we can't find old device to be replaced,then this can cause crash. So we need
to change the way to malloc the new device or replace the old in the list.
2022-01-04 10:42:09 +08:00
f9e7eb1fbf refactor (docs): improved fatal errors doc 2022-01-04 10:02:29 +08:00
ee24264c75 feat (bootloader): added rng sampling
Set maximum RNG query frequency to save value known from tests
2022-01-03 16:24:41 +05:30
dc707d5933 freertos: ensure interrupts are disabled before enabling tick timer
xPortStartScheduler calls vPortSetupTimer -> _frxt_tick_timer_init,
which enables tick timer interrupt and sets up the first timeout.
From that point on, the interrupt can fire. If the interrupt happens
while _frxt_dispatch is running, the scheduler will enter an infinite
loop. This is because _frxt_dispatch isn't supposed to be preemptable,
and the tick interrupt will overwrite some of the registers used by
_frxt_dispatch.
Note that this situation doesn't practically occur on the real
hardware, where the execution of vPortSetupTimer and _frxt_dispatch
happens quickly enough. However it can be reproduced on an emulator
if the tick period is set to 1ms.

Add an explicit call to portDISABLE_INTERRUPTS in xPortStartScheduler
to guarantee that _frxt_dispatch doesn't run with interrupts enabled.
This is similar to the esprv_intc_int_set_threshold(1); call in
RISC-V version of port.c.
2021-12-30 18:00:59 +08:00
9d73448272 Fix copyright headers for few include files 2021-12-28 14:29:33 +05:30
530a06cf61 bugfix: Conflicting declaration error with include<esp_efuse.h>, and Unified secure_boot.h include guard to "pragma once". 2021-12-28 14:29:28 +05:30
214d62b9ad Merge branch 'bugfix/install_key_refactor_v4.4' into 'release/v4.4'
esp_wifi: Refactor key install code(backport v4.4)

See merge request espressif/esp-idf!16532
2021-12-24 11:48:51 +00:00
d57b946bbf esp_wifi: Refactor key install code 2021-12-24 11:58:18 +08:00
f9ab0ac458 Merge branch 'feature/usb-msc_v4.4' into 'release/v4.4'
USB MSC class (v4.4)

See merge request espressif/esp-idf!16530
2021-12-24 03:48:29 +00:00
84ac488837 Merge branch 'bugfix/alarm_update_invalid_v4.4' into 'release/v4.4'
timer: stop alarm if alarm value doesn't change in ISR callback (v4.4)

See merge request espressif/esp-idf!16524
2021-12-24 03:48:10 +00:00
3171667845 Merge branch 'bugfix/rtc_section_alignment_v4.4_2' into 'release/v4.4'
System: fix RTCFAST section alignment (v4.4)

See merge request espressif/esp-idf!16517
2021-12-24 03:47:02 +00:00
3b4c2b8281 Merge branch 'bugfix/doc_for_ipc_isr_v4.4' into 'release/v4.4'
esp_ipc: Update documentation and API descriptions (v4.4)

See merge request espressif/esp-idf!16032
2021-12-24 03:35:54 +00:00
11cbcdf46a Merge branch 'bugfix/wpa3_memory_leak_v4.4' into 'release/v4.4'
esp_wifi: Fixes memory leak in wpa3.

See merge request espressif/esp-idf!16528
2021-12-24 03:27:31 +00:00
204aa05d0b USB: added MSC Host Driver with VFS support
Closes https://github.com/espressif/esp-idf/issues/6401
2021-12-23 18:30:24 +01:00
88acf66506 Merge branch 'bugfix/freemodbus_timer_struct_not_initialized' into 'release/v4.4'
freemodbus: fixed timer config struct not initialized issue (v4.4)

See merge request espressif/esp-idf!16117
2021-12-23 17:15:00 +00:00
e093575e39 freemodbus: fixed timer config struct not initialized issue (v4.4) 2021-12-23 17:15:00 +00:00
ec554944b7 Merge branch 'feature/backport/usb_host/cdc_driver' into 'release/v4.4'
USB: Add CDC-ACM subclass host driver (backport v4.4)

See merge request espressif/esp-idf!16363
2021-12-23 17:02:33 +00:00
7cd52401b0 esp_wifi: Fixes memory leak in wpa3. 2021-12-23 19:05:03 +05:30
5b80dd44be Merge branch 'feature/gdma_iram_interrupt_v4.4' into 'release/v4.4'
gdma: support IRAM interrupt (v4.4)

See merge request espressif/esp-idf!15993
2021-12-23 12:50:22 +00:00
9f5c6f287e Merge branch 'feature/update_adc_cali_due_to_efuse_version_change_v4.4' into 'release/v4.4'
adc: update s3 adc calibration efuse version (v4.4)

See merge request espressif/esp-idf!16357
2021-12-23 12:49:11 +00:00
81f81b97c3 Merge branch 'feature/adc_dma_driver_4.4' into 'release/v4.4'
adc: dma driver (v4.4)

See merge request espressif/esp-idf!16437
2021-12-23 12:48:47 +00:00
9a42760b22 Merge branch 'feature/posix_compat_functions_v4.4' into 'release/v4.4'
newlib: implement posix_memalign, sysconf, realpath (v4.4)

See merge request espressif/esp-idf!16464
2021-12-23 11:20:54 +00:00
66dd3dade9 Merge branch 'bugfix/ldgen_plus_in_archive_name_v4.4' into 'release/v4.4'
ldgen: allow + sign in archive names (v4.4)

See merge request espressif/esp-idf!16467
2021-12-23 11:15:47 +00:00
b0122177b7 timer: stop alarm if alarm value doesn't change in ISR handler
Alarm will be disabled by hardware when alarm event happend.
In the ISR, if auto-reload is enabled, we should re-enable the alarm.
If the alarm target value is changed in user's callback,
the alarm will be reenabled as well.

Closes https://github.com/espressif/esp-idf/issues/7001
Closes https://github.com/espressif/esp-idf/issues/8095
2021-12-23 18:58:43 +08:00
ec380d04b2 Merge branch 'refactor/fun_pointer_opi_v4.4' into 'release/v4.4'
opi_flash: Add a function pointer for opi required registers(backport v4.4)

See merge request espressif/esp-idf!16359
2021-12-23 09:24:18 +00:00
61149302e5 Merge branch 'bugfix/fix_spp_open_err_bda_v4.4' into 'release/v4.4'
Component_bt/Fix SPP acceptor open with wrong remote address[backport 4.4]

See merge request espressif/esp-idf!16519
2021-12-23 09:23:33 +00:00
1ec46ad3b8 adc: support adc dma driver on all chips 2021-12-23 17:13:46 +08:00
6279f9eb62 Merge branch 'bugfix/fix_heap_memory_corruption_v4.4' into 'release/v4.4'
Heap: Fix a possible bug in the TLSF allocator (backport v4.4)

See merge request espressif/esp-idf!16507
2021-12-23 03:29:45 +00:00
7f48664eda Merge branch 'feature/mbedtls-2.16.12-integration_v4.4' into 'release/v4.4'
mbedtls: upgrade to release v2.16.12 (v4.4)

See merge request espressif/esp-idf!16483
2021-12-23 03:26:17 +00:00
cb2906c7b2 Merge branch 'bugfix/fix_blufi_encryption_fail_v4.4' into 'release/v4.4'
components/bt: fix blufi encryption fail(backport release/v4.4)

See merge request espressif/esp-idf!16314
2021-12-23 03:23:24 +00:00
3390caf994 fix SPP open with wrong remote bd_addr 2021-12-23 10:02:39 +08:00
60386410ae System: fix RTCFAST section alignment
This bugfix contains 3 fixes:
1. .rtc_dummy section is removed (not needed for C3)
2. .rtc_text section is padded with 16B for possible CPU prefetch
3. .rtc_text section is aligned to 4B boundary to comply with PMS Memprot requirements
2021-12-22 21:58:20 +01:00
ba50a4e25e Merge branch 'bugfix/stdatomic_sync_op_and_fetch_v4.4' into 'release/v4.4'
newlib: stdatomic: implement missing "op_fetch", "nand" builtins (v4.4)

See merge request espressif/esp-idf!16465
2021-12-22 12:44:09 +00:00
62322caf38 Merge branch 'contrib/github_pr_7966_v4.4' into 'release/v4.4'
Changed argument pointer to correct data (GitHub PR) (v4.4)

See merge request espressif/esp-idf!16423
2021-12-22 12:42:27 +00:00
3051ad2159 components/bt: fix blufi encryption fail 2021-12-22 20:40:48 +08:00
710883d9bf Merge branch 'bugfix/scannable_adv_duration_estimation_v4.4' into 'release/v4.4'
[Coexistence]: fixed BLE scannable extended adv performance issue in case of Wi-Fi coexistence(backport v4.4)

See merge request espressif/esp-idf!16476
2021-12-22 12:38:17 +00:00
af429e56bb Merge branch 'bugfix/esp_eth_start_tx_buff_v4.4' into 'release/v4.4'
Fixed ESP32 EMAC driver `insufficient TX buffer size` (v4.4)

See merge request espressif/esp-idf!16497
2021-12-22 12:36:40 +00:00
a15bac6b5c Merge branch 'docs/fix_typo_in_header_file' into 'release/v4.4'
docs: Fix typo in sdmmc_cmd.h and inconsistency in spi_master.h (backport release/v4.4)

See merge request espressif/esp-idf!16382
2021-12-22 12:34:05 +00:00
451a173960 Merge branch 'bugfix/idf_exe_dll_deps_v4.4' into 'release/v4.4'
tools: fix idf_exe dependency on vcruntime140.dll, move it out of IDF (v4.4)

See merge request espressif/esp-idf!16352
2021-12-22 12:29:58 +00:00
255ca3d18e Merge branch 'feature/cmake_linux_arm64_v4.4' into 'release/v4.4'
tools: updates for linux-arm64 (aarch64) platform (v4.4)

See merge request espressif/esp-idf!16353
2021-12-22 12:29:33 +00:00
abc7365777 Merge branch 'docs/pthread_rw_lock' into 'release/v4.4'
Docs: documentation about reader-writer-lock impl (v4.4)

See merge request espressif/esp-idf!16148
2021-12-22 12:29:19 +00:00
07221ebaf5 Merge branch 'bugifx/freertos_missing_api_config_v4.4' into 'release/v4.4'
freertos: Add missing INCLUDE_ configurations for some functions (v4.4)

See merge request espressif/esp-idf!16267
2021-12-22 12:28:35 +00:00
c2a71ce5c6 Merge branch 'feature/mbedtls_dynamic_memory_v4.4' into 'release/v4.4'
fix(mbedtls): fix compiling error when open MBEDTLS_SSL_PROTO_DTLS and disable...(backport v4.4)

See merge request espressif/esp-idf!16472
2021-12-22 12:27:27 +00:00
f158a0d538 newlib: implement posix_memalign, sysconf, realpath
Closes https://github.com/espressif/esp-idf/issues/6119
Closes https://github.com/espressif/esp-idf/issues/7798
2021-12-22 10:54:54 +01:00
0b43544a24 Tools: Load tool versions automatically for IDF Tools tests 2021-12-22 10:31:17 +01:00
155de9c49e Heap: Add a target test to check that TLFS allocates the requested size 2021-12-22 14:06:41 +08:00
09db8845c6 Heap: Fix a possible bug in the TLSF allocator
Fix a bug that could return a chunk of memory smaller than requested,
easily leading to a memory corruption, when the required memory alignment
passed to the allocator is 4.
2021-12-22 14:06:41 +08:00
5f5f8bd64e Merge branch 'bugifx/nimble_timer_memory_leak_v4.4' into 'release/v4.4'
[NimBLE]: Fixed memory leak of timer during NimBLE Host start-stop process(backport v4.4)

See merge request espressif/esp-idf!16445
2021-12-22 05:45:23 +00:00
02c7dbab81 Merge branch 'ci/upload_build_example_for_release_test_4.4' into 'release/v4.4'
ci: preserve artifacts for local test apps (4.4)

See merge request espressif/esp-idf!16291
2021-12-22 05:44:01 +00:00
775f2886cc Merge branch 'bugfix/fix_rx_fragment_error_issue_v4.4' into 'release/v4.4'
esp_wifi: fix fragment issue and PMF compatible for faulty APs(Backport v4.4)

See merge request espressif/esp-idf!16390
2021-12-22 05:40:19 +00:00
74ba1175b6 Fixed ESP32 EMAC driver insufficient TX buffer size which could followed esp_eth_stop and esp_eth_start sequence 2021-12-21 14:04:55 +01:00
c91afab332 fix(mbedtls): fix compiling error when open MBEDTLS_SSL_PROTO_DTLS and disable MBEDTLS_SSL_PROTO_DTLS when open MBEDTLS_DYNAMIC_BUFFER 2021-12-21 16:31:47 +08:00
3e3e1a9a9d mbedtls: upgrade to release v2.16.12
For release notes, please refer to:
https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.12
2021-12-21 13:58:40 +05:30
d0b465c7cd mbedtls: small documentation update 2021-12-21 13:58:40 +05:30
8152978d73 component/bt: fixed coexistence scannable extended adv performance issue 2021-12-21 12:43:33 +08:00
bcd47fa0cc component/bt/host/nimble: fixed memory leak due to timer not destroyed during NimBLE host start-stop 2021-12-21 12:31:42 +08:00
d037359359 Merge branch 'bugfix/static_analysis_fixes_v4.4' into 'release/v4.4'
ESP_WIFI: Remove static analysis warnings(backport v4.4)

See merge request espressif/esp-idf!16333
2021-12-21 04:11:22 +00:00
187f47d232 Merge branch 'feature/support_ble_direct_ind_low_adv_v4.4' into 'release/v4.4'
components/bt: Support low duty cycle directed advertising(backport release/v4.4)

See merge request espressif/esp-idf!16377
2021-12-21 04:07:13 +00:00
c50eec53d1 Merge branch 'bugfix/fix_spp_listen_err_v4.4' into 'release/v4.4'
Component_bt/Fix SPP cannot malloc slot bugs[backport v4.4]

See merge request espressif/esp-idf!16383
2021-12-21 04:06:40 +00:00
a650995a2e Merge branch 'bugfix/bt_enc_proc_finish_v4.4' into 'release/v4.4'
bt/bugfix: ACL Rx data is sent to host before enc change event

See merge request espressif/esp-idf!16424
2021-12-21 04:06:22 +00:00
8529a1da35 Merge branch 'bugfix/wpa_supplicant_logs_release_v4.4' into 'release/v4.4'
esp_wifi: Change the verbosity of wpa_supplicant logs (Backport v4.4)

See merge request espressif/esp-idf!16340
2021-12-21 04:03:17 +00:00
f01fa89404 Merge branch 'mesh/bugfix_fix_no_ip_issue_v4.4' into 'release/v4.4'
esp_wifi_mesh: fix the device can not receive IP_EVENT_STA_GOT_IP when the router restarted(backport_v4.4)

See merge request espressif/esp-idf!16343
2021-12-21 04:02:14 +00:00
518f94270b Merge branch 'bugfix/v4.4-otbr-crash' into 'release/v4.4'
openthread: update libraries to v4.4 release

See merge request espressif/esp-idf!16447
2021-12-21 04:01:38 +00:00
f72baac109 freertos: Add missing INCLUDE_ configurations for some functions
This commit adds missing INCLUDE_ configurations to FreeRTOSConfig.h for
the following functions:

- xTaskAbortDelay()
- xTaskGetHandle()

Unit tests for these functions were also added.

Closes https://github.com/espressif/esp-idf/issues/7902
2021-12-21 10:54:28 +08:00
fbdb781fcb ldgen: allow + sign in archive names
Closes https://github.com/espressif/esp-idf/issues/8073
2021-12-21 02:16:32 +01:00
c8c65a2854 newlib: stdatomic: implement missing "op_fetch", "nand" builtins
* Adds implementations of __{atomic,sync}_nand_fetch_n. These builtins
  were implemented for other operations but were not defined for NAND.
* Adds implementation of __atomic_OP_fetch_n for all OPs.
* Adds implementation of __sync_OP_and_fetch_n for all OPs.

Reported in https://github.com/espressif/arduino-esp32/issues/5948
2021-12-21 02:15:45 +01:00
9688cf5c04 openthread: update libraries to v4.4 release
Fixes the library mismatch and border router crash issue in v4.4
release.
2021-12-20 16:16:10 +08:00
63ac2111ce esp_ipc: Update documentation and API descriptions
This commit updates the documentation and API descriptions of
the esp_ipc and esp_ipc_isr features.
2021-12-20 12:41:10 +08:00
a79dc75f0a Merge branch 'bugfix/fix_variable_on_stack_bug_in_seg_slave_example_v4.4' into 'release/v4.4'
spi_slave_hd: fix stack variable bug in seg_slave example (v4.4)

See merge request espressif/esp-idf!16388
2021-12-16 10:17:56 +00:00
161d7ee25a Merge branch 'bugfix/mcpwm_ll_missing_type_conversion_v4.4' into 'release/v4.4'
mcpwm: fix implicit conversion in LL function (v4.4)

See merge request espressif/esp-idf!16407
2021-12-16 10:16:03 +00:00
a2b88eb1a0 Merge branch 'bugfix/fix_adc1_chan8_9_not_defined_on_s3_v4.4' into 'release/v4.4'
adc: fix adc1 channel 8 and 9 not defined bug on s3 (v4.4)

See merge request espressif/esp-idf!16399
2021-12-16 10:14:17 +00:00
431bf72295 bt/bugfix: ACL Rx data is sent to host before enc change event 2021-12-16 15:41:31 +05:30
04fab6f1ac Fixed pcap summary print of 802.11 frame
802.11 Packet Type and Packet Subtype is now correctly decoded
2021-12-16 10:28:30 +01:00
762031424b Changed argument pointer to correct data 2021-12-16 10:28:30 +01:00
b67c833c88 esp_wifi_mesh: fix the device can not receive IP_EVENT_STA_GOT_IP when the router restarted 2021-12-16 17:23:55 +08:00
23e4c12a86 mcpwm: fix implicit conversion in LL function
Closes https://github.com/espressif/esp-idf/issues/8066
2021-12-15 10:24:42 +08:00
2aed35b804 adc: fix adc1 channel 8 and 9 not defined bug on s3 2021-12-14 20:10:47 +08:00
40ae2037bc esp_wifi: Change the verbosity of wpa_supplicant log. 2021-12-14 14:29:09 +05:30
416b3b9465 allow for minimal scope of wifi_init_config_t
With this change one can use the default config as a variable with minimal scope: esp_wifi_init(&(wifi_init_config_t)WIFI_INIT_CONFIG_DEFAULT())
2021-12-14 12:46:37 +08:00
c42db9308f docs: Update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file 2021-12-14 12:46:11 +08:00
094b3dba33 esp_wifi: fix fragment issue and PMF compatible for faulty APs
1. fix(pp): fix fragment plt loss when 2td pn compare with 1th pn
2. pmf allow keyindex in big endian format to workaround faulty APs
3. docs: update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file
4. allow for minimal scope of wifi_init_config_t
2021-12-14 12:42:25 +08:00
39ed1b2862 spi_slave_hd: fix stack variable bug in seg_slave example
Closes https://github.com/espressif/esp-idf/issues/7163
2021-12-14 12:36:40 +08:00
b8602d4bf9 fix SPP server bugs when the BTC layer can not allocate a slot for the listen port 2021-12-14 11:03:57 +08:00
215f8fe68e docs: fix typo in header files 2021-12-14 11:01:17 +08:00
a628ef5be0 components/bt: Fix high duty cycle directed advertising will not be stopped when timeout 2021-12-14 09:32:34 +08:00
5086d6f3d2 components/bt: Support low duty cycle directed advertising 2021-12-14 09:32:15 +08:00
4a429d59ac adc: update adc calibration efuse version
ADC calibration scheme and algorithm are not changed. Only the eFuse bit BLOCK1_VERSION is changed. This MR updated the logic to recognize the adc efuse version
2021-12-13 13:03:23 +08:00
e04eae6659 usb: Add USB host CDC-ACM class driver 2021-12-10 10:04:16 +01:00
a9a5894fe9 opi_flash: Add a function pointer for opi required registers 2021-12-10 15:11:33 +08:00
36934317b0 tools: don't install binutils-esp32ulp on aarch64
Once new binutils-esp32ulp is made and aarch64 artifacts are added,
will add these tools back.

Related to https://github.com/espressif/esp-idf/issues/6432
2021-12-09 17:36:00 +01:00
4949d55ea0 tools: add CMake for linux-arm64 (aarch64) platform
Allows installing cmake on aarch64 linux platforms. Also necessary
when building IDF docker image on macOS aarch64.

Part of https://github.com/espressif/esp-idf/issues/6432
2021-12-09 17:36:00 +01:00
8b4b2234e4 tools: upgrade idf_exe to 1.0.3
https://github.com/espressif/idf_py_exe_tool/releases/tag/v1.0.3
2021-12-09 17:24:43 +01:00
07644ee5cd tools: move idf_exe out of IDF
Source code moved into https://github.com/espressif/idf_py_exe_tool,
so that releases can be built in CI and hosted on Github.
2021-12-09 17:24:43 +01:00
f23dcd3555 Merge branch 'bugfix/fix_phy_enable_watchdog_timeout_issue_4.4' into 'release/v4.4'
Fix the ble task watchdog timeout issue

See merge request espressif/esp-idf!16287
2021-12-09 08:32:34 +00:00
a39af9b000 Merge branch 'bugfix/s3_rtc_ram_deepsleep_test_v4.4' into 'release/v4.4'
ci: fix "can set sleep wake stub from stack in RTC RAM" test case failure (v4.4)

See merge request espressif/esp-idf!16341
2021-12-09 08:25:04 +00:00
25873a668a Merge branch 'bugfix/remove_PIP_USER_v4.4' into 'release/v4.4'
tools: Add check for PIP_USER variable (backport v4.4)

See merge request espressif/esp-idf!16338
2021-12-09 08:11:55 +00:00
d730c84038 ci: fix "can set sleep wake stub from stack in RTC RAM" test case failure
"can set sleep wake stub from stack in RTC RAM" would randomly fail on S3 due to stack overflow.

Fixed wrong usage of stack size and slightly increased it.
2021-12-09 13:59:30 +08:00
fd2000184a ci: add test dir examples/bluetooth/hci/controller_hci_uart_esp32 2021-12-09 13:48:38 +08:00
4d73d4db36 example: build ble_mesh_console example on c3 and s3 as well 2021-12-09 13:48:38 +08:00
4a11276cf4 ci: preserve artifacts for local test apps 2021-12-09 13:48:38 +08:00
e104dd7f27 Merge branch 'bugfix/fix_wifi_bugs_v4.4' into 'release/v4.4'
esp_wifi: fix wifi bugs (Backport v4.4)

See merge request espressif/esp-idf!16278
2021-12-08 15:46:40 +00:00
1e39970e91 tools: Add check for PIP_USER variable
Closes https://github.com/espressif/esp-idf/issues/7910
2021-12-08 16:25:17 +01:00
bd650062ca Merge branch 'feature/update_rtc_memory_heap_caps' into 'release/v4.4'
heap: update RTC memory heap caps (backport v4.4)

See merge request espressif/esp-idf!15941
2021-12-08 13:35:18 +00:00
141c1cd004 Merge branch 'bugfix/crypto_allocate_lldesc_v4.4' into 'release/v4.4'
crypto: dont create DMA descriptors on the stack (v4.4)

See merge request espressif/esp-idf!16323
2021-12-08 13:31:41 +00:00
a77ab8c03e ESP_WIFI: Remove static analysis warnings 2021-12-08 18:03:43 +05:30
c190ab1830 Merge branch 'fix/remove_warning_when_disabling_rom_dl_mode_v4.4' into 'release/v4.4'
secure_boot: Fix warning when UART ROM DL mode is disabled (v4.4)

See merge request espressif/esp-idf!16228
2021-12-08 11:56:15 +00:00
9c686ff341 Update esp32c3 and esp32s3 phy lib and bb lib
Fix the ble task watchdog timeout issue caused by phy enable when exit modem sleep.
2021-12-08 19:16:28 +08:00
fe5ee1041c Merge branch 'bugfix/minimal_stacksize_watchpoint_aware_4.4' into 'release/v4.4'
[freertos]: Changed minimal stack size to regard watchpoint usage (backport v4.4)

See merge request espressif/esp-idf!16303
2021-12-08 10:28:05 +00:00
f2db4c7520 Merge branch 'bugfix/ringbuf_send_semaphore_release_order_v4.4' into 'release/v4.4'
esp_ringbuf: Fix order of semaphore release in xRingbufferSend (v4.4)

See merge request espressif/esp-idf!16229
2021-12-08 10:26:12 +00:00
b4a32e3812 Merge branch 'bugfix/html_redirect_v4.4' into 'release/v4.4'
docs: fix html redirects not working (v4.4)

See merge request espressif/esp-idf!16284
2021-12-08 10:25:47 +00:00
a6e31652b8 Merge branch 'feature/mbedtls_dynamic_memory_v4.4' into 'release/v4.4'
feat(mbedtls): modify __wrap_mbedtls_ssl_setup to decrease SSL peak heap cost(backport v4.4)

See merge request espressif/esp-idf!16275
2021-12-08 10:21:04 +00:00
7d7f91e1d8 Merge branch 'docs/update_the_pinout_figure_of_esp32_devkitc_v4.4' into 'release/v4.4'
docs: update the module on esp32-devkitc from esp32-wrover to esp32-wroom (v4.4)

See merge request espressif/esp-idf!15963
2021-12-08 10:15:54 +00:00
a89ff2677b Merge branch 'bugfix/fix_esp32h2_efuse_get_ext_mac_v4.4' into 'release/v4.4'
efuse_table_gen: Fixes wrong joining fields with omitted names (v4.4)

See merge request espressif/esp-idf!15735
2021-12-08 10:12:25 +00:00
67fcfc2e02 Merge branch 'feature/freertos_try_enter_critical_v4.4' into 'release/v4.4'
freertos: Add portTRY_ENTRY_CRITICAL() and deprecate legacy spinlock fucntions (v4.4)

See merge request espressif/esp-idf!16040
2021-12-08 10:10:17 +00:00
ff3922d217 Merge branch 'bugfix/fix_select_timeout_v4.4' into 'release/v4.4'
VFS: `select` function's timeout is now POSIX compliant (and fix eventfd example) (backport v4.4)

See merge request espressif/esp-idf!16189
2021-12-08 08:32:42 +00:00
2a2d8f5cbc efuse_example_test: Fix the example test
*Unify the log messages when UART ROM Download mode is kept enabled
2021-12-08 16:11:59 +08:00
2c0081b286 secure_boot: Fix warning when UART ROM DL mode is disabled
*Additionally use updated calls to enable rom secure download mode
2021-12-08 16:11:59 +08:00
a1ee43fe9d crypto: also apply cache writeback/invalidate for SPIRAM_USE_MEMMAP
Closes https://github.com/espressif/esp-idf/issues/7944
2021-12-08 16:10:19 +08:00
3b3826b61c crypto: allocate all DMA descriptors to DMA capable memory.
These were previously placed on the stack, but the stack could be placed in
RTC RAM which is not DMA capable.
2021-12-08 16:10:18 +08:00
36e1d1c180 Merge branch 'bugfix/wifi_netif_on_off_cycle_race_v4.4' into 'release/v4.4'
wifi: Fix race conditon invoking invalid callback on deinit (v4.4)

See merge request espressif/esp-idf!16309
2021-12-08 07:31:13 +00:00
feee6a2f36 Merge branch 'bugfix/eth_emac_reset_dma_desc_v4.4' into 'release/v4.4'
esp-eth: emac: Reset Tx DMA channel owner on init (v4.4)

See merge request espressif/esp-idf!16008
2021-12-08 07:18:42 +00:00
f4e5948102 Merge branch 'bugfix/lcd_rgb_pclk_default_to_low_v4.4' into 'release/v4.4'
lcd: rgb pclk idle default to low && RMT IR protocol example for esp32s3 (v4.4)

See merge request espressif/esp-idf!16211
2021-12-08 07:01:08 +00:00
1b7cc59b10 wifi: Fix race conditon invoking invalid callback on deinit
Closes https://github.com/espressif/esp-idf/issues/7579
2021-12-08 07:14:08 +01:00
32077601c4 bugfix (freertos): Changed minimal stack size to regard watchpoint usage 2021-12-08 11:29:09 +08:00
68fc49c4d2 spi-slave: fix single-board: hd test failing due to DMA buffers ending up in PSRAM 2021-12-08 10:59:26 +08:00
d1dc428820 docs: fix html redirects not working
HTML redirects for docs broke during migration to esp-docs.
2021-12-07 09:12:46 +08:00
d7599a53b8 esp_wifi: Update wifi lib
1. Fix FTM failures after repeated operations
2. Update Mexico channel refer to FCC
3. Mesh: fix the issue that layer2 node connect to lower-layer node when FIXED-ROOT root disappeared
4. Decouple softap and 8684 support
2021-12-06 17:45:57 +08:00
f490adf800 esp_wifi: support station only mode for code size down 2021-12-06 17:34:56 +08:00
440b0001d0 esp_wifi: Reset event bits in ftm example to avoid repeated failures
Closes https://github.com/espressif/esp-idf/pull/7773
2021-12-06 17:34:00 +08:00
03b7ffdf4a feat(mbedtls): modify __wrap_mbedtls_ssl_setup to decrease SSL peak heap cost 2021-12-06 17:07:11 +08:00
220a91ae30 Merge branch 'feature/adds_fault_injection_protection_for_check_anti_rollback_v4.4' into 'release/v4.4'
bootloader_support: Adds fault injection protection for check_anti_rollback (v4.4)

See merge request espressif/esp-idf!16179
2021-12-06 04:03:11 +00:00
6affb3da3c Merge branch 'bugfix/scheduler_state_query_thread_safety_v4.4' into 'release/v4.4'
freertos: fix thread safety for checking scheduler state (v4.4)

See merge request espressif/esp-idf!16126
2021-12-06 04:02:53 +00:00
3211346669 Merge branch 'bugfix/hardware_mpi_fallback_issue_v4.4' into 'release/v4.4'
mbedtls: fix hardware MPI (bignum) related regression (v4.4)

See merge request espressif/esp-idf!16236
2021-12-06 04:00:36 +00:00
0c8391acb1 Merge branch 'reduce_bootup_time_when_using_usb-serial-jtag_v4.4' into 'release/v4.4'
rtc_clk: reduce bootup time when using usb-serial-jtag(backport v4.4)

See merge request espressif/esp-idf!16260
2021-12-06 04:00:01 +00:00
b458a60791 Merge branch 'bugfix/fix_can_not_find_mac_addr_error_mr_4.4' into 'release/v4.4'
fix can not find mac addr error

See merge request espressif/esp-idf!16145
2021-12-06 03:37:24 +00:00
5e9c085ae9 Merge branch 'bugfix/xStreamBufferReset_crashing_v4.4' into 'release/v4.4'
FreeRTOS: Fix xStreamBufferReset function always crashing (backport v4.4)

See merge request espressif/esp-idf!16170
2021-12-06 03:36:51 +00:00
faa6ec04f2 Merge branch 'feature/update_option_len_default_value_v4.4' into 'release/v4.4'
lw-ip: Update LWIP_DHCP_OPTIONS_LEN default value when LWIP_DHCP_DISABLE_VENDOR_CLASS_ID disabled(backport v4.4)

See merge request espressif/esp-idf!16253
2021-12-06 03:36:03 +00:00
7ae887dead rmt: update ir example to work with esp32s3 out of box 2021-12-06 10:02:55 +08:00
e311554554 lcd: rgb pclk idle default to low 2021-12-06 10:02:55 +08:00
1d6c95000b reduce bootup time when using usb-serial-jtag 2021-12-03 20:50:22 +08:00
3ebb1a2a00 lwip: Update LWIP_DHCP_OPTIONS_LEN default value when LWIP_DHCP_DISABLE_VENDOR_CLASS_ID disabled
Closes https://github.com/espressif/esp-idf/issues/7742
2021-12-03 17:23:35 +08:00
4fca21b67c Merge branch 'feature/remove_component_manager_tests_v4.4' into 'release/v4.4'
ci: Remove component manager test from build system tests (v4.4)

See merge request espressif/esp-idf!16106
2021-12-02 12:09:49 +00:00
a28e0bf064 mbedtls: remove wrap from component.mk as well
Note: This was not required in original MR, as master branch does
not support GNU Make.
2021-12-02 17:13:31 +05:30
2af37752fe Merge branch 'docs/update_s3_wroom_datasheet_link_backport_v4.4' into 'release/v4.4'
Fix link to esp32-s3-wroom-1 datasheet link (backport v4.4)

See merge request espressif/esp-idf!16093
2021-12-02 09:37:19 +00:00
7fe9d41e33 esp_bignum: move check for supported MPI bits at start of API
This can allow hardware MPI API to return as soon as it identifies
that it can handle require bitlength operation.
2021-12-02 15:07:08 +05:30
9cb4948a23 mbedtls: update mbedtls submodule pointer for MPI API change 2021-12-02 15:07:08 +05:30
99c9637e9b mbedtls: fix hardware MPI (bignum) related regression
In commit de22f3a4e5, combination of
hardware and software MPI (bignum) related approach was used to
work around chip (e.g. ESP32-C3) limitation of max 3072 bits support.

This was done using linker "--wrap" flag but since the relevant API is
being used in same translation (compilation unit), hardware mode was not
getting used in some cases (e.g., RSA key generation).

This commit modified internal mbedTLS API and makes software+hardware
combination deterministic.
2021-12-02 15:07:08 +05:30
e0e6523c09 mbedtls: update kconfig help to correct on supported MPI bits 2021-12-02 15:07:07 +05:30
c25408a009 docs:update the link to esp32-s3-wroom-1 datasheet 2021-12-02 16:51:23 +08:00
288b2a22a5 Examples/PPPoS: Add troubleshooting to correctly power modem
Closes https://github.com/espressif/esp-idf/issues/7807
2021-12-02 09:09:23 +01:00
b98a2a41e0 Merge branch 'bugfix/ksz8081_loopback' into 'release/v4.4'
KSZ8081 Loopback Callback Fix

See merge request espressif/esp-idf!16081
2021-12-02 07:29:31 +00:00
d5c607c54a Merge branch 'bugfix/dm9051_tx_throughput_rate_optimization_v4.4' into 'release/v4.4'
esp_eth: optimize dm9051 Tx throughput(v4.4)

See merge request espressif/esp-idf!15885
2021-12-02 06:51:22 +00:00
92829f66c8 esp_ringbuf: Fix assertion xQueueGenericSend queue.c:818
The release of the semaphore indicating the item was successfully sent must be the last semaphore released.  The receiver may be in another task and may delete the Ringbuffer (such as with a return code across tasks design pattern) if they are through with the Ringbuffer.

The function xRingbufferSendAcquire followed by xRingbufferSendComplete had the semaphores released in the proper order and that same pattern should have been used in xRingbufferSend and xRingbufferSendFromISR.  This commit fixes this order.

Issue (IDFGH-6030) #7716 describes the problem in more detail.

Closes IDFGH-6030, https://github.com/espressif/esp-idf/issues/7716
Closes IDFGH-6036, https://github.com/espressif/esp-idf/pull/7721
2021-12-02 10:25:06 +05:30
762689de86 ci: Fix build system tests to clean the dir 2021-12-01 18:19:15 +01:00
aa96a98c0c Merge branch 'bugfix/riscv_fix_vector_mcause_v4.4' into 'release/v4.4'
RISC-V: fix usage of special register when interrupts are enabled (backport v4.4)

See merge request espressif/esp-idf!16187
2021-12-01 04:20:54 +00:00
66c547e5ab Merge branch 'bugfix/ringbuf_read_pointer_wrap_v4.4' into 'release/v4.4'
ringbuf: Fix bug where comparision between a signed and unsigned operand resulted in incorrect free size for no-split/allow-split buffers (v4.4)

See merge request espressif/esp-idf!15881
2021-12-01 04:18:48 +00:00
3a1e8a9810 Merge branch 'bugfix/avoid-exception-messages-while-export_v4.4' into 'release/v4.4'
Avoid exception messages while autocomplete initialization in export.sh (v4.4)

See merge request espressif/esp-idf!16199
2021-11-30 15:48:55 +00:00
376514480d Merge branch 'feature/backport_v4.4_add_get_errno_api_for_http_client' into 'release/v4.4'
esp_http_client: add a get HTTP client session errno API for esp_http_client(backport v4.4)

See merge request espressif/esp-idf!16195
2021-11-30 12:23:31 +00:00
ee881e3f96 Avoid exception messages while autocomplete initialization in export.sh 2021-11-30 12:42:53 +01:00
8848462d50 Merge branch 'nimble/add_throughput_example_v4.4' into 'release/v4.4'
NimBLE: Add NimBLE throughput demo examples (v4.4)

See merge request espressif/esp-idf!16138
2021-11-30 08:02:35 +00:00
5c08cd3fe1 esp_http_client: add a get HTTP client session errno API for esp_http_client(backport v4.4) 2021-11-30 15:26:48 +08:00
a96b8e151d Add the feature that switch random address to origin mac addr in the ADV
report data.
2021-11-30 14:24:52 +08:00
e91fd5ece9 Example: Fix eventfd example test and added a diagram to explain printed values 2021-11-30 12:01:43 +08:00
51e295b5c2 Merge branch 'bugfix/vfs-select-lock-latency-4.4' into 'release/v4.4'
vfs: reduce lock in vfs_select (v4.4)

See merge request espressif/esp-idf!16172
2021-11-30 03:56:08 +00:00
95eb17a61a Merge branch 'nimble_spp_v4.4' into 'release/v4.4'
NimBLE: BLE example for SPP service (v4.4)

See merge request espressif/esp-idf!16122
2021-11-30 03:54:44 +00:00
db6bc89b8c Merge branch 'bugfix/leedarson_v4.4' into 'release/v4.4'
component_bt: Fix some code logic errors (v4.4)

See merge request espressif/esp-idf!16016
2021-11-30 03:52:24 +00:00
cf21312d8d VFS: select function's timeout is now POSIX compliant
`select` function will now round up the timeout passed as a parameter (if any).
It  makes it POSIX compliant.

* Closes https://github.com/espressif/esp-idf/issues/7514
2021-11-30 11:51:46 +08:00
7cab983b86 RISC-V: fix usage of special register when interrupts are enabled 2021-11-30 11:45:18 +08:00
18612738db Merge branch 'docs/blink_update_supported_targets_on_readme_v4.4' into 'release/v4.4'
example: Update on the README file to change from ESP32-S3-Addax-1 to ESP32-S3-DevKitC-1 (v4.4)

See merge request espressif/esp-idf!15956
2021-11-29 20:40:51 +00:00
5f7037d143 bootloader: add anti-FI checks around secure version in anti-rollback scheme 2021-11-29 18:49:22 +05:30
26baeaca60 esp_eth: add loopback for ksz8081 2021-11-29 20:16:35 +08:00
ce7c936633 vfs: reduce lock in vfs_select 2021-11-29 17:32:43 +08:00
581f1c4550 FreeRTOS: Fix xStreamBufferReset function always crashing
This function resets the spinlock given as a parameter after taking it
(when entering the critical section). This then results in a panic once
it tries to exit the same critical section.

* Closes https://github.com/espressif/esp-idf/issues/7725
2021-11-29 15:31:30 +08:00
75fa6d7e3f Merge branch 'feature/add_coex_hci_command_v4.4' into 'release/v4.4'
Add hci command to set coexistence status (v4.4)

See merge request espressif/esp-idf!16053
2021-11-29 03:23:32 +00:00
a524bd85fd Merge branch 'bugfix/bootloader_utility_warnings_v4.4' into 'release/v4.4'
bootloader_support: Fix compiler warnings (v4.4)

See merge request espressif/esp-idf!16139
2021-11-26 13:32:28 +00:00
3c02b30a54 Merge branch 'bugfix/app_trace_tmo_init_v4.4' into 'release/v4.4'
startup: init timer before calling esp_apptrace_tmo_init (v4.4)

See merge request espressif/esp-idf!16136
2021-11-26 11:53:09 +00:00
8179e858a9 docs(pthread): documentation about reader-writer-lock impl 2021-11-26 16:21:03 +08:00
8fec43eecb Merge branch 'nimble/add_throughput_example' into 'master'
NimBLE throughput example: Changed write api to write without response

See merge request espressif/esp-idf!16138
2021-11-26 12:07:11 +05:30
19727b4968 Merge branch 'docs/examples_bluedroid_ble50_v4.4' into 'release/v4.4'
Readme for the bluedroid ble50 example with tutorial of walkthrough example (v4.4)

See merge request espressif/esp-idf!16099
2021-11-26 06:35:06 +00:00
fe91b306e4 Merge branch 'bugfix/multi_heap_get_info_impl_backport_v4.4' into 'release/v4.4'
heap: fix multi_heap_get_info_impl(backport v4.4)

See merge request espressif/esp-idf!16119
2021-11-26 05:44:49 +00:00
6f6538f053 bootloader_support: Fix unused-but-set-variable compiler warning
When building with BOOTLOADER_LOG_LEVEL lesser then VERBOSE, an error
code variable was being set but not consumed, resulting in a compiler
warning.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-26 01:34:42 -03:00
d21ef9b10a bootloader_support: Fix unused-variable compiler warning
Builds for every chip other than ESP32 resulted in a compiler warning
due to "drom_load_addr_aligned" and "irom_load_addr_aligned" not being
used, besides being possible to actually reuse them.
Furthermore, extended the logic for the other similar variables.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-26 01:34:40 -03:00
279e135c8f NimBLE throughput example: Add espressif license 2021-11-26 10:03:06 +05:30
76e3e3476e NimBLE throughput example: make multi target support readable 2021-11-26 10:03:06 +05:30
ed43a4eb50 NimBLE: Add throughput demo examples
- Added blecent_throughput(client) and bleprph_throughput(server) examples to
  demonstrate application throughput.
2021-11-26 10:03:06 +05:30
1ef94299a5 Merge branch 'nimble_spp' of ssh://gitlab.espressif.cn:27227/espressif/esp-idf into 'release/v4.4'
Nimble: Added BLE SPP Service

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

See merge request espressif/esp-idf!16122
2021-11-26 09:58:42 +05:30
b748053e2e startup: init timer before calling esp_apptrace_tmo_init 2021-11-25 23:58:36 +01:00
41906a8d31 freertos: fix thread safety for checking scheduler state
This issue was earlier fixed in commit 79e74e5d5f
but during migration to newer FreeRTOS release, it got introduced again.

This commit fixes thread safety issues with configASSERT() calls
regarding the value of uxSchedulerSuspended. A false negative
occurs if a context switch to the opposite core occurs in between
the getting the core ID and the assesment.

Relevant https://github.com/espressif/esp-idf/issues/4230
Closes https://github.com/espressif/esp-idf/issues/7726
Closes IDFGH-6041
2021-11-25 15:43:07 +05:30
02237e4b77 Merge branch 'bugfix/bt_assert_failed_when_interrupt_hlevel_disable_v4.4' into 'release/v4.4'
component/bt: fix assert fail when interrupt hlevel disable(backport release/v4.4)

See merge request espressif/esp-idf!16043
2021-11-25 06:30:08 +00:00
98a932d406 Merge branch 'feature/docker_build_use_git_mirror_v4.4' into 'release/v4.4'
ci: use LOCAL_GIT_MIRROR in docker build job, if set (v4.4)

See merge request espressif/esp-idf!16110
2021-11-25 05:33:42 +00:00
666218d753 heap: fix multi_heap_get_info_impl 2021-11-25 10:34:06 +08:00
ac6793c02a ci: use LOCAL_GIT_MIRROR in docker build job, if set
When the build runner has a local git mirror configured via
LOCAL_GIT_MIRROR variable, use that mirror when cloning IDF insider
the docker build job. Follows similar logic for
LOCAL_GITLAB_HTTPS_HOST, which is used for geo nodes.
2021-11-24 15:40:36 +01:00
adf61033a7 ci: Remove component manager test from build system tests
Component manager itself has a set of integration tests
that run against different ESP-IDF versions
2021-11-24 13:49:46 +01:00
426c79c7ad Readme for the bluedroid ble50 example with tutorial of walkthrough example. 2021-11-24 14:56:53 +05:30
4ce9678c2b Merge branch 'feature/json_schema_for_idf_size_v4.4' into 'release/v4.4'
tools: add json schema for idf_size (v4.4)

See merge request espressif/esp-idf!15959
2021-11-24 09:00:09 +00:00
c193371028 Merge branch 'bugfix/bootloader_debug_buffers_v4.4' into 'release/v4.4'
bootloader_support: Fix and re-enable bootloader_debug_buffer function (v4.4)

See merge request espressif/esp-idf!16073
2021-11-24 03:38:57 +00:00
18dc2cfcc2 bootloader_support: Fix and re-enable bootloader_debug_buffer function
The body of the bootloader_debug_buffer function was conditioned to
macros that were never defined, resulting in deactivated code.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-23 09:01:24 -03:00
d7995a650e component/bt: fix assert fail when interrupt hlevel disable 2021-11-23 19:50:54 +08:00
8539939c7d Merge branch 'bugfix/nimble_dirty_timer_handle_after_deinit_v4.4' into 'release/v4.4'
[NimBLE]: clear timer handler during de-initialization(backport for v4.4)

See merge request espressif/esp-idf!16028
2021-11-23 07:15:50 +00:00
e073663660 Merge branch 'bugfix/11kv_scan_event_removal_v4.4' into 'release/v4.4'
esp_wifi: Fixes related to 802.11kv (v4.4)

See merge request espressif/esp-idf!16034
2021-11-23 07:15:31 +00:00
09a892a44f Merge branch 'bugfix/sleep_wrong_log_lvl_v4.4' into 'release/v4.4'
Sleep: fix wrong debug level (backport v4.4)

See merge request espressif/esp-idf!16036
2021-11-23 07:15:02 +00:00
958d63a8d2 Merge branch 'bugfix/fix_static_check_error_mr_4.4' into 'release/v4.4'
Fix the high-impact issues from the code analysis report from customer.

See merge request espressif/esp-idf!16044
2021-11-23 07:14:41 +00:00
81e0c7f662 Merge branch 'bugfix/nvs_partition_encrypted_flag_compatibility_v4.4' into 'release/v4.4'
nvs: add config to ignore "encrypted" flag of nvs partitions (v4.4)

See merge request espressif/esp-idf!15920
2021-11-23 05:46:44 +00:00
a24ea59820 Add hci command to set coexistence status 2021-11-23 11:34:34 +08:00
d43f5af6ef Missing break in switch 2021-11-23 11:31:06 +08:00
c48dec0d44 Dereference null return value 2021-11-23 11:31:06 +08:00
74be458e62 already defined in bt_target.h 2021-11-23 11:31:06 +08:00
a946b6042a Dereference after null check 2021-11-23 11:31:06 +08:00
abbc552f5f Dereference before null check 2021-11-23 11:31:06 +08:00
86ea712aa4 Logically dead code 2021-11-23 11:31:06 +08:00
4345e15f23 Fix the high-impact issues from the code analysis report from customer.
For the CID10564,10384,10280,10098,10038,The memory was released in other place.
For the CID10365,it release the memory in the function when sent successfully.
For the CID10268,10011, we need not change the code.
2021-11-22 19:41:50 +08:00
c5efb55d43 freertos: Add portTRY_ENTRY_CRITICAL() and deprecate legacy spinlock fucntions
Add TRY_ENTRY_CRITICAL() API to all for timeouts when entering critical sections.
The following port API were added:
- portTRY_ENTER_CRITICAL()
- portTRY_ENTER_CRITICAL_ISR()
- portTRY_ENTER_CRITICAL_SAFE()

Deprecated legacy spinlock API in favor of spinlock.h. The following API were deprecated:
- vPortCPUInitializeMutex()
- vPortCPUAcquireMutex()
- vPortCPUAcquireMutexTimeout()
- vPortCPUReleaseMutex()

Other Changes:
- Added portMUX_INITIALIZE() to replace vPortCPUInitializeMutex()
- The assembly of the critical section functions ends up being about 50 instructions longer,
  thus the spinlock test pass threshold had to be increased to account for the extra runtime.

Closes https://github.com/espressif/esp-idf/issues/5301
2021-11-22 18:42:10 +08:00
2ca86a3eaf Sleep: fix wrong debug level
Fix usage of ESP_LOGD in sleep_modes.c which triggers a panic when
used in debug log level.

* Closes https://github.com/espressif/esp-idf/issues/7942
2021-11-22 16:32:21 +08:00
1780c7d8da esp_wifi: Remove scan done event for supplicant scans
Closes https://github.com/espressif/esp-idf/issues/7423
2021-11-22 13:37:42 +05:30
57dc6de613 wpa_supplicant: Fix compilation error when debug enabled
Closes https://github.com/espressif/esp-idf/issues/7789
2021-11-22 13:37:42 +05:30
e5091bb7af wpa_supplicant: Optimize BTM request scan 2021-11-22 13:37:42 +05:30
4aa2ca369b Merge branch 'ci/add_esp32s3_ssc_build_jobs_v4.4' into 'release/v4.4'
CI: add esp32s3 SSC build jobs

See merge request espressif/esp-idf!15910
2021-11-22 07:43:44 +00:00
81ce15f0e0 Merge branch 'bugfix/fix_esp32s3_usb_otg_v4.4' into 'release/v4.4'
esp_phy: fix esp32s3 phy work with USB-OTG issue(v4.4)

See merge request espressif/esp-idf!15914
2021-11-22 06:17:21 +00:00
7816b597a1 Merge branch 'bugfix/fix_modem_sleep_hw_error_mr_4.4' into 'release/v4.4'
fix modem sleep hw error

See merge request espressif/esp-idf!16017
2021-11-22 03:33:54 +00:00
9d67cd8ac6 [nimble]: clear timer handler during de-initialization 2021-11-22 11:17:23 +08:00
ddc44956bf Merge branch 'bugfix/esp32s3_esp_timer_test_failure_v4.4' into 'release/v4.4'
examples: esp_timer: disable secondary console for S3/C3 that can affect test timing (v4.4)

See merge request espressif/esp-idf!16021
2021-11-19 14:35:01 +00:00
997040222d examples: esp_timer: disable secondary console for S3/C3 that can affect test timing 2021-11-19 14:46:06 +05:30
f952b9f71b Merge branch 'feature/oocd_ver_upgrade_v4.4' into 'release/v4.4'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20211111' (v4.4)

See merge request espressif/esp-idf!15999
2021-11-19 08:56:24 +00:00
9b450e19da It is abnormal when getting the deep sleep state bit. So we need to check
the state again and run the "ble_master_soft_rst()" if neesed.
2021-11-19 15:54:20 +08:00
1c792fe57d Fix the issue of device name len limited 2021-11-19 15:50:18 +08:00
056ec73dd2 Merge branch 'bugfix/protocomm_nimble_allocation_v4.4' into 'release/v4.4'
Fix for potential allocation bug in protocomm_nimble.c (v4.4)

See merge request espressif/esp-idf!15996
2021-11-19 05:26:32 +00:00
b2e1c6eb57 Merge branch 'bugfix/fix_custmoer_issues_v4.4' into 'release/v4.4'
bugfix/fix_3_controller_issues_v4.4

See merge request espressif/esp-idf!15973
2021-11-19 03:34:13 +00:00
b7377f0e53 Merge branch 'bugfix/ci_fix_using_branch_name_v4.4' into 'release/v4.4'
ci: fix using HEAD and SHA since we started using merged result pipelines (v4.4)

See merge request espressif/esp-idf!15721
2021-11-19 03:31:20 +00:00
f16bad24ec Merge branch 'bugfix/wifi_prov_mgr_crash_v4.4' into 'release/v4.4'
NimBLE: Fixed wifi_prov_mgr crash after provisioning (v4.4)

See merge request espressif/esp-idf!15859
2021-11-19 03:00:47 +00:00
bafb157749 Merge branch 'bugfix/remove_mcpwm_deprecations_v4.4' into 'release/v4.4'
mcpwm: revert back to allow user register isr handler (v4.4)

See merge request espressif/esp-idf!15940
2021-11-18 09:58:33 +00:00
43811dc172 esp-eth: emac: Reset Tx DMA channel owner on init
Reset ethernet TX DMA descriptors sets owner to CPU, so re-installing the ethernet driver will now not result in packet loss

Merges https://github.com/espressif/esp-idf/pull/7752
2021-11-18 10:46:07 +01:00
5ba6ac26c4 Merge branch 'bugfix/protocomm_nimble_allocation' into 'master'
NimBLE: Fixed potential allocation bug in protocomm_nimble.c

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

See merge request espressif/esp-idf!15669
2021-11-18 14:17:35 +05:30
44b1f9272c Merge branch 'feature/usb_serial_default_option_v4.4' into 'release/v4.4'
vfs_usb_serial: set secondary selection for making usb port can output under default menu (backport v4.4)

See merge request espressif/esp-idf!15877
2021-11-18 07:16:55 +00:00
37dc255bc4 idf_tools: Adds 'linux-armhf' platform support 2021-11-17 23:27:45 +03:00
b7bee807ed tools: Updates OpenOCD version to 'v0.10.0-esp32-20211111' 2021-11-17 23:27:45 +03:00
45bc50b2d2 NimBLE: Fixed wifi_prov_mgr crash after provisioning
See merge request espressif/esp-idf!15793
2021-11-17 18:37:20 +05:30
fcecbde778 vfs_usb_serial: set secondary selection for making usb port can output under default menu 2021-11-17 19:54:15 +08:00
8517af090d Merge branch 'bugfix/fix_memory_leak_controller_deinit_v4.4' into 'release/v4.4'
Bugfix/fix memory leak controller deinit v4.4

See merge request espressif/esp-idf!15968
2021-11-17 10:22:32 +00:00
66b887a680 fix HCI_Read_Clock error
fix HCI_Create_Connection_Cancel error
fix ASSERT_WARN during epr
2021-11-17 17:59:26 +08:00
e54802113d Merge branch 'bugfix/esp_timer_before_init_v4.4' into 'release/v4.4'
esp_timer: allow querying the timer before esp_timer_init is called(backport v4.4)

See merge request espressif/esp-idf!15876
2021-11-17 09:20:35 +00:00
ee00029c05 gdma: support IRAM interrupt 2021-11-17 12:57:52 +08:00
c3951d5e9d esp_phy: fix esp32s3 phy work with USB-OTG issue 2021-11-17 11:12:40 +08:00
adc83d532c Merge branch 'bugfix/ps_export_prs_v4.4' into 'release/v4.4'
Tools: PowerShell export script improvements from PRs (v4.4)

See merge request espressif/esp-idf!15923
2021-11-16 15:48:37 +00:00
1891761fbb ESP32: Fix memory leak in controller deinit function
Added change to dealloc s_pm_lock in controller deinit as it gets allocated
during init procedure.

Closes https://github.com/espressif/esp-idf/issues/7653
2021-11-16 10:41:32 +05:30
e6ee8b2fcf mcpwm: revert back to allow user register isr handler
Closes https://github.com/espressif/esp-idf/issues/7890
2021-11-16 11:38:48 +08:00
1d4fda8890 docs: replace the module on esp32-devkitc from esp32-wrover to esp32-wroom 2021-11-15 14:48:54 +01:00
35b20cadce Merge branch 'bugfix/efuse_utility_header_v4.4' into 'release/v4.4'
efuse: Add missing esp_rom_sys.h include file (v4.4)

See merge request espressif/esp-idf!15955
2021-11-15 13:19:39 +00:00
1846c29693 Merge branch 'bugfix/efuse_stdbool_v4.4' into 'release/v4.4'
efuse: Add missing stdbool.h include file (v4.4)

See merge request espressif/esp-idf!15935
2021-11-15 12:58:46 +00:00
e9dd044712 tools: add json schema for idf_size 2021-11-15 13:57:24 +01:00
ad233f4896 Merge branch 'bugfix/aes_gcm_unaligned_psram_v4.4' into 'release/v4.4'
aes: fix potential unaligned access in aes-gcm (v4.4)

See merge request espressif/esp-idf!15801
2021-11-15 12:54:50 +00:00
deff19706f spi_flash: No CPU release time for an erase operation when OS is not running
During the early start, the virtual eFuse mode can call erase operations when OS is not yet running.

Possible workaround: CONFIG_SPI_FLASH_YIELD_DURING_ERASE=n

Fixed for the legacy flash driver as well.
2021-11-15 19:38:09 +08:00
99caa4950c esp_timer: init rtc timer and system timer in early init 2021-11-15 19:38:09 +08:00
85bc2d7240 esp_timer: allow querying the timer before esp_timer_init is called 2021-11-15 19:38:09 +08:00
23be52fa89 example: Update on the README file to change from ESP32-S3-Addax-1 to ESP32-S3-DevKitC-1 2021-11-15 12:02:04 +01:00
8d9ab894c3 efuse: Add missing esp_rom_sys.h include file
This prevents the compiler error for the implicit declaration of
function "esp_rom_printf".

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-15 07:52:01 -03:00
ebaffab2fb Merge branch 'bugfix/freertos_round_robin_scheduling_retain_skip_v4.4' into 'release/v4.4'
freertos: Implement best effort round robin scheduling (v4.4)

See merge request espressif/esp-idf!15907
2021-11-15 07:47:43 +00:00
a0f339fead Merge branch 'bugfix/usb_hcd_robustness_v4.4' into 'release/v4.4'
USB Host: Fix how disconnections an EP halts are handled (v4.4)

See merge request espressif/esp-idf!15908
2021-11-15 07:47:37 +00:00
3a7024990e Merge branch 'bugfix/wifi_bt_mac_bb_pd_light_sleep_v4.4' into 'release/v4.4'
backport v4.4: fixes some sleep related issues

See merge request espressif/esp-idf!15932
2021-11-15 07:18:56 +00:00
8d33d54af7 heap: update RTC memory heap caps 2021-11-15 10:56:08 +08:00
3c341364eb efuse: Enable C++ linkage for the include headers on esp_efuse.h
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-12 13:29:58 -03:00
0132d2c868 efuse: Add missing stdbool.h include file
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-12 13:29:58 -03:00
e75762b02f sleep: deep sleep does not need cpu and wifi/bt mac retention 2021-11-12 19:38:32 +08:00
0665e0165b light sleep: replace new kconfig option of mac bb power down & phy reduce tx power 2021-11-12 19:38:09 +08:00
4083c4ae33 Tools: Make clear the used platform in the PowerShell export script 2021-11-12 07:51:53 +01:00
74950663cf Define $IsWindows if not defined.
The `$IsWindows` PowerShell variable was added in PowerShell Core 6 and
PowerShell 7, and is not present in earlier PowerShell versions. Set to
true if undefined. This fixes https://github.com/espressif/esp-idf/issues/7820.

The first version to run on non-Windows platforms was PowerShell Core
6.0[^1] which means that IsWindows is guaranteed to be defined on all
non-Windows systems. So, if undefined this indicates a Windows platform.

[^1]: https://docs.microsoft.com/en-us/powershell/scripting/install/powershell-support-lifecycle?view=powershell-7.2#release-history

Closes https://github.com/espressif/esp-idf/pull/7858

Closes https://github.com/espressif/esp-idf/issues/7820
2021-11-12 07:51:53 +01:00
4975197d1d Initialize $envvars_array to an empty list.
With strict debugging, i.e. `Set-PSDebug -strict`, execution of export.ps1 will
report the following error:

```
The variable '$envars_array' cannot be retrieved because it has not been set.
At C:\path\to\export.ps1:15 char:1
+ $envars_array # will be filled like:
+ ~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (envars_array:String) [], RuntimeException
    + FullyQualifiedErrorId : VariableIsUndefined
```

Closes https://github.com/espressif/esp-idf/pull/7819
2021-11-12 07:51:53 +01:00
e3a771511a aes: fix potential unaligned access in aes-gcm 2021-11-12 12:28:28 +08:00
29aba769f2 spi_flash: minor cleanup, use type/subtype from esp_partition.h 2021-11-12 09:43:51 +05:30
e2fb582cf8 nvs: add config to ignore "encrypted" flag of nvs partitions
This is to allow having pre IDF v4.3 behavior where "encrypted"
flag was not being checked for NVS partitions.

It is recommended to enable this new config only if you have
production devices where NVS partition was being set with "encrypted"
flag by mistake.

Please see commit aca9ec28b3 which
introduced check to not allow NVS partitions with "encrypted" flag set.

More discussion on this at:
https://github.com/espressif/esp-idf/issues/5747#issuecomment-956223024
https://github.com/espressif/esp-idf/issues/7839#issuecomment-961477667

Closes https://github.com/espressif/esp-idf/issues/7839
Closes IDFGH-6162
2021-11-12 09:43:51 +05:30
df0929009a Merge branch 'bugfix/gpio_interrupt_on_app_cpu_v4.4' into 'release/v4.4'
gpio: Fix the bug that esp32 gpio interrupt cannot be triggered on core 1 (backport v4.4)

See merge request espressif/esp-idf!15902
2021-11-11 17:01:36 +00:00
d9ae8068fc CI: add esp32s3 SSC build jobs 2021-11-11 18:03:10 +08:00
9b46f4e086 Merge branch 'feature/update_adc_calibration_doc_on_c3_s3_v4.4' into 'release/v4.4'
doc: add adc calibration programming guide on c3 and s3 (v4.4)

See merge request espressif/esp-idf!15896
2021-11-11 08:57:53 +00:00
dd5d452428 Merge branch 'bugfix/power_down_bluetooth_module_when_deinit_v4.4' into 'release/v4.4'
component/bt: Power down bluetooth module when deinit

See merge request espressif/esp-idf!15717
2021-11-11 08:27:51 +00:00
1af36a5b9d usb: Change API and refactor tests
This commit updates the USB Host Library API in the following wasy:
- usb_host_client_handle_t and usb_device_handle_t made into struct pointers
  to generate compiler warnings about conflicting handle types
- usb_host_client_config_t changed to future proof API for Synchronous Clients
- Added usb_host_lib_unblock()
- Added usb_host_device_addr_list_fill()
- Return of usb_host_device_free_all() updated to indicate whether there
  are still devices yet to be freed.
- Blockg APIs are now marked explicitly
- Fixed a bug in usb_host_transfer_submit_control() when checking the bEndpointAddress
  of a control transfer.

Tests are also refactored to move some common macros into shared headers

Closes https://github.com/espressif/esp-idf/issues/7786
2021-11-11 16:26:56 +08:00
891c979c64 usb: Add USB Host Library sudden disconnect tests 2021-11-11 16:26:35 +08:00
0a948594cb usb: Fix USBH handling of disconnections
This commit fixes how the USBH handling of a sudden device disconnection,
more specifically handling of device gone.
- Previously the USBH would only halt, flush, and dequeue the device's
default EP, then send a device gone event to the Host Library layer.
- Now the USBH will also halt and flush all non-default EPs, allowing
all of the URBs to be dequeud.
- Some internal object members are now protected by a mutex instead of
a spinlock.

Closes https://github.com/espressif/esp-idf/issues/7505
2021-11-11 16:26:09 +08:00
de6bf09f40 usb: Fix how the HCD handles sudden disconnection
This commit fixes how the USB Host HCD handles sudden disconnections.

Bugs:
- HW channels remain active when the port suddenly disconnects, and
previously the channel would be disabled by setting the disabled bit,
then waiting for a disabled interrupt. However, ISOC channels do not
generate the disabled interrupt when the port is invalid, thus leading
to tasks getting indefinitely blocked in hcd_pipe_command().

Fix:
On a sudden disconnection, forcibly treat all channels as halted even
if their HCCHAR.ChEna bit is still set. We do a soft reset after a port
error anyways, so the channels will eventually be reset.

Closes https://github.com/espressif/esp-idf/issues/7505
2021-11-11 16:25:01 +08:00
a1082dfa59 usb: Fix LL 8/16 bit register field access
This commit addes the 8/16 bit register field access workarounds to
the DWC_OTG peripheral. This workaround was applied to all other
peripherals in commit 874a720286.
2021-11-11 16:24:08 +08:00
466c42c3c1 freertos: Fix SMP round robin scheduling
The previous SMP freertos round robin would skip over tasks when
time slicing. This commit implements a Best Effort Round Robin
where selected tasks are put to the back of the list, thus
makes the time slicing more fair.

- Documentation has been updated accordingly.
- Tidy up vTaskSwitchContext() to match v10.4.3 more
- Increased esp_ipc task stack size to avoid overflow

Closes https://github.com/espressif/esp-idf/issues/7256
2021-11-11 16:16:11 +08:00
762ca128b4 gpio: Fix the bug that esp32 gpio interrupt cannot be triggered on core 1
Introduced in 874a720286

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

(cherry picked from commit 7ec38fcc42)
2021-11-11 12:43:09 +08:00
f6db71539e Merge branch 'bugfix/esp32_light_sleep_crash_4.4' into 'release/v4.4'
Fix crash caused by bluetooth high level interrupt (v4.4)

See merge request espressif/esp-idf!15872
2021-11-11 03:38:49 +00:00
0c0d0f9b35 components/bt: Fix the issue caused by the power off the bt power domain 2021-11-11 11:33:15 +08:00
a2790756b0 fix the wifi scan fail issue caused by the power off the wifi power domain 2021-11-11 11:33:04 +08:00
bd9d8c314e Merge branch 'bugfix/fix_120m_sdr_flash_config_on_non_s3_bug_v4.4' into 'release/v4.4'
spi_flash: make 120m config only visible on s3 sdr mode (v4.4)

See merge request espressif/esp-idf!15868
2021-11-11 02:47:47 +00:00
018bc054a5 Merge branch 'bugfix/LAN8720_reset_assertion_v4.4' into 'release/v4.4'
Increased LAN8720 ETH-PHY reset assertion time (v4.4)

See merge request espressif/esp-idf!15825
2021-11-10 20:39:58 +00:00
d722a37aa6 Merge branch 'refactor/freertos_deprecate_critical_nested_macros_v4.4' into 'release/v4.4'
freertos: Deprecate critical nested macros (v4.4)

See merge request espressif/esp-idf!15613
2021-11-10 16:16:53 +00:00
c62f7fd6ee Merge branch 'bugfix/tools_fix_win_gdb_dlls_v4.4' into 'release/v4.4'
tools: Fix missed DLLs in GDB for Windows (v4.4)

See merge request espressif/esp-idf!15894
2021-11-10 13:55:34 +00:00
10afcc9f63 Merge branch 'bugfix/fix_ble_prefered_ext_conn_parameter_detection_v4.4' into 'release/v4.4'
component/bt: check the ble ext conn parameter(backport v4.4)

See merge request espressif/esp-idf!15768
2021-11-10 13:01:22 +00:00
7e725751e4 freertos: Remove critical nested macros
This commit removes the following critical nested macros as follows:

- portENTER_CRITICAL_NESTED()
- portEXIT_CRITICAL_NESTED()

They are replaced with portSET_INTERRUPT_MASK_FROM_ISR() and
portCLEAR_INTERRUPT_MASK_FROM_ISR() which are the proper FreeRTOS interfaces.

Created a portmacro_deprecated.h for each port to contain deprecated API
that were originally from portmacro.h
2021-11-10 18:34:32 +08:00
6438af2ef9 Merge branch 'bugfix/simplify_codeowners_v4.4' into 'release/v4.4'
gitlab: simplify approvals for backports (v4.4)

See merge request espressif/esp-idf!15865
2021-11-10 10:24:38 +00:00
4a8d4b584a docs: add adc calibration docs on c3 and s3 2021-11-10 18:12:54 +08:00
3b0de88cad tools: Fix missed DLLs in GDB for Windows 2021-11-10 17:07:46 +07:00
9e46667545 ringbuf: Fix bug where comparision between a signed and unsigned operand resulted in incorrect free size for no-split/allow-split buffers
This commit fixes a bug in no-split and allow-split ring buffers free buffer size calculation.
When the free size available in the buffers less than the size of one item header,
the function prvGetCurMaxSizeNoSplit/AllowSplit() incorrectly returned the maxItemSize instead of 0.
This is due to the comparision between a negative and a positive value
where both operands are treated as unsigned during the comparision operation,
thereby treating the negative operand as a large integer.

Also added new unit tests to test buffer-full and almost-full conditions
where this scenario is likely to be hit.

Closes https://github.com/espressif/esp-idf/issues/7344
Closes https://github.com/espressif/esp-idf/pull/7371
2021-11-10 14:42:40 +05:30
2c24beca04 esp_eth: optimize dm9051 Tx throughput 2021-11-10 17:08:21 +08:00
44d13c648b Merge branch 'bugfix/fix_ota_crash_backport_v4.4' into 'release/v4.4'
spi_flash: fix app crash when OTA because the OTA task's stack is in rtc fast memory(backport v4.4)

See merge request espressif/esp-idf!15852
2021-11-10 08:35:34 +00:00
44b9e6e055 Fix crash caused by bluetooth high level interrupt 2021-11-10 16:14:52 +08:00
214d2eeba7 Merge branch 'bugfix/manual_secure_boot_v2_multiple_digest_issue_v4.4' into 'release/v4.4'
secure_boot_v2: fix issue in pre-flashed digest (manual) workflow (v4.4)

See merge request espressif/esp-idf!15780
2021-11-10 04:22:55 +00:00
d5218e84e2 spi_flash: make 120m config only visible on s3 sdr mode 2021-11-10 12:04:49 +08:00
43471b047b Merge branch 'feature/fatfs_disk_status_implementation_v4.4' into 'release/v4.4'
fatfs: Implementation of disk_status for SD/MMC card (v4.4)

See merge request espressif/esp-idf!15847
2021-11-09 18:45:42 +00:00
1ed627d022 gitlab: simplify approvals for backports (v4.4) 2021-11-09 18:39:26 +01:00
8a60e69c24 Merge branch 'bugfix/create_dir_idf_env_v4.4' into 'release/v4.4'
tools: Create the ".espressif" directory on the first run on clean system (v4.4)

See merge request espressif/esp-idf!15855
2021-11-09 13:40:56 +00:00
683da6b46d fatfs: Implementation of disk_status nad disk_initialize for SD/MMC card
FATFS provides a disk status and disk initialize callback which were not
implemented. Implementation has very low impact on SD/MMC speed and
fixes issues, when trying to open file when SD card was removed from
slot and not deinited.

If disk_status returns STA_NOINIT, it will always continue with
disk_initialize. If that returns 0, it will continue like everything is
working normally. So there has to be the same check as in disk_status.
Return of disk_initialize is always checked like this for STA_NOINIT or
STA_PROTECT so if command fails, we return the STA_NOINIT.

stat = disk_initialize(pdrv);
if (stat & STA_NOINIT) return FR_NOT_READY;
if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;

Closes IDF-4125
2021-11-09 20:17:03 +08:00
d9429ca7bc Merge branch 'add_agressive_revoke_v4.4' into 'release/v4.4'
secure_boot: Added Kconfig option for aggressive key revoke (v4.4)

See merge request espressif/esp-idf!15850
2021-11-09 11:15:07 +00:00
2cdf90f810 tools: Create the ".espressif" directory on the first run on clean system
Closes https://github.com/espressif/esp-idf/issues/7848
2021-11-09 12:02:50 +01:00
2f39639c20 secure_boot: Do not allow key revocation in bootloader 2021-11-09 15:19:47 +05:30
7fe2a4815d secure_boot: Added Kconfig option for aggressive key revoke
Applicable to S2, C3, and S3
2021-11-09 15:19:47 +05:30
07b1b45ad6 fix: app crash when OTA because the OTA task's stack is in rtc fast memory 2021-11-09 17:10:20 +08:00
5e4d166323 Merge branch 'bugfix/fix_crash_when_shutdown_bt_v4.4' into 'release/v4.4'
component/bt: fix crash when shutdown bt(backport v4.4)

See merge request espressif/esp-idf!15708
2021-11-09 08:06:24 +00:00
5c6a8711ad Merge branch 'bugfix/hfp_demo_audio_not_sine_v4.4' into 'release/v4.4'
fix hfp_ag demo audio not sine_v4.4

See merge request espressif/esp-idf!15749
2021-11-09 03:02:15 +00:00
864605785b Merge branch 'feature/rw_lock_cond_var_4.4' into 'release/v4.4'
pthread: reader-writer locks implementation (backport 4.4)

See merge request espressif/esp-idf!15830
2021-11-08 13:31:16 +00:00
832865629c Merge branch 'feature/github-7661_v4.4' into 'release/v4.4'
mck pin not defined in i2s examples (v4.4)

See merge request espressif/esp-idf!15836
2021-11-08 13:23:59 +00:00
7195af2d7d i2s: add mck pin definition in the example
If the mck pin is not set to GPIO 0,1,3 or -1 the whole pin configuration fails. This fix corrects that.

Merges https://github.com/espressif/esp-idf/pull/7661
2021-11-08 17:33:18 +08:00
1433f5337f Merge branch 'bugfix/i2s_ws_polarity_in_tdm_v4.4' into 'release/v4.4'
i2s: fix ws signal polarity in tdm mode (v4.4)

See merge request espressif/esp-idf!15820
2021-11-08 09:30:14 +00:00
397e148049 Merge branch 'doc/make_classic_bt_API_ref_only_for_esp32_4.4' into 'release/v4.4'
Doc/make classic bt api ref only for esp32 [backport v4.4]

See merge request espressif/esp-idf!15727
2021-11-08 09:14:24 +00:00
bbe2a1bf34 Merge branch 'feature/add_flash_psram_config_guide_v4.4' into 'release/v4.4'
doc: add flash and psram configuration guide on esp32s3 (4.4)

See merge request espressif/esp-idf!15811
2021-11-08 08:32:36 +00:00
4d0e72dc5f efuse example: Fix pre-load SB test for S2, C3 (erase revoke bits) 2021-11-08 12:48:12 +08:00
4ac351247d secure_boot_v2: fix issue in pre-flashed digest (manual) workflow
This commit fixes issue where empty (unprogrammed) digest slot out of
multiple supported (e.g. 3 for ESP32-C3) could cause issue in
workflow enablement process.

Notes:

1. This issue was applicable for chips supporting "secure-boot-v2"
scheme with multiple digests slots
2. This issue was affecting only manual workflow, where digest of
public was pre-flashed in efuse
3. Change in "flash_encrypt.c" is only for additional safety purpose
2021-11-08 12:48:12 +08:00
cc8214c59d doc: add flash and psram configuration doc in programming guide 2021-11-08 04:32:18 +00:00
56aa8b6cb3 Merge branch 'bugfix/KSZ8851SNL_enable_multicast_v4.4' into 'release/v4.4'
esp_eth: KSZ8851SNL, enable Rx multicast in MAC filter (v4.4)

See merge request espressif/esp-idf!15823
2021-11-08 03:44:15 +00:00
7a6a61feef component/bt: fix crash when shutdown bt(backport v4.4) 2021-11-08 10:55:12 +08:00
b117bcd2a0 feat (pthread): reader-writer locks implementation
* Added implementation based on cond. variables
* Added unit tests

Closes https://github.com/espressif/esp-idf/issues/7411
2021-11-08 10:21:37 +08:00
cd97e95a12 Merge branch 'bugfix/archive_details_always_run_like_diff_v4.4' into 'release/v4.4'
tools: fix bug with idf_size argument archive_details (v4.4)

See merge request espressif/esp-idf!15774
2021-11-05 15:38:38 +00:00
43b62a5b62 Copyright message fix for 'Increased LAN8720 ETH-PHY reset assertion time' 2021-11-05 11:39:04 +01:00
5f9ae3510a Increased LAN8720 ETH-PHY reset assertion time (IDFGH-6018)
Increase reset assertion time from 100µs (as specified minimum in the datasheet) to 150µs.
Some specimen of the LAN8720 need the reset signal asserted longer than 100µs to initialise properly. Otherwise they are in a zombie state where they are establishing and loosing an Ethernet link once in a seconds interval.
2021-11-05 11:35:35 +01:00
484d5c8491 esp_eth: KSZ8851SNL, enable Rx multicast in MAC filter
Closes https://github.com/espressif/esp-idf/issues/7750
2021-11-05 11:23:14 +01:00
f7f9683ef1 i2s: fix ws signal polarity in tdm mode 2021-11-05 11:35:02 +08:00
b298795e37 Merge branch 'bugfix/sig_ble_mesh_errata_e16350_v4.4' into 'release/v4.4'
ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG (v4.4)

See merge request espressif/esp-idf!15815
2021-11-05 03:16:51 +00:00
b1102bb581 Merge branch 'bugfix/ble_mesh_host_init_v4.4' into 'release/v4.4'
ble_mesh: nimble: return error if init host twice (v4.4)

See merge request espressif/esp-idf!15816
2021-11-05 03:14:57 +00:00
fd89e8dae4 Merge branch 'docs/update_mock_doc_v4.4' into 'release/v4.4'
DOCs: Update mocking documentation (backport v4.4)

See merge request espressif/esp-idf!15809
2021-11-05 02:25:00 +00:00
lly
461ffffd77 ble_mesh: nimble: return error if init host twice 2021-11-04 20:31:57 +08:00
lly
c255c6a6f8 ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG 2021-11-04 20:29:38 +08:00
dc20c1fd41 Merge branch 'bugfix/ble_mesh_update_license_v4.4' into 'release/v4.4'
ble_mesh: stack: Update license of esp specific files (v4.4)

See merge request espressif/esp-idf!15765
2021-11-04 12:12:05 +00:00
423b6697ac Merge branch 'bugfix/freertos_prvTaskIsTaskSuspended_v4.4' into 'release/v4.4'
freertos: Fix prvTaskIsTaskSuspended check (v4.4)

See merge request espressif/esp-idf!15612
2021-11-04 10:26:54 +00:00
7c4c5b51de Merge branch 'ci/enable_s3_example_test_v4.4' into 'release/v4.4'
ci: run example test for c3 as well (v4.4)

See merge request espressif/esp-idf!15810
2021-11-04 05:00:42 +00:00
295387167c ci: run example test for c3 as well 2021-11-04 12:12:12 +08:00
40e0d733c2 docs: Update mocking documentation 2021-11-04 11:49:35 +08:00
9fae314f50 Merge branch 'feature/freertos_static_allocation_task_memory_callbacks_v4.4' into 'release/v4.4'
freertos: Add memory hooks for static IDLE and Timer tasks (v4.4)

See merge request espressif/esp-idf!15614
2021-11-03 11:20:10 +00:00
lly
c1df3636b7 ble_mesh: stack: Update license of esp specific files 2021-11-03 14:22:31 +08:00
226f49f37d Merge branch 'bugfix/heartbeat_filter_with_acceptlist_v4.4' into 'release/v4.4'
ble_mesh: stack: Fix heartbeat filter with accept list (v4.4)

See merge request espressif/esp-idf!15675
2021-11-03 06:21:32 +00:00
21b366da73 Merge branch 'feature/add_dhcp_option_v4.4' into 'release/v4.4'
lwip/dhcp: add configure for enable vendor class identify option (backport v4.4)

See merge request espressif/esp-idf!15619
2021-11-02 15:17:19 +00:00
1232094197 change --archive_details output 2021-11-02 14:08:31 +01:00
970132c94b tools: fix bug with idf_size argument archive_details 2021-11-02 14:08:31 +01:00
lly
9e82f7fdcf ble_mesh: stack: Update the license of provisioner_main.c 2021-11-02 20:56:25 +08:00
77eb671168 ble_mesh: stack: Fix heartbeat filter with accept list 2021-11-02 20:54:02 +08:00
9303bc00b2 Merge branch 'bugfix/pppos_report_unknown_line' into 'release/v4.4'
esp_modem: Fix report unknown line (GitHub PR)

See merge request espressif/esp-idf!15621
2021-11-02 12:14:49 +00:00
89873937eb lwip/dhcp: add configure for enable vendor class identify option
Closes https://github.com/espressif/esp-idf/issues/6786
2021-11-02 18:02:22 +08:00
2d3ec44011 Merge branch 'bugfix/ble_conn_latency_max_value_v4.4' into 'release/v4.4'
BLE: Set connection max latency value to 499.

See merge request espressif/esp-idf!15754
2021-11-02 09:11:12 +00:00
14a652376f Examples/PPPoS: Fix handling empty lines with CRLF only
Tokenizing data by '\n' will effectively replace all LF characters by '\0' so checking for phantom lines has to be adjusted:
* minimal empty line is CR only (strlen = 1)
* checking for lines containing CR only
2021-11-02 09:00:34 +01:00
d89112badf component/bt: check the ble ext conn parameter 2021-11-02 15:54:27 +08:00
5ac3b05cbe freertos: Add memory hooks for static IDLE and Timer tasks
This commit adds the following hook functions to obtain memory
for the IDLE and Timer Daemon tasks when configSUPPORT_STATIC_ALLOCATION
is enabled:

- vApplicationGetIdleTaskMemory()
- vApplicationGetTimerTaskMemory()

Currently, both functions simply allocate from the same memory as
regular tasks (i.e., internal memory for both the stack and TCB)

Closes https://github.com/espressif/esp-idf/issues/7511
2021-11-02 14:54:01 +08:00
efad5e56ae freertos: Fix prvTaskIsTaskSuspended check
This commit fixes prvTaskIsTaskSuspended(). Both pending ready lists
should be checked to confirm that is truly suspended.

Closes https://github.com/espressif/esp-idf/issues/7564
2021-11-02 14:51:17 +08:00
6a93575d97 Merge branch 'bugfix/xtensa_clang_version_regex_v4.4' into 'release/v4.4'
fix(tool): export.sh cannot export xtensa-clang if installed (v4.4)

See merge request espressif/esp-idf!15763
2021-11-02 03:38:57 +00:00
dfe91ded9a Merge branch 'bugfix/rm_copyright_check_v4.4' into 'release/v4.4'
CI: Remove the copyright header check from the release branch

See merge request espressif/esp-idf!15758
2021-11-02 03:38:18 +00:00
d269be1861 fix(tool): export.sh cannot export xtensa-clang if installed issue 2021-11-02 09:32:45 +08:00
de136451f1 CI: Remove the copyright header check from the release branch 2021-11-01 12:44:10 +01:00
affe1a0692 BLE: Set connection max latency value to 499. 2021-11-01 16:45:16 +05:30
148e0fce84 Merge branch 'feature/ci_runner_failure_retries_v4.4' into 'release/v4.4'
ci: runner system failure retries (v4.4)

See merge request espressif/esp-idf!15722
2021-11-01 11:11:16 +00:00
86f8d65508 Merge branch 'bugfix/memprot_bad_esp_restart_check_v4.4' into 'release/v4.4'
System/Security: wrong check of the Memprot feature in esp_restart()/panic_restart() (v4.4)

See merge request espressif/esp-idf!15742
2021-11-01 11:07:06 +00:00
ea4f069b45 fix hfp_ag demo audio not sine_v4.4 2021-11-01 12:12:10 +08:00
3f26866533 System/Security: wrong check of the Memprot feature in esp_restart()/panic_restart()
esp_restart()/panic_restart() never resets the Digital system (so far required only by the Memprot feature) as there's a typo in the corresponding #define:
it checks CONFIG_ESP_SYSTEM_CONFIG_MEMPROT_FEATURE instead of CONFIG_ESP_SYSTEM_MEMPROT_FEATURE.
Issue fixed.

IDF-4094
2021-10-29 15:02:17 +02:00
fb3c88510c efuse_table_gen: Fixes wrong joining fields with omitted names
The issue is related to the non-sequential way of description when
such fields going together sequential.

Related to esp32h2 chip for eFuses: MAC_FACTORY and MAC_EXT.
The issue is in wrong indexes of MAC_EXT.
MAC_EXT got indexes like it is joined to MAC_FACTORY.

const esp_efuse_desc_t* ESP_EFUSE_MAC_FACTORY[] = {
    &MAC_FACTORY[0],
    &MAC_FACTORY[1],
    &MAC_FACTORY[2],
    &MAC_FACTORY[3],
    &MAC_FACTORY[4],
    &MAC_FACTORY[5],
    NULL
};

const esp_efuse_desc_t* ESP_EFUSE_MAC_EXT[] = {
    &MAC_EXT[6],
    &MAC_EXT[7],
    NULL
};

This commit fixed it to:

const esp_efuse_desc_t* ESP_EFUSE_MAC_EXT[] = {
    &MAC_EXT[0],
    &MAC_EXT[1],
    NULL
};
2021-10-29 19:17:51 +08:00
281598077a efuse: fix esp32h2 get ext_mac 2021-10-29 19:17:51 +08:00
006ab2d454 ci: Add retries on runner system failures 2021-10-29 13:49:37 +07:00
10741e2254 ci: fix using HEAD and SHA with merged result pipelines 2021-10-29 13:34:53 +07:00
d6e438f3c7 ci: add variable PIPELINE_COMMIT_SHA 2021-10-29 13:34:53 +07:00
1383785aa1 Remove dummy defines of Classic BT 2021-10-29 14:21:26 +08:00
8153b43705 Make ESP32 Bluetooth stack architecture Doc only visible for ESP32 2021-10-29 14:21:18 +08:00
f4aad85f8b Make Classic BT related document links only visible for ESP32 2021-10-29 14:21:12 +08:00
6a7d83af19 Merge branch 'bugfix/fix_http_head_request_v4.4' into 'release/v4.4'
esp_http_client: Fix HEAD request will affect the all next HTTP requests unless we close the HTTP request(backport v4.4)

See merge request espressif/esp-idf!15715
2021-10-29 04:47:22 +00:00
89d290f17a component/bt: Power down bluetooth module when deinit 2021-10-29 10:44:02 +08:00
9705ea5e97 esp_http_client: Fix HEAD request will affect the all next HTTP requests unless we close the HTTP request
Closes https://github.com/espressif/esp-idf/issues/7777
2021-10-29 10:16:12 +08:00
4aaec00c41 Merge branch 'bugfix/define__DOXYGEN___v4.4' into 'release/v4.4'
docs: define __DOXYGEN__ for doxygen builds (v4.4)

See merge request espressif/esp-idf!15679
2021-10-28 06:40:50 +00:00
697f829d60 Merge branch 'bugfix/gdbstub_4_c3_v4.4' into 'release/v4.4'
bugfix/esp-gdbstrub: add missing function for esp32c3/esp32h2. (backport v4.4)

See merge request espressif/esp-idf!15664
2021-10-27 16:49:21 +00:00
7aa3dfc087 Merge branch 'bugfix/fix_phy_usb_issue_v4.4' into 'release/v4.4'
esp_phy: fix esp32c3/s3 phy USB & RSSI issue(v4.4)

See merge request espressif/esp-idf!15646
2021-10-27 14:01:48 +00:00
bd2b1c88ad Merge branch 'bugfix/remove_assert_when_inq_done_4.4' into 'release/v4.4'
component_bt: fix crash after inquiry has finished (v4.4)

See merge request espressif/esp-idf!15673
2021-10-27 11:28:50 +00:00
0c5b5d759a Remove table for all supported chips as useless. 2021-10-27 13:36:58 +03:00
a4821fac21 docs: define __DOXYGEN__ for doxygen builds
Some docs depended on __DOXYGEN__ but this was never defined anywhere.
2021-10-27 17:10:26 +08:00
3187b9b5a4 1. Fix the scan failed issue.
2. Fix connection failed with LG 5.0 phone
3. Remove assert when inquiry done
2021-10-27 14:54:37 +08:00
1703b9d0f3 bugfix/esp-gdbstrub: add missing function for esp32c3/esp32h2. 2021-10-26 20:00:58 +03:00
43a81fb2f9 Merge branch 'bugfix/asio_ssl_build' into 'release/v4.4'
asio: Fix ssl example build removing openssl warning

See merge request espressif/esp-idf!15498
2021-10-26 14:26:12 +00:00
bf4ef23067 Merge branch 'bugfix/pppos_event_deinit_exit_ppp' into 'release/v4.4'
Examples/PPPoS: Minor fixes related to init/deinit cycling

See merge request espressif/esp-idf!15553
2021-10-26 14:25:37 +00:00
044e79ad99 Merge branch 'bugfix/highint_hdl_link_gnumake_v4.4' into 'release/v4.4'
esp_system: fix high level interrupt handler not linked for GNU Make (v4.4)

See merge request espressif/esp-idf!15651
2021-10-26 13:14:25 +00:00
d47d413e25 esp_system: fix high level interrupt handler not linked for GNU Make
In 4972605, high-level interrupt handler hook was renamed from
ld_include_highint_hdl to ld_include_panic_highint_hdl. However the
change wasn't applied in GNU Make based build system. As a result,
the default interrupt handler was linked and features which depended
on the high-level interrupt didn't work.

Closes https://github.com/espressif/esp-idf/issues/7759
Closes https://github.com/espressif/esp-idf/issues/7447
2021-10-26 11:26:45 +02:00
9ceadb4e18 Examples/PPPoS: Fix copyright headers 2021-10-26 10:45:19 +02:00
12f4f8f7f8 Examples/PPPoS: Fixed missed NETIF_PPP_STATUS event unregister
NETIF_PPP_STATUS is registerd while modem gets attached to the related netif.
we don't have any network detach functionality in the modem component, so we
unregister the event during esp_modem_netif_clear_default_handlers().

Related https://esp32.com/viewtopic.php?f=13&t=23632
Related https://github.com/espressif/esp-idf/issues/7469
2021-10-26 10:45:12 +02:00
28d534ad33 Examples/PPPoS: Add mandatory delay after +++ command
Switching back from data (PPP) mode to command mode must be done is the following sequence:
* No characters entered for T1 time (1 second)
* "+++" characters entered with no characters in between (1 second)
* No characters entered for T1 timer (1 second)
(per specification of SIM800 SIM800_Series_AT_Command_Manual_V1.09.pdf)

Related https://github.com/espressif/esp-idf/issues/7608
2021-10-26 10:45:05 +02:00
a0371c1a8f Merge branch 'feature/toolchain_2021r2_v4.4' into 'release/v4.4'
Update toolchains to esp-2021r2 (v4.4)

See merge request espressif/esp-idf!15637
2021-10-26 08:19:22 +00:00
5eb55d2e7a esp_phy: fix esp32c3/s3 phy USB & RSSI issue 2021-10-26 15:48:27 +08:00
076697a56d Update toolchains to esp-2021r2
Updated GDB to 9.2 version for xtensa chips
    Fixed coredump work for xtensa chips
    Fixed backtrace for xtensa chips
    Fixed multilib for riscv32 chips
    Fixed running GDB on some RaspberryPi configuration for riscv32 chip
    Fixed support of fnmatch(), iconv() and some other posix functions in stdlib

    Closes https://github.com/espressif/esp-idf/issues/6124
    Closes https://github.com/espressif/esp-idf/issues/2484
    Closes https://github.com/espressif/esp-idf/issues/3264
    Closes https://github.com/espressif/crosstool-NG/issues/13
    Closes https://github.com/espressif/crosstool-NG/pull/16
2021-10-25 19:55:41 +07:00
4548b6da63 test_apps/panic: remove workaround for incorrect GDB backtrace 2021-10-25 19:55:41 +07:00
91696b9d6d coredump: update test data for toolchain 2021r2 2021-10-25 19:55:41 +07:00
0a8c1259dc asio: Fix ssl example build removing openssl warning
Regression from e68afcb45036901ebc9174b2c8f3804f7921410c causing
non-clean builds for standard asio-ssl example (warning was
suppressed in the CI build only)
2021-10-25 11:59:02 +00:00
ac485b2824 Merge branch 'feature/add_README_for_controller_hci_uart_demo_v4.4' into 'release/v4.4'
feature/add README.md for demo controller_hci_uart_demo_v4.4

See merge request espressif/esp-idf!15571
2021-10-25 07:39:34 +00:00
2720d45e71 Merge branch 'bugfix/newlib_fix_stdatomic_clang_v4.4' into 'release/v4.4'
newlib: fix clang atomics (v4.4)

See merge request espressif/esp-idf!15600
2021-10-22 14:48:56 +00:00
cb6e5b0980 newlib: fix clang atomics
Correction of the SYNC_LOCK_* macros in stdatomic
2021-10-21 17:34:48 +01:00
25ae00cd11 Merge branch 'ci/update_esp_eth_cert_v4.4' into 'release/v4.4'
ci: update cert used for esp_eth test (v4.4)

See merge request espressif/esp-idf!15583
2021-10-21 04:23:34 +00:00
108f85f8b3 ci: update cert used for esp_eth test 2021-10-21 10:05:56 +08:00
99f1687db7 add README.md for demo controller_hci_uart_demo 2021-10-20 09:09:46 +08:00
0a15cc5e5a esp_modem: Fix report unknown line
In esp_dte_handle_line(), it tokenize the data to call handlers separately
for each *line*. So it needs to post the tokenized data when report unknown
line instead of the first token (which could be a '\r' in my test).

Fixes: 336de29413 ("Examples/pppos_client: Fix manual parsing to accept unexpected lines")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2021-10-18 10:14:31 +08:00
793 changed files with 35458 additions and 15148 deletions

View File

@ -14,6 +14,14 @@ workflow:
# Disable those non-protected push triggered pipelines
- if: '$CI_COMMIT_REF_NAME != "master" && $CI_COMMIT_BRANCH !~ /^release\/v/ && $CI_COMMIT_TAG !~ /^v\d+\.\d+(\.\d+)?($|-)/ && $CI_PIPELINE_SOURCE == "push"'
when: never
# when running merged result pipelines, it would create a temp commit id. use $CI_MERGE_REQUEST_SOURCE_BRANCH_SHA instead of $CI_COMMIT_SHA.
# Please use PIPELINE_COMMIT_SHA at all places that require a commit sha
- if: $CI_OPEN_MERGE_REQUESTS != null
variables:
PIPELINE_COMMIT_SHA: $CI_MERGE_REQUEST_SOURCE_BRANCH_SHA
- if: $CI_OPEN_MERGE_REQUESTS == null
variables:
PIPELINE_COMMIT_SHA: $CI_COMMIT_SHA
- when: always
variables:
@ -115,6 +123,12 @@ before_script:
- export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/ci/python_packages:$PYTHONPATH"
- fetch_submodules
default:
retry:
max: 2
# In case of a runner failure we could hop to another one, or a network error could go away.
when: runner_system_failure
include:
- '.gitlab/ci/rules.yml'
- '.gitlab/ci/docs.yml'

View File

@ -2,210 +2,5 @@
#
# https://docs.gitlab.com/ee/user/project/code_owners.html#the-syntax-of-code-owners-files
#
# If more than one rule matches a given file, the latest rule is used.
# The file should be generally kept sorted, except when it is necessary
# to use a different order due to the fact above. In that case, use
# '# sort-order-reset' comment line to reset the sort order.
#
# Recipes for a few common cases:
#
# 1. Specific directory with all its contents:
#
# /components/app_trace/
#
# Note the trailing slash!
#
# 2. File with certain extension in any subdirectory of a certain directory:
#
# /examples/**/*.py
#
# This includes an *.py files in /examples/ directory as well.
#
# 3. Contents of a directory with a certain name, anywhere in the tree:
#
# test_*_host/
#
# Will match everything under components/efuse/test_efuse_host/,
# components/heap/test_multi_heap_host/, components/lwip/test_afl_host/, etc.
#
# 4. Same as above, except limited to a specific place in the tree:
#
# /components/esp32*/
#
# Matches everything under /components/esp32, /components/esp32s2, etc.
# Doesn't match /tools/some-test/components/esp32s5.
#
# 5. Specific file:
#
# /tools/tools.json
#
# 6. File with a certain name anywhere in the tree
#
# .gitignore
#
* @esp-idf-codeowners/other
/.* @esp-idf-codeowners/tools
/.gitlab-ci.yml @esp-idf-codeowners/ci
/.gitlab/ci/ @esp-idf-codeowners/ci
/.pre-commit-config.yaml @esp-idf-codeowners/ci
/.readthedocs.yml @esp-idf-codeowners/docs
/CMakeLists.txt @esp-idf-codeowners/build-config
/Kconfig @esp-idf-codeowners/build-config
/add_path.sh @esp-idf-codeowners/tools
/export.* @esp-idf-codeowners/tools
/install.* @esp-idf-codeowners/tools
/sdkconfig.rename @esp-idf-codeowners/build-config
/sonar-project.properties @esp-idf-codeowners/ci
# sort-order-reset
/components/app_trace/ @esp-idf-codeowners/tools
/components/app_update/ @esp-idf-codeowners/system @esp-idf-codeowners/app-utilities
/components/asio/ @esp-idf-codeowners/network
/components/bootloader*/ @esp-idf-codeowners/system @esp-idf-codeowners/security
/components/bt/ @esp-idf-codeowners/bluetooth
/components/cbor/ @esp-idf-codeowners/app-utilities
/components/cmock/ @esp-idf-codeowners/system
/components/coap/ @esp-idf-codeowners/app-utilities
/components/console/ @esp-idf-codeowners/system @esp-idf-codeowners/app-utilities
/components/cxx/ @esp-idf-codeowners/system
/components/driver/ @esp-idf-codeowners/peripherals
/components/efuse/ @esp-idf-codeowners/system
/components/esp32*/ @esp-idf-codeowners/system
/components/esp_adc_cal/ @esp-idf-codeowners/peripherals
/components/esp_common/ @esp-idf-codeowners/system
/components/esp_eth/ @esp-idf-codeowners/network
/components/esp_event/ @esp-idf-codeowners/system
/components/esp_gdbstub/ @esp-idf-codeowners/tools
/components/esp_hid/ @esp-idf-codeowners/bluetooth
/components/esp_http_client/ @esp-idf-codeowners/app-utilities
/components/esp_http_server/ @esp-idf-codeowners/app-utilities
/components/esp_https_ota/ @esp-idf-codeowners/app-utilities
/components/esp_https_server/ @esp-idf-codeowners/app-utilities
/components/esp_hw_support/ @esp-idf-codeowners/system
/components/esp_ipc/ @esp-idf-codeowners/system
/components/esp_lcd/ @esp-idf-codeowners/peripherals
/components/esp_local_ctrl/ @esp-idf-codeowners/app-utilities
/components/esp_netif/ @esp-idf-codeowners/network
/components/esp_phy/ @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi @esp-idf-codeowners/ieee802154
/components/esp_pm/ @esp-idf-codeowners/power-management @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi
/components/esp_ringbuf/ @esp-idf-codeowners/system
/components/esp_rom/ @esp-idf-codeowners/system @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi
/components/esp_serial_slave_link/ @esp-idf-codeowners/peripherals
/components/esp_system/ @esp-idf-codeowners/system
/components/esp_timer/ @esp-idf-codeowners/system
/components/esp-tls/ @esp-idf-codeowners/app-utilities
/components/esp_websocket_client/ @esp-idf-codeowners/network
/components/esp_wifi/ @esp-idf-codeowners/wifi
/components/espcoredump/ @esp-idf-codeowners/tools
/components/esptool_py/ @esp-idf-codeowners/tools
/components/expat/ @esp-idf-codeowners/app-utilities
/components/fatfs/ @esp-idf-codeowners/storage
/components/freemodbus/ @esp-idf-codeowners/peripherals
/components/freertos/ @esp-idf-codeowners/system
/components/hal/ @esp-idf-codeowners/peripherals
/components/heap/ @esp-idf-codeowners/system
/components/idf_test/ @esp-idf-codeowners/ci
/components/ieee802154/ @esp-idf-codeowners/ieee802154
/components/jsmn/ @esp-idf-codeowners/app-utilities
/components/json/ @esp-idf-codeowners/app-utilities
/components/libsodium/ @esp-idf-codeowners/security
/components/log/ @esp-idf-codeowners/system
/components/lwip/ @esp-idf-codeowners/lwip
/components/mbedtls/ @esp-idf-codeowners/app-utilities @esp-idf-codeowners/security
/components/mdns/ @esp-idf-codeowners/network
/components/mqtt/ @esp-idf-codeowners/network
/components/newlib/ @esp-idf-codeowners/system @esp-idf-codeowners/tools
/components/nghttp/ @esp-idf-codeowners/app-utilities
/components/nvs_flash/ @esp-idf-codeowners/storage
/components/openssl/ @esp-idf-codeowners/network
/components/openthread/ @esp-idf-codeowners/ieee802154
/components/partition_table/ @esp-idf-codeowners/system
/components/perfmon/ @esp-idf-codeowners/tools
/components/protobuf-c/ @esp-idf-codeowners/app-utilities
/components/protocomm/ @esp-idf-codeowners/app-utilities
/components/pthread/ @esp-idf-codeowners/system
/components/sdmmc/ @esp-idf-codeowners/storage
/components/soc/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/system
/components/spi_flash/ @esp-idf-codeowners/peripherals
/components/spiffs/ @esp-idf-codeowners/storage
/components/tcp_transport/ @esp-idf-codeowners/network
/components/tcpip_adapter/ @esp-idf-codeowners/network
/components/tinyusb/ @esp-idf-codeowners/peripherals/usb
/components/touch_element/ @esp-idf-codeowners/peripherals
/components/ulp/ @esp-idf-codeowners/system
/components/unity/ @esp-idf-codeowners/ci
/components/usb/ @esp-idf-codeowners/peripherals/usb
/components/vfs/ @esp-idf-codeowners/storage
/components/wear_levelling/ @esp-idf-codeowners/storage
/components/wifi_provisioning/ @esp-idf-codeowners/app-utilities
/components/wpa_supplicant/ @esp-idf-codeowners/wifi
/components/xtensa/ @esp-idf-codeowners/system
/docs/ @esp-idf-codeowners/docs
/docs/**/api-reference/bluetooth/ @esp-idf-codeowners/bluetooth
/docs/**/api-reference/network/ @esp-idf-codeowners/network
/docs/**/api-reference/peripherals/ @esp-idf-codeowners/peripherals
/docs/**/api-reference/protocols/ @esp-idf-codeowners/network @esp-idf-codeowners/app-utilities
/docs/**/api-reference/provisioning/ @esp-idf-codeowners/app-utilities
/docs/**/api-reference/storage/ @esp-idf-codeowners/storage
/docs/**/api-reference/system/ @esp-idf-codeowners/system
/docs/**/security/ @esp-idf-codeowners/security
/examples/bluetooth/ @esp-idf-codeowners/bluetooth
/examples/build_system/ @esp-idf-codeowners/build-config
/examples/common_components/ @esp-idf-codeowners/system
/examples/cxx/ @esp-idf-codeowners/system
/examples/ethernet/ @esp-idf-codeowners/network
/examples/get-started/ @esp-idf-codeowners/system
/examples/mesh/ @esp-idf-codeowners/wifi
/examples/network/ @esp-idf-codeowners/network @esp-idf-codeowners/wifi
/examples/openthread/ @esp-idf-codeowners/ieee802154
/examples/peripherals/ @esp-idf-codeowners/peripherals
/examples/protocols/ @esp-idf-codeowners/network @esp-idf-codeowners/app-utilities
/examples/provisioning/ @esp-idf-codeowners/app-utilities
/examples/security/ @esp-idf-codeowners/security
/examples/storage/ @esp-idf-codeowners/storage
/examples/system/ @esp-idf-codeowners/system
/examples/wifi/ @esp-idf-codeowners/wifi
/examples/**/*.py @esp-idf-codeowners/ci @esp-idf-codeowners/tools
/make/ @esp-idf-codeowners/build-config
/tools/ @esp-idf-codeowners/tools
/tools/*_apps.py @esp-idf-codeowners/ci
/tools/ble/ @esp-idf-codeowners/app-utilities
/tools/catch/ @esp-idf-codeowners/ci
/tools/ci/ @esp-idf-codeowners/ci
/tools/cmake/ @esp-idf-codeowners/build-config
/tools/esp_prov/ @esp-idf-codeowners/app-utilities
/tools/find_build_apps/ @esp-idf-codeowners/ci
/tools/idf_size_yaml/ @esp-idf-codeowners/peripherals
/tools/kconfig*/ @esp-idf-codeowners/build-config
/tools/ldgen/ @esp-idf-codeowners/build-config
/tools/mass_mfg/ @esp-idf-codeowners/app-utilities
/tools/mocks/ @esp-idf-codeowners/system
## Note: owners here should be the same as the owners for the same example subdir, above
/tools/test_apps/build_system/ @esp-idf-codeowners/build-config
/tools/test_apps/protocols/ @esp-idf-codeowners/network @esp-idf-codeowners/app-utilities
/tools/test_apps/security/ @esp-idf-codeowners/security
/tools/test_apps/system/ @esp-idf-codeowners/system
/tools/test_apps/**/*.py @esp-idf-codeowners/ci @esp-idf-codeowners/tools
/tools/unit-test-app/ @esp-idf-codeowners/system @esp-idf-codeowners/tools
requirements.txt @esp-idf-codeowners/tools
# sort-order-reset
# ignore lists
/tools/ci/check_copyright_ignore.txt @esp-idf-codeowners/tools
/tools/ci/check_copyright_permanent_ignore.txt @esp-idf-codeowners/all-maintainers
/tools/ci/check_examples_cmake_make-cmake_ignore.txt @esp-idf-codeowners/tools
/tools/ci/check_examples_cmake_make-make_ignore.txt @esp-idf-codeowners/tools
/tools/ci/mypy_ignore_list.txt @esp-idf-codeowners/tools
* @esp-idf-codeowners/all-maintainers

View File

@ -73,7 +73,7 @@ update_test_cases:
AUTO_TEST_SCRIPT_PATH: "${CI_PROJECT_DIR}/auto_test_script"
PYTHON_VER: 3.7.7
script:
- export GIT_SHA=$(echo ${CI_COMMIT_SHA} | cut -c 1-8)
- export GIT_SHA=$(echo ${PIPELINE_COMMIT_SHA} | cut -c 1-8)
- retry_failed git clone $TEST_MANAGEMENT_REPO
- python $CHECKOUT_REF_SCRIPT test-management test-management
- cd test-management

View File

@ -82,6 +82,12 @@ build_ssc_esp32c3:
variables:
TARGET_NAME: "ESP32C3"
build_ssc_esp32s3:
extends: .build_ssc_template
parallel: 3
variables:
TARGET_NAME: "ESP32S3"
.build_esp_idf_tests_cmake_template:
extends: .build_template
dependencies: # set dependencies to null to avoid missing artifacts issue
@ -361,8 +367,9 @@ build_docker:
script:
- export LOCAL_CI_REPOSITORY_URL=$CI_REPOSITORY_URL
- if [ -n "$LOCAL_GITLAB_HTTPS_HOST" ]; then export LOCAL_CI_REPOSITORY_URL="https://gitlab-ci-token:${CI_JOB_TOKEN}@${LOCAL_GITLAB_HTTPS_HOST}/${CI_PROJECT_PATH}"; fi
- if [ -n "$LOCAL_GIT_MIRROR" ]; then export LOCAL_CI_REPOSITORY_URL="${LOCAL_GIT_MIRROR}/${CI_PROJECT_PATH}"; fi
- echo "Using repository at $LOCAL_CI_REPOSITORY_URL"
- export DOCKER_BUILD_ARGS="--build-arg IDF_CLONE_URL=${LOCAL_CI_REPOSITORY_URL} --build-arg IDF_CLONE_BRANCH_OR_TAG=${CI_COMMIT_REF_NAME} --build-arg IDF_CHECKOUT_REF=${CI_COMMIT_TAG:-$CI_COMMIT_SHA}"
- export DOCKER_BUILD_ARGS="--build-arg IDF_CLONE_URL=${LOCAL_CI_REPOSITORY_URL} --build-arg IDF_CLONE_BRANCH_OR_TAG=${CI_COMMIT_REF_NAME} --build-arg IDF_CHECKOUT_REF=${CI_COMMIT_TAG:-$PIPELINE_COMMIT_SHA}"
# Build
- docker build --tag ${DOCKER_TMP_IMAGE_NAME} ${DOCKER_BUILD_ARGS} tools/docker/
# We can't mount $PWD/examples/get-started/blink into the container, see https://gitlab.com/gitlab-org/gitlab-ce/issues/41227.
@ -370,31 +377,6 @@ build_docker:
# Therefore, build a copy of the example located inside the container.
- docker run --rm --workdir /opt/esp/idf/examples/get-started/blink ${DOCKER_TMP_IMAGE_NAME} idf.py build
.test-on-windows:
extends:
- .before_script_minimal
- .rules:build:windows
stage: host_test
needs: []
image: $CI_DOCKER_REGISTRY/esp32-toolchain-win-cross
tags:
- build
script:
- cd $TEST_DIR
- mkdir build
- cd build
- cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain-i686-w64-mingw32.cmake -DCMAKE_BUILD_TYPE=Release ..
- cmake --build .
build_idf_exe:
extends: .test-on-windows
artifacts:
paths:
- tools/windows/idf_exe/build/idf-exe-v*.zip
expire_in: 4 days
variables:
TEST_DIR: tools/windows/idf_exe
# This job builds template app with permutations of targets and optimization levels
build_template_app:
extends:

View File

@ -69,19 +69,6 @@ build:integration_test:
- build_components
- build_system
# -------------
# Special Cases
# -------------
"build:example_test-esp32c3": # esp32c3 test is only run by label, but build jobs should always be triggered
labels:
- build
- example_test
patterns:
- build_components
- build_system
- build-example_test
- example_test
####################
# Target Test Jobs #
####################
@ -121,15 +108,6 @@ build:integration_test:
- test:target_test
- test:any_test
"test:example_test-esp32c3": # For esp32c3 we trigger only with label
"labels:example_test-esp32c3":
labels:
- example_test_esp32c3
included_in:
- build:example_test-esp32c3
- build:target_test
"test:integration_test":
labels:
- "integration_test"

View File

@ -39,8 +39,8 @@ deploy_test_result:
AUTO_TEST_SCRIPT_PATH: "${CI_PROJECT_DIR}/auto_test_script"
script:
- add_gitlab_ssh_keys
- export GIT_SHA=$(echo ${CI_COMMIT_SHA} | cut -c 1-8)
- export REV_COUNT=$(git rev-list --count HEAD)
- export GIT_SHA=$(echo ${PIPELINE_COMMIT_SHA} | cut -c 1-8)
- export REV_COUNT=$(git rev-list --count ${PIPELINE_COMMIT_SHA} --)
- export SUMMARY="IDF CI test result for $GIT_SHA (r${REV_COUNT})"
# artifacts of job update_test_cases creates test-management folder
# we need to remove it so we can clone test-management folder again

View File

@ -162,7 +162,7 @@ build_docs_pdf:
dependencies: []
script:
- add_doc_server_ssh_keys $DOCS_DEPLOY_PRIVATEKEY $DOCS_DEPLOY_SERVER $DOCS_DEPLOY_SERVER_USER
- export GIT_VER=$(git describe --always)
- export GIT_VER=$(git describe --always ${PIPELINE_COMMIT_SHA} --)
- pip install -r docs/requirements.txt
- deploy-docs

View File

@ -245,7 +245,7 @@ test_espcoredump:
expire_in: 1 week
variables:
IDF_COREDUMP_ELF_REPO: "https://gitlab-ci-token:${BOT_TOKEN}@${CI_SERVER_HOST}:${CI_SERVER_PORT}/idf/idf-coredump-elf.git"
IDF_COREDUMP_ELF_TAG: idf-20210910-00
IDF_COREDUMP_ELF_TAG: idf-20210915
# install CMake version specified in tools.json
SETUP_TOOLS_LIST: "all"
script:

View File

@ -22,7 +22,7 @@ check_pre_commit_master_release:
- .check_pre_commit_template
- .rules:protected
script:
- git diff-tree --no-commit-id --name-only -r $CI_COMMIT_SHA | xargs pre-commit run --files
- git diff-tree --no-commit-id --name-only -r $PIPELINE_COMMIT_SHA | xargs pre-commit run --files
check_pre_commit_MR:
extends:
@ -157,10 +157,14 @@ scan_tests:
TEST_APPS_OUTPUT_DIR: ${CI_PROJECT_DIR}/tools/test_apps/test_configs
COMPONENT_UT_OUTPUT_DIR: ${CI_PROJECT_DIR}/component_ut/test_configs
CI_SCAN_TESTS_PY: ${CI_PROJECT_DIR}/tools/ci/python_packages/ttfw_idf/CIScanTests.py
EXTRA_TEST_DIRS: >-
examples/bluetooth/esp_ble_mesh/ble_mesh_console
examples/bluetooth/hci/controller_hci_uart_esp32
examples/wifi/iperf
script:
- set_component_ut_vars
- run_cmd python $CI_SCAN_TESTS_PY example_test $EXAMPLE_TEST_DIR -b make --exclude examples/build_system/idf_as_lib -c $CI_TARGET_TEST_CONFIG_FILE -o $EXAMPLE_TEST_OUTPUT_DIR
- run_cmd python $CI_SCAN_TESTS_PY example_test $EXAMPLE_TEST_DIR -b cmake --exclude examples/build_system/idf_as_lib -c $CI_TARGET_TEST_CONFIG_FILE -o $EXAMPLE_TEST_OUTPUT_DIR
- run_cmd python $CI_SCAN_TESTS_PY example_test $EXAMPLE_TEST_DIR -b cmake --exclude examples/build_system/idf_as_lib -c $CI_TARGET_TEST_CONFIG_FILE -o $EXAMPLE_TEST_OUTPUT_DIR --extra_test_dirs $EXTRA_TEST_DIRS
- run_cmd python $CI_SCAN_TESTS_PY test_apps $TEST_APPS_TEST_DIR -c $CI_TARGET_TEST_CONFIG_FILE -o $TEST_APPS_OUTPUT_DIR
- run_cmd python $CI_SCAN_TESTS_PY component_ut $COMPONENT_UT_DIRS --exclude $COMPONENT_UT_EXCLUDES -c $CI_TARGET_TEST_CONFIG_FILE -o $COMPONENT_UT_OUTPUT_DIR
@ -190,6 +194,6 @@ check_commit_msg:
extends: .pre_check_job_template
script:
- git status
- git log -n10 --oneline
- git log -n10 --oneline ${PIPELINE_COMMIT_SHA}
# commit start with "WIP: " need to be squashed before merge
- 'git log --pretty=%s master.. -- | grep "^WIP: " && exit 1 || exit 0'
- 'git log --pretty=%s origin/master..${PIPELINE_COMMIT_SHA} -- | grep -i "^WIP:" && exit 1 || exit 0'

View File

@ -675,12 +675,6 @@
- <<: *if-dev-push
changes: *patterns-windows
.rules:labels:example_test-esp32c3:
rules:
- <<: *if-label-build-only
when: never
- <<: *if-label-example_test_esp32c3
.rules:labels:fuzzer_test-weekend_test:
rules:
- <<: *if-label-fuzzer_test
@ -715,6 +709,7 @@
- <<: *if-label-custom_test_esp32s3
- <<: *if-label-example_test
- <<: *if-label-example_test_esp32
- <<: *if-label-example_test_esp32c3
- <<: *if-label-example_test_esp32s2
- <<: *if-label-example_test_esp32s3
- <<: *if-label-host_test
@ -841,6 +836,18 @@
- <<: *if-dev-push
changes: *patterns-example_test
.rules:test:example_test-esp32c3:
rules:
- <<: *if-protected
- <<: *if-label-build-only
when: never
- <<: *if-label-example_test
- <<: *if-label-example_test_esp32c3
- <<: *if-dev-push
changes: *patterns-build-example_test
- <<: *if-dev-push
changes: *patterns-example_test
.rules:test:example_test-esp32s2:
rules:
- <<: *if-protected
@ -909,6 +916,7 @@
- <<: *if-label-custom_test_esp32s3
- <<: *if-label-example_test
- <<: *if-label-example_test_esp32
- <<: *if-label-example_test_esp32c3
- <<: *if-label-example_test_esp32s2
- <<: *if-label-example_test_esp32s3
- <<: *if-label-integration_test

View File

@ -123,7 +123,7 @@ code_quality_report:
-Dsonar.branch.name=$CI_COMMIT_REF_NAME
-Dsonar.cxx.clangtidy.reportPath=$REPORT_PATTERN
-Dsonar.exclusions=$EXCLUSIONS
-Dsonar.gitlab.commit_sha=$CI_COMMIT_SHA
-Dsonar.gitlab.commit_sha=$PIPELINE_COMMIT_SHA
-Dsonar.gitlab.ref_name=$CI_COMMIT_REF_NAME
-Dsonar.host.url=$SONAR_HOST_URL
-Dsonar.login=$SONAR_LOGIN

View File

@ -75,7 +75,7 @@ test_weekend_mqtt:
.example_test_esp32c3_template:
extends:
- .example_test_template
- .rules:labels:example_test-esp32c3
- .rules:test:example_test-esp32c3
.example_test_esp32s3_template:
extends:
@ -664,7 +664,7 @@ UT_046:
UT_047:
extends: .unit_test_esp32s2_template
parallel: 5
parallel: 6
tags:
- ESP32S2_IDF
- UT_T1_1
@ -683,7 +683,7 @@ UT_S2_SDSPI:
UT_C3:
extends: .unit_test_esp32c3_template
parallel: 33
parallel: 34
tags:
- ESP32C3_IDF
- UT_T1_1

View File

@ -97,17 +97,6 @@ repos:
- 'mypy-extensions==0.4.3'
language: python
types: [python]
- id: check-copyright
name: Check copyright notices
entry: tools/ci/check_copyright.py --verbose --replace
additional_dependencies:
- 'comment_parser == 1.2.3'
- 'thefuzz == 0.19.0'
- 'thefuzz[speedup] == 0.19.0; sys_platform != "win32"'
# don't depend on python-Levenshtein on Windows, as it requires Microsoft C++ Build Tools to install
language: python
files: \.(py|c|h|cpp|hpp|ld)$
require_serial: true
- id: check-tools-files-patterns
name: Check tools dir files patterns
entry: tools/ci/check_tools_files_patterns.py
@ -120,4 +109,4 @@ repos:
rev: v4.0.1
hooks:
- id: file-contents-sorter
files: 'tools\/ci\/(executable-list\.txt|mypy_ignore_list\.txt|check_copyright_ignore\.txt|check_copyright_permanent_ignore\.txt)'
files: 'tools\/ci\/(executable-list\.txt|mypy_ignore_list\.txt)'

View File

@ -60,22 +60,16 @@ esp_err_t esp_apptrace_lock_take(esp_apptrace_lock_t *lock, esp_apptrace_tmo_t *
int res;
while (1) {
//Todo: Replace the current locking mechanism and int_state with portTRY_ENTER_CRITICAL() instead.
// do not overwrite lock->int_state before we actually acquired the mux
unsigned int_state = portENTER_CRITICAL_NESTED();
// FIXME: if mux is busy it is not good idea to loop during the whole tmo with disabled IRQs.
// So we check mux state using zero tmo, restore IRQs and let others tasks/IRQs to run on this CPU
// while we are doing our own tmo check.
#ifdef CONFIG_FREERTOS_PORTMUX_DEBUG
bool success = vPortCPUAcquireMutexTimeout(&lock->mux, 0, __FUNCTION__, __LINE__);
#else
unsigned int_state = portSET_INTERRUPT_MASK_FROM_ISR();
bool success = vPortCPUAcquireMutexTimeout(&lock->mux, 0);
#endif
if (success) {
lock->int_state = int_state;
return ESP_OK;
}
portEXIT_CRITICAL_NESTED(int_state);
// we can be preempted from this place till the next call (above) to portENTER_CRITICAL_NESTED()
portCLEAR_INTERRUPT_MASK_FROM_ISR(int_state);
// we can be preempted from this place till the next call (above) to portSET_INTERRUPT_MASK_FROM_ISR()
res = esp_apptrace_tmo_check(tmo);
if (res != ESP_OK) {
break;
@ -90,12 +84,8 @@ esp_err_t esp_apptrace_lock_give(esp_apptrace_lock_t *lock)
unsigned int_state = lock->int_state;
// after call to the following func we can not be sure that lock->int_state
// is not overwritten by other CPU who has acquired the mux just after we released it. See esp_apptrace_lock_take().
#ifdef CONFIG_FREERTOS_PORTMUX_DEBUG
vPortCPUReleaseMutex(&lock->mux, __FUNCTION__, __LINE__);
#else
vPortCPUReleaseMutex(&lock->mux);
#endif
portEXIT_CRITICAL_NESTED(int_state);
portCLEAR_INTERRUPT_MASK_FROM_ISR(int_state);
return ESP_OK;
}

View File

@ -68,7 +68,7 @@ typedef struct {
*/
static inline void esp_apptrace_lock_init(esp_apptrace_lock_t *lock)
{
vPortCPUInitializeMutex(&lock->mux);
portMUX_INITIALIZE(&lock->mux);
lock->int_state = 0;
}

View File

@ -614,6 +614,22 @@ menu "Security features"
Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version before enabling.
config SECURE_BOOT_ENABLE_AGGRESSIVE_KEY_REVOKE
bool "Enable Aggressive key revoke strategy"
depends on SECURE_BOOT && (IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3)
default N
help
If this option is set, ROM bootloader will revoke the public key digest burned in efuse block
if it fails to verify the signature of software bootloader with it.
Revocation of keys does not happen when enabling secure boot. Once secure boot is enabled,
key revocation checks will be done on subsequent boot-up, while verifying the software bootloader
This feature provides a strong resistance against physical attacks on the device.
NOTE: Once a digest slot is revoked, it can never be used again to verify an image
This can lead to permanent bricking of the device, in case all keys are revoked
because of signature verification failure.
choice SECURE_BOOTLOADER_KEY_ENCODING
bool "Hardware Key Encoding"
depends on SECURE_BOOTLOADER_REFLASHABLE

View File

@ -30,7 +30,6 @@ SECTIONS
*libbootloader_support.a:bootloader_flash.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_random.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_random*.*(.literal.bootloader_random_disable .text.bootloader_random_disable)
*libbootloader_support.a:bootloader_random*.*(.literal.bootloader_random_enable .text.bootloader_random_enable)
*libesp_common.a:fpga_overrides.*(.literal.bootloader_fill_random .text.bootloader_fill_random)
*libbootloader_support.a:bootloader_efuse_esp32s3.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_utility.*(.literal .text .literal.* .text.*)

View File

@ -96,9 +96,10 @@ void bootloader_atexit(void);
esp_err_t bootloader_sha256_hex_to_str(char *out_str, const uint8_t *in_array_hex, size_t len);
/**
* @brief Debug log contents of a buffer as hexadecimal
* @brief Debug log contents of a buffer as hexadecimal.
*
* @note Only works if component log level is DEBUG or higher.
* @note - Only works if component log level is DEBUG or higher.
* - It will print at most 128 bytes from @c buffer.
*
* @param buffer Buffer to log
* @param length Length of buffer in bytes. Maximum length 128 bytes.

View File

@ -18,6 +18,13 @@
}
#else
#if !defined CONFIG_IDF_TARGET_ESP32S3
#define RNG_CPU_WAIT_CYCLE_NUM (80 * 32 * 2) /* extra factor of 2 is precautionary */
#else
#define RNG_CPU_WAIT_CYCLE_NUM (80 * 23) /* 45 KHz reading frequency is the maximum we have tested so far on S3 */
#endif
__attribute__((weak)) void bootloader_fill_random(void *buffer, size_t length)
{
uint8_t *buffer_bytes = (uint8_t *)buffer;
@ -40,7 +47,7 @@
do {
random ^= REG_READ(WDEV_RND_REG);
now = cpu_hal_get_cycle_count();
} while (now - start < 80 * 32 * 2); /* extra factor of 2 is precautionary */
} while (now - start < RNG_CPU_WAIT_CYCLE_NUM);
}
buffer_bytes[i] = random >> ((i % 4) * 8);
}

View File

@ -6,18 +6,92 @@
#include "sdkconfig.h"
#include "bootloader_random.h"
#include "esp_log.h"
static const char *TAG = "bootloader_random";
#include "soc/system_reg.h"
#include "soc/syscon_reg.h"
#include "soc/apb_saradc_reg.h"
#include "soc/rtc_cntl_reg.h"
#include "soc/sens_reg.h"
#include "regi2c_ctrl.h"
#include "regi2c_saradc.h"
void bootloader_random_enable(void)
{
ESP_LOGW(TAG, "RNG for ESP32-S3 not currently supported"); // IDF-1878
// Don't forget to remove the following line
// *libbootloader_support.a:bootloader_random*.*(.literal.bootloader_random_enable .text.bootloader_random_enable)
// In the bootloader.ld when RNG support is ready for ESP32-S3
SET_PERI_REG_MASK(SYSTEM_WIFI_CLK_EN_REG, SYSTEM_WIFI_CLK_RNG_EN);
// Enable 8M clock source for RNG (this is actually enough to produce strong random results,
// but enabling the SAR ADC as well adds some insurance.)
REG_SET_BIT(RTC_CNTL_CLK_CONF_REG, RTC_CNTL_DIG_CLK8M_EN);
/// Enable SAR ADC to read a disconnected input for additional entropy
// Reset ADC clock
SET_PERI_REG_MASK(SYSTEM_PERIP_CLK_EN0_REG, SYSTEM_APB_SARADC_CLK_EN);
CLEAR_PERI_REG_MASK(SYSTEM_PERIP_CLK_EN0_REG, SYSTEM_APB_SARADC_CLK_EN);
// Enable clock and select clock source for ADC digital controller
REG_SET_FIELD(APB_SARADC_APB_ADC_CLKM_CONF_REG, APB_SARADC_CLK_SEL, 2); //APB clock
SET_PERI_REG_MASK(APB_SARADC_CTRL_REG, APB_SARADC_SAR_CLK_GATED);
SET_PERI_REG_MASK(APB_SARADC_APB_ADC_CLKM_CONF_REG, APB_SARADC_CLK_EN);
// Read freq = apb_clk / (APB_SARADC_CLKM_DIV_NUM + 1) / TIMER_TARGET / 2
// Internal ADC sample freq = apb_clk / (APB_SARADC_CLKM_DIV_NUM + 1) / (APB_SARADC_SAR_CLK_DIV + 1)
// Read frequency has to be at least 35 times lower than the sampling frequency
REG_SET_FIELD(APB_SARADC_APB_ADC_CLKM_CONF_REG, APB_SARADC_CLKM_DIV_NUM, 3);
REG_SET_FIELD(APB_SARADC_CTRL_REG, APB_SARADC_SAR_CLK_DIV, 3); // SAR clock divider has to be at least 2
REG_SET_FIELD(APB_SARADC_CTRL2_REG, APB_SARADC_TIMER_TARGET, 70);
CLEAR_PERI_REG_MASK(APB_SARADC_CTRL_REG, APB_SARADC_START_FORCE);
REG_SET_FIELD(SENS_SAR_POWER_XPD_SAR_REG, SENS_FORCE_XPD_SAR, 3);
CLEAR_PERI_REG_MASK(APB_SARADC_CTRL2_REG, APB_SARADC_MEAS_NUM_LIMIT);
REG_SET_FIELD(APB_SARADC_CTRL_REG, APB_SARADC_WORK_MODE, 1);
REG_SET_FIELD(APB_SARADC_CTRL_REG, APB_SARADC_SAR2_PATT_LEN, 0);
WRITE_PERI_REG(APB_SARADC_SAR2_PATT_TAB1_REG,0xafffff); // Test internal voltage if the channel info is 0xa.
REG_SET_FIELD(APB_SARADC_CTRL_REG, APB_SARADC_SAR1_PATT_LEN, 0);
WRITE_PERI_REG(APB_SARADC_SAR1_PATT_TAB1_REG,0xafffff); // Test internal voltage if the channel info is 0xa.
// Enable adc1 digital controller
SET_PERI_REG_MASK(SENS_SAR_MEAS1_MUX_REG, SENS_SAR1_DIG_FORCE);
// Set SARADC2 arbiter
CLEAR_PERI_REG_MASK(SENS_SAR_MEAS2_MUX_REG, SENS_SAR2_RTC_FORCE);
CLEAR_PERI_REG_MASK(APB_SARADC_APB_ADC_ARB_CTRL_REG, APB_SARADC_ADC_ARB_GRANT_FORCE);
CLEAR_PERI_REG_MASK(APB_SARADC_APB_ADC_ARB_CTRL_REG, APB_SARADC_ADC_ARB_FIX_PRIORITY);
// Disable ADC filter
REG_SET_FIELD(APB_SARADC_FILTER_CTRL0_REG, APB_SARADC_FILTER_CHANNEL0, 0xD);
REG_SET_FIELD(APB_SARADC_FILTER_CTRL0_REG, APB_SARADC_FILTER_CHANNEL1, 0xD);
// Start ADC sample
SET_PERI_REG_MASK(APB_SARADC_CTRL2_REG, APB_SARADC_TIMER_SEL);
SET_PERI_REG_MASK(APB_SARADC_CTRL2_REG, APB_SARADC_TIMER_EN);
/*Choose the appropriate internal voltage to measure*/
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENCAL_REF_ADDR, 1);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_TSENS_ADDR, 1);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_RTC_ADDR, 0);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_DTEST_RTC_ADDR, 0);
}
void bootloader_random_disable(void)
{
ESP_LOGW(TAG, "RNG for ESP32-S3 not currently supported"); // IDF-1878
/* Restore internal I2C bus state */
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENCAL_REF_ADDR, 0);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_TSENS_ADDR, 0);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_RTC_ADDR, 0);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_DTEST_RTC_ADDR, 0);
/* Restore SARADC to default mode */
CLEAR_PERI_REG_MASK(SENS_SAR_MEAS1_MUX_REG, SENS_SAR1_DIG_FORCE);
SET_PERI_REG_MASK(SYSTEM_PERIP_CLK_EN0_REG, SYSTEM_APB_SARADC_CLK_EN);
REG_SET_FIELD(SENS_SAR_POWER_XPD_SAR_REG, SENS_FORCE_XPD_SAR, 0);
CLEAR_PERI_REG_MASK(APB_SARADC_CTRL2_REG, APB_SARADC_TIMER_EN);
CLEAR_PERI_REG_MASK(SENS_SAR_PERI_CLK_GATE_CONF_REG, SENS_SARADC_CLK_EN);
CLEAR_PERI_REG_MASK(SYSTEM_PERIP_CLK_EN0_REG, SYSTEM_APB_SARADC_CLK_EN);
/* Note: the 8M CLK entropy source continues running even after this function is called,
but as mentioned above it's better to enable Wi-Fi or BT or call bootloader_random_enable()
in order to get a secondary entropy source.
*/
}

View File

@ -78,6 +78,7 @@
#include "bootloader_console.h"
#include "bootloader_soc.h"
#include "esp_efuse.h"
#include "esp_fault.h"
static const char *TAG = "boot";
@ -269,9 +270,16 @@ static esp_err_t write_otadata(esp_ota_select_entry_t *otadata, uint32_t offset,
static bool check_anti_rollback(const esp_partition_pos_t *partition)
{
#ifdef CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
esp_app_desc_t app_desc;
esp_app_desc_t app_desc = {};
esp_err_t err = bootloader_common_get_partition_description(partition, &app_desc);
return err == ESP_OK && esp_efuse_check_secure_version(app_desc.secure_version) == true;
if (err != ESP_OK) {
ESP_LOGE(TAG, "Failed to get partition description %d", err);
return false;
}
bool sec_ver = esp_efuse_check_secure_version(app_desc.secure_version);
/* Anti FI check */
ESP_FAULT_ASSERT(sec_ver == esp_efuse_check_secure_version(app_desc.secure_version));
return sec_ver;
#else
return true;
#endif
@ -284,6 +292,8 @@ static void update_anti_rollback(const esp_partition_pos_t *partition)
esp_err_t err = bootloader_common_get_partition_description(partition, &app_desc);
if (err == ESP_OK) {
esp_efuse_update_secure_version(app_desc.secure_version);
} else {
ESP_LOGE(TAG, "Failed to get partition description %d", err);
}
}
@ -700,7 +710,8 @@ static void set_cache_and_start_app(
uint32_t irom_size,
uint32_t entry_addr)
{
int rc;
int rc __attribute__((unused));
ESP_LOGD(TAG, "configure drom and irom and start");
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Disable(0);
@ -720,8 +731,8 @@ static void set_cache_and_start_app(
#endif
/* Clear the MMU entries that are already set up,
so the new app only has the mappings it creates.
*/
* so the new app only has the mappings it creates.
*/
#if CONFIG_IDF_TARGET_ESP32
for (int i = 0; i < DPORT_FLASH_MMU_TABLE_SIZE; i++) {
DPORT_PRO_FLASH_MMU_TABLE[i] = DPORT_FLASH_MMU_TABLE_INVALID_VAL;
@ -732,31 +743,33 @@ static void set_cache_and_start_app(
}
#endif
uint32_t drom_load_addr_aligned = drom_load_addr & MMU_FLASH_MASK;
uint32_t drom_addr_aligned = drom_addr & MMU_FLASH_MASK;
uint32_t drom_page_count = bootloader_cache_pages_to_map(drom_size, drom_load_addr);
ESP_LOGV(TAG, "d mmu set paddr=%08x vaddr=%08x size=%d n=%d",
drom_addr & MMU_FLASH_MASK, drom_load_addr_aligned, drom_size, drom_page_count);
drom_addr_aligned, drom_load_addr_aligned, drom_size, drom_page_count);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(0, 0, drom_load_addr_aligned, drom_addr & MMU_FLASH_MASK, 64, drom_page_count);
rc = cache_flash_mmu_set(0, 0, drom_load_addr_aligned, drom_addr_aligned, 64, drom_page_count);
#elif CONFIG_IDF_TARGET_ESP32S2
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr & 0xffff0000, drom_addr & 0xffff0000, 64, drom_page_count, 0);
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr_aligned, drom_addr_aligned, 64, drom_page_count, 0);
#elif CONFIG_IDF_TARGET_ESP32S3
rc = Cache_Dbus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr & 0xffff0000, drom_addr & 0xffff0000, 64, drom_page_count, 0);
rc = Cache_Dbus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr_aligned, drom_addr_aligned, 64, drom_page_count, 0);
#elif CONFIG_IDF_TARGET_ESP32C3
rc = Cache_Dbus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr & 0xffff0000, drom_addr & 0xffff0000, 64, drom_page_count, 0);
rc = Cache_Dbus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr_aligned, drom_addr_aligned, 64, drom_page_count, 0);
#elif CONFIG_IDF_TARGET_ESP32H2
rc = Cache_Dbus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr & 0xffff0000, drom_addr & 0xffff0000, 64, drom_page_count, 0);
rc = Cache_Dbus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr_aligned, drom_addr_aligned, 64, drom_page_count, 0);
#endif
ESP_LOGV(TAG, "rc=%d", rc);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(1, 0, drom_load_addr_aligned, drom_addr & MMU_FLASH_MASK, 64, drom_page_count);
rc = cache_flash_mmu_set(1, 0, drom_load_addr_aligned, drom_addr_aligned, 64, drom_page_count);
ESP_LOGV(TAG, "rc=%d", rc);
#endif
uint32_t irom_load_addr_aligned = irom_load_addr & MMU_FLASH_MASK;
uint32_t irom_addr_aligned = irom_addr & MMU_FLASH_MASK;
uint32_t irom_page_count = bootloader_cache_pages_to_map(irom_size, irom_load_addr);
ESP_LOGV(TAG, "i mmu set paddr=%08x vaddr=%08x size=%d n=%d",
irom_addr & MMU_FLASH_MASK, irom_load_addr_aligned, irom_size, irom_page_count);
irom_addr_aligned, irom_load_addr_aligned, irom_size, irom_page_count);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(0, 0, irom_load_addr_aligned, irom_addr & MMU_FLASH_MASK, 64, irom_page_count);
rc = cache_flash_mmu_set(0, 0, irom_load_addr_aligned, irom_addr_aligned, 64, irom_page_count);
#elif CONFIG_IDF_TARGET_ESP32S2
uint32_t iram1_used = 0;
if (irom_load_addr + irom_size > IRAM1_ADDRESS_LOW) {
@ -767,17 +780,17 @@ static void set_cache_and_start_app(
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, IRAM1_ADDRESS_LOW, 0, 64, 64, 1);
REG_CLR_BIT(EXTMEM_PRO_ICACHE_CTRL1_REG, EXTMEM_PRO_ICACHE_MASK_IRAM1);
}
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr & 0xffff0000, irom_addr & 0xffff0000, 64, irom_page_count, 0);
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr_aligned, irom_addr_aligned, 64, irom_page_count, 0);
#elif CONFIG_IDF_TARGET_ESP32S3
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr & 0xffff0000, irom_addr & 0xffff0000, 64, irom_page_count, 0);
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr_aligned, irom_addr_aligned, 64, irom_page_count, 0);
#elif CONFIG_IDF_TARGET_ESP32C3
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr & 0xffff0000, irom_addr & 0xffff0000, 64, irom_page_count, 0);
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr_aligned, irom_addr_aligned, 64, irom_page_count, 0);
#elif CONFIG_IDF_TARGET_ESP32H2
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr & 0xffff0000, irom_addr & 0xffff0000, 64, irom_page_count, 0);
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr_aligned, irom_addr_aligned, 64, irom_page_count, 0);
#endif
ESP_LOGV(TAG, "rc=%d", rc);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(1, 0, irom_load_addr_aligned, irom_addr & MMU_FLASH_MASK, 64, irom_page_count);
rc = cache_flash_mmu_set(1, 0, irom_load_addr_aligned, irom_addr_aligned, 64, irom_page_count);
ESP_LOGV(TAG, "rc=%d", rc);
DPORT_REG_CLR_BIT( DPORT_PRO_CACHE_CTRL1_REG,
(DPORT_PRO_CACHE_MASK_IRAM0) | (DPORT_PRO_CACHE_MASK_IRAM1 & 0) |
@ -865,22 +878,19 @@ esp_err_t bootloader_sha256_hex_to_str(char *out_str, const uint8_t *in_array_he
void bootloader_debug_buffer(const void *buffer, size_t length, const char *label)
{
#if BOOT_LOG_LEVEL >= LOG_LEVEL_DEBUG
assert(length <= 128); // Avoid unbounded VLA size
#if CONFIG_BOOTLOADER_LOG_LEVEL >= 4
const uint8_t *bytes = (const uint8_t *)buffer;
char hexbuf[length * 2 + 1];
hexbuf[length * 2] = 0;
for (size_t i = 0; i < length; i++) {
for (int shift = 0; shift < 2; shift++) {
uint8_t nibble = (bytes[i] >> (shift ? 0 : 4)) & 0x0F;
if (nibble < 10) {
hexbuf[i * 2 + shift] = '0' + nibble;
} else {
hexbuf[i * 2 + shift] = 'a' + nibble - 10;
}
}
}
const size_t output_len = MIN(length, 128);
char hexbuf[128 * 2 + 1];
bootloader_sha256_hex_to_str(hexbuf, bytes, output_len);
hexbuf[output_len * 2] = '\0';
ESP_LOGD(TAG, "%s: %s", label, hexbuf);
#else
(void) buffer;
(void) length;
(void) label;
#endif
}

View File

@ -79,7 +79,7 @@ esp_err_t esp_secure_boot_enable_secure_features(void)
return err;
}
#else
ESP_LOGW(TAG, "Not disabling ROM Download mode - SECURITY COMPROMISED");
ESP_LOGW(TAG, "UART ROM Download mode kept enabled - SECURITY COMPROMISED");
#endif
#ifndef CONFIG_SECURE_BOOT_V2_ALLOW_EFUSE_RD_DIS

View File

@ -20,9 +20,20 @@ esp_err_t esp_secure_boot_enable_secure_features(void)
#ifdef CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE
ESP_LOGI(TAG, "Enabling Security download mode...");
esp_efuse_write_field_bit(ESP_EFUSE_ENABLE_SECURITY_DOWNLOAD);
esp_err_t err = esp_efuse_enable_rom_secure_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not enable Security download mode...");
return err;
}
#elif CONFIG_SECURE_DISABLE_ROM_DL_MODE
ESP_LOGI(TAG, "Disable ROM Download mode...");
esp_err_t err = esp_efuse_disable_rom_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not disable ROM Download mode...");
return err;
}
#else
ESP_LOGW(TAG, "Not enabling Security download mode - SECURITY COMPROMISED");
ESP_LOGW(TAG, "UART ROM Download mode kept enabled - SECURITY COMPROMISED");
#endif
#ifndef CONFIG_SECURE_BOOT_ALLOW_JTAG

View File

@ -250,11 +250,23 @@ esp_err_t esp_secure_boot_v2_permanently_enable(const esp_image_metadata_t *imag
esp_efuse_write_field_bit(ESP_EFUSE_DIS_LEGACY_SPI_BOOT);
esp_err_t err = ESP_FAIL;
#ifdef CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE
ESP_LOGI(TAG, "Enabling Security download mode...");
esp_efuse_write_field_bit(ESP_EFUSE_ENABLE_SECURITY_DOWNLOAD);
err = esp_efuse_enable_rom_secure_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not enable Security download mode...");
return err;
}
#elif CONFIG_SECURE_DISABLE_ROM_DL_MODE
ESP_LOGI(TAG, "Disable ROM Download mode...");
err = esp_efuse_disable_rom_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not disable ROM Download mode...");
return err;
}
#else
ESP_LOGW(TAG, "Not enabling Security download mode - SECURITY COMPROMISED");
ESP_LOGW(TAG, "UART ROM Download mode kept enabled - SECURITY COMPROMISED");
#endif
#ifndef CONFIG_SECURE_BOOT_ALLOW_JTAG
@ -272,7 +284,7 @@ esp_err_t esp_secure_boot_v2_permanently_enable(const esp_image_metadata_t *imag
esp_efuse_write_field_bit(ESP_EFUSE_SECURE_BOOT_EN);
esp_err_t err = esp_efuse_batch_write_commit();
err = esp_efuse_batch_write_commit();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Error programming security eFuses (err=0x%x).", err);
return err;

View File

@ -21,9 +21,20 @@ esp_err_t esp_secure_boot_enable_secure_features(void)
#ifdef CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE
ESP_LOGI(TAG, "Enabling Security download mode...");
esp_efuse_write_field_bit(ESP_EFUSE_ENABLE_SECURITY_DOWNLOAD);
esp_err_t err = esp_efuse_enable_rom_secure_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not enable Security download mode...");
return err;
}
#elif CONFIG_SECURE_DISABLE_ROM_DL_MODE
ESP_LOGI(TAG, "Disable ROM Download mode...");
esp_err_t err = esp_efuse_disable_rom_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not disable ROM Download mode...");
return err;
}
#else
ESP_LOGW(TAG, "Not enabling Security download mode - SECURITY COMPROMISED");
ESP_LOGW(TAG, "UART ROM Download mode kept enabled - SECURITY COMPROMISED");
#endif
#ifndef CONFIG_SECURE_BOOT_ALLOW_JTAG

View File

@ -20,9 +20,20 @@ esp_err_t esp_secure_boot_enable_secure_features(void)
#ifdef CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE
ESP_LOGI(TAG, "Enabling Security download mode...");
esp_efuse_write_field_bit(ESP_EFUSE_ENABLE_SECURITY_DOWNLOAD);
esp_err_t err = esp_efuse_enable_rom_secure_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not enable Security download mode...");
return err;
}
#elif CONFIG_SECURE_DISABLE_ROM_DL_MODE
ESP_LOGI(TAG, "Disable ROM Download mode...");
esp_err_t err = esp_efuse_disable_rom_download_mode();
if (err != ESP_OK) {
ESP_LOGE(TAG, "Could not disable ROM Download mode...");
return err;
}
#else
ESP_LOGW(TAG, "Not enabling Security download mode - SECURITY COMPROMISED");
ESP_LOGW(TAG, "UART ROM Download mode kept enabled - SECURITY COMPROMISED");
#endif
#ifndef CONFIG_SECURE_BOOT_ALLOW_JTAG

View File

@ -104,7 +104,8 @@ static esp_err_t check_and_generate_encryption_keys(void)
#endif // CONFIG_SECURE_FLASH_ENCRYPTION_AES256
#endif // CONFIG_IDF_TARGET_ESP32
esp_efuse_block_t blocks[BLOCKS_NEEDED];
/* Initialize all efuse block entries to invalid (max) value */
esp_efuse_block_t blocks[BLOCKS_NEEDED] = {[0 ... BLOCKS_NEEDED-1] = EFUSE_BLK_KEY_MAX};
bool has_key = true;
for (unsigned i = 0; i < BLOCKS_NEEDED; i++) {
bool tmp_has_key = esp_efuse_find_purpose(purposes[i], &blocks[i]);

View File

@ -156,11 +156,11 @@ static esp_err_t check_and_generate_secure_boot_keys(const esp_image_metadata_t
return ret;
}
/* Initialize all efuse block entries to invalid (max) value */
esp_efuse_block_t blocks[SECURE_BOOT_NUM_BLOCKS] = {[0 ... SECURE_BOOT_NUM_BLOCKS-1] = EFUSE_BLK_KEY_MAX};
/* Check if secure boot digests are present */
esp_efuse_block_t blocks[SECURE_BOOT_NUM_BLOCKS];
bool has_secure_boot_digest = false;
for (unsigned i = 0; i < SECURE_BOOT_NUM_BLOCKS; i++) {
blocks[i] = EFUSE_BLK_KEY_MAX;
bool tmp_has_key = esp_efuse_find_purpose(secure_boot_key_purpose[i], &blocks[i]);
if (tmp_has_key) { // For ESP32: esp_efuse_find_purpose() always returns True, need to check whether the key block is used or not.
tmp_has_key &= !esp_efuse_key_block_unused(blocks[i]);
@ -198,6 +198,12 @@ static esp_err_t check_and_generate_secure_boot_keys(const esp_image_metadata_t
}
} else {
for (unsigned i = 0; i < SECURE_BOOT_NUM_BLOCKS; i++) {
/* Check if corresponding digest slot is used or not */
if (blocks[i] == EFUSE_BLK_KEY_MAX) {
ESP_LOGD(TAG, "SECURE_BOOT_DIGEST%d slot is not used", i);
continue;
}
#if SOC_EFUSE_REVOKE_BOOT_KEY_DIGESTS
if (esp_efuse_get_digest_revoke(i)) {
continue;

View File

@ -137,10 +137,13 @@ esp_err_t esp_secure_boot_verify_rsa_signature_block(const ets_secure_boot_signa
#if SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS == 1
int sb_result = ets_secure_boot_verify_signature(sig_block, image_digest, trusted.key_digests[0], verified_digest);
#else
ets_secure_boot_key_digests_t trusted_key_digests;
ets_secure_boot_key_digests_t trusted_key_digests = {0};
for (unsigned i = 0; i < SECURE_BOOT_NUM_BLOCKS; i++) {
trusted_key_digests.key_digests[i] = &trusted.key_digests[i];
}
// Key revocation happens in ROM bootloader.
// Do NOT allow key revocation while verifying application
trusted_key_digests.allow_key_revoke = false;
int sb_result = ets_secure_boot_verify_signature(sig_block, image_digest, &trusted_key_digests, verified_digest);
#endif
if (sb_result != SB_SUCCESS) {

View File

@ -324,6 +324,12 @@ static void blufi_profile_cb(tBTA_GATTS_EVT event, tBTA_GATTS *p_data)
blufi_env.conn_id = p_data->conn.conn_id;
blufi_env.recv_seq = blufi_env.send_seq = 0;
blufi_env.sec_mode = 0x0;
blufi_env.offset = 0;
if (blufi_env.aggr_buf != NULL) {
osi_free(blufi_env.aggr_buf);
blufi_env.aggr_buf = NULL;
}
msg.sig = BTC_SIG_API_CB;
msg.pid = BTC_PID_BLUFI;

View File

@ -274,6 +274,13 @@ esp_blufi_gap_event(struct ble_gap_event *event, void *arg)
blufi_env.is_connected = false;
blufi_env.recv_seq = blufi_env.send_seq = 0;
blufi_env.sec_mode = 0x0;
blufi_env.offset = 0;
if (blufi_env.aggr_buf != NULL) {
osi_free(blufi_env.aggr_buf);
blufi_env.aggr_buf = NULL;
}
btc_msg_t msg;
esp_blufi_cb_param_t param;

View File

@ -143,7 +143,7 @@ static void alarm_cb_handler(struct alarm_t *alarm)
OSI_TRACE_WARNING("%s, invalid state %d\n", __func__, alarm_state);
return;
}
btc_msg_t msg;
btc_msg_t msg = {0};
btc_alarm_args_t arg;
msg.sig = BTC_SIG_API_CALL;
msg.pid = BTC_PID_ALARM;
@ -173,7 +173,7 @@ osi_alarm_t *osi_alarm_new(const char *alarm_name, osi_alarm_callback_t callback
goto end;
}
esp_timer_create_args_t tca;
esp_timer_create_args_t tca = {0};
tca.callback = (esp_timer_cb_t)alarm_cb_handler;
tca.arg = timer_id;
tca.dispatch_method = ESP_TIMER_TASK;

View File

@ -110,7 +110,6 @@ static void osi_thread_stop(osi_thread_t *thread)
osi_thread_t *osi_thread_create(const char *name, size_t stack_size, int priority, osi_thread_core_t core, uint8_t work_queue_num)
{
int ret;
osi_thread_t *thread;
struct osi_thread_start_arg start_arg = {0};
if (stack_size <= 0 ||
@ -119,7 +118,7 @@ osi_thread_t *osi_thread_create(const char *name, size_t stack_size, int priorit
return NULL;
}
thread = (osi_thread_t *)osi_malloc(sizeof(osi_thread_t));
osi_thread_t *thread = (osi_thread_t *)osi_malloc(sizeof(osi_thread_t));
if (thread == NULL) {
goto _err;
}

View File

@ -239,6 +239,8 @@ extern uint8_t coex_schm_curr_period_get(void);
extern void * coex_schm_curr_phase_get(void);
extern int coex_wifi_channel_get(uint8_t *primary, uint8_t *secondary);
extern int coex_register_wifi_channel_change_callback(void *cb);
/* Shutdown */
extern void esp_bt_controller_shutdown(void);
extern char _bss_start_btdm;
extern char _bss_end_btdm;
@ -1758,9 +1760,18 @@ esp_err_t esp_bt_controller_deinit(void)
esp_pm_lock_delete(s_light_sleep_pm_lock);
s_light_sleep_pm_lock = NULL;
}
esp_timer_stop(s_btdm_slp_tmr);
esp_timer_delete(s_btdm_slp_tmr);
s_btdm_slp_tmr = NULL;
if (s_pm_lock != NULL) {
esp_pm_lock_delete(s_pm_lock);
s_pm_lock = NULL;
}
if (s_btdm_slp_tmr != NULL) {
esp_timer_stop(s_btdm_slp_tmr);
esp_timer_delete(s_btdm_slp_tmr);
s_btdm_slp_tmr = NULL;
}
s_pm_lock_acquired = false;
#endif
semphr_delete_wrapper(s_wakeup_req_sem);
@ -1785,15 +1796,23 @@ esp_err_t esp_bt_controller_deinit(void)
return ESP_OK;
}
static void bt_controller_shutdown(void* arg)
{
esp_bt_controller_shutdown();
}
static void bt_shutdown(void)
{
esp_err_t ret = ESP_OK;
ESP_LOGD(BTDM_LOG_TAG, "stop Bluetooth");
ret = esp_bt_controller_disable();
if (ESP_OK != ret) {
ESP_LOGW(BTDM_LOG_TAG, "controller disable ret=%d", ret);
if (btdm_controller_status != ESP_BT_CONTROLLER_STATUS_ENABLED) {
return;
}
#if !CONFIG_FREERTOS_UNICORE
esp_ipc_call_blocking(CONFIG_BTDM_CTRL_PINNED_TO_CORE, bt_controller_shutdown, NULL);
#else
bt_controller_shutdown(NULL);
#endif
esp_phy_disable();
return;
}

View File

@ -37,6 +37,7 @@
#include "esp32c3/rom/rom_layout.h"
#include "esp_timer.h"
#include "esp_sleep.h"
#include "phy.h"
#if CONFIG_BT_ENABLED
@ -1237,6 +1238,11 @@ esp_err_t esp_bt_controller_deinit(void)
esp_unregister_mac_bb_pu_callback(btdm_mac_bb_power_up_cb);
#endif
/* Fix the issue caused by the power off the bt power domain.
* This issue is only on ESP32C3.
*/
phy_init_flag();
esp_bt_power_domain_off();
free(osi_funcs_p);

View File

@ -1144,8 +1144,6 @@ error:
esp_unregister_mac_bb_pu_callback(btdm_mac_bb_power_up_cb);
#endif
esp_bt_power_domain_off();
if (osi_funcs_p != NULL) {
free(osi_funcs_p);
osi_funcs_p = NULL;
@ -1206,6 +1204,9 @@ esp_err_t esp_bt_controller_deinit(void)
esp_unregister_mac_bb_pd_callback(btdm_mac_bb_power_down_cb);
esp_unregister_mac_bb_pu_callback(btdm_mac_bb_power_up_cb);
#endif
esp_bt_power_domain_off();
free(osi_funcs_p);
osi_funcs_p = NULL;

View File

@ -1,16 +1,8 @@
// Copyright 2017-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <string.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <string.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <string.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <string.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <string.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_BLE_API_H_
#define _ESP_BLE_MESH_BLE_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_COMMON_API_H_
#define _ESP_BLE_MESH_COMMON_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_LOCAL_DATA_OPERATION_API_H_
#define _ESP_BLE_MESH_LOCAL_DATA_OPERATION_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_LOW_POWER_API_H_
#define _ESP_BLE_MESH_LOW_POWER_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_NETWORKING_API_H_
#define _ESP_BLE_MESH_NETWORKING_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_PROVISIONING_API_H_
#define _ESP_BLE_MESH_PROVISIONING_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_PROXY_API_H_
#define _ESP_BLE_MESH_PROXY_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_DEFS_H_
#define _ESP_BLE_MESH_DEFS_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_CONFIG_MODEL_API_H_
#define _ESP_BLE_MESH_CONFIG_MODEL_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
/** @file
* @brief Bluetooth Mesh Generic Client Model APIs.

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ESP_BLE_MESH_HEALTH_MODEL_API_H_
#define _ESP_BLE_MESH_HEALTH_MODEL_API_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
/** @file
* @brief Bluetooth Mesh Light Client Model APIs.

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
/** @file
* @brief Bluetooth Mesh Sensor Client Model APIs.

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
/** @file
* @brief Bluetooth Mesh Time and Scene Client Model APIs.

View File

@ -1,16 +1,8 @@
// Copyright 2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2020-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <string.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,16 +1,8 @@
// Copyright 2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2020-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_BLE_H_
#define _BTC_BLE_MESH_BLE_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_CONFIG_MODEL_H_
#define _BTC_BLE_MESH_CONFIG_MODEL_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_GENERIC_MODEL_H_
#define _BTC_BLE_MESH_GENERIC_MODEL_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_HEALTH_MODEL_H_
#define _BTC_BLE_MESH_HEALTH_MODEL_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_LIGHTING_MODEL_H_
#define _BTC_BLE_MESH_LIGHTING_MODEL_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_PROV_H_
#define _BTC_BLE_MESH_PROV_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_SENSOR_MODEL_H_
#define _BTC_BLE_MESH_SENSOR_MODEL_H_

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BTC_BLE_MESH_TIME_SCENE_MODEL_H_
#define _BTC_BLE_MESH_TIME_SCENE_MODEL_H_

View File

@ -1,7 +1,7 @@
/* atomic operations */
/*
* Copyright (c) 1997-2015, Wind River Systems, Inc.
* SPDX-FileCopyrightText: 1997-2015 Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -3,8 +3,8 @@
*/
/*
* Copyright (c) 2015 Intel Corporation
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2015 Intel Corporation
* SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2015-2016, Intel Corporation.
* SPDX-FileCopyrightText: 2015-2016 Intel Corporation.
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
/** @file
* @brief Bluetooth Mesh Model Common APIs.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2010-2014,2017 Wind River Systems, Inc.
* SPDX-FileCopyrightText: 2010-2014,2017 Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,16 +1,8 @@
// Copyright 2020-2021 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2020-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BLE_MESH_CONFIG_H_
#define _BLE_MESH_CONFIG_H_

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013-2015 Wind River Systems, Inc.
* SPDX-FileCopyrightText: 2013-2015 Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,6 +1,6 @@
/*
* Copyright (c) 2015, Wind River Systems, Inc.
* Copyright (c) 2017, Oticon A/S
* SPDX-FileCopyrightText: 2015 Wind River Systems, Inc.
* SPDX-FileCopyrightText: 2017 Oticon A/S
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,6 +1,6 @@
/*
* Copyright (c) 2016, Wind River Systems, Inc.
* Additional Copyright (c) 2020 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2016 Wind River Systems, Inc.
* SPDX-FileContributor: 2020-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,16 +1,8 @@
// Copyright 2017-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _BLE_MESH_MUTEX_H_
#define _BLE_MESH_MUTEX_H_

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2016 Intel Corporation
* SPDX-FileCopyrightText: 2016 Intel Corporation
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,6 +1,6 @@
/*
* Copyright (c) 2016, Wind River Systems, Inc.
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2016 Wind River Systems, Inc.
* SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,7 +1,7 @@
/*
* Copyright (c) 2017 Nordic Semiconductor ASA
* Copyright (c) 2015-2016 Intel Corporation
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2017 Nordic Semiconductor ASA
* SPDX-FileCopyrightText: 2015-2016 Intel Corporation
* SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,6 +1,6 @@
/*
* Copyright (c) 2017 Linaro Limited
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2017 Linaro Limited
* SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2011-2014, Wind River Systems, Inc.
* SPDX-FileCopyrightText: 2011-2014 Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -11,9 +11,9 @@
*/
/*
* Copyright (c) 2016 Intel Corporation
* Copyright (c) 2011-2014 Wind River Systems, Inc.
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2016 Intel Corporation
* SPDX-FileCopyrightText: 2011-2014 Wind River Systems, Inc.
* SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,6 +1,6 @@
/*
* Copyright (c) 2015 Intel Corporation
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2015 Intel Corporation
* SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -1,16 +1,8 @@
// Copyright 2017-2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <errno.h>

View File

@ -1,7 +1,7 @@
/*
* Copyright (c) 2016 Intel Corporation
* Copyright (c) 2016 Wind River Systems, Inc.
* Additional Copyright (c) 2020 Espressif Systems (Shanghai) PTE LTD
* SPDX-FileCopyrightText: 2016 Intel Corporation
* SPDX-FileCopyrightText: 2016 Wind River Systems, Inc.
* SPDX-FileContributor: 2020-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/

Some files were not shown because too many files have changed in this diff Show More