Commit graph

1275 commits

Author SHA1 Message Date
Angus Gratton
ea29c101cd Merge branch 'bugfix/fix_iram_intr_alloc_test' into 'master'
ccomp_timer: fix broken unit test

See merge request espressif/esp-idf!6779
2019-11-22 08:41:50 +08:00
Ivan Grokhotkov
8ff801766a Merge branch 'docs/update_oocd_config_on_cmd_line' into 'master'
Updates OpenOCD configuration file names in documentation

See merge request espressif/esp-idf!6226
2019-11-22 05:32:35 +08:00
Ivan Grokhotkov
38520d3b65 Merge branch 'feature/build_apps_script' into 'master'
tools: add build_apps.py, script to build multiple apps

Closes IDF-641

See merge request espressif/esp-idf!6101
2019-11-22 02:54:28 +08:00
Ivan Grokhotkov
30d21adcca ci: don't add build_examples_make as a target_test dependency 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
e1aee5ad09 ci: reimplement build_examples_cmake using {find,build}_apps.py 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
0e6e7f49be tiny-test-fw: add build config and target options 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
7ac8f28dda tools: add build warnings checking script 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
9d15c1fd40 tools: add {find,build}_apps.py, scripts to build multiple apps
This commit adds a pair of scripts, find_apps.py and build_apps.py.
These scripts are intended to be used in various CI jobs, building
multiple applications with different configurations and targets.

The first script, find_apps.py, is used to prepare the list of builds:
1. It finds apps for the given build system.
2. For each app, it finds configurations (sdkconfig files) which need
   to be built.
3. It filters out the apps and configurations which are not compatible
   with the given target.
4. It outputs the list of builds into stdout or a file. Currently the
   format is a list of lines, each line a JSON string. In the future,
   the tool can be updated to output YAML files.

The lists of builds can be concatenated and processed with standard
command line tools, like sed.

The second script, build_apps.py, executes the builds from the list.
It can execute a subset of builds based on --parallel-count and
--parallel-index arguments.

These two scripts are intended to replace build_examples_make,
build_examples_cmake, and the custom unit-test-app logic (in the
Makefile and idf_ext.py).

Closes IDF-641
2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
1be70588f3 Merge branch 'bugfix/idf_tools_guess_idf_path' into 'master'
idf_tools.py: when guessing IDF_PATH, set it in the enviroment

Closes IDF-1141 and IDFGH-2189

See merge request espressif/esp-idf!6752
2019-11-21 20:30:08 +08:00
Roland Dobai
be749395c4 Menuconfig: Don't ask to save configuration when nothing has changed
Closes https://github.com/espressif/esp-idf/issues/4303
2019-11-21 06:47:11 +00:00
Renz Christian Bagaporo
6540877f23 test_utils: move ccomp timer interrupt allocation/free to init/deinit 2019-11-21 11:59:46 +08:00
Angus Gratton
bc3233782b Merge branch 'feature/remove_gcc5_support' into 'master'
global: remove gcc 5.2 support

Closes IDF-1131

See merge request espressif/esp-idf!6608
2019-11-21 09:08:41 +08:00
Ivan Grokhotkov
9a2af7ae33 global: remove gcc 5.2 support 2019-11-20 11:17:27 +01:00
He Yin Ling
bcf1f992ff Merge branch 'ci/fix_iperf_example_test_failure' into 'master'
ci: fix iperf example test and LEDC unit test error

See merge request espressif/esp-idf!6754
2019-11-20 10:34:41 +08:00
Angus Gratton
bc9267aa24 Merge branch 'feature/use_cpu_time_for_tests' into 'master'
Cache compensated timer

See merge request espressif/esp-idf!6087
2019-11-20 08:33:27 +08:00
Anton Maklakov
bd49b3f315 Merge branch 'bugfix/soc_missing_tests' into 'master'
soc: fix unit tests not included in the build

See merge request espressif/esp-idf!6723
2019-11-20 00:32:43 +08:00
Roland Dobai
e533c88760 tools: Write Kconfig files always
Write COMPONENT_KCONFIGS_SOURCE_FILE and
COMPONENT_KCONFIGS_PROJBUILD_SOURCE_FILE files always even when
COMPONENT_KCONFIGS or COMPONENT_KCONFIGS_PROJBUILD are empty variables
because kconfiglib expects them to exist.
2019-11-19 15:11:11 +01:00
Sergei Silnov
18c594e250 idf.py: run build system target for unknown commands 2019-11-19 13:28:00 +01:00
Angus Gratton
af945096b2 Merge branch 'bugfix/confgen_gen_source_from_build' into 'master'
Generate source files for kconfiglib from the build system

