Commit Graph

10445 Commits

Author SHA1 Message Date
jincheng
aeeb255d35 resolve redefinition in btc_spp.h and btc_hd.h/btc_hh.h
Closes https://github.com/espressif/esp-idf/issues/9199
2022-07-08 14:23:09 +08:00
wangjialiang
aa42bb3355 ble_mesh: stack: Add filter old seq_auth packet menuconfig 2022-06-23 16:22:08 +08:00
Jiang Jiang Jian
372ae83fde Merge branch 'bugfix/avdtp_genreal_reject_format_error_v4.2' into 'release/v4.2'
component_bt: Fix AVDTP general reject format error(v4.2)

See merge request espressif/esp-idf!18558
2022-06-21 20:54:34 +08:00
xiongweichao
90f464c671 update hfp_ag version to 1.7.2 2022-06-21 14:50:44 +08:00
Jiang Jiang Jian
32aa2ab24e Merge branch 'feat/epi_flash_api_iram_save_4.2' into 'release/v4.2'
spi_flash: partially move API functions out of IRAM (v4.2)

See merge request espressif/esp-idf!18304
2022-06-19 23:22:48 +08:00
Jiang Jiang Jian
8f9a3d508e Merge branch 'bugfix/idle_task_skipped_light_sleep_backport_v4.2' into 'release/v4.2'
pm_impl: fix neither enter light sleep nor enter waiti state in idle task(backport v4.2)

See merge request espressif/esp-idf!17849
2022-06-19 23:21:57 +08:00
xiongweichao
cec2713416 Fix AVDTP general reject format error. 2022-06-17 10:28:50 +08:00
Jiang Jiang Jian
14b204e201 Merge branch 'bugfix/pm_enabled_bt_build_fail_v4.2' into 'release/v4.2'
Bluetooth build fail when power management is enabled(v4.2)

See merge request espressif/esp-idf!18383
2022-06-15 11:07:08 +08:00
Michael (XIAO Xufeng)
ac6f45d290 bootloader: support unlock MXIC flash chips 2022-06-09 12:41:56 +08:00
Cao Sen Miao
168880fe7b spi_flash: move the unlock patch to bootloader and add support for GD 2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
e5ac1eb83f spi_flash: fix the corruption of ROM after calling bootloader_execute_flash_command
The user register, especially dummy related ones, needs to be restored, otherwise the ROM function will not work.

Introduced in dd40123129.
2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
33a8c60b2c bootloader: add xmc spi_flash startup flow to improve reliability 2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
e1bd7b9d8f bootloader: create public bootloader_flash.h header
Move non-public functions into bootloader_flash_priv.h header
2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
9582cbe5b8 bootloader: fix the WRSR format for ISSI flash chips
1. The 2nd bootloader always call `rom_spiflash_unlock()`, but never help to clear the WEL bit when exit. This may cause system unstability.

   This commit helps to clear WEL when flash configuration is done.

   **RISK:** When the app starts, it didn't have to clear the WEL before it actually write/erase. But now the very first write/erase operation should be done after a WEL clear. Though the risk is little (all the following write/erase also need to clear the WEL), we still have to test this carefully, especially for those functions used by the OTA.

2. The `rom_spiflash_unlock()` function in the patch of ESP32 may (1) trigger the QPI, (2) clear the QE or (3) fail to unlock the ISSI chips.

   Status register bitmap of ISSI chip and GD chip:

| SR | ISSI | GD25LQ32C |
| -- | ---- | --------- |
| 0  | WIP  | WIP       |
| 1  | WEL  | WEL       |
| 2  | BP0  | BP0       |
| 3  | BP1  | BP1       |
| 4  | BP2  | BP2       |
| 5  | BP3  | BP3       |
| 6  | QE   | BP4       |
| 7  | SRWD | SRP0      |
| 8  |      | SRP1      |
| 9  |      | QE        |
| 10 |      | SUS2      |
| 11 |      | LB1       |
| 12 |      | LB2       |
| 13 |      | LB3       |
| 14 |      | CMP       |
| 15 |      | SUS1      |

   QE bit of other chips are at the bit 9 of the status register (i.e. bit 1 of SR2), which should be read by RDSR2 command.

   However, the RDSR2 (35H, Read Status 2) command for chip of other vendors happens to be the QIOEN (Enter QPI mode) command of ISSI chips. When the `rom_spiflash_unlock()` function trys to read SR2, it may trigger the QPI of ISSI chips.

   Moreover, when `rom_spiflash_unlock()` try to clear the BP4 bit in the status register, QE (bit 6) of ISSI chip may be cleared by accident. Or if the ISSI chip doesn't accept WRSR command with argument of two bytes (since it only have status register of one byte), it may fail to clear the other protect bits (BP0~BP3) as expected.

   This commit makes the `rom_spiflash_unlock()` check whether the vendor is issi. if so, `rom_spiflash_unlock()` only send RDSR to read the status register, send WRSR with only 1 byte argument, and also avoid clearing the QE bit (bit 6).

