Commit graph

1815 commits

Author SHA1 Message Date
KonstantinKondrashov
dcbcb5fe58 esp_timer: Add Test case when set_alarm needs set timer < now_time 2019-12-14 04:46:27 +08:00
KonstantinKondrashov
8e54ee3f16 esp_timer: Fix set_alarm. Case when timestamp < now_time
arg1 = MAX(int64_t arg1, uint64_t arg2) gave the wrong result, if arg1 < 0, it was presented as a larger value.
And ALARM_REG = (uin32_t)arg1. This leads to an infinite loop.
Fixed: both args are int64_t.

Closes: WIFI-1511
2019-12-11 19:28:20 +08:00
Jack
939d5a0f6a esp_wifi: fix WiFi scan and connect bugs when coexist with Bluetooth
1. Fix WiFi scan leads to poor performance of Bluetooth.
2. Improve WiFi connect success ratio when coexist with Bluetooth.
3. Check if WiFi is still connected when CSA or beacon timeout happen.
4. add coex pre init
2019-12-09 12:17:16 +08:00
Jiang Jiang Jian
a8f956e590 Merge branch 'bugfix/warning_fix_latest_freertos_v4.0' into 'release/v4.0'
Fixed warnings for components driver, esp32 and mbedtls (v4.0)

See merge request espressif/esp-idf!6759
2019-11-20 12:20:02 +08:00
Shubham Kulkarni
f95a723412 Fixed warnings for components driver, esp32 and mbedtls 2019-11-19 15:02:02 +05:30
xiehang
e5773cc2fe esp_wifi: Put some rx code to iram and update phy4180 2019-11-18 02:54:46 +00:00
Angus Gratton
79f36e85d5 Merge branch 'fix/ci_ut_psram_wroverb_v4.0' into 'release/v4.0'
ci: fix one ut issue when using Wrover-B module with newer ver of PSRAM (backport v4.0)

See merge request espressif/esp-idf!6592
2019-11-11 18:38:53 +08:00
Michael (XIAO Xufeng)
f54cab62a2 ci: fix one ut issue when using Wrover-B module with newer ver of PSRAM
The workaround for PSRAM that will occupy an SPI bus is enabled only when:

1. used on 32MBit ver 0 PSRAM.
2. work at 80MHz.

The test used to only check 32MBit by the config option, but for PSRAM
on Wrover-B module seems to use a newer version of 32MBit PSRAM.  So it
expects the workaround to be enabled, but actually not.

This commit split the unit test into two parts:

1. check all SPI buses are available, for all configs except psram_hspi
and psram_vspi, run on regular runners (including Wrover and Wrover-B).
a hidden option is enabled so that the compiler knows it's not building
psram_hspi or psram_vspi.

2. check the specified bus are acquired, for config psram_hspi and
psram_vspi. This only run on special runner (legacy Wrover module).
2019-11-08 08:25:35 +00:00
Angus Gratton
947fc14a3f wifi: Include DMA reserved pool when allocating internal-only memory
Fix for root cause of https://github.com/espressif/esp-idf/issues/3592
2019-11-08 11:37:46 +08:00
Anton Maklakov
4f297ed3fa Revert "C++: add provisions for optional RTTI support"
This reverts commit 3d0466ccd1.
2019-10-31 13:26:53 +07:00
Jiang Jiang Jian
8eaa440221 Merge branch 'bugfix/jump_time_54_sec_v4.0' into 'release/v4.0'
esp_timer: Fix time jumps back ~ 54sec (v4.0)

See merge request espressif/esp-idf!6456
2019-10-31 12:31:39 +08:00
Tian Hao
c599d7aa49 fix bug that semaphore may schedule out in Critical Section
1. Since BLE full-scan feature for BLE mesh change the controller code cause this problem,
it cause coex semaphore take in "interrupt disable", then it may cause task schedule
and cause crash in freertos
2. Fix newlib lock ISR context and critical section check
3. Fix bt controller ISR context and critical section check
2019-10-25 12:01:06 +08:00
KonstantinKondrashov
f1e8a49836 esp_timer: Fix System time jumps back ~54secs
Closes: https://github.com/espressif/esp-idf/issues/2513
2019-10-22 23:43:28 +08:00
KonstantinKondrashov
09cc922b42 esp32: Add UTs to check the System time does not jump back 2019-10-22 23:43:28 +08:00
Ivan Grokhotkov
3d0466ccd1 C++: add provisions for optional RTTI support
Ref. https://github.com/espressif/esp-idf/issues/1684

This change allows RTTI to be enabled in menuconfig. For full RTTI
support, libstdc++.a in the toolchain should be built without
-fno-rtti, as it is done now.

Generally if libstdc++.a is built with RTTI, applications which do not
use RTTI (and build with -fno-rtti) could still include typeinfo
structures referenced from STL classes’ vtables. This change works
around this, by moving all typeinfo structures from libstdc++.a into
a non-loadable section, placed into a non-existent memory region
starting at address 0. This can be done because when the application
is compiled with -fno-rtti, typeinfo structures are not used at run
time. This way, typeinfo structures do not contribute to the
application binary size.

