Commit Graph

4949 Commits

Author SHA1 Message Date
Marek Fiala
b4446e1748 Tools: Rewrite build system unit tests to python - cmake libraries and Kconfig 2023-03-28 11:20:42 +02:00
Frantisek Hrbata
9b731e5e35 tools: fix set-target if IDF_TARGET env is set and stale sdkconfig exists
Currently if the IDF_TARGET env is set, and old sdkconfig exists with
different target value in CONFIG_IDF_TARGET, the set-target action fails
complaining about the IDF_TARGET env and value in sdkconfig being different.
We should ignore IDF_TARGET value from sdkconfig, because we are
actually setting new target and the old sdkconfig is renamed in cmake.

This can be easily reproduced with

---8<---
$ IDF_TARGET=esp32 idf.py set-target esp32
$ IDF_TARGET=esp32s3 idf.py set-target esp32s3

Project sdkconfig '/home/fhrbata/work/hello_world/sdkconfig' was generated
for target 'esp32s3', but environment variable IDF_TARGET is set to 'esp32'.
Run 'idf.py set-target esp32' to generate new sdkconfig file for target esp32.
---8<---

This also adds test for this use case to test_non_default_target.py.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-28 11:18:04 +02:00
Roland Dobai
51772f4fb5 Merge branch 'feature/update_rom_elfs' into 'master'
tools: update esp-rom-elf to version 20230320

See merge request espressif/esp-idf!22838
2023-03-28 17:10:44 +08:00
Djordje Nedic
3e0f612a7e tools: Move out idf_size.py in favour of using the esp-idf-size package
This commit removes all idf_size.py files and references to them and adds esp-idf-size as a dependency and adequate wrappers to avoid breaking changes.
2023-03-27 19:40:33 +02:00
Euripedes Rocha
d6db90a3cd [tcp_transport] - Adds Socks4 proxy transport
- Basic implementation of Socks4 protocol.
- Introduce basic host testing.
2023-03-27 14:46:40 +02:00
Euripedes Rocha
1acfc9b5e0 ci: Migrateunit test for mqtt test to unit test app
- Split mqtt and mqtt5 tests
 - Move common test code to a common component
 - Add necessary python scripts
2023-03-24 10:32:43 +01:00
Wan Lei
896f046ac2 Merge branch 'feature/support_spi_slave_hd_append_later_s2' into 'master'
spi_slave: support spi slave hd append mode on chips other than s2

Closes IDF-2943

See merge request espressif/esp-idf!19557
2023-03-23 14:19:32 +08:00
Mahavir Jain
786851bfbd Merge branch 'feature/esp32c6_esp32h2_supported' into 'master'
tools: idf.py: remove esp32c6 and esp32h2 from preview targets list, update chip/version support table

See merge request espressif/esp-idf!22868
2023-03-23 12:25:57 +08:00
Mahavir Jain
86b6f87d68 Merge branch 'bugfix/ram_loadable_elf_flash_mmap_issue' into 'master'
Fix flash mmap data integrity issue for RAM loadable ELF case

See merge request espressif/esp-idf!22802
2023-03-23 12:13:35 +08:00
Marek Fiala
b65500fd63 Tools: update ccache 4.6.2 -> 4.8 2023-03-22 16:26:21 +01:00
Darian
c71025d6d6 Merge branch 'refactor/freertos_config_files' into 'master'
FreeRTOS: Combine FreeRTOSConfig.h

Closes IDF-6082

See merge request espressif/esp-idf!22815
2023-03-22 22:01:37 +08:00
Jakob Hasse
2b895ef9d8 Merge branch 'feature/rmt_mock' into 'master'
Mocks: added RMT mock

See merge request espressif/esp-idf!22060
2023-03-22 20:18:46 +08:00
Tomas Rezucha
f3de7e574d Merge branch 'bugfix/usb_reg_header_definition_upd' into 'master'
USB: usb_reg.h update missing register bitfield description

See merge request espressif/esp-idf!22766
2023-03-22 17:43:43 +08:00
Darian Leung
05bda6595d freertos: Move FreeRTOSConfig_arch.h
This commit moves the FreeRTOSConfig_arc.h to the "esp_additions" directory
so that they can also be used for SMP FreeRTOS builds.
2023-03-22 16:32:29 +08:00
Ivan Grokhotkov
77541faa14
tools: idf.py: remove esp32c6 and esp32h2 from preview targets list 2023-03-21 20:41:44 +01:00
Roland Dobai
a0eb55e81a Merge branch 'add_win64_oocd_bins' into 'master'
tools: Add missed OpenOCD v0.12.0-esp32-20230313 binaries for win64 platform

See merge request espressif/esp-idf!22856
2023-03-22 01:01:04 +08:00
Ondrej Kosta
531e23c802 Merge branch 'bugfix/dm9051_rcv_mcast' into 'master'
esp_eth: allowed DM9051 to receive multicast packets

See merge request espressif/esp-idf!22768
2023-03-21 22:55:44 +08:00
Michael (XIAO Xufeng)
dbbc1ba5be Merge branch 'feat/merge_nuttx_patch' into 'master'
G0, G1: fix issues that prevents using G0/G1 components on other platforms

See merge request espressif/esp-idf!22521
2023-03-21 20:48:21 +08:00
Alexey Gerenkov
d2c02c901a tools: Add OpenOCD v0.12.0-esp32-20230313 binaries for win64 platform 2023-03-21 15:44:53 +03:00
Armando (Dou Yiwen)
75fc5a2512 Merge branch 'bugfix/mspi_timing_tuning_ll_assertion_disable_build_fail_issue' into 'master'
mspi: fix build failure under  assertion disable

Closes IDF-7077

See merge request espressif/esp-idf!22835
2023-03-21 12:37:21 +08:00
wanlei
66ca403bc6 spi_slave: support spi slave hd append mode on chips other than s2 2023-03-21 11:30:17 +08:00
Armando
eee34bcf70 mspi: fix build failure under assertion disable 2023-03-21 10:14:59 +08:00
Roland Dobai
288332d6a9 Merge branch 'feature/update-OpenOCD-to-v0.12.0-esp32-20230313' into 'master'
tools: update OpenOCD version to 'v0.12.0-esp32-20230313'

See merge request espressif/esp-idf!22744
2023-03-21 06:17:35 +08:00
Alexey Lapshin
12ab3625ca tools: update esp-rom-elf to version 20230320 2023-03-20 19:20:34 +08:00
Roland Dobai
c1ce05e244 Merge branch 'feature/test_check_python_dependencies' into 'master'
ci: add dep check_python_dependencies.pyt test

Closes IDF-4961

See merge request espressif/esp-idf!22790
2023-03-20 16:21:56 +08:00
Mahavir Jain
d0c8b01956
test_apps: add test case for flash mmap data integrity in ram loadable app 2023-03-20 11:12:11 +05:30
Jakob Hasse
7dbe9687f9 Merge branch 'bugfix/esp_shared_stack_watchpoint_setting' into 'master'
bugfix(esp_system): made watchpoint setting configuration-dependent

Closes IDFGH-9003

See merge request espressif/esp-idf!21738
2023-03-20 10:19:05 +08:00
Frantisek Hrbata
53a8742680 ci: add dep check_python_dependencies.pyt test
Two new tests are added.

1) test_check_python_dependencies
The test prepares artificial constraints file containing packages from
requirements.core.txt, which are also reported in pip-freeze output
for virtual env. The constraints file requires package versions higher
than currently installed in venv, so check_python_dependencies
should fail for all of them.

2) test_check_required_packages_only
Test for espressif/esp-idf/-/merge_requests/17917. After installing
core requirements, install additional foopackage, which is embedded.
Add version requirement for foopackage, which cannot be satisfied,
to constraints file. Since foopackage is not a direct requirement,
check-python-dependencies should not fail.

