Commit Graph
100 Commits
Author SHA1 Message Date
Jakob Hasse 273324c635 Merge branch 'bugfix/linux_wifi_mock' into 'master'
fix(linux): Fixed esp_wifi mock build test

See merge request espressif/esp-idf!28607
2024-01-23 18:43:12 +08:00
Jakob Hasse c6a570fb37 Merge branch 'feature/pthread_psram' into 'master'
feat(pthread): Allow SPI RAM as stack

Closes IDFGH-9237, IDF-7262, and IDFGH-7045

See merge request espressif/esp-idf!27166
2024-01-23 18:39:32 +08:00
Jakob Hasse db33f5a52e Merge branch 'fix/console_context_setting' into 'master'
fix(console): Made setting command context less error-prone and clearer

See merge request espressif/esp-idf!28395
2024-01-23 13:25:25 +08:00
Jakob Hasse 99914e1f09 fix(linux): Fixed esp_wifi mock build test 2024-01-23 09:39:03 +08:00
Jakob Hasse be59c94917 feat(pthread): Pthread can now use PSRAM as stack
Closes https://github.com/espressif/esp-idf/pull/10623
Closes https://github.com/espressif/esp-idf/issues/8662

Thanks to f-hoepfinger-hr-agrartechnik for the contribution
in https://github.com/espressif/esp-idf/pull/10623
2024-01-22 15:33:05 +08:00
Jakob Hasse 6031b35803 fix(console): Made setting command context less error-prone and clearer 2024-01-11 10:53:43 +08:00
Jakob Hasse b4865acd90 Merge branch 'refactor/move_shared_stack_test_to_esp_system' into 'master'
refactor(esp_system): moved shared stack tests from newlib to esp_system

See merge request espressif/esp-idf!27790
2023-12-15 17:06:27 +08:00
Jakob Hasse 1c606941ed Merge branch 'contrib/github_pr_12436' into 'master'
feature(console): add command user context support (GitHub PR)

Closes IDFGH-11280

See merge request espressif/esp-idf!27240
2023-12-13 16:36:54 +08:00
Jakob Hasse 874d10ce11 refactor(esp_system): moved shared stack tests from newlib to here 2023-12-11 14:20:55 +08:00
Jakob Hasse ffedd74f52 Merge branch 'fix/esp_hw_support_remove_unused_include_dirs' into 'master'
fix(esp_hw_support): Removed nonexistent include directories from cmake

Closes IDFGH-11581

See merge request espressif/esp-idf!27551
2023-12-04 12:26:43 +08:00
Jakob Hasse 637d4c4381 fix(esp_hw_support): Removed unused include directories from cmake
* Closes https://github.com/espressif/esp-idf/issues/12700
2023-12-01 11:33:12 +08:00
Jakob Hasse 0a5fd73dd2 Merge branch 'refactor/memory_leak_message_shorter' into 'master'
refactor(ci): prevent memory leak message without memory leak

See merge request espressif/esp-idf!27226
2023-11-23 10:49:24 +08:00
Jakob Hasse 5f4865e838 Merge branch 'doc/soc_cap_tool' into 'master'
Doc/soc cap tool

See merge request espressif/esp-idf!27154
2023-11-23 10:47:01 +08:00
Jakob Hasse e6e1cf4a19 Merge branch 'contrib/github_pr_12525' into 'master'
change(console): print sorted help (GitHub PR)

Closes IDFGH-11382

See merge request espressif/esp-idf!27022
2023-11-21 09:31:44 +08:00
Jakob Hasse 7781bfae79 refactor(ci): prevent memory leak message without memory leak 2023-11-17 12:15:46 +08:00
Jakob Hasse 46e44ee154 docs(soc): improved soc caps generation documentation 2023-11-17 10:43:59 +08:00
Jakob Hasse bf6a904a44 Merge branch 'refactor/remove_unnecessary_mock_headers' into 'master'
refactor(ci): removed unnecessary hal and soc mock header files

Closes IDF-8511