If the application is build with RTTI support, typeinfo structures are
linked into the application .rodata section as usual.

Note that this commit does not actually enable RTTI support.
The respective Kconfig option is hidden, and will be made visible when
the toolchain is updated.
2019-10-18 11:22:39 +02:00
Angus Gratton
57335cfc26 Merge branch 'feature/add_chip_revision_to_image_header_4.0' into 'release/v4.0'
Add chip revision into image header(v4.0)

See merge request espressif/esp-idf!6127
2019-10-11 13:22:12 +08:00
Angus Gratton
4cafa3e76e Merge branch 'feature/add_psram_workaround_option_4.0' into 'release/v4.0'
make psram workaround depend on chip revison(v4.0)

See merge request espressif/esp-idf!6115
2019-10-10 11:00:29 +08:00
suda-morris
79923d0199 Add chip revision into image header
Check chip id and chip revision before boot app image

Closes https://github.com/espressif/esp-idf/issues/4000
2019-10-08 02:45:36 +00:00
Roland Dobai
dedaf624db Handle deprecated values in sdkconfig.defaults
The issue was pointed out also in
https://github.com/espressif/esp-idf/issues/4092
2019-10-03 10:13:42 +02:00
Xia Xiaotian
10d26549fa Coexist: fix some coexist bugs
1. Fix high beacon and broadcast packets loss ratio of WiFi to
   make MDNS test pass.
2. Improve stability of WiFi performance with a little sacrifice
   of throughput.
3. Improve BLE advertising and connection performance with
   dynamic priority. It sacrifices a little WiFi throughput, but
   achieves balance between WiFi and Bluetooth.
2019-09-30 11:42:05 +08:00
Ivan Grokhotkov
e5ff431b35 Merge branch 'fix/esp_flash_coredump_4.0' into 'release/v4.0'
esp_flash: fix coredump issues (backport v4.0)

See merge request espressif/esp-idf!6136
2019-09-26 21:26:53 +08:00
Roland Dobai
fc738680f8 Fix Kconfig issues discovered by upstream Kconfiglib 2019-09-25 08:25:51 +02:00
Jiang Jiang Jian
7f9626d378 Merge branch 'cleanup/make_supp_headers_private_v4.0' into 'release/v4.0'
wpa_supplicant: Make internal crypto headers private (backport v4.0)

See merge request espressif/esp-idf!6061
2019-09-23 18:00:43 +08:00
Angus Gratton
e4a4e6ed81 wdt: Remove deprecated esp_task_wdt_feed() function
Deprecated in ESP-IDF V3.1
2019-09-19 18:48:55 +10:00
Angus Gratton
8094e880c6 esp32/esp_common: Remove deprecated esp_efuse_read_mac() function
Deprecated since ESP-IDF V2.0
2019-09-19 18:48:30 +10:00
Angus Gratton
35b9223cf4 esp32/esp_common: Remove deprecated system_* APIs
Mostly deprecated before ESP-IDF V1.0 & V2.0
2019-09-19 18:48:30 +10:00
Angus Gratton
2c16557ee7 esp32: Remove deprecated system_deep_sleep function
Deprecated since ESP-IDF V3.0
2019-09-19 18:48:14 +10:00
Ivan Grokhotkov
5f8e5db268 esp32/test: fix usage of deprecated fields 2019-09-19 18:48:14 +10:00
Angus Gratton
a9fe3165c4 soc/pm: Remove deprecated use of rtc_cpu_freq_t enum
Removes deprecated ways of setting/getting CPU freq, light sleep freqs.

Deprecated since ESP-IDF V3.2
2019-09-19 18:48:13 +10:00
suda-morris
546026d018 make psram workaround depend on chip revison
Since ESP32 revision 3, the PSRAM workaround is not needed.
2019-09-19 13:50:53 +08:00
Michael (XIAO Xufeng)
e4b44f3488 esp_flash: fix coredump for legacy spi flash API
When legacy mode is used, the coredump still fails during linking
because "esp_flash_init_default_chip", "esp_flash_app_init" and
"esp_flash_default_chip " are not compiled and linked.

Instead of using ``if`` macros in callers, these functions are protected
by ``if`` macros in the header, and also not compiled in the sources.
"esp_flash_default_chip" variable is compiled with safe default value.
2019-09-18 14:28:12 +08:00
Nachiket Kukade
ca80b0445d wpa_supplicant: Make internal crypto headers private (backport v4.0)
A lot of internally used crypto headers are publicly includeable
in user projects. This leads to bug reports when these headers
are incorrectly used or the API's are not used as intended.

Move all crypto headers into private crypto src folder, also move
crypto_ops into Supplicant to remove dependecy on crypto headers.