See merge request espressif/esp-idf!6433
2019-11-19 14:19:49 +08:00
He Yin Ling
ca217e04ec ci: reduce the required num of jobs for ESP32S2 beta LEDC cases 2019-11-19 11:51:26 +08:00
Angus Gratton
3761441b0e Merge branch 'bugfix/remove_stale_files' into 'master'
Remove accidentally merged and stale files

See merge request espressif/esp-idf!6658
2019-11-19 11:28:53 +08:00
He Yin Ling
613b9b613d ci: fetch all submodules for iperf example test 2019-11-19 11:18:59 +08:00
Ivan Grokhotkov
9fa3974447 idf_tools.py: when guessing IDF_PATH, set it in the enviroment
This allows the processes launched from idf_tools.py to use the value
of IDF_PATH. One such example is the installation of Python packages,
when requirements.txt uses IDF_PATH to refer to the esp-windows-curses
package.

Closes https://github.com/espressif/esp-idf/issues/4341
2019-11-18 16:22:25 +01:00
Roland Dobai
8a02feb671 tools: Don't use git work-tree in idf_tools.py
Closes https://github.com/espressif/esp-idf/issues/4355
2019-11-18 13:15:39 +01:00
Ivan Grokhotkov
93a8603c54 Merge branch 'feature/builtin_type_exceptions_test' into 'master'
C++: Throw builtin type exception test

See merge request espressif/esp-idf!6570
2019-11-18 19:34:05 +08:00
Alexey Gerenkov
1626f827d3 docs: Updates OpenOCD configuration file names 2019-11-18 13:33:32 +03:00
Angus Gratton
a032ce7cd7 ci: Add test configs for 32kHz crystals 2019-11-18 16:05:37 +07:00
Wang Jia Lin
be43bfe0c1 Merge branch 'bugfix/ledc_ut_esp32s2beta' into 'master'
bugfix(LEDC): fix ledc CI issue for esp32s2beta

Closes IDF-1011

See merge request espressif/esp-idf!6530
2019-11-18 16:19:42 +08:00
Renz Christian Bagaporo
c4dc63c4d8 ci: add jobs for tests 2019-11-18 10:29:42 +08:00
Renz Christian Bagaporo
df26ab13e2 test_utils: implement performance timer 2019-11-18 10:29:01 +08:00
Jakob Hasse
cd730b94be C++: added unit tests for builtin type exceptions 2019-11-18 08:53:50 +08:00
Roland Dobai
84d5cc1c17 Generate source files for kconfiglib from the build system 2019-11-15 15:25:09 +00:00
Ivan Grokhotkov
c8a37c296a ci: don't fetch all submodules in unit_test and example_test 2019-11-15 07:59:44 +00:00
Angus Gratton
83b468f707 Merge branch 'feature/idfpy_hidden_commands' into 'master'
idf.py: add support for subcommands hidden from help

See merge request espressif/esp-idf!6646
2019-11-15 12:41:43 +08:00
Jiang Jiang Jian
a9c1970c03 Merge branch 'bugfix/put_more_rx_code_to_iram' into 'master'
wifi: Put some rx code to iram

Closes WIFI-490 and WIFI-1041

See merge request espressif/esp-idf!6490
2019-11-15 10:58:22 +08:00
Ivan Grokhotkov
9e8fa4bb18 Merge branch 'feature/esp_netif_interface_update' into 'master'
tcpip_adapter refactor: ready for review

Closes IDF-39

See merge request espressif/esp-idf!5373
2019-11-14 21:27:53 +08:00
Angus Gratton
9efbe1bb47 Merge branch 'bugfix/support_worktree_on_cmake' into 'master'
cmake: support git worktree

See merge request espressif/esp-idf!6581
2019-11-14 16:00:47 +08:00
houwenxiang
30b2e02088 bugfix(LEDC):fix ledc CI issue for esp32s2beta. 2019-11-14 12:20:29 +08:00
Angus Gratton
17d0ada00a Merge branch 'bugfix/idfpy_before_flash_option' into 'master'
idf.py: Add --before flag to esptool.py call

