Commit graph

579 commits

Author SHA1 Message Date
Roland Dobai 130a8ea324 tiny-test-fw: Detect either 'download.config' or 'flash_project_args' 2018-09-20 06:39:04 +00:00
Angus Gratton 593abe0768 Merge branch 'test/fix_ut_cant_process_test_command' into 'master'
test: fix ut can't process test command

See merge request idf/esp-idf!3306
2018-09-20 14:38:25 +08:00
Ivan Grokhotkov af453841ea Merge branch 'bugfix/ci_cmake_examples' into 'master'
CI/cmake: Fix cmake example build failures, gcov

See merge request idf/esp-idf!3296
2018-09-20 12:05:07 +08:00
Angus Gratton 9add51bc6d doc: Re-add summaries of what children each menu item has
Slightly different to the original version of this, but same goal.
2018-09-19 17:27:48 +10:00
Roland Dobai 173e6aab3e tools: Make kconfig_new Python3-compatible and enable Python3 in idf.py 2018-09-19 08:38:09 +02:00
Angus Gratton b38a6da74b cmake: Fix some failing example builds, fix gcov 2018-09-19 14:38:19 +10:00
He Yin Ling 44e8ec584f test: ut can't process test command:
check ut reset done condition is not correct. If bootup pattern already
exist in cache, we will return without waiting for DUT bootup.
2018-09-19 09:40:59 +08:00
Roland Dobai da6479e6b7 Correct Python 3 support for some test related scripts 2018-09-18 09:55:51 +00:00
Mahavir Jain 4ec9aa9a00 cmake: prefer version.txt for IDF_VER if available 2018-09-14 17:25:17 +05:30
Ivan Grokhotkov d56a400709 Merge branch 'bugfix/cmake_create_dummy_main_windows' into 'master'
cmake: use built-in file function to create dummy main

See merge request idf/esp-idf!3253
2018-09-14 15:18:36 +08:00
Ivan Grokhotkov 31c14a5ee4 Merge branch 'feature/py3_espcoredump' into 'master'
espcoredump: Add tests and Python3 support

See merge request idf/esp-idf!3212
2018-09-14 12:39:30 +08:00
Renz Christian Bagaporo 946f55db85 cmake: add ulp components build support 2018-09-13 14:54:59 +08:00
Angus Gratton 7848cfdde7 Merge branch 'feature/mqtt_component' into 'master'
added tuan's mqtt library into idf

See merge request idf/esp-idf!2851
2018-09-13 09:06:09 +08:00
Ivan Grokhotkov d928465151 cmake: use built-in file function to create dummy main 2018-09-12 20:21:38 +08:00
Ivan Grokhotkov 8a38a2332a cmake: don't add main component Kconfig twice 2018-09-12 19:37:25 +08:00
He Yin Ling d4eca3abf5 Merge branch 'bugfix/multi_divece_cant_detect_case' into 'master'
fix the bug of multi device framework that dut can't detect case

See merge request idf/esp-idf!3176
2018-09-12 18:29:34 +08:00
Ivan Grokhotkov ff2cea0df2 Merge branch 'bugfix/cmake_lambda' into 'master'
idf.py: Make the lambda function Python 2 & 3 compatible

See merge request idf/esp-idf!3245
2018-09-12 17:36:03 +08:00
Alex Lisitsyn ec5eb1e5c2 esp32: Add option to place.rtc_data and .rtc_rodata into the RTC_FAST segment
Changes:
KConfig: The option CONFIG_ESP32_RTCDATA_IN_FAST_MEM is added in Kconfig file for esp32 component.
esp32.common.ld: added support of RTC_DATA_ATTR, RTC_RODATA_ATTR data placement into appropriate segment according to Kconfig option.
esp32.ld: linker script is modified to set alias for memory segment selected by Kconfig option to place data. The segments for force placement are added for RTC_FAST_ATTR, RTC_SLOW_ATTR attributes.
esp_attr.h: added new attributes RTC_FAST_ATTR, RTC_SLOW_ATTR for force placement into fest/slow memory.
test_rtc_fast.c: Added unit test cases to check data placement into appropriate memory segment.
Updated documentation for RTC_DATA_ATTR, RTC_FAST_ATTR, RTC_SLOW_ATTR in deep_sleep_stub.rst file.

