Commit Graph

344 Commits

Author SHA1 Message Date
Jiang Jiang Jian
8d9c51f76d Merge branch 'feature/add_txpwr_api_on_esp32c2' into 'master'
add set/get txpwr api for esp32c2

See merge request espressif/esp-idf!19520
2022-08-29 23:35:25 +08:00
morris
b82d6ce928 md5_hash: fix copyright checker 2022-08-29 15:40:37 +08:00
wuzhenghui
fbeb6195c2 esp_rom: add esp32c6 header files 2022-08-29 15:40:37 +08:00
Jiang Jiang Jian
33b51563dc Merge branch 'feature/mem-corruption-check-when-comprehensif-poisoning' into 'master'
heap: provide the tlsf_check_hook() definition to implement a check of memory corruption

Closes IDFGH-5643

See merge request espressif/esp-idf!19485
2022-08-29 12:21:43 +08:00
zwl
30e47072f9 add set/get txpwr api and fix issues such as disconnect and abnormal tx behavior for esp32c2 2022-08-29 11:32:18 +08:00
Guillaume Souchere
b9abad7a89 esp-rom: create a patch of tlsf_check() for target(s) supporting ROM implementation of TLSF
The tlsf implementation in the ROM does not provide a mechanism
to register a callback to be called in by tlsf_check().

This commit is creating a patch of the tlsf implementation to provide
a definition of the function allowing to register the callback called
in tlsf_check() and add the call of this callback in tlsf_check().

This patch is only compiled for target(s) with ESP_ROM_HAS_HEAP_TLSF
set and ESP_ROM_TLSF_CHECK_PATCH set. For all the other configurations
the environment remains unchanged by those modifications.
2022-08-26 08:25:38 +02:00
morris
e06c230a1d esp_rom: remove unavailable tjpgd library for esp32c2 2022-08-25 17:49:38 +08:00
Darian Leung
fbcde6777f newlib: Add workaround for printf functions using 32-bit time_t on first call
sizeof(time_t) was previously switched from 4 to 8, ROM functions that use
time_t or dependent types (such as "struct stat") are no longer called due as
they still treat sizeof(time_t) as 4 (see commit
24c20d188e).

However, there is a ROM callpath that was left out. If putchar is the first
stdio print related call, the call path will result in cantwrite() ->
__swsetup_r() -> __smakebuf_r() -> __swhatbuf_r() using the ROM "struct stat"
(where sizeof(time_t)==4).

Instead of removing all printf related ROM newlib functions (which will result
in increased binary size), this commit adds a workaround to setup the stdio
files before any print related calls occur.

This results in cantwrite() always returning false, thus the callpath described
above never being reached.