See merge request espressif/esp-idf!6577
2019-11-14 11:13:48 +08:00
xiehang
5e7f43f3d1 esp_wifi: Put some rx code to iram 2019-11-13 11:44:23 +00:00
David Cermak
76f612e14f ci: increased number of parallel jobs to have enough runners for unit
tests
2019-11-13 12:36:26 +01:00
David Cermak
e535376257 tools: updated generator of error codes to names to ignore tcpip_adapter
compatibility types since the error codes are reused in esp-netif and in
tcpip_adapter mapped to the same number.
2019-11-13 12:36:26 +01:00
David Cermak
b834c99148 examples: modify other examples and tests to use esp_netif instead of tcpip_adapter 2019-11-13 12:36:25 +01:00
Anton Maklakov
ef3016d0d3 Remove accidentally merged and stale files 2019-11-12 11:43:36 +07:00
Angus Gratton
b4653cf391 Merge branch 'bugfix/update_can_target_test' into 'master'
CAN: Reenable example tests, update job and environment labels.

See merge request espressif/esp-idf!6487
2019-11-12 11:09:50 +08:00
Sergei Silnov
2dbad4fe7b idf.py: add support for subcommands hidden from help 2019-11-08 17:54:10 +01:00
Angus Gratton
8b38d79dd3 Merge branch 'feature/windows_ccache_enable' into 'master'
tools: export IDF_CCACHE_ENABLE on Windows by default

Closes IDF-955

See merge request espressif/esp-idf!6607
2019-11-08 18:57:26 +08:00
Angus Gratton
79d242edd3 Merge branch 'bugfix/py_requirements' into 'master'
Fix Python requirement for setuptools

See merge request espressif/esp-idf!6588
2019-11-08 18:03:20 +08:00
Angus Gratton
75488f1806 Merge branch 'bugfix/cmake_secure_boot' into 'master'
secure boot: CMake bug fixes

See merge request espressif/esp-idf!6523
2019-11-08 10:58:04 +08:00
Ivan Grokhotkov
d459f7bfe0 Merge branch 'bugfix/dockerfile_set_idf_branch' into 'master'
tools/docker: use correct branch and commit of IDF when building

Closes IDF-1120

See merge request espressif/esp-idf!6584
2019-11-08 03:08:45 +08:00
Ivan Grokhotkov
dd7dd08bfb Merge branch 'bugfix/tinyfw_local_test' into 'master'
tiny-test-fw: restore the ability to run tests locally

See merge request espressif/esp-idf!6620
2019-11-07 21:27:58 +08:00
Roland Dobai
86fd13230e CI: Don't download esp32s2beta builds into example tests 2019-11-07 06:56:03 +00:00
Ivan Grokhotkov
8d527243d9 tools/docker: use correct branch and commit of IDF when building 2019-11-06 17:58:23 +01:00
Ivan Grokhotkov
6306ea5a92 tiny-test-fw: fix running tests which use IDFDUT class 2019-11-06 15:31:16 +01:00
Ivan Grokhotkov
10abced362 Merge branch 'feature/update_toolchain_esp-2019r2' into 'master'
Introduce esp-2019r2 toolchain for both ESP32 and ESP32s2 targets

See merge request espressif/esp-idf!6575
2019-11-06 16:10:51 +08:00
Angus Gratton
5b33d6cf94 Merge branch 'feature/mbedtls_add_faster_modexp' into 'master'
mbedtls: Add a new (X^Y) mod M implementation (HAC 14.94)

Closes IDF-965

See merge request espressif/esp-idf!6418
2019-11-06 15:51:28 +08:00
Ivan Grokhotkov
c75bdcb429 tools: export IDF_CCACHE_ENABLE on Windows by default 2019-11-05 11:45:27 +01:00
Sergei Silnov
ca79a5ecb3 idf.py: add python path to flash instructions
Closes https://github.com/espressif/esptool/issues/449
2019-11-05 11:07:03 +01:00
H.Ogino
7e5d30cda4 idf.py: add encoding option
Merges https://github.com/espressif/esp-idf/pull/4106

Signed-off-by: Sergei Silnov <sergei.silnov@espressif.com>
2019-11-05 10:36:37 +01:00
KonstantinKondrashov
5ed8388f6b mbedtls: Add Montgomery exponentiation implementation (HAC 14.94)
It gave us a better performance of RSA operations. (2~11 times)

The old modexp implementation (Z = X ^ Y mod M) loaded all the data into
the hw registers and was waiting for completion, but due to
the hardware RSA implementation, the calculations always started with 4096 bit,
which took a lot of time.
Measurement results (measurements were made for keys: 2048, 3072 and 4096 bits)
(Old) - Sliding-window exponentiation (HAC 14.85):
keysize = 2048 bits
RSA key operation (performance): public [93206 us], private [280189 us]
keysize = 3072 bits
RSA key operation (performance): public [293614 us], private [858157 us]
 keysize = 4096 bits
RSA key operation (performance): public [653192 us], private [1912126 us]

