Commit graph

1339 commits

Author SHA1 Message Date
He Yin Ling
164e8ba21f test: support loadable elf test cases:
loadable elf example is different for 2 reasons:

1. loadable elf binary don't have flasher_args.json, so we can't use normal
to get from CI artifacts
2. it don't have binary and don't need to downloaded binary to DUT. Some
related functions can be ignored
2019-12-08 20:32:11 +08:00
He Yin Ling
cca08b3d2b CI: remove not exist file from executable-list.txt 2019-12-08 20:32:10 +08:00
He Yin Ling
a11b15b92b CI: build system do not check submodule for CI 2019-12-08 20:32:10 +08:00
He Yin Ling
b4863551a9 CI: modify fetch submodule method:
download archive for submodules instead of clone
2019-12-08 20:32:10 +08:00
He Yin Ling
5d1be3bb8b CI: raise import error instead of exit for ble tools 2019-12-07 10:34:54 +08:00
He Yin Ling
89f8e19850 CI: support only download artifacts by request:
use CI dependencies could waste a lot bandwidth for target test jobs, as
example binary artifacts are very large. Now we will parse required
artifacts first, then use API to download required files in artifacts.
2019-12-07 10:34:54 +08:00
He Yin Ling
c906e2afee test: update example and unit tests with new import roles:
tiny_test_fw is a python package now. import it using normal way.
2019-12-07 10:34:54 +08:00
He Yin Ling
4d45932c5e CI: add utility gitlab_api 2019-12-07 10:34:54 +08:00
He Yin Ling
d621d0e88e tiny-test-fw: move to tools/esp_python_packages:
make `tiny_test_fw` as a package and move to root path of idf python
packages
2019-12-06 17:29:47 +08:00
michael
3e55baea90 menuconfig: fix the MENUCONFIG_STYLE encoding issue and CLI env issue
1. Call cli with explicit argv

When using debugging tools like `pydbg.py --some_arg idf.py -G Ninga
build`, those tools usually call the python script with sys.argv
modified to correct value. But if the cli is called with argv blank, the
cli will get the argv again, and finally get the original command line,
which is incorrect for debugging.

2. Encode the style unicode string back to ascii in menuconfig cmd

On Windows MSYS python2.7, the unicode string set in os.environ will
cause the subprocess creating to fail. All os.environ values should be
strings.
2019-12-05 01:39:46 +08:00
Alexey Gerenkov
884717fb2f apptrace: Adds support for converting SystemView traces to JSON format 2019-12-04 18:04:07 +03:00
Felipe Neves
b0491307fc target-test: bumping test cases parallel count 2019-12-04 10:41:00 -03:00
Ivan Grokhotkov
562a3980b2 idf.py: fix fallback to build system target 2019-12-04 07:13:31 +00:00
Angus Gratton
af382a1b8e Merge branch 'bugfix/update_menuconfig' into 'master'
Update kconfiglib from v12.14.0 to v13.3.2

See merge request espressif/esp-idf!6816
2019-12-04 15:06:09 +08:00
Angus Gratton
054724596d Merge branch 'feature/add_ir_protocol_example_test' into 'master'
rmt: enable ir protocols example test

Closes IDF-906

See merge request espressif/esp-idf!6856
2019-12-04 14:35:22 +08:00
Angus Gratton
6563378812 Merge branch 'bugfix/ci_check_first' into 'master'
CI: Do trivial checks first in order to save build time

See merge request espressif/esp-idf!6671
2019-12-04 13:57:35 +08:00
Angus Gratton
bc36d20371 Merge branch 'feature/idfpy_exit_with_error_deprecated_options' into 'master'
idf.py: add exit_with_error for deprecated commands and options

Closes IDF-949

See merge request espressif/esp-idf!6704
2019-12-04 13:45:37 +08:00
Angus Gratton
38be5c140a Merge branch 'feat/esp_ser_and_sdio_test' into 'master'
essl: new component to communicate with esp serial slave devices

Closes IDF-1002

See merge request espressif/esp-idf!6166
2019-12-04 11:03:14 +08:00
Ivan Grokhotkov
6647e0625d Merge branch 'bugfix/IDFGH-2036' into 'master'
Fix for Windows Defender PS task hanging (IDF tools installation)

Closes IDFGH-2036

See merge request espressif/esp-idf!6796
2019-12-04 03:00:23 +08:00
Michael (XIAO Xufeng)
d158fa3f5c sdio: add unit test between host and slave 2019-12-03 22:58:42 +08:00
Ivan Grokhotkov
a4addc88f2 ci: remove dependencies from link_check job 2019-12-03 10:40:30 +01:00
Roland Dobai
81b116b1b9 Update kconfiglib from v12.14.0 to v13.3.2
Thank you @ulfalizer for fixing the aquatic color theme in upstream
kconfiglib.

