56 Commits

Author SHA1 Message Date
muhaidong
210ffa0475 fix(wifi): missed annotate ld function from txop fix 2023-07-26 11:54:10 +08:00
Li Shuai
0b42747d0a Wi-Fi/power save: fix the some mac issues of wifi power save
Some APs are configured to hide the SSID, the length field of the SSID element
in the Beacon frame is set to 0. This can cause incorrect parsing of the Beacon
by the Wi-Fi MAC hardware.

Some APs send two beacon frames with different BSSID in a TBTT cycle. After
correctly parsing the beacon of the associated AP, it continue to receive the
other beacon frame, which will cause the MAC to remain in a wait RX/TXING
state, blocking the Wi-Fi go to sleep.
2023-07-20 11:39:41 +08:00
muhaidong
398403e251 esp_wifi: fix some txop issues 2023-06-09 23:24:02 +08:00
Jiang Jiang Jian
c323399520 Merge branch 'bugfix/fix_hw_ralunderrun_assert_v5.0' into 'release/v5.0'
Fixed BLE HW RAL_UNDERRUN assert and backport some bug fix 23-03-30 (back port v5.0)

See merge request espressif/esp-idf!22989
2023-05-11 17:27:32 +08:00
chenjianhua
2279603842 Update bt lib for ESP32-C3 and ESP32-S3
- Fixed non-connectable and non-scannable directed adv can't be scanned
2023-05-11 02:45:56 +00:00
zwj
0e5c6144b7 - Support ESP32C3 and ESP32S3 new BLE lib
- Disable controller 5.0 feature bits if host 5.0 feature is not enabled
- Fixed extend ADV parameters check for ADV_DIRECT_HI
2023-05-11 02:45:56 +00:00
chenjianxing
97225286ca esp_wifi: improve tx robust for c2/c3/s3 2023-03-30 21:46:07 +08:00
chenjianxing
a01847c24f esp_wifi: fix multicast pkts drop issue for some AP when DTIM period > 1
Closes WIFI-5076
2022-12-19 14:18:27 +08:00
zhangyanjiao
91804983b7 esp_wifi: fix esp32c3 connect fail
Closes IDFCI-1524
2022-12-06 05:06:18 +00:00
alex.li
f768845b16 esp_wifi: fix wapi gtk id compability issue and adapt tx frag pn sequently. 2022-12-05 11:30:51 +08:00
jiangguangming
af425e5a8e move {target}/rom/miniz.h to a common miniz.h
- Move {target}/rom/miniz.h to common miniz.h
- Add ESP_ROM_HAS_MZ_CRC32 for ESP32/S2/S3/C3/H2
- Alias mz_crc32 to crc32_le if chips not support ESP_ROM_HAS_MZ_CRC32
2022-12-02 19:39:44 +08:00
Ivan Grokhotkov
c231d9e01e Merge branch 'bugfix/update_esp_rom_caps_v5.0' into 'release/v5.0'
esp_rom: update esp_rom_caps.h (backport v5.0)

See merge request espressif/esp-idf!20572
2022-12-02 19:27:29 +08:00
Shyamal Khachane
c4aca02d7e esp_wifi: Fix deauth and disassoc issues for SoftAP PMF 2022-10-18 09:52:19 +05:30
jiangguangming
f0863e0932 esp_rom: update esp_rom_caps.h 2022-10-12 20:07:40 +08:00
Jiang Jiang Jian
db69ae2787 Merge branch 'bugfix/remove_remaining_rom_time_t_dependencies_v5.0' into 'release/v5.0'
Newlib: Add workaround for ROM Newlib stdio functions using 32-bit time_t callpath (v5.0)

See merge request espressif/esp-idf!19685
2022-08-29 22:52:33 +08:00
Zim Kalinowski
d6a74e4141 Merge branch 'bugfix/cleanup_rom_spiflash_v5.0' into 'release/v5.0'
esp-rom: remove undefined spi_flash functions from header (v5.0)