TW#18001
Closes https://github.com/espressif/esp-idf/issues/1553
2018-09-12 09:25:13 +02:00
houchenyao 73a763fecb fix the bug that multi device's dut can't detect case 2018-09-12 07:18:00 +00:00
David Cermak 23345d2021 MQTT: Integrate esp-mqtt library into idf
added docs and tests for mqtt library, small fixes (removed warnings, option for custom outbox, websocket bug fixed for longer transports). refactored to use common tcp_transport component, support for CMake build system.
Closes #2108
2018-09-12 08:00:59 +02:00
Roland Dobai dff7a2a302 idf.py: Make the lambda function Python 2 & 3 compatible 2018-09-11 13:11:04 +02:00
Roland Dobai c3d99dd2e4 Encourage to install python packages without administrative rights
Using 'sudo pip install' can cause a lot of problems because usually
there are a couple of Python interpreters installed. This fix encourages
developers to use `pip install --user` instead which is safer.
2018-09-11 08:54:37 +02:00
Roland Dobai b9e1869538 espcoredump: Add tests and Python3 support 2018-09-11 08:53:06 +02:00
Renz Christian Bagaporo d9939cedd9 cmake: make main a component again 2018-09-11 09:44:12 +08:00
Angus Gratton 36bc73e5a6 idf.py: Choose a default serial port for all targets if '-p' is not given 2018-09-06 20:32:49 +08:00
Angus Gratton cff2ef695a Merge branch 'master' into feature/cmake 2018-09-06 20:23:04 +08:00
Zhang Yan Jiao 3578fe39e0 Feature/sync lwip as submodule 2018-09-06 19:43:08 +08:00
Roland Dobai 9538059f84 CI: Simplify running commands with several versions of Python 2018-09-06 11:50:17 +02:00
Angus Gratton b1380707e4 Merge branch 'bugfix/ci_github_deploy' into 'master'
ci: Fix spurious pipeline failure when deploying a tag to GitHub

See merge request idf/esp-idf!3021
2018-09-05 18:07:24 +08:00
Angus Gratton b355854d4d Merge branch 'master' into feature/cmake 2018-09-05 10:35:04 +08:00
Ivan Grokhotkov 4197ee746a Merge branch 'bugfix/monitor_win_encoding' into 'master'
idf_monitor: Fix Unicode decoding on Windows

See merge request idf/esp-idf!3157
2018-09-04 20:31:37 +08:00
Angus Gratton 6fa52ca8fe cmake: Call check_python_dependencies.py from idf.py & cmake 2018-09-03 18:37:53 +08:00
Angus Gratton ae4efeb3dc mconf: Don't include system headers in dependency files
Fixes issue where build gets stuck because of .d files in the
tools/kconfig directory.

Closes https://github.com/espressif/esp-idf/issues/712
2018-09-03 03:45:15 +00:00
Roland Dobai 276cba1103 idf_monitor: Fix Unicode decoding on Windows
Closes https://github.com/espressif/esp-idf/issues/2348
2018-08-31 12:20:55 +02:00
Angus Gratton a6282e3e5e cmake idf.py: Print flasher file arguments in order of file offset
Previously, order was random
2018-08-31 12:29:38 +08:00
Angus Gratton c921f14128 cmake: Generate list of components with dependent items first, use deterministic ordering
Guarantees that a component's project_include.cmake will be called after its dependent components'
project_include.cmake. Because of cycles in the dependency graph, this is less useful than you'd
think but it gives a strong guarantee for any component which is not part of a cycle.

Also applies deterministic ordering (ordering is initialised as COMPONENT_REQUIRES_COMMON then all
COMPONENTS in alphabetical order, but then the sorting by dependencies is applied.)
2018-08-31 12:29:13 +08:00
Roland Dobai 7cfef29eb8 Docs: Check Python packages 2018-08-30 13:20:42 +02:00
Angus Gratton 5fbfd20f10 Merge branch 'master' into feature/cmake 2018-08-30 18:52:31 +08:00
Angus Gratton a9c4ed7139 Merge branch 'master' into feature/cmake 2018-08-30 18:51:01 +08:00
Angus Gratton 7440d5f920 Merge branch 'feature/py3_idf_size' into 'master'
tools: Support Python 3 in idf_size.py

See merge request idf/esp-idf!2849
2018-08-30 18:12:17 +08:00
Angus Gratton 5689e446dc cmake: Add missing example CMakeLists.txt files, CI check all examples have both 2018-08-29 20:22:55 +08:00
Angus Gratton cb158f1194 cmake: Account for missing partition CSV file at cmake runtime
Avoid either breaking menuconfig (if cmake fails), or producing bad build output (if cmake succeeds
but no flashing offsets, etc. were generated.)
2018-08-29 20:22:55 +08:00
Renz Bagaporo 071aaea66b Place embedded data on flash 2018-08-29 20:22:55 +08:00
Angus Gratton 408463d0bf cmake idf.py: Fix bug in JSON parsing when printing flash commands 2018-08-29 20:22:55 +08:00
Angus Gratton a56b3abf84 kconfiglib: Allow CONFIG_xxx= to disable booleans
But replace all sdkconfig.defaults to use the explicit =n (more correct)
2018-08-29 19:39:17 +08:00
Roland Dobai 5cdff46370 tools: Support Python 3 in idf_size.py 2018-08-27 13:39:07 +02:00
Roland Dobai bc307c920c tiny-test-fw: Print more useful info when download.config doesn't exist 2018-08-27 12:47:08 +02:00
Angus Gratton 3adf41a5fe Merge branch 'feature/py3_idf_monitor' into 'master'
tools: Support Python3 in idf_monitor

See merge request idf/esp-idf!2930
2018-08-27 12:29:38 +08:00
Angus Gratton 2c8c210a66 Merge branch 'feature/py3_for_gen_esp_err_to_name' into 'master'
tools: support python3 in gen_esp_err_to_name.py

See merge request idf/esp-idf!2827
2018-08-27 12:29:03 +08:00
Angus Gratton 6c95285bdb Merge branch 'bugfix/app_update_test' into 'master'
app_update: Change NUM_PIN_APP_TEST for unit test