Now "xterm" or "screen" values of TERM environment variable is
sufficient to use our default blue menuconfig. "xterm-256color" or
"screen-256color" was necessary before this fix.

See https://github.com/espressif/esp-idf/issues/4387#issuecomment-557823262
2019-12-03 07:33:02 +00:00
morris
c43fe5e52e rmt: enable ir protocols example test 2019-12-03 10:45:53 +08:00
Sergei Silnov
506c46fddc idf.py: add exit_with_error for deprecation 2019-12-02 10:41:23 +01:00
Roland Dobai
b52b49c8b6 CI: Do check first in order to save build time 2019-12-02 09:58:31 +01:00
Roland Dobai
d1541c74a6 Give info and warnings about the TERM environment variable 2019-12-02 09:49:21 +01:00
Angus Gratton
0855fba8a6 Merge branch 'bugfix/reduce_ci_job_number'
Manually merge !6863
2019-12-02 15:01:10 +11:00
Angus Gratton
da4cb76f5a test: Refactor TFW load_source() method to only take the file path
Fixes issues where example tests for persistent_sockets and advanced_tests both
loaded a module named "client", causing a race condition.
2019-11-28 19:25:52 +08:00
Jiang Jiang Jian
e2e2de95b4 Merge branch 'feature/check_wifi_lib_md5_on_host' into 'master'
esp_wifi: check header files MD5 on host

See merge request espressif/esp-idf!6656
2019-11-28 16:48:53 +08:00
He Yin Ling
6b6b42a0b5 ci: reduce the number of UT jobs 2019-11-28 10:44:31 +08:00
Renz Christian Bagaporo
e6ad330018 ble_mesh_wifi_coexist example: Disable Wi-Fi RX IRAM optimisation
Otherwise IRAM usage is too high in this example.
2019-11-28 09:20:00 +08:00
Ivan Grokhotkov
a9b7f74f7f Merge branch 'bugfix/macos_link_toomany_open_files' into 'master'
build system: explicitly disable LTO plugin to reduce the number of simultaneously open files

Closes IDF-923 and IDFGH-1764

See merge request espressif/esp-idf!6776
2019-11-28 01:38:53 +08:00
Ivan Grokhotkov
568f0af61a esp_wifi: check header files MD5 on host 2019-11-27 23:00:11 +08:00
Martin Vychodil
880197307a Windows setup: fix Defender detection and add desktop shortcut option
* use Environment::Exit() to avoid PS process hanging
* old-fashioned exceptions
* try-catch-finally necessary
* disable Windows Defender Task when Defender module not installed
* cleanup script checks Defender module existence too
* fixed uninstall of Start Menu LNK
* use Command Prompt instead of Command Line wording
+ Desktop shortcut
* iterate through PSMODULEPATH when looking for WD module
JIRA IDFGH-2036
2019-11-27 13:40:51 +01:00
morris
dcd99b0ad1 enlarge example cmake build job parallel num 2019-11-27 14:14:08 +08:00
morris
c3ee156df0 ethernet: move netif glue && add ref counter
1. move netif glue into single file
2. add reference counter for Ethernet driver
2019-11-27 10:36:32 +08:00
Ivan Grokhotkov
f49a78d543 build system: explicitly disable LTO plugin
... to reduce the number of simultaneously open files at link time.

When plugin support is enabled in the linker, BFD's (and the
corresponding file handles) are cached for the plugin to use. This
results in quite a large number of simultaneously open files, which
hits the default limit on macOS (256 files).

Since we aren't using LTO now, disable it explicitly when invoking the
linker.

Closes IDF-923
Closes IDFGH-1764
Closes https://github.com/espressif/esp-idf/issues/3989
2019-11-26 19:12:56 +01:00
Roland Dobai
bd2fc9f832 Make menuconfig colors configurable
Closes https://github.com/espressif/esp-idf/issues/4387
2019-11-26 10:40:34 +01:00
Angus Gratton
a29f667b87 Merge branch 'bugfix/kconfig_write_empty_files' into 'master'
tools: Write Kconfig files always

See merge request espressif/esp-idf!6763
2019-11-26 13:58:49 +08:00
Angus Gratton
0d5056f683 Merge branch 'bugfix/idf_tool_git_worktree' into 'master'
tools: Don't use git work-tree in idf_tools.py and try to parse IDF version from C header

Closes IDFGH-2203

See merge request espressif/esp-idf!6743
2019-11-26 13:57:12 +08:00
Alex Lisitsyn
67f62a79c1 freemodbus: add modbus master ascii
add support of modbus master ascii
rename base dir name of master and slave example to be mb_slave, mb_master to avoid conflict with sdio/slave example test
add Kconfig option to enable ASCII and RTU mode separately
update ASCII options + remove cast for errors
added baudrate for examples into Kconfig
updated magic numbers for timer timeout
put ascii private definitions into one file
2019-11-26 13:16:25 +08:00
Angus Gratton
649f27c620 Merge branch 'bugfix/idfpy_cmake_cache_encoding' into 'master'
idf.py: add encoding option