This also fixes existing TestCustomPythonPathInstall test, which sets
IDF_PYTHON_ENV_PATH, but does not restore it. Unittest seems to be
running tests in order based on class/test name. Meaning this test runs
before TestPythonInstall and all tests in TestPythonInstall are using
the latest tmpdir from TestCustomPythonPathInstall as IDF_PYTHON_ENV_PATH.
IOW TestPythonInstall is actually testing custom python env path, same as
TestCustomPythonPathInstall. This fixes it by restoring the
IDF_PYTHON_ENV_PATH. Note that since the actual IDF_PYTHON_ENV_PATH
was different(tmpdir) from PYTHON_DIR, the default PYTHON_DIR was never used,
so the tests were running with old python env(no
shutil.rmtree(PYTHON_DIR).

Since TestCustomPythonPathInstall is inheriting from TestPythonInstall
it also runs test_opt_argument and test_no_constraints for the second
time. This seems unnecessary, so this patch also skips these two tests
in TestCustomPythonPathInstall.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-17 15:22:33 +01:00
Jiang Jiang Jian
2658fb7623 Merge branch 'feature/add_memprot_support_for_esp32h2' into 'master'
esp32h2: enable memory protection scheme using PMA and PMP

Closes IDF-6452 and IDF-6332

See merge request espressif/esp-idf!22699
2023-03-17 15:19:52 +08:00
Jakob Hasse
f679218cb6 feat(driver): added RMT mock 2023-03-17 14:54:48 +08:00
Wan Lei
3b62bf59c4 Merge branch 'bugfix/fix_deep_sleep_crash_when_psram_high_freq' into 'master'
mspi: turn down freq to fix crash when sleep

Closes IDF-6881

See merge request espressif/esp-idf!22491
2023-03-16 14:11:21 +08:00
wanlei
a48d1a85c1 mspi: add test_app measuring time cost of mspi APIs
and merge mspi unit test into this
2023-03-16 11:11:43 +08:00
Gustavo Henrique Nihei
50145ed179 esp_rom: Remove STATUS struct in favor of ETS_STATUS
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-16 01:50:21 +08:00
Roland Dobai
4bf12081e2 Merge branch 'bugfix/non_default_sdkconfig' into 'master'
tools: fix usage of sdkconfig with custom path or name

Closes IDF-1369

See merge request espressif/esp-idf!22520
2023-03-15 20:53:38 +08:00
Mahavir Jain
b29ed0ba0b
test_apps: enable memprot tests for ESP32-H2 target 2023-03-15 13:16:26 +05:30
Armando
929b7717ff system: fixed ram app cannot use mmu correctly issue 2023-03-15 10:59:20 +08:00
Ondrej
2ec7fc8f10 esp_eth: allowed DM9051 to receive multicast packets
Removed extra PHY status link checks from DM9051 MAC layer
2023-03-14 13:59:27 +00:00
Roman Leonov
0b08570ae2 usb: usb_reg.h update missing register description 2023-03-14 13:29:20 +01:00
Alexey Gerenkov
5013e6588c tools: update OpenOCD version to 'v0.12.0-esp32-20230313' 2023-03-13 15:29:19 +00:00
Jakob Hasse
0769298b3b Merge branch 'contrib/github_pr_8987' into 'master'
pthread: avoid heap alloc in pthread_cond_timedwait if possible (GitHub PR)

Closes IDFGH-7409

See merge request espressif/esp-idf!22702
2023-03-13 19:34:21 +08:00
Jakob Hasse
03bc6488de bugfix(esp_system): made watchpoint setting configuration-dependent
esp_execute_shared_stack_function always restored the stack watchpoint
regardless of CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK. This would lead
to an abondoned but active watchpoint on a former stack once the task
calling esp_execute_shared_stack_function is deleted, if
CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK is inactive.
This has been fixed now.

Closes https://github.com/espressif/esp-idf/issues/10414
2023-03-13 14:24:15 +08:00
Jiang Jiang Jian
d5f53fb415 Merge branch 'feature/nan_datapath' into 'master'
NAN Datapath support and console example

Closes WIFI-1223

See merge request espressif/esp-idf!13593
2023-03-11 04:50:10 +08:00
MacDue
75066bde5a ci: remove components/pthread/pthread_cond_var.c from ignore list 2023-03-10 15:52:27 +08:00
Nachiket Kukade
4c76af3f68 esp_wifi: Add support for NAN Discovery and Datapath
Update wifi lib with below -
1. Create NAN Discovery SM for beaconing & cluster formation
2. Create NAN interface for Tx/Rx of beacons & action frames
3. Add commands & events for NAN Services Publish/Subscribe/Followup
4. Add NAN Datapath definitions, Events, Peer structures
5. Support for forming and parsing of Datapath related attributes
6. Modules for NDP Req, Resp, Confirm, Term, Peer management
7. NAN Interface related additions in Datapath, Data Tx Q's

In addition include below changes -
1. Add netif and driver support for NAN Interface
2. Add simple examples for Publisher-Subscriber usecases
3. Add an advanced console example that supports commands
   for NAN Discovery, Services & Datapath
4. Add wifi_apps for providing better NAN API's and Peer management

Co-authored-by: Shyamal Khachane <shyamal.khachane@espressif.com>
2023-03-10 11:18:23 +05:30
Mahavir Jain
00f30bb199 Merge branch 'esp32c6/fix_pmp_config' into 'master'
esp32c6: Fix incorrect PMP configuration

Closes IDF-6927

See merge request espressif/esp-idf!22435
2023-03-10 12:21:30 +08:00
jingli
b6580ea4ac example: refactor deep sleep example to make codes more structured 2023-03-09 15:23:56 +08:00
Sachin Parekh
ed0a1f7b52 esp32c6: Fix incorrect PMP configuration
- Enable pytest memprot tests for C6
2023-03-09 11:37:29 +05:30
Frantisek Hrbata
a558ad506e tools: fix custom sdkconfig renaming in set-target
Currently the set-target has sdkconfig file name hardcoded to the
default one and doesn't honor custom config paths or names.
IMHO the only place where we can really now the config file name
is in cmake. But also the config should be really renamed only if
the set-target action is running.

This moves the config file renaming into cmake and it's performed only
when _IDF_PY_SET_TARGET_ACTION env. var. is set to 'ON'. This should
hopefully guarantee that it's really renamed only while set-target is
running.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-08 16:45:55 +01:00
Frantisek Hrbata
1ca9e63e79 tools: add target consistency checks to cmake
Extend target checks in cmake, in case it's run directly and not via
idf.py or if idf.py misses something. This may happen
for example if cmake variables are set in project's CMakeLists.txt.

Some clean-ups are included along with the new checks and tests.

1. __target_check() function is removed. IIUC it should never fail,
   because the selected target is explicitly passed as environmental
   variable to kconfgen. Meaning the IDF_TARGET from environment variable may
   not be actually used in kconfgen if IDF_TARGET is already set it cmake cache.
   Note that the IDF_TARGET environment variable used for kconfgen is not
   based on the actual IDF_TARGET environment variable set for idf.py, but
   rather on the value set in __target_init() with

	set(IDF_TARGET ${env_idf_target} CACHE STRING "IDF Build Target")

   My understanding is that the original check was introduced to handle
   situation, where IDF_TARGET was already set in cmake's cache and
   the IDF_TARGET from environment variable was different. Since
   the kconfgen would use the original environment variable(not
   explicitly passed as it is now) the IDF_TARGET in cmake and in
   sdkconfig could differ. IOW I think the original check was introduced
   to cope with the following cmake behaviour

	set(VARIABLE "value1" CACHE STRING "test variable")
	set(VARIABLE "value2" CACHE STRING "test variable")
	message("Variable value: ${VARIABLE}")
	output: Variable value: value1

2. I scratched by head how it is possible that the following code
   in __target_check()

   	if(NOT ${IDF_TARGET} STREQUAL ${env_idf_target})

   could fail if IDF_TARGET is not set. For example in clean project

	IDF_TARGET=esp32 idf.py reconfigure

   Here env_idf_target==esp32 and IDF_TARGET is not set, so I would
   expect that cmake will fail with error message that the cache
   and env target do not match. The thing is that the variable
   evaluation is done before the if command, so it actually
   sees this

   	if(NOT  STREQUAL esp32)

   which is false and the error is not printed. It can be seen
   with 'cmake --trace-expand' command. I don't know if this
   was used on purpose or it worked just as a coincidence, but
   I find it very confusing, so I added explicit check if the
   IDF_TARGET is defined before the actual check. Same for
   CMAKE_TOOLCHAIN_FILE.

3. Error messages are not formated(line-wrapped) by cmake's markup
   so it's easier to check the output in tests.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-08 16:45:47 +01:00
Frantisek Hrbata
8e912faad1 tools: add target consistency checks for target specified with -D option
Extend existing target consistency checks for the two following cases.
1. Target does not match currently used toolchain
   $ IDF_TARGET=esp32s2 idf.py reconfigure
   $ idf.py -DIDF_TARGET=esp32c3 build

2. Target is ambiguous, because it's specified also as env. var.
   IDF_TARGET=esp32s3 idf.py set-target esp32c2

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-08 16:43:42 +01:00
Frantisek Hrbata
0d859f2786 tools: move target guessing into cmake
The _guess_or_check_idf_target() function has sdkconfig and sdkconfig.defaults
file names hardcoded. Since config file names may be specified with SDKCONFIG
or SDKCONFIG_DEFAULTS cmake vars, directly in CMakeLists.txt or passed in with
the -D cmake option, they are not respected.

Problem is when SDKCONFIG or SDKCONFIG_DEFAULTS is set in
CMakeLists.txt. While idf can detect cmake vars passed through it
to cmake via the -D option, detecting SDKCONFIG and SDKCONFIG_DEFAULTS
vars settings in CMakeLists.txt would require to parse it. This seems
like error prone approach. Also if the vars defined by the -D option
are passed directly to cmake, not via idf, they will not be visible to idf.

It seems reasonable to move the logic into cmake, where we know the correct
SDKCONFIG and SDKCONFIG_DEFAULTS values. So the IDF_TARGET detection/guessing
is moved into targets.cmake, where the IDF_TARGET is actually set. The target
is guessed based on the following precendence.

1) $ENV{IDF_TARGET}
2) IDF_TARGET
3) SDKCONFIG
4) sdkconfig
5) SDKCONFIG_DEFAULTS if non-empty or
   $ENV{SDKCONFIG_DEFAULTS} if non-empty or
   sdkconfig.defaults