See merge request espressif/esp-idf!27047
2023-11-16 09:37:21 +08:00
Jakob Hasse 7b4cd55d97 refactor(ci): removed unnecessary hal and soc mock header files 2023-11-15 12:15:08 +08:00
Jakob Hasse dad563cfaf change(console): changed unit tests according to sorted help
Merges https://github.com/espressif/esp-idf/pull/12525
2023-11-14 11:33:45 +08:00
Jakob Hasse 53e497a93a Merge branch 'doc/c_support_page' into 'master'
docs: Added C documentation page

Closes IDFGH-10790 and IDFGH-11283

See merge request espressif/esp-idf!26761
2023-11-14 10:44:40 +08:00
Jakob Hasse 342d6ba882 Merge branch 'bugfix/newlib_test_correct_assertions' into 'master'
fix(newlib,ci): wrong floating point number handling in tests

See merge request espressif/esp-idf!27032
2023-11-13 12:22:16 +08:00
Jakob Hasse ed5a7dfa82 docs: Added C documentation page
Closes https://github.com/espressif/esp-idf/issues/12439
Closes https://github.com/espressif/esp-idf/issues/12001
2023-11-13 10:47:15 +08:00
Jakob Hasse 8624e9edf4 fix(newlib,ci): wrong floating point number handling in tests 2023-11-09 17:12:07 +08:00
Jakob Hasse af0a502f97 Merge branch 'bugfix/linux_gpio_definitions' into 'master'
fix(driver): gpio number definitions on Linux

Closes IDFGH-11376

See merge request espressif/esp-idf!26934
2023-11-07 12:24:29 +08:00
Jakob Hasse 96d7e0762d fix(driver): gpio number definitions on Linux
* Removed gpio_types.h as it is already available
  for Linux in the hal component.
* Moved gpio_num.h from tools/mocks to soc component
  and added missing GPIO pin definitions

Closes https://github.com/espressif/esp-idf/issues/12520
2023-11-06 11:16:50 +08:00
Jakob Hasse e176b8990e Merge branch 'bugfix/esp_event_tests' into 'master'
fix(esp_event): dedicated task test now waits for semaphore correctly

See merge request espressif/esp-idf!26777
2023-11-02 18:43:03 +08:00
Jakob Hasse 9aab41cde1 fix(esp_event): dedicated task test now waits for semaphore correctly 2023-11-02 11:49:45 +08:00
Jakob Hasse 596101c516 Merge branch 'bugfix/freertos_psram_stack' into 'master'
bugfix(freertos): Fixed task creation function for PSRAM stack

See merge request espressif/esp-idf!26693
2023-11-01 11:12:07 +08:00
Jakob Hasse bd34fc41bb fix(freertos): Fixed prvTaskCreateDynamicPinnedToCoreWithCaps
* The function was based on an outdated IDF/FreeRTOS
  combination which didn't always require zero-ing
  the TCB. This has been changed in the current
  IDF/FreeRTOS combination, leading to crashes.
  Unconditionally zero-ing the TCB fixes this problem.
2023-10-30 18:09:17 +08:00
Jakob Hasse 228c40c2ac Merge branch 'feature/freertos_task_private_create_psram' into 'master'
feat(freertos): Added private task creation functions allocating stack in PSRAM

See merge request espressif/esp-idf!25404
2023-10-26 10:27:00 +08:00
Jakob Hasse 8aba6a53e4 feat(freertos): Added private PSRAM stack task creation functions
* Added prvTaskCreateDynamicAffinitySetWithCaps
  and prvTaskCreateDynamicPinnedToCoreWithCaps
  which allocate the task's stack in PSRAM instead of
  internal RAM. These functions are only available if
  PSRAM is enabled.
2023-10-18 20:06:42 +08:00
Jakob Hasse 548022fbe6 refactor(linux): excluded all non-Linux components from build
* All components which won't build (yet) on Linux are excluded.
  This enables switching to Linux in an application without
  explicitly setting COMPONENTS to main in the main
  CMakeLists.txt.
* ESP Timer provides headers for Linux now
* automatically disabling LWIP in Kconfig if it is not available

doc(linux): brought section
  "Component Linux/Mock Support Overview" up to date