Closes IDF-476
2019-09-17 13:28:30 +00:00
jiangguangming
536c131114 fix bug for cmake build system
The path of ${SDKCONFIG_H} does not exist, should be replaced by ${sdkconfig_header}.
2019-09-16 11:18:04 +08:00
Jiang Jiang Jian
5a351af83f Merge branch 'bugfix/flash_encryption_disable_plaintext_v4.0' into 'release/v4.0'
flash encryption: Always disable plaintext reflashes in Release mode (v4.0)

See merge request espressif/esp-idf!6070
2019-09-12 10:40:34 +08:00
Angus Gratton
5b69614e32 flash encryption: Ensure flash encryption can't be disabled if Secure Boot is on 2019-09-11 10:16:43 +10:00
Ivan Grokhotkov
fae124a2c1 esp32: cpu_start: read binary image header via cache
When flash encryption is enabled, reading via cache also decrypts the
data, whereas spi_flash_read does not.

Closes https://github.com/espressif/esp-idf/issues/3907
2019-09-10 17:18:51 +02:00
Renz Christian Bagaporo
520ecb0c4d ldgen: fix build issue on make when build dir is a symlink
Fixes an issue where build fails if the build directory is a symlink.
The issue is caused by the rule target and the final executable dependency
not matching.

Closes https://github.com/espressif/esp-idf/issues/3626
2019-08-28 10:28:17 +08:00
Angus Gratton
16ee476a77 Merge branch 'bugfix/config_panic_gdbstub_build_issue_v4.0' into 'release/v4.0'
esp32_gdbstub: fix build error with esp32-2019r1 toolchain (v4.0)

See merge request espressif/esp-idf!5764
2019-08-20 13:11:24 +08:00
Angus Gratton
a63b3c4fe6 Merge branch 'feature/dport_eco_revision2_v4.0' into 'release/v4.0'
make dport workaround depend on chip revision (v4.0)

See merge request espressif/esp-idf!5765
2019-08-16 13:15:18 +08:00
chenjianqiang
764b70d7e6 bugfix(flash): add spi dio address bitlen configure in psram init 2019-08-15 10:52:56 +08:00
suda-morris
1b903111b6 efuse: update the scheme of getting chip revision 2019-08-13 14:37:17 +08:00
Mahavir Jain
69ef694178 esp32_gdbstub: fix build error with esp32-2019r1 toolchain
Fixes https://github.com/espressif/esp-idf/issues/3866
Closes https://github.com/espressif/esp-idf/issues/3834
2019-08-13 11:38:28 +05:30
Angus Gratton
b071fbdd81 Merge branch 'test/rtc_noinit_wdt_test' into 'master'
esp32: verify that RTC_NOINIT_ATTR vars are preserved after WDT reset

See merge request espressif/esp-idf!4936
2019-07-30 09:42:15 +08:00
Ivan Grokhotkov
b4e850a4b1 Merge branch 'bugfix/make_link_libc_psram' into 'master'
esp32: also add -mfix-esp32-psram-cache-issue to LDFLAGS

See merge request espressif/esp-idf!5643
2019-07-29 19:01:12 +08:00
Angus Gratton
bfb0f83b32 Merge branch 'bugfix/dis_interrupts_up_to_6_level_for_dport_wa' into 'master'
esp32: Dis interrupts up to 5 lvl for DPORT

Closes IDF-728

See merge request espressif/esp-idf!5344
2019-07-29 10:57:20 +08:00
Ivan Grokhotkov
98c179ed47 esp32: also add -mfix-esp32-psram-cache-issue to LDFLAGS
xtensa-esp32-elf-gcc selects among the multilib configurations based
on the presence of -mfix-esp32-psram-cache-issue flag. Pass this flag
in LDFLAGS so that the correct libraries are linked.

Reported in https://github.com/espressif/esp-idf/issues/3624
2019-07-28 08:05:56 +02:00
chenjianqiang
d77c74770a bugfix(flash): add flash config in app startup
We fixed some flash bugs in bootloader, but for the users used the old
vrsion bootloader, they can not fix these bugs via OTA, the solution is
add these updates in app startup.

These updates include:
1. SPI flash gpio matrix and drive strength configuration
2. SPI flash clock configuration
3. SPI flash read dummy configuration
4. SPI flash cs timing configuration
5. Update flash id of g_rom_flashchip
2019-07-18 14:40:59 +08:00
Konstantin Kondrashov
69a313b6ae esp32: Add UTs for DPORT and Hi-interrupt 2019-07-16 05:54:45 +00:00
Konstantin Kondrashov
632b016028 esp32: Dis interrupts up to 5 lvl for DPORT
Disable interrupts for both DPORT workarounds up to 5 lvl.

Closes: https://esp32.com/viewtopic.php?f=2&t=10981&sid=d125cec233070ed4d2c5410bf5d3d74a
Closes: IDF-728
2019-07-16 05:54:45 +00:00
chenjianqiang
d6c40c7c1d bugfix(flash): improve spi cs timing settings for flash
cs setup time is recomemded to be 1.5T, and cs hold time is recommended to be 2.5T.
(cs_setup = 1, cs_setup_time = 0; cs_hold = 1, cs_hold_time = 1)
2019-07-05 21:21:17 +08:00