6) esp32

All config files referred in $ENV{SDKCONFIG_DEFAULTS} and SDKCONFIG_DEFAULTS
are searched, compared to the current behaviour. First target found in the
above chain is used.

The original _guess_or_check_idf_target() is renamed to _check_idf_target() and
used for the target consistency checks only.

The get_sdkconfig_filename() helper is now used to get the sdkconfig file
for consistency checks. It looks in SDKCONFIG specified with the -D
option and project_description.json.

With this change config full paths are reported in messages, so it's clear
e.g. from which config the target was guessed from or which config has
consistency problem. test_non_default_target.py was adjusted to this
change and also new test for testing the IDF_TARGET guessing was added.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-08 16:37:58 +01:00
Frantisek Hrbata
a8a4d7c66d tools: add get_sdkconfig_filename() helper
Get project's current sdkconfig file name. It looks in SDKCONFIG cmake var
defined by the -D option and project_description.json. If not found return
default sdkconfig.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-08 16:37:58 +01:00
Frantisek Hrbata
e89f980193 tools: add _parse_cmdl_cmakecache() helper
This parses cmakes cache vars defined on command line with -D options
into dictionary. It allows to simplify the check for new cache entries
and also can be re-used for other checks.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-03-08 16:37:58 +01:00
jiangguangming
87f2eb9e2a esp_rom: put rom cache related functions to cache.h 2023-03-07 14:51:24 +08:00
Li Shuai
1a10eabe41 Power Management: refactor the configuration of each module in sleep mode 2023-03-04 00:17:40 +08:00
Roland Dobai
140e6bea72 Merge branch 'contrib/github_pr_10772' into 'master'
tools: Docker: install build-essential apt package (GitHub PR)

Closes IDFGH-9402

See merge request espressif/esp-idf!22463
2023-03-02 22:26:51 +08:00
Marius Vikhammer
7a0b9f65c9 esp-system: migrate test app cases to pytest 2023-03-01 03:21:39 +00:00
Peter Dragun
16d033a919 tools: Docker: add build-essentials needed for linux targets
Closes https://github.com/espressif/esp-idf/pull/10772
2023-02-28 11:27:25 +01:00
Jiang Jiang Jian
146a5c4de4 Merge branch 'feature/sae_softAP' into 'master'
esp_wifi: WPA3-SAE support for softAP

Closes IDFGH-4771

See merge request espressif/esp-idf!15690
2023-02-28 12:25:05 +08:00
Shreyas Sheth
2b8e40e760 esp_wifi: WPA3-SAE support for softAP 2023-02-28 12:25:05 +08:00
Song Ruo Jing
1a66459b44 usb_serial_jtag: Improve the code for the issue of usb cdc device unable to work during sleep
1. Remove RTC_CLOCK_BBPLL_POWER_ON_WITH_USB Kconfig option
   During sleep, BBPLL clock always gets disabled
   esp_restart does not disable BBPLL clock, so that first stage bootloader log can be printed
2. Add a new Kconfig option PM_NO_AUTO_LS_ON_USJ_CONNECTED
   When this option is selected, IDF will constantly monitor USB CDC port connection status.
   As long as it gets connected to a HOST, automatic light-sleep will not happen.

Closes https://github.com/espressif/esp-idf/issues/8507
2023-02-27 12:10:49 +08:00
liuning
7817c23623 esp_coex: correct Kconfig name 2023-02-26 06:58:18 +00:00
liuning
38316b38b5 esp_wifi: move coex part from esp_wifi to esp_coex 2023-02-26 06:58:18 +00:00
Fu Hanxi
481e221e69 Merge branch 'ci/set_manifest_root_path' into 'master'
ci: use IDF_PATH as the manifest root path

Closes RDT-272

See merge request espressif/esp-idf!22426
2023-02-23 14:02:08 +08:00
Armando (Dou Yiwen)
aeaf119338 Merge branch 'refactor/resolve_mmu_soc_dependency_to_sdkconfig_h' into 'master'
g0: resolve MMU_PAGE_SIZE not defined in g0 build issue

Closes IDF-5219

See merge request espressif/esp-idf!22447
2023-02-23 12:05:13 +08:00
Alexey Lapshin
0da15a7a19 build: add option COMPILER_DISABLE_GCC12_WARNINGS 2023-02-22 05:33:03 +00:00
Alexey Lapshin
2ef6215621 tools: change esp32h2 march to rv32imac_zicsr_zifencei 2023-02-22 05:33:03 +00:00
Alexey Lapshin
61a7342acd tools: add riscv zicsr/zifencei because they were separated from i
https://groups.google.com/a/groups.riscv.org/g/sw-dev/c/aE1ZeHHCYf4
2023-02-22 05:33:03 +00:00
Alexey Lapshin
c5ae3c67f1 Revert "tools: bypass atomic instruction variant for esp32c6 temporarily"
This reverts commit 08f05420c0.
2023-02-22 05:33:03 +00:00
Alexey Lapshin
5389ac4e04 tools: cmake: ignore linker RWX segment warnings 2023-02-22 05:33:03 +00:00
Alexey Lapshin
d867b11022 tools: update toolchain version to 'esp-12.2.0_20230208'
Closes https://github.com/espressif/esp-idf/issues/5308
2023-02-22 05:33:03 +00:00
Alexey Lapshin
4e411d9e3b tools: add triplet i686-linux-gnu for distributions 2023-02-22 05:33:03 +00:00
Armando
c56eb8646b g0: resolve MMU_PAGE_SIZE not defined in g0 build issue 2023-02-22 12:37:40 +08:00
Fu Hanxi
38c292c7bf ci: fix: pexpect.buffer can't be kept between processes 2023-02-21 16:09:19 +08:00
Fu Hanxi
b661d64811 Merge branch 'bugfix/fix_case_tester_wait_case_running_too_short' into 'master'
case_tester: use process instead of thread

See merge request espressif/esp-idf!21847
2023-02-20 20:24:01 +08:00
Marius Vikhammer
89190fab02 Merge branch 'bugfix/allow_coredump_gdb_simu' into 'master'
coredump: allow coredump at panic even if gdbstub is used.

Closes IDFGH-8567

See merge request espressif/esp-idf!22103
2023-02-20 16:07:57 +08:00
Marius Vikhammer
eb40fc913a Merge branch 'bugfix/linux_target_driver_mock' into 'master'
linux-target: fixed driver mock being broken due to changes in driver folder structure

Closes IDFGH-9375

See merge request espressif/esp-idf!22375
2023-02-20 15:38:38 +08:00
Fu Hanxi
a0c025cc47 ci: use IDF_PATH as the manifest root path
this would remove the restriction that tools/ci/ci_build_apps.py could
only be run in IDF_PATH.
2023-02-20 14:55:04 +08:00
Fu Hanxi
b04e5d070a case_tester: use multi-processing instead of threads
Pros:
- Using thread would face GIL issue and turns out very slow when running
with poor hardware.