Closes IDFGH-1905

See merge request espressif/esp-idf!6589
2019-11-26 11:50:15 +08:00
Sergei Silnov
dc4a5d06e3 idf.py: Fix error message for unknown target 2019-11-25 15:41:34 +01:00
Sergei Silnov
262ed0e72b idf.py: Fix regression ignorance of --verbose flag 2019-11-25 11:47:55 +01:00
Angus Gratton
f2a1a6105a Merge branch 'feat/mcpwm_hal'
Manual merge of !6626
2019-11-25 17:18:48 +11:00
Angus Gratton
129c9311ca Merge branch 'bugfix/menuconfig_confirm' into 'master'
Menuconfig: Don't ask to save configuration when nothing has changed

Closes IDFGH-2148

See merge request espressif/esp-idf!6643
2019-11-25 13:42:27 +08:00
Angus Gratton
bf80a50c85 Merge branch 'bugfix/idf_tools_add_ULP_for_armel' into 'master'
tools: Add ULP utils for ARMEL

See merge request espressif/esp-idf!6800
2019-11-25 12:13:42 +08:00
michael
0f6dd34971 mcpwm: enable some unit tests again 2019-11-25 00:36:30 +08:00
He Yin Ling
d839f39ed8 Merge branch 'feature/ci_optimize_assign_test' into 'master'
CI: optimize assign test

See merge request espressif/esp-idf!6785
2019-11-24 19:22:41 +08:00
Anton Maklakov
0ed38ca24d idf_tools.py: fix downloading for tools which have "on_request" options for some platforms.
'install' and 'download' options can be used for 'required' or 'all' tools
2019-11-24 19:11:33 +08:00
Anton Maklakov
11837f7f5d tools: Add ULP utils for ARMEL 2019-11-24 12:02:50 +07:00
He Yin Ling
857d10a926 unit-test-app: print config name in test script 2019-11-23 20:40:23 +08:00
He Yin Ling
3c99de352c tiny-test-fw: only load module from the same file one time:
we should only load one module once.
if we load one module twice, python will regard the same object loaded in the first time and second time as different objects.
it will lead to strange errors like `isinstance(object, type_of_this_object)` return False
2019-11-23 20:40:23 +08:00
He Yin Ling
9665c6ef66 unit-test-app: fix test script error when handling multiple unit test configs in one config file:
If we have multiple configs, we need to flash DUT with different binaries. But if we don't close DUT before apply new config, the old DUT will be reused, so new config name will not be applied.
2019-11-23 20:40:23 +08:00
He Yin Ling
1c65f1aed3 ci: reduce the number of unit test jobs 2019-11-23 20:40:23 +08:00
He Yin Ling
cb4c25bc67 ci: use more flexible assign for unit test cases 2019-11-23 20:39:19 +08:00
He Yin Ling
757e2d021e tiny-test-fw: print useful debug info when assign test:
* total requirements (number of required jobs vs tags)
* unused CI jobs
* missing jobs (number of missing jobs vs tags)
2019-11-23 20:39:19 +08:00
He Yin Ling
b12a8bce5f ci: optimize unit test assignment:
Currently we use config and test function as filter when assign cases to one CI job. It's not necessary as the runner can run test with different configs / test functions. Now we will try to assign as many cases to a job as possible, to reduce the amount of jobs required.
2019-11-23 20:39:19 +08:00
He Yin Ling
74ca3fc571 tiny-test-fw: revise unit test job config file:
`overwrite` should be included by each case config
2019-11-23 20:39:19 +08:00
Angus Gratton
b7b4cd3418 Merge branch 'bugfix/timer_group_reset_ut' into 'master'
timer: remove check for POWERON_RESET in the test case, add esp_reset_reason API for s2beta

See merge request espressif/esp-idf!6747
2019-11-23 14:04:41 +08:00
Ivan Grokhotkov
acdb2a5dc0 ci: add test job with ESP32S2BETA_IDF tag 2019-11-22 10:36:51 +01:00
Dmitry
1518c410bc A switch between esp32 and esp32s2betta added to the ULP build process.
The new bin utils will have extension esp32s2ulp-elf, and they have to be placed to the bin directory.
2019-11-22 09:03:13 +03:00
Angus Gratton
7eb89ae868 Merge branch 'feature/idfpy_unknown_targets_fallback' into 'master'
idf.py: run build system target for unknown sub-commands

Closes IDF-748

See merge request espressif/esp-idf!6644
2019-11-22 13:22:23 +08:00
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
Roland Dobai
98c629987f tools: Produce user friendly error during install when the server is down
Closes https://github.com/espressif/esp-idf/issues/4329
2019-11-15 15:21:39 +01: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