See merge request espressif/esp-idf!19524
2022-08-25 14:59:03 +08:00
Vilem Zavodny
f8d94d6a4e tjpgd: Remove ROM patches and tests.
(cherry picked from commit a00e8771a7e290dbd3b7f4a6b5658a3d19e00bf2)
2022-08-23 07:57:10 +02:00
Darian Leung
a202ec2caf 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
24c20d18).

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-22 11:28:55 +08:00
Marius Vikhammer
44bbfa4fb8 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-12 14:31:56 +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
xueyunfei
95591fdf65 wifi:bugfix fix qos null update ba ssn 2022-07-07 15:23:29 +08:00
Cao Sen Miao
a690a87829 spi_flash: Remove legacy spi_flash drivers 2022-07-01 11:01:34 +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
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
liuning
9d7479eda3 esp_wifi: fix no null data after WiFi waking up. 2022-05-17 21:45:55 +08:00
ChenJianxing
764b606d9d esp_wifi: add ht40 support for 80211_tx & espnow 2022-03-14 21:23:48 +08:00
Michael (XIAO Xufeng)
d5bdf95580 hw_support: fixed regi2c not protected by lock on ESP32S2 2022-03-13 00:24:08 +08:00
morris
ef00bd59dc esp_rom: extract int matrix route and cpu ticks getter 2022-02-09 13:52:20 +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
Marius Vikhammer
c6d60615c6 build-system: include soc_caps defines into kconfig
Adds gen_soc_caps_kconfig.py which parses the soc caps (soc_caps.h) into
a format that can be included in kconfig.
2021-12-06 12:37:07 +08:00
Cao Sen Miao
bf6fa70812 ESP8684: update bootloader, bootloader_support, esp_rom 2021-11-06 17:33:44 +08:00
Kapil Gupta
797c7144bd esp_wifi: Add support for GCMP and GMAC ciphers 2021-10-12 20:48:51 +08:00
SalimTerryLi
23e23b697c
rom/tjpgd: unify library & add rom patch
remove external tjpgd library inside example

enable tjpgd decoding on all chips
2021-09-01 14:42:17 +08:00
ChenJianxing
9e7d75cb95 esp_wifi: fix some wifi bugs
1. support config 80211 tx rate
2. fix 80211 tx crash issue
3. disable ampdu+amsdu bit
2021-07-31 18:02:20 +08:00
Ivan Grokhotkov
7534c4467f rom, spi_flash: add a patch for esp_flash_erase_region for C3, S3, H2 2021-07-24 13:28:25 +02:00
morris
1560d6f1ba soc: add reset reasons in soc component 2021-07-13 10:45:38 +08:00
ChenJianxing
ef127ab9dd esp_wifi: fix amsdu & fragment vulnerabilities 2021-06-17 10:11:33 +08:00
Anton Maklakov
b46b50eaa6 newlib: Add ESP_ROM_HAS_RETARGETABLE_LOCKING capability for C3 and S3 chips 2021-06-07 12:53:45 +07:00
Cao Sen Miao
8c5819dccb usb_serial_jtag: fix the bug that cannot write with usb_jtag 2021-05-13 13:40:01 +08:00
alex.li
55cbb541fc Support new section addr and wifi lib for ESP32C3-ECO3. 2021-03-29 10:27:10 +08:00
ChenJianxing
0a8ba88145 esp_wifi: optimization wifi rate
1.support disable 11b rate
2.support config espnow rate
3.fix sta negotiate phymode issue
4.update ftm rate
2021-02-25 10:21:46 +00:00
dongyou
059ffa6daf change rom function for esp32c3 to fix eb lldesc size issue 2021-02-24 17:45:07 +08:00
morris
bf2480f62d efuse: can disable boot ROM log from Kconfig 2021-02-22 20:56:43 +08:00
Xia Xiaotian
b71481093a esp_wifi: fix some Wi-Fi scan and coexist bugs
1. Fix the bug that Wi-Fi performance is impacted by BLE starting scan for a while in some scenarios on ESP32-C3.

2. Fix the bug that Wi-Fi performance is impacted when Bluetooth change state for a while in some scenarios on ESP32-C3.

3. Fix the bug that BLE performance is impacted by Wi-Fi scan on ESP32-C3.

4. Fix the bug that Wi-Fi scan fails when BLE is scanning on ESP32-C3.

5. Fix Wi-Fi ACK and CTS rate when low rate is disabled on ESP32-C3.
2021-02-08 21:20:09 +08:00
Jack
2859c7ebd1 fix the bug that wifi connect fail 2021-02-06 00:12:37 +08:00
Jiang Jiang Jian
28faf93c51 Merge branch 'feature/esp32c3_power_down' into 'master'
esp32c3 : power down MAC and BB only if both Wi-Fi and BT power down

Closes FC3-99

See merge request espressif/esp-idf!12076
2021-01-28 23:27:19 +08:00
baohongde
eef66789d4 Mac BB power down in light sleep
components/bt: Do not use feature: timer support isr dispatch method

disable controller after wake up finished.

protect critical section of power down

choose clk in sleep

components/coex: mac bb power down in light sleep

components/coex: Macro changed

components/os: protect reserved interrupt number

update phy to phy_version 300,6e46ba7,Jan 25 2021

some bugfix
2021-01-28 22:28:04 +08:00