See merge request idf/esp-idf!3050
2018-08-27 08:46:02 +08:00
He Yin Ling 783d63488b Merge branch 'bugfix/multi_case_test' into 'master'
test: fix the multi device stop thread bug

See merge request idf/esp-idf!3039
2018-08-24 19:54:34 +08:00
Konstantin Kondrashov 4e28799709 app_update: Change NUM_PIN_APP_TEST for unit test
Fixed error when `make TESTS_ALL=1`
2018-08-24 16:52:27 +08:00
Roland Dobai 79b9948cdf tools: support python3 in gen_esp_err_to_name.py 2018-08-24 08:13:01 +02:00
Roland Dobai 7118f4734b tools: Support Python3 in idf_monitor
Closes https://github.com/espressif/esp-idf/pull/1284
2018-08-24 08:12:19 +02:00
houchenyao df83323ee3 bugfix:fix the multi device stop thread bug 2018-08-23 08:51:16 +00:00
Roland Dobai 62cad3a7d7 Add python-future by using python requirements file 2018-08-23 08:28:57 +02:00
Sachin Parekh 7a5400ce77 make dump_otadata: Displays app ota_seq and crc on console 2018-08-22 16:51:36 +08:00
Angus Gratton 7b4626f824 ci: Fix spurious pipeline failure when deploying a tag to GitHub
Everything succeeds, but because [ -z ${CI_COMMIT_TAG} ] on the last line returns non-zero, it
fails the job.
2018-08-22 13:11:18 +10:00
Ivan Grokhotkov 4dd7233b20 Merge branch 'feature/reset_reason' into 'master'
Add API to get reset reason

See merge request idf/esp-idf!2871
2018-08-21 11:34:12 +08:00
Ivan Grokhotkov fd61c1440b tiny-test-fw: invoke expect callbacks in order of appearance
Previously the callbacks were invoked in the same order as the list of
patterns to be matched.
2018-08-20 16:49:20 +08:00
Ivan Grokhotkov b600a908c4 unit test: fix regex for detecting abort 2018-08-20 16:49:20 +08:00
Ivan Grokhotkov 164e324fe2 Merge branch 'feature/bootloader_unit_tests' into 'master'
app_update: Add unit tests for ota, factory, test partitions

See merge request idf/esp-idf!2565
2018-08-17 14:39:50 +08:00
Angus Gratton ff2404a272 Merge branch 'master' into feature/cmake 2018-08-16 17:14:17 +10:00
Konstantin Kondrashov 1da0483619 app_update: Add unit tt pests for ota, factory, test partitions 2018-08-16 09:57:32 +05:00
Tian Hao ab73e0ff13 tools: fix ci example build report reassign warnning 2018-08-16 11:12:22 +08:00
Jiang Jiang Jian 886bf4b88e Merge branch 'bugfix/btdm_ecdh_public_key_not_check' into 'master'
component/bt: Fixed the vulnerability released by Bluetooth org when using…

See merge request idf/esp-idf!2933
2018-08-13 15:44:13 +08:00
yulong 72eaaff9fe component/bt: Fixed the vulnerability released by Bluetooth org when using public key not check in the process of ECDH encryption.
1. Add the 100 times test when the private key is generated by the random number;
2. Add the bt components to the unit-test-app/config directory.
3. Added the bt unit test case to CI.
2018-08-13 14:08:11 +08:00
Angus Gratton 48bd67524d cmake: Only rewrite componend_depends.cmake if it changes 2018-08-13 15:37:03 +10:00
Angus Gratton 70288f864e cmake: Expand components relative to PROJECT_PATH correctly 2018-08-13 15:37:03 +10:00
Angus Gratton 191557db02 docs: Copy CMake docs to a separate set of directories
Required first step before merging back to mainline.
2018-08-13 15:37:03 +10:00
Angus Gratton 50e7b116c1 docs: Add gen-version-specific-includes.py to executables list 2018-08-13 13:37:23 +10:00
Angus Gratton 6bd58beac5 tiny-test-fw: Increase default expect timeout to 10 seconds
Fix CI failures due to (for example) DHCP lease taking more than 5s to be negotiated.
2018-08-03 16:55:50 +10:00
Roland Dobai 1d1533ee8e expat: Move libexpat into submodule and update to version 2.2.5 2018-07-31 13:25:00 +02:00
Angus Gratton 321b1e0205 Merge branch 'feature/unit_tests_command_line' into 'master'
tools: Allow running unit tests from command line

See merge request idf/esp-idf!2589
2018-07-31 11:38:22 +08:00
Roland Dobai 40486c8723 tools: Allow running unit tests from command line
Add argument parsing to unit_test.py to allow running unit tests from
command line.
2018-07-30 13:05:41 +02:00
David Cermak 1ef13c524c asio: initial idf port of asio library without ssl 2018-07-30 06:28:43 +00:00
Angus Gratton 97286b3107 Merge branch 'feature/cmd_flash_reset_ota_data' into 'master'
make: Add feature to cmd 'make flash' - reset ota_data partition