Closes https://github.com/espressif/esp-idf/issues/9269
2022-08-21 15:27:50 +08:00
songruojing
304a8f142d esp32c6: introduce the target
Add esp32c6 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32c6`
2022-08-19 11:13:02 +08:00
Vilem Zavodny
a00e8771a7 tjpgd: Remove ROM patches and tests. 2022-08-17 14:42:45 +02:00
morris
92a44afeba Merge branch 'bugfix/cleanup_rom_spiflash' into 'master'
esp-rom: remove undefined spi_flash functions from header

Closes IDFGH-109

See merge request espressif/esp-idf!19333
2022-08-09 10:39:14 +08:00
Marius Vikhammer
cfbe0a035b esp-rom: add missing spi-flash ROM API functions
Added symbols for the SPI flash API which we export from the ROM interface,
deleted functions which are not exported.

Closes https://github.com/espressif/esp-idf/issues/1212
2022-08-08 16:34:10 +08:00
Guillaume Souchere
16c2cb3f1b Merge branch 'feature/replace-heap-tlsf-with-submodule' into 'master'
heap: Remove TLSF related files and replace them with the TLSF submodule

Closes IDF-4967

See merge request espressif/esp-idf!19220
2022-08-08 12:36:02 +08:00
Island
74abb42053 Merge branch 'feature/update_to_the_latest_controller_lib' into 'master'
Feature/update to the latest controller lib

See merge request espressif/esp-idf!19372
2022-08-05 17:51:16 +08:00
zwl
dd05a3754a update ble controller lib for ble issues fixed on esp32c2(8dbbbf0269) 2022-08-04 15:19:51 +08:00
Island
6c8375e2d2 Merge branch 'feature/support_ble_on_esp32c2_26M' into 'master'
support BLE with 26M xtal for esp32c2

See merge request espressif/esp-idf!19300
2022-08-04 11:07:20 +08:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
Guillaume Souchere
2a29cdcb71 heap: Move the declaration of tlsf_poison_fill_pfunc_set() in esp_rom component
- The declaration is moved to esp_rom/include/esp32c2/rom/tlsf.h.
- multi_heap_poisoning.h now includes rom/tlsf.h instead of declaring
tlsf_poison_fill_pfunc_set().

Note: If more targets will support an implementation of the TLSF in ROM,
esp_rom will be extended with new headers in the respective target directories
but multi_heap_poisoning.h will remain unchanged.
2022-08-03 08:28:10 +02:00
Shen Weilong
028d071e84 support BLE with 26M xtal for esp32c2 2022-07-29 21:36:33 +08:00
wanlei
bb5a95f1aa soc: fix register header files not self-contain 2022-07-29 11:18:06 +08:00
morris
783e1781bd esp_rom: patch systimer driver for esp32c2 2022-07-25 16:08:52 +08:00
liuning
bc2f2a3100 esp_wifi: select slowclk as coex hardware timer source on esp32c2 2022-07-22 21:44:11 +08:00
Jing Li
66395a5c00 system/sleep: further fix spi flash/ram current leakage 2022-07-21 19:14:26 +08:00
Fu Hanxi
05d2357062 feat: use standalone project idf-build-apps for find/build apps utils 2022-07-14 08:26:31 +08:00
muhaidong
52f378ac7b esp_wifi: reset beacon timeout timer when keep alive null works or hw drop beacon 2022-07-11 20:54:25 +08:00
Jiang Jiang Jian
7e2ee82160 Merge branch 'bugfix/fix_qos_null_update_ba_ssn' into 'master'
wifi:bugfix fix qos null update ba ssn

Closes IDFGH-6811

See merge request espressif/esp-idf!18882
2022-07-08 14:00:11 +08:00
xueyunfei
95591fdf65 wifi:bugfix fix qos null update ba ssn 2022-07-07 15:23:29 +08:00
shenjun
988f9b3a59 esp_wifi: fix esp32c2 tx crash issue 2022-07-07 11:32:00 +08:00
Island
0d86ca59a6 Merge branch 'update/esp32h2_h2_beta2_controller_lib_to_cd9dd20' into 'master'
Update esp32h2 beta2 lib to controller master

See merge request espressif/esp-idf!18876
2022-07-06 22:13:05 +08:00
Jakob Hasse
5a3310ff3b Merge branch 'refactor/remove_rom_deps_cache_lldesc' into 'master'
SOC: removed target-specific ROM dependencies

See merge request espressif/esp-idf!18705
2022-07-06 02:06:30 +08:00
GengYuchao
509ac4e748 Update esp32h2 beta2 lib to master 2022-07-05 15:15:41 +08:00
xueyunfei
a7ae72e1f5 wifi:bugfix for wrong configuration of static txbuf 2022-07-05 14:02:31 +08:00
Jakob Hasse
f8b5ed5d6c refactor (soc, esp_rom)!: removed target-specific ROM dependencies 2022-07-05 13:57:58 +08:00
Cao Sen Miao
a690a87829 spi_flash: Remove legacy spi_flash drivers 2022-07-01 11:01:34 +08:00
zwj
ed593ba168 update ble lib (444e4a2b)
- fix rpa entry err if addr resol is disabled
- fix aux connect crash
2022-06-27 14:50:26 +08:00
chenjianxing
d4d3d65898 esp_wifi: fix esp32c2 owe support 2022-06-21 20:58:10 +08:00
Jiang Jiang Jian
3cc134672b Merge branch 'feature/optimize_bluetooth_architecture_0616' into 'master'
Feature/optimize bluetooth architecture

See merge request espressif/esp-idf!18553
2022-06-21 01:35:12 +08:00
Shreyas Sheth
591c7a496c esp_wifi: WPA3 SAE H2E support for station 2022-06-20 18:51:11 +05:30
GengYuchao
9782f86f82 update rom file for c2 controller lib 2022-06-20 17:00:12 +08:00
Shyamal Khachane
6d55761f60 OWE support for station 2022-06-15 17:20:24 +05:30
Konstantin Kondrashov
7d942e0a5d Merge branch 'feature/efuse_rst_is_treated_as_poweron_rst' into 'master'
reset_reasons: EFUSE_RST is treated as POWERON_RST + checks errors of eFuse BLOCK0

Closes IDF-3702

See merge request espressif/esp-idf!14742
2022-06-13 21:26:13 +08:00
Jiang Jiang Jian
70d7a362db Merge branch 'feature/wifi_beacon_loss_optimize' into 'master'
WiFi: beacon loss and noise check timer optimize for wifi power save

See merge request espressif/esp-idf!18447
2022-06-10 13:28:50 +08:00
Simon
6ad7558ec1 Merge branch 'feature/esp32c2_configurable_mmu_new' into 'master'
MMU: add configurable MMU page size support (For ESP32C2)

Closes IDF-3821

See merge request espressif/esp-idf!17854
2022-06-10 10:20:49 +08:00
Shu Chen
3df100662c Merge branch 'bugfix/rom_time_t_size_deps_esp32h2beta2' into 'master'
esp_rom: deprecate some esp32h2beta2 rom newlib funcs

See merge request espressif/esp-idf!18440
2022-06-09 20:56:09 +08:00
KonstantinKondrashov
46f0313d6b reset_reasons: EFUSE_RST is treated as POWERON_RST
ESP32 does not have the EFUSE_RST, the rest chips has this reset reason.
2022-06-09 17:49:03 +08:00
Li Shuai
7efa8b855a sleep: beacon loss and noise check timer optimize for wifi power save 2022-06-09 15:52:05 +08:00
morris
6eb450fa87 newlib: ROM library is build with time_t 64bit on esp32c2 2022-06-09 10:48:31 +08:00
wuzhenghui
89319cd72f esp_rom: remove functions which depend on sizeof(struct stat) and all their callers for esp32h2-beta2 2022-06-09 10:40:09 +08:00
Cao Sen Miao
6589daabb9 MMU: Add configurable mmu page size support on ESP32C2 2022-06-08 19:34:31 +08:00
Michael (XIAO Xufeng)
6a8aed12ee ci: partially enable ut tests for esp32c2
Disabled test cases are tracked in:

 IDF-4465, IDF-5045, IDF-5057, IDF-5058, IDF-5059, IDF-5060, IDF-5061, IDF-5131

- test_fatfs: IDF-5136

- test_pm: IDF-5053

- test_cache_mmu: IDF-5138

- test_partitions: IDF-5137

- test_vfs: IDF-5139

- test_freertos: IDF-5140

- test_wpa_supplicant: IDF-5046

- test_mbedtls: IDF-5141

- test_pthread: IDF-5142

- test_protocomm: IDF-5143

- test_lightsleep: IDF-5053

- test_taskwdt: IDF-5055

- test_tcp_transport: IDF-5144

- test_app_update: IDF-5145

- test_timer: IDF-5052

- test_spi: IDF-5146

- test_rtc_clk: IDF-5060

- test_heap: IDF-5167

ci: fixed issues for tests of libgcc, ets_timer, newlib

test_pm: support on C2
2022-06-02 14:23:35 +08:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
KonstantinKondrashov
ac4c7d99fe dport: Move DPORT workaround to G0 2022-05-31 13:44:18 +08:00
Anton Maklakov
84879a8e9c esp_rom: esp32s2: suppress -Waddress-of-packed-member warning 2022-05-30 14:48:12 +07:00
Jiang Jiang Jian
0e94779b2e Merge branch 'feature/support_esp32c2_wifi_new' into 'master'
Bringup ESP32C2 Wi-Fi

Closes IDF-3905

See merge request espressif/esp-idf!18136
2022-05-29 18:25:24 +08:00
Wu Zheng Hui
b98622c624 efuse: update efuse name 2022-05-28 22:03:16 +08:00
liuning
e0decf4839 esp_wifi: fully support connectionless traffic with ps and coex 2022-05-28 08:52:55 +00:00
Jessy Chen
60cbbffc74 esp_phy: optimize esp32c2 tx power control 2022-05-28 08:52:55 +00:00
Zhang Junhao
31f9292f90 feat: disable mbedtls rom code on master 2022-05-28 08:52:55 +00:00
liuning
9d7479eda3 esp_wifi: fix no null data after WiFi waking up. 2022-05-17 21:45:55 +08:00
zhangwenxu
9440430db2 esp_phy: support esp32h2beta2 phy build 2022-05-16 10:50:44 +00:00
Mahavir Jain
a0e27a186b Merge branch 'esp32c2/support_secure_boot' into 'master'
ESP32C2: Support Secure Boot V2

Closes IDF-3846 and IDF-4209

See merge request espressif/esp-idf!17442
2022-05-13 19:46:22 +08:00
Nachiket Kukade
2f4ec4e27d Merge branch 'bugfix/sap_mode_change_crash_issue' into 'master'
Fixes for SAP mode change and PMF issues

Closes WIFI-4322, WIFI-4394, and IDFCI-1147

See merge request espressif/esp-idf!17865
2022-05-12 19:08:05 +08:00
morris
068adfba70 heap: use ROM implementation for heap tlsf on esp32c2 2022-05-12 05:18:57 +00:00
morris
24f5fecef0 hal: use ROM implementation for systimer and wdt on esp32c2 2022-05-12 05:18:57 +00:00
Sachin Parekh
2c725264f7
esp32c2: Support Secure Boot V2 based on ECDSA scheme 2022-05-11 18:00:03 +05:30
Nachiket Kukade
2aa156d8b5 esp_wifi: Update wifi libs
1. Fix issues caused during SoftAP mode change
2. Improve SoftAP PMF logic for triggering of SA Query and cleanup
2022-05-09 16:15:57 +05:30
Wu Zheng Hui
0580d68b69 esp32c2: Support riscv floating-point library selection 2022-05-08 17:57:40 +08:00
wuzhenghui
386efe1e0f Sync: Add support for FT psk(3d5ca7ee) 2022-05-05 18:10:43 +08:00
jiangguangming
6ec373daf5 heap_tlsf: use tlsf IMPL in ESP32C2 ROM 2022-05-05 17:41:11 +08:00
wuzhenghui
0a5367d29b newlib: link ESP8684 ROM symbols _printf_float & _scanf_float 2022-05-05 17:41:11 +08:00
wuzhenghui
d91ccbc346 esp32c2: update eco rom 2022-05-05 17:41:11 +08:00
kapil.gupta
3d5ca7ee6e wpa_supplicant: Add support for FT psk 2022-05-01 16:16:51 +05:30
Song Ruo Jing
e13bb580c7 Merge branch 'refactor/gpio_unit_test' into 'master'
gpio: Clean up unit tests and enable ci ut on some previously disabled test cases

Closes IDF-4620

See merge request espressif/esp-idf!17417
2022-04-01 18:38:19 +08:00
Konstantin Kondrashov
44a0108d4c Merge branch 'feature/esp32c3_eco4' into 'master'
esp32c3: Adds ECO4 revision

Closes IDF-4848

See merge request espressif/esp-idf!17514
2022-03-31 13:24:34 +08:00
songruojing
8d84033b8c gpio: Clean up unit tests and enable ci ut on some previously disabled test cases
Eliminate UT_T1_GPIO runner requirement by routing internally through gpio matrix and by setting gpio pins to GPIO_MODE_INPUT_OUTPUT mode for all interrupt related test cases.
2022-03-30 15:11:08 +08:00
KonstantinKondrashov
754a563750 esp32c3: Adds ECO4 revision 2022-03-30 00:09:46 +08:00
wuzhenghui
4652f77a7c esp32h2beta2:update rom layout table 2022-03-29 14:13:06 +08:00
wuzhenghui
218e2c873d esp32h2beta2:rename __rom_printf_float/__rom_scanf_float 2022-03-29 14:13:06 +08:00
wuzhenghui
ce9cb3a7a4 esp32h2beta2:update rom ld (ESP-ROM:esp32h2beta2-20211201) 2022-03-29 14:12:58 +08:00
ChenJianxing
764b606d9d esp_wifi: add ht40 support for 80211_tx & espnow 2022-03-14 21:23:48 +08:00
Michael (XIAO Xufeng)
aab535fe4a Merge branch 'bugfix/regi2c_ctrl_spinlock_s2' into 'master'
hw_support: fixed regi2c not protected by lock on ESP32S2

See merge request espressif/esp-idf!16653
2022-03-13 02:47:53 +08:00
Michael (XIAO Xufeng)
d5bdf95580 hw_support: fixed regi2c not protected by lock on ESP32S2 2022-03-13 00:24:08 +08:00
Armando
c1cbd7bbf6 cache/mmu: implememnt cache and mmu hal APIs in bootloader 2022-03-11 22:43:11 +08:00
Kevin (Lao Kaiyao)
cc1d89ebba Merge branch 'feature/i2c_support_on_esp8684_esp32h2' into 'master'
i2c: support i2c on esp32c2 and esp32h2

Closes IDF-3918

See merge request espressif/esp-idf!16444
2022-02-28 13:59:02 +08:00
KonstantinKondrashov
9605f3eb1a soc: Adds efuse hal
Replaced eFuse ROM funcs with hal layer
2022-02-24 22:20:09 +08:00
laokaiyao
7da023ceae i2c: support esp32c2 2022-02-23 15:19:37 +08:00
songruojing
b860fa96e0 esp_system: support esp32c2 reset reason 2022-02-15 13:50:22 +08:00
Jiang Jiang Jian
cca2234619 Merge branch 'feature/pmf_support_for_softAP' into 'master'
esp_wifi: Add pmf support for softAP.

Closes WIFI-1353

See merge request espressif/esp-idf!14906
2022-02-10 04:17:00 +00:00
Song Ruo Jing
40d1102ca5 Merge branch 'bugfix/cpu_reset_perip_clk_disable' into 'master'
esp_system: change range comparsion for reset reason to specifc cpu reset reason comparison

See merge request espressif/esp-idf!15492
2022-02-10 03:44:15 +00:00
aditi_lonkar
a8de305620 esp_wifi: Add softap pmf support for 8684. 2022-02-09 19:00:18 +05:30
songruojing
c1dedb33fa esp_system: replace the range comparsion for reset reason in perip clk init with specific reset reason check, also add a test case in LEDC to check for the perip clk not being disabled after cpu reset 2022-02-09 15:54:34 +08:00
morris
ef00bd59dc esp_rom: extract int matrix route and cpu ticks getter 2022-02-09 13:52:20 +08:00
Ivan Grokhotkov
fd1c213be4 esp_rom: support building for Linux target with Clang
This fixes passing -Wimplicit-fallthrough=0 flag to Clang, which it
doesn't recognize, and is not necessary for this file.
Also the flag is changed from PUBLIC to PRIVATE since it is necessary
when compiling this component only.
2022-01-24 18:51:40 +01:00
laokaiyao
cf049e15ed esp8684: rename target to esp32c2 2022-01-19 11:08:57 +08:00
Ivan Grokhotkov
d2b894862c newlib: auto-detect sizeof(time_t)
To make the transition from 32-bit time_t to 64-bit time_t smoother,
detect the size of this type in CMake and remove the manual option in
Kconfig.
The information about 64-bit time_t support is moved from Kconfig help
string into the "system time" section of the API reference.
2022-01-11 19:01:21 +01:00
Ivan Grokhotkov
18af031791 Merge branch 'bugfix/rom_time_t_size_deps' into 'master'
esp_rom: remove functions which depend on sizeof(struct stat) and all their callers

Closes IDFGH-6318

See merge request espressif/esp-idf!16679
2022-01-11 12:58:55 +00:00
morris
869bed1bb5 soc: don't expose unstable soc header files in public api 2022-01-06 23:10:22 +08:00
Ivan Grokhotkov
24c20d188e esp_rom: remove functions which depend on sizeof(struct stat)
...and all their callers.

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

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

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

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

Closes https://github.com/espressif/esp-idf/issues/7980
2022-01-06 15:20:04 +01:00
Cao Sen Miao
d397464fc4 spi_flash: refactor spi_flash.h to esp_rom_spiflash.h but keep the content in spi_flash.h 2021-12-30 14:12:31 +08:00
morris
8e220f7bbe esp_rom: add README to describe the component layout 2021-12-30 14:05:12 +08:00