2023-10-16 17:06:54 +08:00
Jakob Hasse 4227d99806 Merge branch 'feature/pthread_condattr_dummy_impl' into 'master'
feat(pthread): added pthread_condattr* stubs to avoid linker errors

Closes IDFGH-10982

See merge request espressif/esp-idf!26112
2023-10-02 23:05:11 +08:00
Jakob Hasse a937efef1a feat(pthread): added pthread_condattr* stubs to avoid linker errors
Closes https://github.com/espressif/esp-idf/issues/12171
2023-09-26 12:17:38 +08:00
Jakob Hasse 36e3246bcb Merge branch 'refactor/lwip_onoff_switch' into 'master'
lwip: added on/off switch

See merge request espressif/esp-idf!25969
2023-09-25 10:06:34 +08:00
Jakob Hasse ac2515e199 refactor(lwip): Added on/off switch for LwIP stack
* This switch allows applications to replace lwip with a different
  IP stack or just make it build if it is a dependency but not
  actually needed.
2023-09-22 10:03:13 +08:00
Jakob Hasse d9e99acd76 Merge branch 'feature/wait_until_idle_task_ran' into 'master'
Unity: fixed unity_utils_task_delete

See merge request espressif/esp-idf!25796
2023-09-19 17:36:11 +08:00
Jakob Hasse 0bea98c103 refactor(unity): improved unity task deletion function 2023-09-18 17:48:26 +08:00
Jakob Hasse a41247439e Merge branch 'bugfix/pthread_cond_var_link_hook' into 'master'
bugfix(pthread): fixed pthread_condvar linker hook

See merge request espressif/esp-idf!25911
2023-09-18 12:28:00 +08:00
Jakob Hasse 18244f936b Merge branch 'doc/target_specific_sdkconfig_clarification' into 'master'
docs(build system): Clarified target-specific sdkconfig.defaults usage

See merge request espressif/esp-idf!25851
2023-09-13 20:50:00 +08:00
Jakob Hasse 19f0c873cb docs(build system): Clarified target-specific sdkconfig.defaults usage 2023-09-13 14:11:43 +08:00
Jakob Hasse 1de2c44281 Merge branch 'refactor/esp_event_unit_tests' into 'master'
refactor(esp_event): improved esp_event unit tests

Closes IDFGH-10628

See merge request espressif/esp-idf!25217
2023-09-13 11:43:39 +08:00
Jakob Hasse 8df4625c84 refactor(esp_event): improved esp_event unit tests
* Decomposed tests into atomic unit tests
* Made tests less time-dependent, hence more robust
  on different platforms (ESP32, QEMU, Linux)
* Ported most of the tests to linux
* Removed some redundant tests
* Fixed bug the tests discovered
* Simplified parts of the tests to be more clear
* Partially used C++ to simplify setup/teardown
* Unified setup/teardown in general
2023-09-12 17:10:18 +08:00
Jakob Hasse ccaceec15d fix(pthread): fixed pthread_condvar linker hook 2023-09-12 11:17:31 +08:00
Jakob Hasse c0c2396612 docs(build system): Clarified target-specific sdkconfig.defaults usage 2023-09-08 09:38:36 +08:00
Jakob Hasse f0e7474d30 Merge branch 'feature/wifi_mock' into 'master'
feat(linux): added very simple esp_wifi mock

Closes IDFGH-9190

See merge request espressif/esp-idf!24400
2023-08-16 15:23:15 +08:00
Jakob Hasse 0b595f3c77 Merge branch 'contrib/github_pr_11945' into 'master'
Added Help command parameter for displaying only a specific command (GitHub PR)

Closes IDFGH-10725

See merge request espressif/esp-idf!25329
2023-08-16 11:16:54 +08:00
Jakob Hasse 7b258bef0e refactor(esp_console): improved error handling, added tests and docs
* Updated documentation of
  esp_console_register_help_command
* Improved help command error handling
* Added test for the help command
2023-08-15 14:11:30 +08:00
Jakob Hasse efd46fc140 Merge branch 'refactor/public_header_checker_cxx' into 'master'
Add C++ check to public header file checker