See merge request idf/esp-idf!2611
2018-07-30 13:52:43 +08:00
He Yin Ling 85bc2d5967 tiny-test-fw: support ignore test cases in CI assign test stage 2018-07-27 19:44:15 +08:00
He Yin Ling 316d087960 tiny-test-fw: fix exception during print debug info:
DUT log is unicode, might not be able to encode
2018-07-27 19:44:15 +08:00
He Yin Ling bffcea09df CI: erase nvs partition before test:
Latest NVS partition bin can't be parsed by old IDF revision. Need to erase before test.
2018-07-27 17:22:24 +08:00
Konstantin Kondrashov de2b1cb02a make: Add feature to cmd 'make flash' - reset ota_data partition
Add a command `make erase_ota` - erases otadata if it there is in the
partition table otherwise error 'Partition table does not have ota_data partition'.

Closes https://github.com/espressif/esp-idf/issues/1821
2018-07-25 11:22:15 +00:00
Ivan Grokhotkov d50c03cc7d Merge branch 'bugfix/unit-test-build-fix' into 'master'
unit-test-app: don’t include project.mk for ut- targets

See merge request idf/esp-idf!2619
2018-07-24 20:48:12 +08:00
Ivan Grokhotkov b0af8ad22f unit-test-app: don’t include project.mk for ut- targets
If project.mk is included twice in recursive invocation of Make, some
variables defined on the first pass will not be redefined on the
second pass. Rather than cleaning up these variables before calling
Make recursively, don’t include IDF project.mk at all, if one of the
ut- targets is requested.
2018-07-24 09:54:55 +03:00
Angus Gratton 466ec6d9ac Merge branch 'bugfix/ci_use_mirror_for_public' into 'master'
ci: Use local mirrors on the public branches too

See merge request idf/esp-idf!2836
2018-07-24 12:19:24 +08:00
Anton Maklakov d5f666dee3 ci: Use local mirrors on the public branches (master, release-) too
Use DONT_USE_MIRROR=1 to force using the original repositories if you need
2018-07-23 17:04:38 +08:00
Angus Gratton 57342c449d Merge branch 'feature/tools_mass_mfg' into 'master'
Add files for mass manufacturing tool

See merge request idf/esp-idf!2716
2018-07-23 13:10:17 +08:00
Ivan Grokhotkov 999c3dbf0e Merge branch 'feature/test_exclude_components' into 'master'
build: Add TEST_EXCLUDE_COMPONENTS

See merge request idf/esp-idf!2648
2018-07-20 19:43:46 +08:00
Shivani Tipnis 35205d8513 Add files and docs for mass mfg 2018-07-20 10:41:11 +05:30
Angus Gratton aa4d77467b Merge branch 'bugfix/esp_err_ignore_dirs' into 'master'
esp32: Do not document error codes defined in examples

See merge request idf/esp-idf!2732
2018-07-18 08:29:53 +08:00
He Yin Ling 4f971619fa tiny-test-fw: save DUT log in different thread:
We found some SD card on Raspberry Pi could have very bad performance.
It could take seconds to save small amount of data.
If the DUT receives data and save it as log, then it stops receiving data until log is saved.
This could lead to expect timeout. As an workaround to this issue,
``BaseDUT`` class will create a thread to save logs.
Then data will be passed to ``expect`` as soon as received.
2018-07-13 07:04:05 +00:00
He Yin Ling b452cea04e tiny-test-fw: fix incorrect wait timeout in expect 2018-07-13 07:04:05 +00:00
He Yin Ling 5f26b36f0f tiny-test-fw: filter examples with test level 2018-07-13 07:04:05 +00:00
He Yin Ling 23d98aa358 tiny-test-fw: print expect failure when test fails 2018-07-13 07:04:05 +00:00
Ivan Grokhotkov 46639bab85 Merge branch 'bugfix/crlf_auto_conversion' into 'master'
Convert CRLF (Windows line endings) to LF (Unix style), add CI check

See merge request idf/esp-idf!2119
2018-07-13 11:44:57 +08:00
He Yin Ling 01efe9a300 Merge branch 'feature/ci_support_test_one_case_multiple_times' into 'master'
CI: support test one case multiple times by @bot

See merge request idf/esp-idf!2692
2018-07-12 19:57:21 +08:00
He Yin Ling 05d74d532e Merge branch 'bugfix/tiny_test_fw_filter_invalid_serial_port' into 'master'
tiny-test-fw: filter out invalid IDF ports

See merge request idf/esp-idf!2745
2018-07-12 19:56:48 +08:00
Roland Dobai bb4c8b725c Tools: Correct line endings in idf_monitor tests 2018-07-12 19:10:37 +08:00
Angus Gratton 74245d27d3 ci: Add line endings check for CRLF in repository 2018-07-12 19:10:37 +08:00
He Yin Ling 15858895a4 CI: support test one case multiple times by @bot 2018-07-11 10:22:13 +08:00
He Yin Ling 5edc9f9752 tiny-test-fw: filter out invalid IDF ports 2018-07-11 00:00:40 +08:00
Konstantin Kondrashov bec14ad8ee build: Add TEST_EXCLUDE_COMPONENTS
To exclude during the build process of unit tests some components.
2018-07-10 13:44:41 +05:00
Roland Dobai 20f80da723 esp32: Do not document error codes defined in examples 2018-07-10 07:57:54 +02:00
Roland Dobai c1ae49dda1 Test the IDF Monitor through sockets
Creates a socket by socat and sends tests to the idf_monitor through it.
2018-07-09 08:37:40 +02:00
Ivan Grokhotkov 6ee3cf67bd Merge branch 'feature/nvs_part_gen_improvements' into 'master'
Feature/nvs part gen improvements