Instead (Old) - Sliding-window exponentiation (HAC 14.85) was implemented
(New) - Montgomery exponentiation (HAC 14.94) which showed
better performance on private and public keys.
keysize = 2048 bits
RSA key operation (performance): public [14504 us], private [149456 us]
keysize = 3072 bits
RSA key operation (performance): public [35073 us], private [392743 us]
keysize = 4096 bits
RSA key operation (performance): public [58650 us], private [787186 us]

For this reason, the old implementation was removed
and the MBEDTLS_HARDWARE_MPI option was turned on by default.

Why the MPI_INTERRUPT option is removed:
the old implementation used calculations on the hardware and
it took a lot of time (10ms - 500ms). And in order not to stand idle
while waiting for completion, an interrupt option was added.
This made it possible to carry out other tasks during the calculation,
and this one to block. The new method is free from such a drawback and
the maximum duration of one RSA HW operation does not exceed 70us (usually 2-70 μs).
This option is no longer needed.

Closes: IDF-965
2019-11-05 16:33:11 +08:00
Renz Christian Bagaporo
9d33ad5e25 cmake: support git worktree
Use rev-parse to get the HEAD directory instead of manually looking for
it. This method works in the main repository, worktrees and submodules.

Closes https://github.com/espressif/esp-idf/issues/4136
2019-11-05 15:32:35 +08:00
Roland Dobai
70b6f5397f Fix Python requirement for setuptools 2019-11-04 16:18:37 +01:00
Angus Gratton
ad79772e7e Merge branch 'bugfix/cmake_sdkconfig_issues' into 'master'
cmake: fix sdkconfig related issues

Closes IDF-1086

See merge request espressif/esp-idf!6436
2019-11-04 18:30:49 +08:00
Anton Maklakov
c2db6a14c4 Introduce esp-2019r2 toolchain for both ESP32 and ESP32s2 targets
Adds support of POSIX libs like regex.h

closes https://github.com/espressif/esp-idf/issues/2407
closes https://github.com/espressif/esp-idf/issues/4257
ref https://github.com/espressif/esp-idf/issues/271

Also there are some changes in the toolchain's changelog
2019-11-04 16:14:57 +07:00
Renz Christian Bagaporo
2dd74d4b7a ci: remove semicolon for cmake build system test 2019-11-03 16:52:06 +08:00
Renz Christian Bagaporo
42d4f39a9a cmake: consider sdkconfig defaults value from environment 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
b0bb53de06 ci: test multiple sdkconfig defaults 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
bf1df9b5b5 cmake: do not check if sdkconfig exists 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
d43cc4fa4b cmake: allow multiple sdkconfig defaults to be specified 2019-11-03 16:43:58 +08:00
Michael (XIAO Xufeng)
748b79e94a 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-03 03:07:37 +00:00
tatsutaigu
e6ad82a0b2 idf.py: Add --before flag to esptool.py call
Merges https://github.com/espressif/esp-idf/pull/4125
2019-11-01 20:00:56 +01:00
Ivan Grokhotkov
88b5a9c4d6 ci: fix regression in build system tests
On macOS, rsync --exclude option accepts absolute paths as well as
relative ones. On Linux, it doesn't, which results in endless recursive
copying of test_build_system directory.
2019-11-01 15:43:21 +01:00
Ivan Grokhotkov
9ffd444e52 Merge branch 'feature/ci_macos_build_system_test' into 'master'
ci: add CMake build system test for macOS

See merge request espressif/esp-idf!6552
2019-11-01 18:41:30 +08:00
Ivan Grokhotkov
3da93b0a5e Merge branch 'bugfix/win_s2_toolchain' into 'master'
tools: Fix toolchain installer for Windows and macOS

See merge request espressif/esp-idf!6548
2019-10-31 23:29:59 +08:00
Jiang Jiang Jian
02a756015d Merge branch 'feature/wifi_merge_libs_to_master' into 'master'
esp_wifi: merge esp32s2beta WiFi library and fix WiFi deinit memory leak bug

See merge request espressif/esp-idf!6531
2019-10-31 20:56:39 +08:00
Ivan Grokhotkov
c0c75478fa Merge branch 'feature/idfpy_extensions' into 'master'
idf.py: Support extensions for idf.py and move commands to separate files

Closes IDF-1041