Closes IDF-7286

See merge request espressif/esp-idf!25263
2023-08-10 14:17:22 +08:00
Jakob Hasse 8b9f8555ea refactor(tools): public header check also checks c++ now
* Also changed --only-dir argument to accept system-wide
  directories instead of directories from IDF root
2023-08-09 16:23:13 +08:00
Jakob Hasse 44e4ef79e2 fix(esp_system): Fixed C++ compilation of libunwind.h 2023-08-09 16:17:08 +08:00
Jakob Hasse 342a5b428c fix(esp_event): made #include <stdint.h> explicit 2023-08-09 16:17:06 +08:00
Jakob Hasse bb227e0d84 Merge branch 'refactor/semaphore_to_platform_includes' into 'master'
refactor: moved semaphore.h to newlib platform_include

Closes IDFGH-10281

See merge request espressif/esp-idf!24088
2023-08-08 23:45:37 +08:00
Jakob Hasse 8042362e2a refactor: moved semaphore.h to newlib platform_include
Closes https://github.com/espressif/esp-idf/issues/11540
2023-08-08 16:45:57 +08:00
Jakob Hasse fd11e1130f Merge branch 'bugfix/included-missing-limits-h-in-time-c' into 'master'
fix(newlib): included limits.h to fix warning

See merge request espressif/esp-idf!24722
2023-07-20 09:37:27 +08:00
Jakob Hasse 52279c0837 Merge branch 'refactor/esp_event_test' into 'master'
ESP Event: improved tests to fail less frequently on QEMU

See merge request espressif/esp-idf!24783
2023-07-19 14:54:23 +08:00
Jakob Hasse a703d7aa89 refactor(esp_event): improved tests to fail less frequently on QEMU
* improved setup/teardown to not put shared event system into
  inconsistent state
* reduced timing-dependency of several tests by using
  a semaphore instead of waiting for a guessed timeout
* Deactivated WDT (both Interrupt WDT, Task WDT) for QEMU tests
* Ignore esp_timer-based test for QEMU, CPU timing is different
  on ESP32 simulation in QEMU
2023-07-19 11:50:44 +08:00
Jakob Hasse 87f8a8e20c Merge branch 'feature/mock_usb_serial' into 'master'
usb serial mock

See merge request espressif/esp-idf!24565
2023-07-11 19:32:50 +08:00
Jakob Hasse 9ed56031b2 feat(linux): added esp_wifi mocking support 2023-07-10 19:40:09 +08:00
Jakob Hasse 54450fa4c2 feat(driver): Added usb serial mock 2023-07-10 17:46:59 +08:00
Jakob Hasse fad3294f04 Merge branch 'refactor/merge_linux_driver_build_test' into 'master'
Linux: Merged rmt and driver Linux build test to one application

See merge request espressif/esp-idf!24395
2023-07-10 15:44:50 +08:00
Jakob Hasse b91017ca8b Merge branch 'refactor/codeowners_linux_compatible' into 'master'
CI: set codeowners of linux_compatible dir to system

See merge request espressif/esp-idf!24643
2023-07-10 14:22:33 +08:00
Jakob Hasse 5c49211e45 ci: set codeowners of linux_compatible dir to system 2023-07-10 10:55:16 +08:00
Jakob Hasse 47bcee11b7 Merge branch 'refactor/secondary_console_usb_serial_improvement' into 'master'
refactor(console): Warn if secondary console is active

Closes IDFGH-10484

See merge request espressif/esp-idf!24494
2023-07-06 15:08:01 +08:00
Jakob Hasse 197e919d74 refactor(examples/console): Warn if secondary console is active
Having a secondary serial console is not useful when applications
use a REPL console type, hence we warn for it in examples.

Closes https://github.com/espressif/esp-idf/issues/11731
2023-07-03 13:42:35 +08:00
Jakob Hasse 775a7eb566 refactor(CI): Merged rmt and driver Linux build test 2023-06-25 17:25:49 +08:00
Jakob Hasse 006e675656 Merge branch 'bugfix/extern_c_decl' into 'master'
esp_hw_support: Added extern "C" declaration