Cons:
- Does not support windows anymore. For testing purpose, it's fine.
2023-02-20 11:18:14 +08:00
Omar Chebib
d55060d184 Merge branch 'staging/rename_twdt_config_examples' into 'master'
TWDT: Use the new TWDT Kconfig options in the examples and tests

See merge request espressif/esp-idf!20363
2023-02-20 10:42:23 +08:00
Marius Vikhammer
ec57895db9 coredump: allow coredump at panic even if gdbstub is used.
Closes https://github.com/espressif/esp-idf/issues/10017
2023-02-17 15:15:36 +08:00
Laukik Hase
f0132be83e Merge branch 'feature/memprot_test_app' into 'master'
esp_system: Add test_app for `memprot` peripheral

Closes IDF-6819

See merge request espressif/esp-idf!21829
2023-02-17 13:59:44 +08:00
Omar Chebib
5e5343d429 TWDT: Use the new TWDT Kconfig options in the examples and tests 2023-02-17 11:22:25 +08:00
Martin Vychodil
c58a84f893 Merge branch 'feature/fatfs_format_api' into 'master'
fatfs: added APIs to format a FAT filesystem

Closes IDF-6046

See merge request espressif/esp-idf!21845
2023-02-16 19:59:31 +08:00
Laukik Hase
6e0e7e34ea
test_app: Extend panic app to include memprot-related tests
- Add support for esp32s2, esp32c3 and esp32c2 for the `memprot`-related tests
- Preliminary support for esp32s3 has also been added,
  the test app will be enabled for esp32s3 later when
  the memprot-related issues are fixed.
- Override panic handler to dump the violation intr status
  - Dump the `memprot` violation registers before calling the
    real panic handler
  - Handle `Illegal Instruction` exception in case of memprot permission violation
    * In esp32c3 with `memprot` enabled, if we try to execute arbitrary code
      from RTC_FAST_MEM we get an `Illegal Instruction` exception from the panic
      handler rather than a `Memory Protection Fault`.
    * This is because the Illegal Instruction interrupt occurs earlier than the
      memory protection interrupt due to a higher interrupt latency.
2023-02-16 17:13:56 +05:30
Laukik Hase
fa27795048
test_app: Split panic test app into separate source files
- Added minor improvements to  `panic` test app
  * Replaced existing API to disable flash cache which did not disabled cache always
    (`esp_flash_default_chip->os_func->start(esp_flash_default_chip->os_func_data)`)
    with `spi_flash_enable_interrupts_caches_and_other_cpu`
  * Included some required headers explicitly (`esp_memory_utils.h` and `esp_heap_caps.h`)
2023-02-16 15:26:47 +05:30
Armando
d59fd3e529 fatfs: deprecate esp_vfs_fat_sdmmc_unmount
This API was deprecated before, but without deprecation warning and
migration doc. This commit added deprecation warning and migration doc
to it.
2023-02-16 14:17:51 +08:00
Fu Hanxi
610102ace1 Merge branch 'ci/move_stdout_print_to_stderr_logging' into 'master'
ci: move stdout print to stderr logging in gitlab api

See merge request espressif/esp-idf!22387
2023-02-16 13:45:55 +08:00
Erhan Kurubas
a3df4d5386 Merge branch 'apptrace_pytest' into 'master'
Generic apptrace example with pytest support

Closes IDF-5620

See merge request espressif/esp-idf!22195
2023-02-16 03:41:19 +08:00
Roland Dobai
2237847967 Merge branch 'fix/idf_tools_python_dir_change' into 'master'
Tools: Allow custom Python installation path with IDF_PYTHON_ENV_PATH

Closes IDFGH-9085

See merge request espressif/esp-idf!22372
2023-02-15 19:07:52 +08:00
Erhan Kurubas
db10697b74 example/system: remove app_trace_to_host example. Instead use app_trace_basic 2023-02-15 10:30:32 +01:00
Roland Dobai
beb1c08d25 Merge branch 'feature/rewrite_build_sys_tests_v2' into 'master'
Rewrite build system unit tests to python v2

Closes IDF-6778

See merge request espressif/esp-idf!22180
2023-02-15 17:04:59 +08:00
Fu Hanxi
8d0dda23b0 ci: move stdout print to stderr logging in gitlab api 2023-02-15 15:34:10 +08:00
Marius Vikhammer
b68b0ea714 linux-target: fixed driver mock being broken due to changes in driver folder structure
Closes https://github.com/espressif/esp-idf/issues/10749
2023-02-15 11:16:51 +08:00
Cao Sen Miao
fd3e0b0b18 esp32h2(ci): enable target test 2023-02-15 10:20:43 +08:00
Roland Dobai
afe554c753 Tools: Allow custom Python installation path with IDF_PYTHON_ENV_PATH
IDF_PYTHON_ENV_PATH is the path where the Python environment is created
and used. By default it is inside IDF_TOOLS_PATH. IDF_PYTHON_ENV_PATH
was exported by idf_tools.py but was not imported back. This fixes the
issue and ESP-IDF will honor the value of IDF_PYTHON_ENV_PATH.

Closes https://github.com/espressif/esp-idf/issues/10489
2023-02-14 17:26:04 +01:00
Erhan Kurubas
69b1d1786c docs: JTAG debugging update for ESP32-H2 2023-02-13 22:49:00 +01:00
Jiang Jiang Jian
254efe402e Merge branch 'feature/wifi_kconfig_merge' into 'master'
esp_wifi: Merge wpa_supplicant and esp_wifi Kconfig

Closes WIFI-4541 and IDF-1830

See merge request espressif/esp-idf!18998
2023-02-11 07:38:46 +08:00
Kapil Gupta
30a2558450 esp_wifi: Merge wpa_supplicant and esp_wifi Kconfig 2023-02-11 07:38:45 +08:00
Roland Dobai
648b1a41c6 Merge branch 'bugfix/dbg_target_hints' into 'master'
tools: enable hints for debug targets

Closes IDF-5795

See merge request espressif/esp-idf!22198
2023-02-10 17:25:27 +08:00
Roland Dobai
1dc3d5ef22 Merge branch 'feature/introduce_spdx_licenseref' into 'master'
tools: allow to use LicenseRef-[idstring] in SPDX-License-Identifier

Closes IDF-4486

See merge request espressif/esp-idf!22132
2023-02-10 17:08:01 +08:00
Marek Fiala
165c0d852b Tools: Rewrite build system unit tests to python - other target tests 2023-02-09 16:08:04 +01:00
Frantisek Hrbata
08c9a7b520 tools: add new outdated option for idf_tools.py list
This adds a new outdated option, which only lists outdated
packages installed in IDF_TOOLS_PATH. It searches for the
latest installed tool version in the IDF_TOOLS_PATH/tools path and
compares it against the latest available version in the tools.json
file. If the latest version of a tool installed in IDF_TOOLS_PATH/tools
is smaller, it's reported as outdated. Nothing is reported if the tool
is up to date.

Two new tests are added. First just checks if nothing is reported in
case there is no update available. The second artificially generates
new tools.json file called tools.outdated.json and sets XTENSA_ESP32_ELF
version to 'zzzzzz'. It then checks if the XTENSA_ESP32_ELF tool
is reported as outdated by the 'zzzzzz' version.

Description of the new outdated option is addedd to docs as well.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-02-09 10:25:45 +01:00
Armando
34e77d6ccd test_panic: add CONFIG_HAL_ASSERTION_DISABLE to coredump_flash_bin_crc config
Without this commit, under this config, the static D/IRAM usage is 97%
2023-02-07 20:23:52 +08:00
Armando
293f6ed34a ci: add assertion disable config to reduce test_utils_psram size
Added CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE=y in
test_utils_psram configs to reduce size
2023-02-07 20:23:52 +08:00
Armando
4564f6cc4b g1: add esp_mm to g1 list 2023-02-07 20:23:52 +08:00
Armando
d6844051fc esp_mm: new virtual memory mapping apis via mmu 2023-02-07 20:23:52 +08:00
Armando
af15b6d885 mmu: simplify mmu vaddr region macro on esp32c2
ESP32C2 mmu vaddr region macros, and related mask macros in
ext_mem_defs.h depends on mmu page size.
2023-02-07 20:23:51 +08:00
Roland Dobai
4bd5ebb4a1 Merge branch 'tools/monitor_move' into 'master'
Tools(idf_monitor): Move idf_monitor to separate repo

Closes IDF-4109

See merge request espressif/esp-idf!22050
2023-02-07 19:47:46 +08:00
Kevin (Lao Kaiyao)
421e5e6416 Merge branch 'refactor/pack_driver_source_files' into 'master'
components/driver: pack peripherals