See merge request idf/esp-idf!2555
2018-07-04 17:33:13 +08:00
Angus Gratton 91e7a6e7a3 Merge branch 'bugfix/console_performance' into 'master'
idf_monitor: Fix console performance

See merge request idf/esp-idf!2570
2018-07-03 14:04:23 +08:00
Ivan Grokhotkov eb85c4ec15 tiny-test-fw: handle case when ESPPORT is not set
Fix bug introduced in 8a88dd35, where .decode was called on result of
os.getenv, which was None if ESPPORT was not set.
2018-07-02 21:45:27 +08:00
He Yin Ling 0c3e34b79a tiny-test-fw: add class diagram to document 2018-07-02 10:40:23 +00:00
Ivan Grokhotkov 6a626f7984 tiny-test-fw: add requirements.txt, small docs tweaks 2018-07-02 10:40:23 +00:00
Ivan Grokhotkov 8a88dd3590 tiny-test-fw: IDFDUT: in the absence of configuration, try ESPPORT first 2018-07-02 10:40:23 +00:00
Piyush Shah 8369bd244b nvs_partition_generator: Modifications to enable using the utility as a Python library
And also use directly as an executable
2018-07-02 15:39:52 +05:30
houchenyao 9223639010 stop main thread when one failed 2018-06-26 11:02:23 +08:00
Ivan Grokhotkov 858cfc2950 esp_err_to_name.py: guess IDF_PATH if not set in environement
Fixes the issue that esp_err_to_name.py would fail when called in
documentation build process, when there was no IDF_PATH set.
2018-06-21 15:22:56 +08:00
Roland Dobai 797340f7f8 idf_monitor: Fix console performance
51e42d8e92
introduced filtering options which handles the last (unterminated) line
with a delay. This introduced poor performance for console applications
when the user interacts with the ESP32 device in the same line because
there is an artificial delay for each key-press.

bb152030a0
decreased the delay but there are still delays for each key-presses.

The current fix makes only one delay per line instead of each
key-presses. When an unterminated line is detected then no more
"delayed" print is used for the given line.

Fixes https://github.com/espressif/esp-idf/issues/2054
2018-06-19 13:29:57 +02:00
Angus Gratton d0b8f2865f docs: Switch base URL from esp-idf.readthedocs.io to docs.espressif.com 2018-06-19 11:23:33 +00:00
Angus Gratton 73f6fb9fe7 Merge branch 'feature/spi_functions_in_iram' into 'master'
feature(spi_master): allow to place functions into IRAM to get higher efficiency

See merge request idf/esp-idf!2538
2018-06-19 07:25:12 +08:00
Angus Gratton bf10447b82 cmake: Fix issues when IDF_PATH is not set in environment
Support cases where IDF_PATH may be passed in on the cmake command line,
or inferred from a (hardcoded absolute or relative) path to project.cmake
2018-06-18 14:48:03 +10:00
Angus Gratton 43b6c76bba Merge branch 'feature/expansion_space_for_bootloader' into 'master'
partition_table: Moving to custom offset

See merge request idf/esp-idf!2263
2018-06-18 12:34:53 +08:00
Sagar Bijwe fd7b794e81 FATFS support without wear levelling
This change allows readonly FATFS to be mounted without wear levelling
support. This will provide the customers a simple way to mount FATFS images
generated on host and flashed onto the chip during factory provisioning.
Since NVS encryption is not supported yet and NVS entry size is limited,
the change will provide an easy alternative for securing the provisioning data
by just marking FATFS parition as encrypted.
2018-06-16 16:02:35 +08:00
Ivan Grokhotkov d9f8311b9d docs: add error codes reference 2018-06-15 15:49:24 +08:00
Michael (XIAO Xufeng) 9c23b8e596 feature(spi_master): allow to place functions into IRAM to get higher efficiency 2018-06-14 20:22:40 +08:00
Roland Dobai bb152030a0 Fix the console performance issue
The IDF monitor waits for one second before printing the last
unterminated line. This is necessary for the correct filtering.
However, this causes poor performance, for example, in the case of the
system/console example.

This fix reduces the waiting time which improves the response time of
the console example and doesn't seem to influence the monitor filter.

Closes https://github.com/espressif/esp-idf/issues/2054
2018-06-13 08:05:31 +02:00
Ivan Grokhotkov 7663782e8d unity: allow test task stack size to be configured 2018-06-11 23:26:56 +08:00
Ivan Grokhotkov 9b1876a458 unit-test-app: allow specifying subset of tests for configuration
For some test configurations, not all tests need to be run. This
change allows adding a comment in the configuration file of the
following form:

unit-test-app makefile will use it to determine which components to
build. If the comment is not present, all components will be built
(TESTS_ALL=1).