Closes IDF-2860

See merge request espressif/esp-idf!24217
2023-06-14 23:23:37 +08:00
Jakob Hasse e87ac7255c esp_hw_support: Added extern "C" declaration 2023-06-13 13:44:21 +02:00
Jakob Hasse d7ce04a5cd esp_hw_support: decrease RNG read frequency on C6 and H2
* The RNG reading frequency of 200 KHz has been too high for
  C6 and H2 since on these chips the RNG output is combined
  with the RTC slow clock which is only 150KHz. Reduced the max
  reading frequency via esp_random() from 200KHz to 62.5KHz,
  which show best results in tests.
  Also updated the bootloader_fill_random() max frequency to the
  same value to be in line, even though it was just 83KHz.
2023-05-30 19:16:53 +08:00
Jakob Hasse d3f77ec352 esp_hw_support/bootloader: made ESP32-C6 and ESP32-H2 RNG available 2023-05-23 18:14:51 +08:00
Jakob Hasse 6f7229975a Merge branch 'doc/improve_prixx_doc' into 'master'
doc: clarified migration guide regarding PRIxx usage

Closes IDFGH-10042

See merge request espressif/esp-idf!23675
2023-05-12 17:14:29 +08:00
Jakob Hasse c291b6a58c Merge branch 'bugfix/use_safe_noreturn_attr' into 'master'
compiler: replaced noreturn by __noreturn__ in header files

Closes IDFGH-10064

See merge request espressif/esp-idf!23688
2023-05-12 10:48:00 +08:00
Jakob Hasse 53b4806f00 doc: clarified migration guide regarding PRIxx usage 2023-05-11 16:18:22 +08:00
Jakob Hasse c8791f30c0 compiler: replaced noreturn by __noreturn__ in header files
* noreturn may be replaced by third-party macros,
  rendering it ineffective

* Closes https://github.com/espressif/esp-idf/issues/11339
2023-05-11 16:07:45 +08:00
Jakob Hasse bc7a7e8451 Merge branch 'bugfix/cmake_cxx_language_standard' into 'master'
cmake: Corrected setting of C++ language standard

See merge request espressif/esp-idf!23520
2023-05-10 10:28:43 +08:00
Jakob Hasse 0244c24c8d cmake: Corrected setting of C++ language standard
* reverted old faulty mechanism to set different
  standard according to the toolchain
* Using -std=gnu++2b now for both gcc and clang
* Added a build test app to check the C++ standard in IDF
* Updated english docs to reflect the change to C++23
2023-05-09 10:09:19 +08:00
Jakob Hasse bb9912cc57 doc: Added C++ std::jthread limitation 2023-05-05 10:17:51 +08:00
Jakob Hasse 0a3cfce671 Merge branch 'contrib/github_pr_10895' into 'master'
Fix possible conversion errors by using __builtin_ffsll (GitHub PR)

Closes IDFGH-9541

See merge request espressif/esp-idf!23429
2023-05-04 10:41:46 +08:00
Jakob Hasse a3bf038a9b Merge branch 'bugfix/freertos_linux_smp_test_timeout' into 'master'
ci: increased freertos SMP linux target test timeout

See merge request espressif/esp-idf!23525
2023-05-04 10:24:53 +08:00
Jakob Hasse 9f4236f825 ci: increased freertos SMP linux target test timeout 2023-04-28 17:49:37 +08:00
Jakob Hasse ca44fc3847 cxx/esp_hw_support: added build test, changed parameter types
Changed rv_utils_intr_edge_ack and esp_cpu_intr_edge_ack to
take uint32_t instead of int to avoid build errors.

The test is to test in particular that __builtin_ffsll, used in
xt_utils.h, which is included via esp_cpu.h, compiles fine
in C++20 with -Wsign-conversion enabled.

Closes https://github.com/espressif/esp-idf/pull/10895
2023-04-26 19:06:39 +08:00
Jakob Hasse af2d326a95 Merge branch 'feature/freertos_plus_posix_SMP' into 'master'
[FreeRTOS/Linux] POSIX/Linux and SMP