See merge request espressif/esp-idf!22173
2023-02-07 10:20:57 +08:00
Marek Fiala
a7a401eb28 Tools: dfu-util upgrade 0.9 -> 0.11
Closes https://github.com/espressif/esp-idf/issues/10558
2023-02-03 15:34:23 +01:00
Frantisek Hrbata
dc580bdc97 tools: add hints for openocd
This moves one hint, which was hardcoded in debug_ext.py to
hints.yml and adds a new one when openocd process does not have
permissions to the USB JTAG/serial device.

Also hint replacing the original 'Please check JTAG connection!'
hardcoded message is added.

Suggested-by: Alexey Lapshin <alexey.lapshin@espressif.com>
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-02-03 14:56:14 +01:00
Peter Dragun
3e3533f918 feat(idf_monitor): move idf_monitor to separate repo 2023-02-03 11:20:15 +01:00
laokaiyao
f27cd67c00 driver: pack peripherals 2023-02-02 18:19:58 +08:00
morris
753eab91ee Merge branch 'feature/usj_support_h2' into 'master'
USJ console support on esp32h2

Closes IDF-6239

See merge request espressif/esp-idf!22156
2023-02-02 17:07:19 +08:00
Anton Maklakov
e5c14a9789 Merge branch 'bugfix/public_header_check_cosmetic' into 'master'
ci: Fix false positive err-logs on static-assert check

See merge request espressif/esp-idf!22194
2023-02-02 14:56:30 +08:00
David Čermák
5ada761a7b Merge branch 'update/esp_netif_test_cleanup' into 'master'
esp_netif/tests: Consolidate test_apps/unit_test

Closes IDF-5579 and IDF-5047

See merge request espressif/esp-idf!21929
2023-02-02 13:49:43 +08:00
David Cermak
cbff23cfdb ci: Fix false positive err-logs on static-assert check 2023-02-02 04:14:34 +00:00
Jiang Jiang Jian
25a56d13d7 Merge branch 'bugfix/fix_potential_null_pointer_dereference' into 'master'
Fix potential null pointer dereference

Closes IDF-6493

See merge request espressif/esp-idf!21662
2023-02-02 11:22:17 +08:00
Wu Zheng Hui
04987ac201 Merge branch 'feature/add_ram_loadable_app_support' into 'master'
feature: add ram loadable app support

See merge request espressif/esp-idf!19465
2023-02-02 10:28:13 +08:00
Frantisek Hrbata
4ee00623a3 tools: allow to use hints for debug targets
The debug targets are currently not utilizing hints, because they
are not using RunTool() helper from tools.py to spawn sub-processes.
Adjusting debug targets to use RunTool() would require some significant
changes to debug targets and RunTool() as well. Since debug targets
are already storing their output in logs, we can use these and process
them for hints.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-02-01 15:06:39 +01:00
David Cermak
7ae58e223d esp_netif/tests: Consolidate test_apps/unit_test
* Remove duplicated test cases
* Migrated remaining unit tests to test_apps
2023-02-01 14:17:09 +01:00
Rahul Tank
9916eb688a Merge branch 'bugfix/add_return_type_nimble_port_init' into 'master'
Nimble: Added return value (success / failure ) to nimble_port_init  / nimble_port_deinit

See merge request espressif/esp-idf!21718
2023-02-01 19:45:44 +08:00
wuzhenghui
772d32fd77 ci: add ci workaround for gdb_loadable_elf
since flash config parameters are no longer generated when APP_BUILD_TYPE_RAM is enabled, this will cause load_ram in pytest_embedded_idf to fail
2023-02-01 17:57:28 +08:00
wuzhenghui
3256e4279d ci: add pytests for ram_loadable_app 2023-02-01 17:57:28 +08:00
wuzhenghui
151c3b335b example: add example for ram loadable app 2023-02-01 17:57:28 +08:00
wuzhenghui
0cbb4227b2 feature: add build framework support 2023-02-01 17:57:25 +08:00
Wu Zheng Hui
33ae2e1073 Merge branch 'feature/bringup_esp32c6_light_sleep_pd_cpu' into 'master'
esp32c6: support light_sleep (Stage 1: support CPU power down)

See merge request espressif/esp-idf!21985
2023-02-01 14:11:15 +08:00
gauri patankar
d14d001e44 wpa_supplicant:Fix potential null pointer dereference 2023-01-31 21:54:43 +05:30
Li Shuai
9b99fc9033 cpu retention: software cpu retention support for esp32c6
cpu retention: add riscv core sleep critical and non-critical register layout structure definition

cpu retention: add assembly subroutine for cpu critical register backup and restore

cpu retention: add cpu core critical register context backup and restore support

cpu retention: add cpu core non-critical register context backup and restore support

cpu retention: add interrupt priority register context backup and restore support

cpu retention: add cache config register context backup and restore support

cpu retention: add plic interrupt register context backup and restore support

cpu retention: add clint interrupt register context backup and restore support

cpu retention: wait icache state idle before pmu enter sleep
2023-01-31 22:12:54 +08:00
David Čermák
dba0718f47 Merge branch 'feature/lwip_linux' into 'master'
lwip: Add support for linux target

Closes IDF-5707, IDF-5647, and IDF-6003

See merge request espressif/esp-idf!19302
2023-01-31 22:01:50 +08:00
Ondrej Kosta
5da702bab3 Merge branch 'feature/iperf_pytest_migration' into 'master'
iperf pytest migration

Closes IDFCI-1143

See merge request espressif/esp-idf!21726
2023-01-31 18:04:59 +08:00
Mahavir Jain
d193521eb8 Merge branch 'example/remove_cbor_example' into 'master'
example: remove CBOR example from IDF.

See merge request espressif/esp-idf!22164
2023-01-31 17:16:23 +08:00
David Cermak
fa97004faf lwip: Support for linux target
Implement linux port layer and reuse the original FreeRTOS layer
that's compiled and used on linux target as well, by means of FreeRTOS
simulator.
2023-01-31 08:43:45 +01:00
Rahul Tank
826495a145 Nimble: Added return value (success / failure ) to nimble_port_init 2023-01-31 12:01:02 +05:30
morris
b7799ec84d rom: patch uart function to switch buffer 2023-01-31 13:11:32 +08:00
Roland Dobai
733aadd6dc Merge branch 'feature/rewrite_build_sys_tests_v1' into 'master'
Rewrite build system unit tests to python v1

Closes IDF-6736

See merge request espressif/esp-idf!21639
2023-01-30 19:41:51 +08:00
Harshit Malpani
928c5e84d9
example: remove CBOR example from IDF.
CBOR example has been moved to https://github.com/espressif/idf-extra-components/tree/master/cbor/examples/cbor
2023-01-30 16:58:32 +05:30
Jakob Hasse
a8b830ca92 Merge branch 'contrib/github_pr_10509' into 'master'
Make macro defined event base variables immutable (GitHub PR)

Closes IDFGH-9106

See merge request espressif/esp-idf!22032
2023-01-29 17:04:04 +08:00
Marius Vikhammer
43c899b2bd Merge branch 'bugfix/remove_undefined_rom_funcs' into 'master'
esp_rom:  cleanup unsupported functions

See merge request espressif/esp-idf!22041
2023-01-29 11:47:39 +08:00
Alexey Lapshin
236fa5e669 Merge branch 'feature/upgrade-systemview-to-3_32' into 'master'
app_trace: sys_view: upgrade to version 3.42

Closes IDF-4646

See merge request espressif/esp-idf!21306
2023-01-28 11:24:13 +08:00
Alexey Lapshin
18e5627a86 sys_view: upgrade to version 3.42 2023-01-27 22:22:33 +07:00
Marek Fiala
9beb663f1a Tools: Rewrite build system unit tests to python - rebuild tests 2023-01-27 09:55:52 +00:00
Roland Dobai
d063e48c41 Merge branch 'feature/add-esp32c6-esp32h2-to-roms_json' into 'master'
tools: add esp32c6, esp32h2 to roms.json

Closes IDF-6734

See merge request espressif/esp-idf!22111
2023-01-27 17:01:29 +08:00
Roland Dobai
fda3cf5607 Merge branch 'bugfix/ctrlc_port_detection' into 'master'
tools: allow to interrupt port detection

Closes IDF-6656