Also add test configuration for libsodium. It is a separate test
configuration due to the large binary size generated when building
libsodium tests.
2018-06-11 23:26:55 +08:00
Konstantin Kondrashov 3e0ac4db79 partition_table: Expanding the space under the bootloader
Allows you to move the partition table, it gives more space for the bootloader.
Added a new utility - parttool.py. This utility can search for the offset and/or size of the partitions by name and type/subtype. Use for getting APP_OFFSET and PHY_DATA_OFFSET.
The linker(esp32.bootloader.ld) made changes that allow you to write a custom bootloader code more.

TW14125
2018-06-08 18:47:29 +05:00
Angus Gratton c99a30a167 Merge branch 'bugfix/wakeup_from_deep_sleep' into 'master'
esp32: Fix not the right time spent in a deep sleep

See merge request idf/esp-idf!2501
2018-06-08 10:40:47 +08:00
Angus Gratton be829afe6e Merge branch 'feature/cmake_confserver' into 'feature/cmake'
cmake: Add JSON configuration server for external config tool integration

See merge request idf/esp-idf!2410
2018-06-08 07:32:09 +08:00
Angus Gratton 6065d2fd08 kconfig: Add confserver.py to expose sdkconfig to clients 2018-06-07 14:23:08 +10:00
Konstantin Kondrashov 7e2a3da643 esp32: Fix not the right time spent in a deep sleep
Before entering the deep sleep, the RTC and FRC counters are synchronized. Updating the boot_time.
Added a unit test for this case.
Fixed warnings for MULTIPLE_STAGES

Closes https://github.com/espressif/esp-idf/issues/1840
2018-06-06 18:59:30 +05:00
Angus Gratton 46b723e5ed cmake: Fix COMPONENT_SRCEXCLUDE functionality 2018-06-06 16:27:44 +10:00
Roland Dobai 51e42d8e92 idf_monitor: add support for filtering options 2018-06-05 12:23:27 +02:00
Angus Gratton 8bb4c694ce cmake: Add COMPONENT_SRCEXCLUDE option 2018-05-31 14:46:39 +10:00
Angus Gratton fdccc19485 cmake build system test: Fix path to sdkconfig.h 2018-05-31 14:46:39 +10:00
Angus Gratton 6b9784cc45 Merge branch 'master' into feature/cmake_update 2018-05-31 14:46:23 +10:00
Ivan Grokhotkov 74928b9bcb ci: check for executable flag on source files 2018-05-29 20:07:45 +08:00
Angus Gratton c70f9db369 confgen: Don't write environment-loaded configuration items to sdkconfig 2018-05-29 16:34:45 +10:00
Angus Gratton 580cfeaaae idf.py: Print flashing steps at the end of each build 2018-05-29 16:34:45 +10:00
Angus Gratton f6cd55d2ac config: Rename mconf to mconf-idf & conf to conf-idf
These versions of conf/mconf are forked from the upstream, and the CMake system allows mconf-idf to
be installed externally on the path. So the best option is to rename.

Includes changes to Windows installer for v1.1
2018-05-29 16:34:45 +10:00
Angus Gratton 61aff5162c mconf: Don't print a recommendation to use 'make' if CMake build system is in use
Also add some cmake dependencies to rebuild mconf if its source files change.
2018-05-29 16:34:45 +10:00
Angus Gratton be4956fe7c docs: Add some tips about setting the Python interpreter, and a specific check in idf.py
Don't show the "Python 2 interpreter" option in menuconfig when using CMake.

This is a stop-gap until we support Python 2 & 3 together in ESP-IDF (soon).

Closes https://github.com/espressif/esp-idf/issues/1924
2018-05-29 16:34:45 +10:00
Angus Gratton a1fac97f1a cmake: Fix set_default using value from environment
Fixes issue with idf.py passing through Python interpreter, as reported in
https://github.com/espressif/esp-idf/issues/1924
2018-05-29 16:34:45 +10:00
Angus Gratton cc104eb05b cmake: Add sdkconfig.h directory to include paths list not just compiler args
Also move into 'build/config/' subdir, remove creation of empty include/config dir.
2018-05-29 16:34:45 +10:00
Angus Gratton 2f4079ebb2 cmake: Hide serial port settings in menuconfig when using cmake 2018-05-29 16:34:45 +10:00
Angus Gratton 10eab26854 unit test app: Require 4MB flash
PSRAM config unit tests had outgrown the 0x14000 byte allocated factory size.
2018-05-25 12:16:26 +10:00
He Yin Ling 1a1514b69c unit-test-app: udpate CI related part to README 2018-05-24 03:40:03 +00:00
He Yin Ling a68b93d6f3 tiny-test-fw: show descriptive error when test case assignment fails:
Will give hint when any job failed to assign:

```
Please add the following jobs to .gitlab-ci.yml with specific tags:
* Add job with: psram, ESP32_IDF, UT_T1_1
* Add job with: psram, ESP32_IDF, UT_T1_1
```
2018-05-24 03:40:03 +00:00
He Yin Ling 3b24bc42d2 CI: assign unit test cases according to sdkconfig:
We have built unit-test-app with different configs.
Currently we use the config name as tags to match runners.
It's not easy to add new configs (need to update tags to existed runners).