See merge request espressif/esp-idf!6416
2019-10-31 15:47:59 +08:00
Ivan Grokhotkov
9279b72a6c idf_tools.py: fix virtualenv issue for macOS with homebrew 2019-10-30 19:44:15 +01:00
Ivan Grokhotkov
f61fd8a664 tools: remove spaces from toolchain URLs 2019-10-30 19:44:15 +01:00
Ivan Grokhotkov
cfe9244a96 ci: add build system test on macOS 2019-10-30 19:44:15 +01:00
Ivan Grokhotkov
058d13c351 ci: fixes for CMake build system test on macOS 2019-10-30 18:59:38 +01:00
Roland Dobai
bdb08de875 tools: Fix toolchain installer for Windows 2019-10-30 15:43:25 +01:00
Ivan Grokhotkov
a088678dd4 unit-test-app: apply sdkconfig.defaults.esp32 for Make builds 2019-10-30 10:43:38 +01:00
Ivan Grokhotkov
92d4b86182 ci: add tests for sdkconfig.defaults.IDF_TARGET 2019-10-30 10:43:37 +01:00
Ivan Grokhotkov
142e49f4cc unit-test-app: fix chip-specific sdkconfig options
DEFAULT_CPU_FREQ and ULP_COPROC_ENABLED options have chip-specific
names, and should be set in a chip-specific sdkconfig.defaults file.
This commit also changes the default CPU frequency for ESP32S2 unit
tests to 240 MHz.
2019-10-30 10:41:30 +01:00
Sergei Silnov
5e6aae3e04 Fix typo and naming format for extensions 2019-10-30 10:34:17 +01:00
Sergei Silnov
1c798393e2 Add idf.py extensions and move core actions to separate files 2019-10-30 10:34:17 +01:00
Xia Xiaotian
9afba2abf5 esp_wifi: merge esp32s2beta WiFi library to master branch 2019-10-29 19:41:33 +08:00
Roland Dobai
01887f71e7 Update kconfiglib to upstream version and replace mconf-idf
Special thanks to @ulfalizer for the helpful suggestions regarding
kconfiglib.

"rsource" option is available for relative path includes
Closes https://github.com/espressif/esp-idf/issues/4064
2019-10-29 10:40:04 +01:00
Darian Leung
81ddd9e291 CAN: Reenable example tests
This commit updates the CAN example tests and updates the job
and environment labels in the target-test.yml
2019-10-29 17:25:49 +08:00
Angus Gratton
f4ea7c5a46 cmake: Set uninitialized variable warnings in ULP & bootloader subprojects
Fixes issue where PYTHON was not being expanded when running ulp_mapgen.py,
causing Windows launch setting to be used - reported here:
https://esp32.com/viewtopic.php?f=13&t=12640&p=50283#p50283
2019-10-29 05:38:39 +00:00
Angus Gratton
e8881352c5 secure boot: Fix bug where verification key was not embedded in app 2019-10-29 12:46:09 +11:00
Angus Gratton
6e1aa985e7 ci: Increase INT_WDT_TIMEOUT_MS for PSRAM configs
This shouldn't be necessary, it's a workaround for a bug
in the config system.
2019-10-28 18:58:05 +11:00
Angus Gratton
8675a818f9 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-22 13:51:49 +11:00
Ivan Grokhotkov
c7d8ef52ca Merge branch 'fix/esp_flash_no_qe' into 'master'
esp_flash: fix the QE write issue in high freq, and support UT for external chips

Closes IDF-888

See merge request espressif/esp-idf!5736
2019-10-20 13:59:30 +08:00
Ajita Chavan
56f73d7720 flash_ops: fix spi_flash_read with source buffer not from internal memory and size < 16
Closes https://github.com/espressif/esp-idf/issues/4010
2019-10-19 14:56:43 +08:00
Ivan Grokhotkov
1821873a1d Merge branch 'feature/follow_symlinks_in_spiffsgen' into 'master'
spiffs: follow symlinks in spiffsgen

See merge request espressif/esp-idf!6280
2019-10-18 18:49:35 +08:00
Ivan Grokhotkov
5ca7cbfcc4 Merge branch 'bugfix/ci_test_idf_monitor' into 'master'
CI: Adjust the test parameters of IDF Monitor tests

See merge request espressif/esp-idf!6377
2019-10-18 18:01:11 +08:00
Ivan Grokhotkov
e8af0f264c Merge branch 'feature/cxx_rtti_preparation_v2' into 'master'
C++: add provisions for optional RTTI support (v2)

See merge request espressif/esp-idf!6341
2019-10-17 16:22:06 +08:00
Angus Gratton
ae21d669b9 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-17 18:22:08 +11:00
Angus Gratton
0f1923ab22 Merge branch 'bugfix/o2_build_warnings' into 'master'
Fix -O2 build warnings

Closes IDFGH-1945 and IDFGH-1946

See merge request espressif/esp-idf!6311
2019-10-17 13:09:28 +08:00