Closes IDF-6087

See merge request espressif/esp-idf!21818
2023-04-25 20:21:26 +08:00
Jakob Hasse 620cc586a2 tools: setting components to main to reduce build time 2023-04-25 15:42:22 +08:00
Jakob Hasse d6fe302904 freertos: Added partial unit tests for Linux simulator
* The unit tests are derived from the FreeRTOS test app
  in components/freertos/test_apps/freertos. They are
  quite incompatible with the main test application, which
  is why they have been placed under
  tools/test_apps/linux_compatible/linux_freertos for now.
2023-04-25 13:58:57 +08:00
Jakob Hasse 550ecbe37a feat(freertos): added POSIX/Linux simulator port to FreeRTOS SMP
* Added a POSIX/Linux simulator that is compatible with the Amazon
  FreeRTOS SMP API. Note that the simulator itself is still
  single core, like the IDF FreeRTOS POSIX/Linux simulator.
2023-04-25 13:58:57 +08:00
Jakob Hasse d82eb6942c Merge branch 'contrib/github_pr_11025' into 'master'
Enable support for C++23 in esp-idf (GitHub PR)

Closes IDFGH-9684

See merge request espressif/esp-idf!23144
2023-04-19 15:53:46 +08:00
Jakob Hasse 852c60fee0 Merge branch 'refactor/pthread_iram' into 'master'
pthread: removed IRAM code from pthread

Closes IDF-7147

See merge request espressif/esp-idf!23213
2023-04-19 15:31:19 +08:00
Jakob Hasse e7312cccea pthread: added pthread_rwlock_tryrd/wrlock()
Closes https://github.com/espressif/esp-idf/issues/9229
2023-04-17 16:16:11 +08:00
Jakob Hasse 999fa28187 pthread: removed IRAM code from pthread
* Currently, the underlying FreeRTOS API functions
  used for the pthread implementation are not
  ISR-safe, hence the removal of IRAM placement.
2023-04-17 10:19:33 +08:00
Jakob Hasse 6991a92895 docs: added new C++ language standard 2023-04-14 17:57:01 +08:00
Jakob Hasse 8f7a076619 cmake: C++23 only when not using clang 2023-04-14 17:57:01 +08:00
Jakob Hasse 9abcd7652c Merge branch 'bufix/increase_esp_system_host_test_timeout' into 'master'
esp_system: increase host test timeout for CI

Closes IDFCI-1677

See merge request espressif/esp-idf!23060
2023-04-06 14:56:19 +08:00
Jakob Hasse dac64725af esp_system, heap: increase host test timeout for CI 2023-04-06 10:23:44 +08:00
Jakob Hasse 3d65b97b56 Merge branch 'doc/esp_event_unregister_self' into 'master'
esp_event: Clarify event handler un-registering

See merge request espressif/esp-idf!22854
2023-04-03 11:14:23 +08:00
Jakob Hasse 13a8ba8967 esp_event: Clarify event handler un-registering
Related to https://github.com/espressif/esp-idf/issues/10848
2023-04-03 10:02:25 +08:00
Jakob Hasse 5327fd89b5 spiffs: test is using configurable build dir 2023-03-31 15:07:07 +08:00
Jakob Hasse f67bcc669a esp_partition: partition_linux.c and its test do not use hard-coded file anymore 2023-03-31 15:07:07 +08:00
Jakob Hasse 39087f3157 Merge branch 'contrib/github_pr_11028' into 'master'
Bugfix: Fix compile error for ESP32 FSM ULP GPIO Example (GitHub PR)

Closes IDFGH-9687

See merge request espressif/esp-idf!22884
2023-03-27 15:35:47 +08:00
Jakob Hasse a3782377d7 Merge branch 'doc/cxx_style_guide_camel_case_collision' into 'master'
doc: made reasonable exception for CamelCase explicit

See merge request espressif/esp-idf!22912
2023-03-27 13:52:00 +08:00
Jakob Hasse 3839508bf6 doc: made reasonable exception for CamelCase explicit 2023-03-24 12:01:38 +08:00