Now we'll parse required test runner tags from `sdkconfig` file.
For example, if config enables `CONFIG_SPIRAM_SUPPORT`, then it requires `psram` tag.
This will make adding new configs easier.

In this commit we change the one behavior of assign test: match keys of
cases should be exactly the same with job tags. This fixes cases select
jobs include their tags, and jobs requires those tags can't be assigned.
2018-05-24 03:40:03 +00:00
Angus Gratton 035dc66cce Merge branch 'bugfix/esp_err_to_name_windows' into 'master'
gen_esp_err_to_name.py: Use normal file I/O instead of mmap()

See merge request idf/esp-idf!2425
2018-05-22 11:31:17 +08:00
Angus Gratton e8525396dd test: Allow per-unit-test timeouts
Work around for "(WL) write/read speed test" taking >30s in some configs
2018-05-21 12:27:10 +00:00
Angus Gratton b14bbd4205 gen_esp_err_to_name.py: Use normal file I/O instead of mmap()
mmap is different on Python for Windows
2018-05-21 17:34:18 +10:00
Roland Dobai 18e83bcd53 Allow VFS file descriptors in select() 2018-05-18 08:06:33 +02:00
He Yin Ling 9e7a69be88 example test: integrate wifi throughput test to CI 2018-05-15 13:42:27 +08:00
He Yin Ling 2b068f3ceb tiny-test-fw: fix misc bugs:
1. configs are not functional
    * decorator will be executed when search case, need to set default config before search case.
2. fix DUT encode/decode errors
    * python3 serial don't support write string/unicode, need to convert to bytes first.
    * python2 string could failed to encode/decode non-acsii chars
3. fix bug that log folder not created
4. fix bug that test suite name is not correctly passed:
    * the keyward arg should be `test_suite_name` not `test_name`
5. fix bug that test stopped on failed case
6. fix DUT `read` don't return all data cache
    * `_DataCache.get_data` should first copy all data from queue to data cache and then return to user.
7. fix bug that `expect_all` failed even all expected item passed
8. optimize error info for expect
    * print pattern for regular expression when match failed
9. fix bug that set default config doesn't work
2018-05-15 03:29:31 +00:00
He Yin Ling 98d1f05ab5 tiny-test-fw: add utilities:
1. Attenuator: control programmable attenuator
2. PowerControl: control APC PDU to power on/off devices
3. LineChart: use matplotlib to draw line chart
2018-05-15 03:29:31 +00:00
He Yin Ling 3b3a915552 tiny-test-fw: implement env.get_pc_nic_info:
this method is used to get mac/ipv4/ipv6 address for one NIC
2018-05-15 03:29:31 +00:00
Ivan Grokhotkov e9cbf96bd1 mbedtls: re-add version 2.9.0 as a submodule 2018-05-09 23:15:28 +08:00
Angus Gratton 526496ba20 ci: Allow bot to control branch used for esp-idf-template 2018-05-08 14:44:25 +08:00
Angus Gratton 6f31674b28 cmake: Add ESPORT/ESPBAUD environment variables to idf.py & docs 2018-05-07 18:45:49 +08:00
Angus Gratton c7f19e76d7 docs: Move main docs to cover CMake
Add "GNU Make build system" doc with "cheat sheet" for moving to new system
2018-05-07 18:45:49 +08:00
Angus Gratton 8453806a8c idf.py: Fix 'idf.py monitor' build & flash targets 2018-05-04 16:05:25 +10:00
Ivan Grokhotkov 0d65f3b7f9 Merge branch 'bugfix/light_sleep_fixes' into 'master'
light sleep fixes