3. `rom_spiflash_unlock()` always send WRSR command to clear protection bits even when there is no protection bit active. And the execution of clearing status registers, which takes about 700us, will also happen even when there's no bits cleared.

   This commit skips the clearing of status register if there is no protection bits active.

Also move the execute_flash_command to be a bootloader API; move
implementation of spi_flash_wrap_set to the bootloader
2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
a130dcd5ec test_spiffs: increase test case stack size 2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
51584d4f2a spi_flash: partially move API functions out of IRAM 2022-06-09 12:41:56 +08:00
Jiang Jiang Jian
a3374b2d2f Merge branch 'bugfix/fix_cannot_lslp_again_after_ulp_wakeup_backport_v4.2' into 'release/v4.2'
sleep: fix cannot lightsleep again after a wakeup from ULP(backport v4.2)

See merge request espressif/esp-idf!18218
2022-06-07 11:21:42 +08:00
xiongweichao
0cb13d47cc Bluetooth build fail when power management is enabled 2022-06-06 20:28:25 +08:00
keymoon
c670dc6d14 assign value to uninitialized bt_addr field 2022-05-29 18:04:53 -07:00
keymoon
2bf87b0a53 add address field to read_rmt_name_param 2022-05-29 18:04:41 -07:00
jingli
57975000fe esp_hw_support/sleep: fix cannot lightsleep again after a wakeup from ULP
Since ulp wakeup signal are connected to ulp int raw(except esp32), we
need to clear ulp int raw before sleep when ulp wakeup enabled. Otherwise,
if the ulp int raw is already set, chip will not sleep properly.

Closes https://github.com/espressif/esp-idf/issues/6229
2022-05-23 01:00:28 +08:00
Jiang Jiang Jian
b6b7a59958 Merge branch 'bugfix/twai_esp32_errata_workarounds_backport_v4.2' into 'release/v4.2'
TWAI: Add FIFO overrun handling and ESP32 hardware errata workarounds + Refactor TWAI HAL to store state information  (backport v4.2)

See merge request espressif/esp-idf!17106
2022-05-19 10:55:59 +08:00
Jiang Jiang Jian
b74fc002f1 Merge branch 'bugfix/driver_uart_fix_tx_bytes_rts_assert_failure_v42' into 'release/v4.2'
driver: fixes context switch while sending cause rts reset before send (backport v4.2)

See merge request espressif/esp-idf!17942
2022-05-19 10:55:36 +08:00
Alex Lisitsyn
721e26019e driver: fixes context switch while sending cause rts reset before send (backport v4.2) 2022-05-19 10:55:35 +08:00
Jiang Jiang Jian
9cb1729107 Merge branch 'bugfix/fix_adc_calibration_light_sleep_issue_v4.2' into 'release/v4.2'
adc: fix calibration error when waking up from light sleep (v4.2)

See merge request espressif/esp-idf!16931
2022-05-19 10:55:10 +08:00
Jiang Jiang Jian
0fba64486a Merge branch 'bugfix/spi_lose_last_3_bytes_v4.2' into 'release/v4.2'
spi_master: fix an issue where master cannot correctly receive data when using DMA in halfduplex mode (v4.2)

See merge request espressif/esp-idf!17379
2022-05-19 10:54:36 +08:00
Jiang Jiang Jian
c71a9e5704 Merge branch 'feature/check_block_after_burn_v4.2' into 'release/v4.2'
efuse: Validates data after burning and re-burnes it if necessary (v4.2)

See merge request espressif/esp-idf!17704
2022-05-19 10:54:19 +08:00
Jiang Jiang Jian
d6a975f6b2 Merge branch 'bugfix/_rtc_slow_length_incorrectly_optimized_backport_v4.2' into 'release/v4.2'
sleep_power_domain: fix _rtc_slow_length being incorrectly optimized by compiler(backport v4.2)

See merge request espressif/esp-idf!17976
2022-05-10 01:04:37 +08:00
morris
d0db75899d Merge branch 'bugfix/ledc_consecutive_fade_v4.2' into 'release/v4.2'
ledc: Bugfixes for issues related to fade protection (backport v4.2)