See merge request espressif/esp-idf!22062
2023-01-27 16:51:26 +08:00
Frantisek Hrbata
b8fdff2008 examples/zigbee: use LicenseRef-Included as SPDX-License-Identifier
Examples for zigbee are using custom license, which is not present
on the SPDX license list. This was discussed on !16205 and a decision
was made that the examples will be put on check-copyright's ignore list.
SPDX has LicenseRef-[idstring] identifier for such cases, so let's try
to use it. In this particular case the LicenseRef-Included is used to
express that the full license text is included in the source file.
Note that the LicenseRef-Included is not part of SPDX. It's just
something I used. No change is needed on the check-copyright side.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-01-27 08:24:27 +01:00
Mahavir Jain
0e64ef61e5 Merge branch 'feature/http_server_example_url_decode' into 'master'
example/protocols: Added URI encoding/decoding feature

Closes IDFGH-9057 and IDFGH-9170

See merge request espressif/esp-idf!22031
2023-01-27 12:31:34 +08:00
Laukik Hase
167618d6a4
examples/protocols: Added URI encoding/decoding feature
- http_server/simple: Decoding received query
  - esp_http_client: Sending encoded query
2023-01-25 17:47:14 +05:30
Zim Kalinowski
3574fc1918 cxx: removed cxx experimental components 2023-01-25 12:34:58 +01:00
Alexey Lapshin
dd40877ab2 sys_view: upgrade to version 3.32 2023-01-24 00:26:58 +07:00
Roland Dobai
2c794ea9c4 Merge branch 'bugfix/gdbinit_target_hoookpost' into 'master'
tools: fix idf.py gdb memory access before remote target is connected

Closes IDF-6723

See merge request espressif/esp-idf!22106
2023-01-23 23:47:17 +08:00
Alexey Lapshin
dd503eab24 tools: add esp32c6, esp32h2 to roms.json 2023-01-23 12:30:51 +07:00
Frantisek Hrbata
9d1c62becb tools: fix idf.py gdb memory access before remote target is connected
Currently loading of esp32s3 ROM ELF symbols fails with
"Cannot access memory at address 0x3ff194ad". Let's perform
add-symbol-file after connection to the target.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-01-20 11:02:26 +01:00
Roland Dobai
1731007e6a Merge branch 'bugfix/fix_idf_size_csv_diff_display' into 'master'
Fix idf_size.py archives diff display when using the CSV output mode

Closes IDF-6324

See merge request espressif/esp-idf!22037
2023-01-20 17:08:12 +08:00
Ondrej Kosta
46c00b2478 Merge branch 'contrib/github_pr_10554' into 'master'
Verify w5500 chip properly (GitHub PR)

Closes IDFGH-9158

See merge request espressif/esp-idf!22073
2023-01-20 15:41:50 +08:00
Martin Vychodil
a2b0068478 Merge branch 'bugfix/linux_build_errors' into 'master'
fix(linux): fix build errors without --skip-setting-flags

See merge request espressif/esp-idf!22063
2023-01-20 14:46:36 +08:00
Marius Vikhammer
e2d3f7c54c Merge branch 'feature/c6_wdt' into 'master'
wdt: add support for WDTs on C6

Closes IDF-5935 and IDF-5340

See merge request espressif/esp-idf!21038
2023-01-20 10:36:42 +08:00
Alexey Lapshin
6c674f12fa Merge branch 'fix/idf-gdb-remove-ROM-access-workaround' into 'master'
tools: remove obsolete workaround for reading ROM data from flash

See merge request espressif/esp-idf!21944
2023-01-19 23:58:35 +08:00
Ondrej
5fdb49698a esp_eth: fixed copyright for W5500 2023-01-19 07:56:22 +00:00
Marius Vikhammer
5e9e8c396f wdt: add support for WDTs on C6 2023-01-19 12:58:26 +08:00
Marius Vikhammer
0eda9b9215 esp-rom: remove unsupported ROM functions 2023-01-19 10:09:09 +08:00
Erhan Kurubas
9d6383340f Merge branch 'doc_update_esp32c6_jtag' into 'master'
docs: JTAG debugging update for ESP32C6

Closes IDF-6033

See merge request espressif/esp-idf!22028
2023-01-19 03:44:43 +08:00
Wan Lei
e7c520e849 Merge branch 'feature/add_spi_ckl_source_selectable' into 'master'
spi_master: add feature spi periph clk source selectable

Closes IDF-6289

See merge request espressif/esp-idf!21324
2023-01-19 00:54:24 +08:00
Erhan Kurubas
7cb79db71e docs: JTAG debugging update for ESP32C6 2023-01-18 15:17:23 +01:00
David Čermák
2f1d30d155 Merge branch 'bugfix/lwip_core_locking' into 'master'
esp_netif/lwip: Fix core-locking config

Closes IDFGH-8445, IDFGH-9098, and IDFGH-9063

See merge request espressif/esp-idf!20840
2023-01-18 20:31:25 +08:00
Armando (Dou Yiwen)
9f3fd2802f Merge branch 'feature/sdio_slave_c6' into 'master'
sdio: c6 support

Closes IDF-5809

See merge request espressif/esp-idf!21486
2023-01-18 16:42:32 +08:00
Roland Dobai
abf5022f9e Merge branch 'bugfix/fix_windows_path_case_sensitivity' into 'master'
bugfix: Fix windows path case sensitivity

Closes IDFGH-8858

See merge request espressif/esp-idf!21775
2023-01-18 15:48:07 +08:00
wanlei
184145817c spi_master: add feature spi periph clk source selectable 2023-01-18 15:40:12 +08:00
Ivan Grokhotkov
cef0744299 Merge branch 'bugfix/linux_target_gen_partition_table' into 'master'
multiple fixes for linux target

Closes IDF-6641

See merge request espressif/esp-idf!21993
2023-01-18 11:57:08 +08:00
Armando
f1de9faa71 sdio: c6 support 2023-01-18 02:34:46 +00:00
Jakob Hasse
9991862a10 fix(linux): fix build errors and warnings, remove ignore file 2023-01-18 09:24:28 +08:00
Djordje Nedic
17d1e9ae36 bugfix: Fix windows path case sensitivity
This commit fixes an issue where paths on Windows are case insensitive, for instance when setting the build folder its name would be converted to lowercase.

The culprit is our realpath() function, that was calling os.path.normcase() internally, since we are removing that call it makes sense to just remove the function entirely and call os.path.realpath() wherever necessary.

Closes https://github.com/espressif/esp-idf/issues/10282
2023-01-17 20:51:46 +01:00
David Cermak
a71fa82177 esp_netif/lwip: Fix core-locking config
* Fix thread safety issues in non-core locking
* Add option to verify thread safety issues in lwip (core-lock assertion)
* Make esp_sntp.h thread safe API
* Fix sntp examples
* Fix openthread libs

Closes https://github.com/espressif/esp-idf/issues/9908
Closes https://github.com/espressif/esp-idf/issues/10502
Closes https://github.com/espressif/esp-idf/issues/10466
2023-01-17 16:15:58 +01:00
Frantisek Hrbata
92565a259f tools: allow to interrupt port detection
The main idf.py process has a handler for SIGINT, which actually just
ignores it. The get_default_serial_port() function is called within the
idf.py context to detect port for several tools(monitor,flash) and it's
not possible to terminate it because of this. Let's ignore SIGINT only
while running idf_monitor, which uses it to spawn gdb.

Fixes: c6e3eb0922 ("idf.py.exe changes to handle Ctrl+C in correct way. H..")

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-01-17 13:13:54 +01:00
morris
d9825f5165 Merge branch 'feature/add_clk_tree_get_frequency_api' into 'master'
clk_tree: Stage 4 - Add a general API to get the frequency of different clocks

Closes IDF-6569