See merge request idf/esp-idf!2242
2018-05-02 20:09:36 +08:00
Angus Gratton 9ec14decce cmake: Fix idf_size.py merge errors 2018-05-01 17:27:39 +10:00
Angus Gratton c7307de63e cmake: Automatically pull in winpty for menuconfig, monitor if needed 2018-05-01 17:27:39 +10:00
Angus Gratton c42b791aaa cmake: Use prebuilt mconf on Windows
Closes https://github.com/espressif/esp-idf/issues/1905
2018-05-01 17:27:39 +10:00
Angus Gratton 99e02d4e42 windows: New ESP-IDF Tools Installer
Working on 64-bit Windows only due to Ninja binary.
2018-04-30 10:18:33 +10:00
Angus Gratton 381be65472 cmake: Build all examples in CI
Includes some fixes for compile errors/warnings in examples.
2018-04-30 10:18:33 +10:00
Angus Gratton 858b95a924 cmake: Add build system tests 2018-04-30 09:59:20 +10:00
Angus Gratton 1cb5712463 cmake: Add component dependency support
Components should set the COMPONENT_REQUIRES & COMPONENT_PRIVATE_REQUIRES variables to define their
requirements.
2018-04-30 09:59:20 +10:00
Angus Gratton 56902f0054 cmake: Write configuration & component metadata to project_description.json 2018-04-30 09:59:20 +10:00
Angus Gratton f1d3bfc0c7 cmake: Add new flasher_args.json file for IDE parsing, document metadata files better 2018-04-30 09:59:20 +10:00
Angus Gratton 2a3e2b8eed doc: Use confgen.py to build docs from same code path as config generation 2018-04-30 09:59:20 +10:00
Angus Gratton b44c8b125f cmake: Style cleanup, add cmake linter to gitlab CI 2018-04-30 09:59:20 +10:00
Angus Gratton 2ea359ad0c cmake: Cleanups to work with Windows 2018-04-30 09:59:20 +10:00
Angus Gratton 6bdc49b6e4 cmake: set CCACHE_BASEDIR & CCACHE_NOHASHDIR when using ccache
Dramatically improves build performance when building multiple
projects in different directories.
2018-04-30 09:59:20 +10:00
Angus Gratton 9d88d13f77 cmake: convert_to_cmake.py script for converting IDF GNU Make projects 2018-04-30 09:59:20 +10:00
Angus Gratton 2816cf1d67 cmake: Change data_file_to_c to data_file_embed_asm for objcopy compatibility
Now generates _binary_filename_start / _binary_filename_end as well as more useful naming.
2018-04-30 09:59:20 +10:00
Angus Gratton 12be399762 cmake: Add link-time dependencies for linker script files
Requires some hackery around limitations in CMake's LINK_DEPENDS
2018-04-30 09:59:20 +10:00
Angus Gratton 88df8fd293 cmake: Use cmake_lint project, tidy up all CMake source files 2018-04-30 09:59:20 +10:00
Angus Gratton 15d5e88618 cmake: Automatically include ccache if it's on the path 2018-04-30 09:59:20 +10:00
Angus Gratton 9f8cdd3572 cmake: Add "Preview release" getting start guide & build system documentation 2018-04-30 09:59:20 +10:00
Angus Gratton 95e17d6d92 cmake: Allow GetGitRevisionDescription to take arbitrary directory paths 2018-04-30 09:59:20 +10:00
Angus Gratton 7d9ba66f83 idf.py: Add reconfigure command 2018-04-30 09:59:20 +10:00
Angus Gratton 4d7bc8e8ba idf.py: Improve status output, error message output 2018-04-30 09:59:20 +10:00
Angus Gratton abef220b13 cmake: Allow selecting toolchain file based on config
Refactor IDF "project" functionality under a wrapping of the default
"project" command, so we can tweak it a bit...

Will need more testing in other environments.
2018-04-30 09:59:20 +10:00
Angus Gratton 04a944598f cmake: Export compile_commands.json as part of build 2018-04-30 09:59:20 +10:00
Angus Gratton efb5928934 idf.py build & flash tool
Generate flasher args files & .json project info file as part of cmake build
2018-04-30 09:59:20 +10:00
Angus Gratton 7eaf2f4bdb kconfig: Allow out of tree building, build under cmake build directory 2018-04-30 09:59:20 +10:00
Angus Gratton cb99531d15 cmake: Generate PHY init data partition as part of the build 2018-04-30 09:59:20 +10:00
Angus Gratton 0bdc12256e cmake: Add "size" target, update idf_size.py for different linker behaviour 2018-04-30 09:59:20 +10:00
Angus Gratton 1f8e07fd8f cmake: Add sdkconfig.defaults support 2018-04-30 09:59:20 +10:00
Angus Gratton be962a9444 cmake: Re-run cmake if submodule commits change or a submodule is deinit-ed 2018-04-30 09:59:20 +10:00
Angus Gratton 4f1a856dbf cmake: Remove defaults for COMPONENT_SRCDIRS, COMPONENT_SRCS, COMPONENT_ADD_INCLUDEDIRS
* Philosophical: "explicit is better than implicit".
* Practical: Allows useful errors if invalid directories given in components as the defaults aren't
  always used. Also trims the -I path from a number of components that have no actual include
  directory.
* Simplifies knowing which components will be header-only and which won't
2018-04-30 09:59:20 +10:00
Angus Gratton 3fac2b2ddc cmake: Refactor bootloader_subproject into the bootloader component itself 2018-04-30 09:59:20 +10:00
Angus Gratton 674d398c93 cmake: Add partition table, and .bin file targets 2018-04-30 09:59:20 +10:00
Angus Gratton 3ae4822115 cmake: Add partition table generation 2018-04-30 09:59:20 +10:00
Angus Gratton ce6748873d cmake: Add embedding files in components support
Add subscribe_publish AWS example and fixes to allow it to build.
2018-04-30 09:59:20 +10:00
Angus Gratton 134f2238bd cmake: Refactor main cmake project logic 2018-04-30 09:59:20 +10:00
Angus Gratton 7f29593a7d cmake: Bootloader subproject & "clean" cleanup 2018-04-30 09:59:20 +10:00
Angus Gratton 067a19ad88 cmake: Move global IDF-specific compiler/linker options out of the toolchain file
Should restore compatibility with cmake pre-v3.7
2018-04-30 09:59:20 +10:00
Angus Gratton f04525095f cmake: Move third-party cmake modules to their own directory 2018-04-30 09:59:20 +10:00
Angus Gratton 68e75dd0df cmake: Detect missing or out of date submodules during cmake pass 2018-04-30 09:59:20 +10:00