See merge request espressif/esp-idf!16955
2022-05-07 18:24:45 +08:00
jingli
05b7db9cd8 fix _rtc_slow_length being incorrectly optimized by compiler 2022-05-01 23:26:52 +08:00
Jiang Jiang Jian
667f3dfbad Merge branch 'bugfix/ignore_pmf_capable_flag_v4.2' into 'release/v4.2'
Always connect Station in PMF mode if possible (Backport v4.2)

See merge request espressif/esp-idf!17538
2022-05-01 20:10:58 +08:00
Jiang Jiang Jian
bf7b430f55 Merge branch 'contrib/github_pr_8779_v4.2' into 'release/v4.2'
esp_wifi: fix clearing default wifi netif procedure(v4.2)

See merge request espressif/esp-idf!17940
2022-04-28 16:17:14 +08:00
Jiang Jiang Jian
00d2c3037a Merge branch 'bugfix/fix_disable_bt_log_ci_fail_v4.2' into 'release/v4.2'
component_bt: Fix CI failure when disable bluetooth debug log(v4.2)

See merge request espressif/esp-idf!17905
2022-04-27 18:20:27 +08:00
Krzysztof Lewandowski
55b6ff6fbd esp_wifi: fix clearing default wifi netif procedure
Prior to this change "esp_wifi_clear_default_wifi_driver_and_handlers"
will not remove netif pointer from table when both AP and STA interfaces were
created and destroying default wifi interfaces is done in unfortunate
order. As a result there is dangling pointer left and it may cause crash in
later code (i.e. when esp_wifi_stop() is called).
2022-04-27 03:23:20 -04:00
xiongweichao
d59d373edc Fix spp initialization failure without free mutex 2022-04-27 14:49:39 +08:00
xiongweichao
9e2ae1271d Fix spp crash after calling esp_spp_deinit 2022-04-27 14:43:42 +08:00
xiongweichao
0825981026 Fix CI failure when disable bluetooth debug log 2022-04-26 15:06:50 +08:00
KonstantinKondrashov
83728f3832 efuse: fix 2022-04-26 00:08:51 +08:00
wangjialiang
7691b8effb ble_mesh: stack: Bugfix for oversized SegN as valid 2022-04-25 11:53:35 +08:00
Jack
be2779818b fix build error 2022-04-23 01:11:29 +08:00
Jack
fdf79ce300 ESP_WIFI: Remove static analysis warnings 2022-04-23 00:54:30 +08:00
Kapil Gupta
dc87416df0 wpa_supplicant: static analysis fixes 2022-04-23 00:33:34 +08:00
Kapil Gupta
a26b0dbaab wpa_supplicant: Add BTM security checks 2022-04-23 00:26:08 +08:00
gaoxiaojie
5516dc7d0c pm_impl: fix neither enter light sleep nor enter waiti state in idle task 2022-04-21 14:40:57 +08:00
xiewenxiang
d976bbec08 esp_phy: Add IRAM_ATTR for phy i2c spinlock 2022-04-21 02:57:08 +08:00
Wang Meng Yang
d8105a565e Merge branch 'bugfix/fix_spp_initiator_connect_failed_v4.2' into 'release/v4.2'
Component_bt/Fix SPP initiator can not free resource when connection is failed[backport 4.2]

See merge request espressif/esp-idf!17746
2022-04-19 15:49:12 +08:00
Michael (XIAO Xufeng)
5edd6a4ddf spi_master: fix the error log when use tx/rx_data with larger data 2022-04-18 15:15:06 +08:00
Michael (XIAO Xufeng)
396159299c Merge branch 'bugfix/gpio_pin_num_fix_v4.2' into 'release/v4.2'
gpio: Fix some gpio pin num errors on esp32s2 (backport v4.2)

See merge request espressif/esp-idf!17110
2022-04-18 14:49:52 +08:00
Jakob Hasse
e5eccb409e bugfix (nvs): Fixed issues found by Coverity
*  Fixed potential memory leak
*  Fixed wrong strncpy usage
*  Fixed potential out of bounds access
2022-04-13 18:02:47 +08:00
Nachiket Kukade
154e579cfc esp_wifi: Always connect Station in PMF mode if possible
While using esp_wifi_set_config, flag pmf_capable defaults to 0.
Users may not bother to enable it, which prevents connection to a
WPA3 AP. Or the AP may reset into WPA3 mode failing the re-connection.
To ensure better security, deprecate the pmf_capable flag and set it to
true internally.
Additionally add API esp_wifi_disable_pmf_config to disable PMF for
debug purposes or to avoid PMF issues on AP side.
2022-04-12 18:40:51 +05:30