See merge request espressif/esp-idf!21830
2023-01-17 17:08:23 +08:00
Song Ruo Jing
2c9aa4559c clk_tree: Add a general API to get the frequency of different clocks
Add basic clk_tree driver and hal implementation.
2023-01-17 11:30:24 +08:00
Cao Sen Miao
94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
Ondrej Kosta
7aa4462d0b Ethernet & WiFi iperf test migration to pytest 2023-01-16 15:45:56 +01:00
Fu Hanxi
51adb9ab27 test: temp workaround for linux test apps 2023-01-16 10:25:55 +08:00
Fu Hanxi
b02687a6c4 test: migrate linux target host test jobs into pytest-embedded 2023-01-16 10:25:55 +08:00
Fu Hanxi
74794c64f5 ci: fix ci_build_apps.py for linux target 2023-01-16 08:33:25 +08:00
Djordje Nedic
7cf3e284f5 Fix idf_size.py archives diff display when using the CSV output mode
This commit fixes two issues:
1. Part of the header containing annotations for curr, reference and diff values for archive diffs wasn't formatted correctly
2. Only one third of the values in the table were displayed because of the wrong line format
2023-01-13 23:04:40 +01:00
Alexey Lapshin
30cc5e9da9 tools: upgrade rom elfs to version 20230113 2023-01-13 14:44:57 +07:00
Ivan Grokhotkov
98d1f7de4b
tools: fix idf_monitor.py not working on macOS for Linux target
Since the introduction of PCAddressMatcher, the executable produced
by the build system is passed to elftools.elf.elffile.ELFFile.
However on macOS, native executables are not ELF files, so the
ELFFile class raises a rather unhelpful AssertionError exception.
Given that the rest of the idf_monitor.py doesn't have assumptions
that the "elf_file" argument is an ELF file (rather than just an
executable), check if the file is a real ELF file inside
PCAddressMatcher.
2023-01-13 08:14:55 +01:00
Jakob Hasse
01b4c7d8b1 fix(esp_event): removed header from pre-commit ignore list 2023-01-13 11:16:50 +08:00
Frantisek Hrbata
8934233b0b tools: fix unnecessary port detection for multiple targets
When multiple targets are specified, e.g. idf.py flash monitor, the
automatic port detection is performed twice. Keep the port value in
args.port and avoid multiple calls to get_default_serial_port().

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-01-11 16:13:28 +01:00
Darian
20f0afd684 Merge branch 'feature/esp_pm_unit_test_migration' into 'master'
esp_pm: Migrate unit tests to test app

Closes IDF-5581

See merge request espressif/esp-idf!21229
2023-01-10 21:35:43 +08:00
Darian Leung
412b09abf4 esp_pm: Migrate unit tests to test app
This commit migrates the esp_pm unit tests from the legacy unit test to a
stand alone test app. The following CI configurations are provided

- Default: Automatic light sleep with mostly default configurations
- Options: Enables all of the optional esp_pm features
- Limits: Limit tests esp_pm
2023-01-10 15:43:33 +08:00
Ivan Grokhotkov
10e3b8edef Merge branch 'feature/esp32h2_backtrace' into 'master'
tools: gdb_panic_server: add esp32h2

See merge request espressif/esp-idf!21901
2023-01-09 22:06:57 +08:00
Chen Yu Dong
e72905ee35 Merge branch 'ci/enable_more_wifi_tests' into 'master'
CI: enable more wifi cases

See merge request espressif/esp-idf!21488
2023-01-09 14:42:10 +08:00
Alexey Lapshin
a0bac6d309 tools: remove obsolete workaround for reading ROM data from flash 2023-01-09 11:36:11 +07:00
Guillaume Souchere
9b2f6f01d6 tools: Fix esp32c2_data_info.yaml memory values to match documentation 2023-01-06 09:30:36 +00:00
Chen Yudong
8aca3932b0 CI: enable more wifi cases 2023-01-06 06:03:52 +00:00
Roland Dobai
ec0466e0e5 Merge branch 'fix/idf_monitor_pc_addr_intervals' into 'master'
Tools: IDF Monitor: Determine possible instruction addresses based on ELF segments

Closes IDF-6174

See merge request espressif/esp-idf!21393
2023-01-05 14:44:19 +08:00
Ivan Grokhotkov
38d36530f2
tools: gdb_panic_server: add esp32h2 2023-01-04 17:00:16 +01:00
Ivan Grokhotkov
8020407d3d Merge branch 'test/panic_add_riscv' into 'master'
tests: panic: add esp32s3, esp32c3, esp32c2 support

Closes IDF-5692

See merge request espressif/esp-idf!21349
2023-01-04 18:29:01 +08:00
Konstantin Kondrashov
708a9047e8 Merge branch 'feature/adds_funcs_to_read_efuses_from_cmake' into 'master'
esptool_py: Adds funcs to read eFuses from Cmake during a build stage

Closes IDFGH-8890

See merge request espressif/esp-idf!21585
2023-01-04 17:17:47 +08:00
Guillaume Souchere
8fe13d53b1 Merge branch 'feature/re-enable-newlib-test-c2' into 'master'
newlib: Remove tests using RTC related features from the esp32c2 test set

Closes IDF-5057

See merge request espressif/esp-idf!21858
2023-01-04 14:46:58 +08:00
Fu Hanxi
bcf19a275c Merge branch 'ci/use_same_build_flags' into 'master'
CI: use same build flags in ci_build_apps.py

Closes IDFCI-1564

See merge request espressif/esp-idf!21868
2023-01-04 10:33:40 +08:00
Fu Hanxi
59304efa9a test: add test to make sure the build flags are the same as the CI ones 2023-01-04 09:12:47 +08:00
Fu Hanxi
3ae9ec5faf ci: use ci build flags in ci_build_apps.py 2023-01-04 09:12:23 +08:00
Roland Dobai
fa0db2c329 Tools: Improve idf.py error message when the argument value collides with the environment variable
Closes https://github.com/espressif/esp-idf/issues/10475
2023-01-03 18:56:50 +01:00
KonstantinKondrashov
fd721c5b09 esptool_py: Adds funcs to read eFuses from Cmake during a build stage
Closes https://github.com/espressif/esp-idf/issues/10311
2023-01-04 00:30:38 +08:00
Ivan Grokhotkov
6495810c5d
test: panic: run tests on esp32s3, esp32c3, esp32c2 2023-01-03 15:29:58 +01:00
Roland Dobai
17286337ea Tools: IDF Monitor: Determine possible instruction addresses based on ELF segments 2023-01-03 13:22:26 +01:00
Guillaume Souchere
ec34a0f5f5 newlib: Update the esp32c2 config default to avoid RTC related test to not run on esp32c2
Set CONFIG_NEWLIB_TIME_SYSCALL_USE_HRT to enable to force CONFIG_ESP_TIME_FUNCS_USE_RTC_TIMER to disable
and hence prevent the following tests from being executed:

- Timestamp after abort is correct in case RTC & High-res timer have + big error
- Timestamp after restart is correct in case RTC & High-res timer have + big error
- Timestamp after restart is correct in case RTC & High-res timer have - big error
2023-01-03 08:33:38 +01:00
Fu Hanxi
a92dce463f Merge branch 'ci/remove_debug_backend' into 'master'
ci: remove debug_backend dependency

See merge request espressif/esp-idf!21811
2023-01-03 10:30:12 +08:00
Ivan Grokhotkov
e48b8eecff Merge branch 'bugfix/tools_json_riscv_gdb_targets' into 'master'
tools: fix RISC-V GDB not being installed for C2, C6, H2

See merge request espressif/esp-idf!21763
2023-01-02 16:55:04 +08:00
Ivan Grokhotkov
9368096123 Merge branch 'bugfix/test_build_system_fixtures' into 'master'
build system tests: fix issues with idf_copy and get_idf_build_env

See merge request espressif/esp-idf!21754
2023-01-02 16:14:38 +08:00
Shu Chen
2ce330bd34 Merge branch 'feature/add_openthread_and_i154_lib_for_c6' into 'master'
openthread: add 802.15.4 and Thread support for ESP32-C6

See merge request espressif/esp-idf!21780
2022-12-30 09:41:39 +08:00
morris
cb7e957cc4 Merge branch 'feature/io_mux_use_pll80_c6' into 'master'
io_mux: support change clock source to PLL_F80M

Closes IDF-6342 and IDF-6345

See merge request espressif/esp-idf!21613
2022-12-29 22:06:52 +08:00
Xu Si Yu
c35759448a openthread: add 802.15.4 and Thread support lib for ESP32-C6 2022-12-29 17:29:18 +08:00
morris
cbe297e5a0 sdm: support derive clock source from IO MUX 2022-12-29 14:46:16 +08:00
Cao Sen Miao
4e67332b74 ESP32H2: Add small CI test for ESP32H2 2022-12-29 11:00:42 +08:00
Guillaume Souchere
a74ae7fba7 Merge branch 'feature/heap-trace-improve-spi-ram-support' into 'master'
heap_trace: improvements to formatting, code, comments of heap trace standalone

Closes IDFGH-8699

See merge request espressif/esp-idf!21506
2022-12-28 15:07:30 +08:00
wuzhenghui
a898c3ddc6 soc: regenerate modem header with regtool 2022-12-27 21:31:21 +08:00
Roland Dobai
a5b4e3bb3e Merge branch 'tools/add_idf_size_c6_support' into 'master'
tools: Add tests for idf_size.py esp32c6 output

Closes IDF-6173

See merge request espressif/esp-idf!21644
2022-12-27 21:20:35 +08:00
Fu Hanxi
0da5cf8cd7 ci: remove debug_backend dependency 2022-12-27 17:34:11 +08:00
Omar Chebib
5eb8defb30 Merge branch 'staging/coredump_extram_support' into 'master'
coredump: enable support for stacks in external RAM

Closes IDF-5497 and IDF-2391

See merge request espressif/esp-idf!21067
2022-12-26 17:52:41 +08:00
Darian Leung
c318c89453 freertos(IDF): Remove dependency on portUSING_MPU_WRAPPERS
This commit removes the dependency on portUSING_MPU_WRAPPERS on the Xtensa port
of IDF FreeRTOS. This dependency was added due to a hack implemented in the
upstream port that required the usage of the "xMPUSettings" member of the TCB.
The "xMPUSettings" would be used as a pointer to the task's coprocessor save
area on the stack, even though FreeRTOS MPU support was not available.

The hack has now been removed, and the CPSA pointer is now calculated using
a combination of constant offsets values and the pxEndOfStack member of the
TCB.

Note: This impelemtation was copied from the Xtensa port of Amazon SMP FreeRTOS.
2022-12-23 15:29:17 +08:00
Kevin (Lao Kaiyao)
42c6ae3522 Merge branch 'feature/support_rtcio_on_c6' into 'master'
rtcio: support rtcio on c6

Closes IDF-6027

See merge request espressif/esp-idf!21603
2022-12-23 10:56:49 +08:00
Omar Chebib
835263e50a Coredump: add a test to check that coredump supports stacks in SPIRAM 2022-12-22 12:47:22 +01:00
Ivan Grokhotkov
2a1e5e1939
tools: fix RISC-V GDB not being installed for C2, C6, H2 2022-12-22 10:11:48 +01:00
Ivan Grokhotkov
6020bb0f90 Merge branch 'feature/gdbstub_esp32c2' into 'master'
gdb stub: re-enable for ESP32-C2

Closes IDF-4135 and IDF-4245

See merge request espressif/esp-idf!21386
2022-12-22 16:00:01 +08:00
laokaiyao
7a002ab7a6 rtcio: support rtcio on c6 2022-12-22 14:14:38 +08:00
Djordje Nedic
370bc8a59d tools: Add tests for idf_size.py esp32c6 output
This MR adds tests for idf_size.py support for the esp32c6 chip.
2022-12-21 20:11:08 +01:00
Mahavir Jain
9c99080841 Merge branch 'fix/wifi_prov_scan_method' into 'master'
Changed wifi provisioning scan method

See merge request espressif/esp-idf!20408
2022-12-22 01:20:25 +08:00
Ivan Grokhotkov
03c542ecf7
test_build_system: fix incomplete env returned by get_idf_build_env
Previously get_idf_build_env didn't include the default environment
(os.environ) in its output, so the environment only contained the
variables returned by "idf_tools.py export".
If PATH already contains all the right paths, "idf_tools.py export"
doesn't return the PATH variable.
Therefore the environment returned by get_idf_build_env was usually
incomplete. Fix by combining the output of "idf_tools.py export" with
os.environ.
2022-12-21 17:22:55 +01:00
Ivan Grokhotkov
5d2f900bef
test_build_system: fix idf_copy fixture not changing IDF_PATH 2022-12-21 17:22:50 +01:00
Suren Gabrielyan
e5926d1b1b Merge branch 'examples/mqtt_tests_migration_pytest' into 'master'
Examples: migration mqtt examples to pytest

See merge request espressif/esp-idf!20957
2022-12-21 21:23:14 +08:00
Jakob Hasse
102b501b10 Merge branch 'contrib/github_pr_9962' into 'master'
[Panic] add user configurable reboot delay in seconds (GitHub PR)

Closes IDFGH-8506

See merge request espressif/esp-idf!21305
2022-12-21 21:12:21 +08:00
Ivan Grokhotkov
e3a4d47fd9
gdb stub: re-enable for ESP32-C2 2022-12-21 13:21:41 +01:00
Fu Hanxi
b7a2d77e59 ci: remove ttfw print_heap_size since it's migrated to pytest 2022-12-21 10:25:33 +08:00
Suren Gabrielyan
b68203bfb5 Examples: migration mqtt examples to pytest 2022-12-20 17:48:48 +04:00
Jiang Jiang Jian
8cd0571cc9 Merge branch 'bugfix/fix_test_failure_in_test_phy_multi_init_data_bin_issue' into 'master'
esp_phy: add country code 01 to country code map type table

Closes IDFCI-1299

See merge request espressif/esp-idf!21656
2022-12-20 21:31:24 +08:00
sanket.wadekar
bd6a74fcac Changed wifi provisioning scan method
Signed-off-by: sanket.wadekar <sanket.wadekar@espressif.com>
2022-12-20 17:04:30 +05:30
Jakob Hasse
cb9786d35e refactor(esp_system): reboot delay: added docs, protected by watchdog 2022-12-20 15:51:00 +08:00
Chen Yu Dong
e5b318ab71 Merge branch 'ci/fix_socket_ipv6_test' into 'master'
CI: Migrate socket example tests to pytest

See merge request espressif/esp-idf!21596
2022-12-20 11:13:09 +08:00
Ivan Grokhotkov
32754865da Merge branch 'feature/spiflash_override_cmake_function' into 'master'
build system: Add spi_flash_add_link_dependency function for spi_flash custom driver

Closes IDF-3167

See merge request espressif/esp-idf!14186
2022-12-19 22:21:40 +08:00
Jiang Jiang Jian
066dc196af Merge branch 'feature/esp32c6_wifi_bt_common_dependcy_support' into 'master'
esp32c6: support esp32c6 phy

Closes IDF-5680

See merge request espressif/esp-idf!21576
2022-12-19 12:16:11 +08:00
muhaidong
d912bbbcb0 esp_phy: add country code 01 to country code map type table 2022-12-18 14:25:17 +08:00
Angus Gratton
d89652b382
build system: Add idf_component_add_link_dependency function, use for spi_flash overriding 2022-12-16 16:26:44 +01:00
David Čermák
a3dd334081 Merge branch 'bugfix/netif_test_rules' into 'master'
esp_netif various fixes: dependency cleanup, default flags, CI rules

Closes IDF-5550, IDFGH-7023, IDF-1261, and IDF-2155

See merge request espressif/esp-idf!20301
2022-12-16 21:26:05 +08:00
wuzhenghui
5822cdf93b esp_phy: enable for esp32c6 2022-12-16 15:47:56 +08:00
Ivan Grokhotkov
75c92a8811
ci: use latest esp-clang for code analysis 2022-12-15 19:32:42 +01:00
Island
7283a406e4 Merge branch 'bugfix/remove_-Wno-formate_in_ble_mesh_examples' into 'master'
ble_mesh: example: Remove -Wno-format compile option for BLE Mesh examples

See merge request espressif/esp-idf!21523
2022-12-15 17:54:30 +08:00
David Cermak
38dec0be48 esp-netif: Support non-lwip mode, add test
It is required to define a mandatory dependency on lwip, so we
introduced esp_netif_stack component and made it require lwip, instead
of directly depending on lwip.
This enables building w-out lwip and support other TCP/IP stacks.
2022-12-14 14:12:50 +00:00
Fu Hanxi
dabb16c6ad Merge branch 'feature/component_manager_custom_lock_file' into 'master'
component manager: add variable `DEPENDENCIES_LOCK`

Closes PACMAN-407 and IDFGH-7867

See merge request espressif/esp-idf!19878
2022-12-14 22:03:48 +08:00
Jiang Guang Ming
947c112233 Merge branch 'bugfix/update_esp_rom_gpio_header' into 'master'
esp_rom: update rom gpio.h

Closes IDFGH-8773

See merge request espressif/esp-idf!21268
2022-12-14 18:47:18 +08:00
Martin Vychodil
00f721f746 Merge branch 'refactor/nvs_allocatable_objects' into 'master'
refactor(nvs): custom allocator for all objects allocated in NVS

Closes IDF-6308

See merge request espressif/esp-idf!21239
2022-12-14 17:35:13 +08:00