Commit Graph

453 Commits

Author SHA1 Message Date
Marius Vikhammer 00f4245160 fix(console): fixed secondary console not working on all chips without VFS 2025-08-22 09:38:46 +08:00
Alexey Lapshin 7df8290e61 fix(newlib): add missing __atomic_test_and_set for RISCV chips wo 'a' extension
Before the change described in
https://gcc.gnu.org/pipermail/gcc-patches/2023-September/631393.html it
appeared that inlining built-in GCC function __atomic_test_and_set() was
incorrect. It resulted in a non-atomic write.
After the change now present in GCC, the IDF should include the function
__atomic_test_and_set() to successfully link the final binary.

Closes https://github.com/espressif/esp-idf/issues/15167
2025-08-18 23:24:17 +08:00
wanckl ea03622621 ci(esp32c61): remove c61 support from readme on 5.4 2025-06-17 15:09:40 +08:00
Marius Vikhammer fe75355314 Merge branch 'bugfix/heap_in_flash_v5.4' into 'release/v5.4'
fix(heap): fixed CONFIG_HEAP_PLACE_FUNCTION_INTO_FLASH not working together with CONFIG_HEAP_TLSF_USE_ROM_IMPL (v5.4)

See merge request espressif/esp-idf!38121
2025-05-12 11:50:39 +08:00
Marius Vikhammer cccccd6da8 fix(newlib): fixed newlib malloc wrappers IRAM/flash placement
If HEAP_PLACE_FUNCTION_INTO_FLASH = y then we should also place
the newlib wrappers for the heap in to flash.
2025-05-12 09:47:08 +08:00
Sudeep Mohanty 8423f5fc46 test(newlib): Added unit tests for usleep and sleep_for functions
This commit adds unit tests to verify the basic functionality of
usleep() and this_thread::sleep_for() std functions.
2025-04-28 17:07:52 +02:00
Stephen Noonan ac386c7416 fix(newlib): usleep returning early
This commit updates usleep() to always sleep for the required sleep
period or more. This fixes a bug where the usleep() could sleep for less
than the request sleep period.

Closes https://github.com/espressif/esp-idf/pull/15132
2025-04-28 17:07:17 +02:00
wuzhenghui 33aca83c63 change(ci): remove esp32c5 from readme since esp32c5 skipped CI build 2025-04-25 17:13:27 +08:00
Fu Hanxi ffdb0f012e ci: remove gcc dependency in target test 2025-01-10 02:25:32 +08:00
Ivan Grokhotkov 7a214c1fab feat(newlib): add dummy implementations of pathconf, chmod, dirfd
Closes https://github.com/espressif/esp-idf/issues/14174
2024-12-04 11:22:02 +01:00
Laukik Hase 5328dcd00c change(build): Add a new CMake flag NON_OS_BUILD for non-FreeRTOS builds 2024-10-21 19:03:30 +05:30
Alexey Lapshin c4acf3faad fix(newlib): sbom: add CVE-2024-30949 to cve-exclude-list 2024-10-02 18:01:14 +07:00
Marius Vikhammer 35a6671072 Merge branch 'feature/c6_misc_core' into 'master'
feat(system): misc core-system C61 bringup changes

Closes IDF-10954, IDF-10986, IDF-10957, IDF-9281, and IDF-9257

See merge request espressif/esp-idf!33297
2024-09-12 09:46:30 +08:00
Marius Vikhammer 40352943e3 ci(system): re-enable system test app for C61 2024-09-11 14:05:11 +08:00
Alexey Lapshin 06fdb02435 fix(newlib): fix GCC 14 analyzer warnings 2024-09-08 13:53:52 +07:00
wanckl 4e095f4b9f ci(esp32c61): enable c61 generic target test 2024-09-02 19:26:12 +08:00
Marius Vikhammer a04bedc4ce Merge branch 'bugfix/assert_ndebug' into 'master'
feat(newlib): add option to disable eval of expression in assert() when NDEBUG set

Closes IDFGH-479 and IDFGH-8692

See merge request espressif/esp-idf!32887
2024-08-26 15:42:31 +08:00
Marius Vikhammer ff8265b6b3 feat(newlib): add option to disable eval of expression in assert() when NDEBUG set
According to the standard assert(X) should be replaced by a void expression when
NDEBUG is set. IDF's behavior was to not trigger an assertion, but we would still
evaluate X, e.g. if X was a function it would be ran.

This MR adds a kconfig option CONFIG_COMPILER_ASSERT_NDEBUG_EVALUATE which allows us
revert the behavior to be inline with the standard.

With IDF v6.0 the plan is to make CONFIG_COMPILER_ASSERT_NDEBUG_EVALUATE=n the default
behavior.

Closes https://github.com/espressif/esp-idf/issues/10136
Closes https://github.com/espressif/esp-idf/issues/2758
2024-08-20 09:26:54 +08:00
Marius Vikhammer 596f635b28 fix(newlib): fixed potential overflow in usleep
If trying to usleep for 0xFFFF FFFF us the calculation of delay ticks would overflow
resulting in the system not sleeping at all.

Closes https://github.com/espressif/esp-idf/issues/14390
2024-08-20 09:26:27 +08:00
Marius Vikhammer 69ca6e49a7 test(console): add tests for console with vfs disabled 2024-08-12 10:01:04 +08:00
Alexey Lapshin 24e2426b9e fix(newlib): fix include sys/dirent.h breaking change 2024-07-31 17:12:23 +07:00
Jiang Jiang Jian e37ff3565b Merge branch 'bugfix/fix_newlib_nano_float_printf_issues' into 'master'
fix(esp_rom): add new rom caps ESP_ROM_HAS_NEWLIB_PRINTF_BUG

See merge request espressif/esp-idf!30956
2024-07-26 17:37:03 +08:00
wanlei 3cf069c7d8 feat(esp32c61): disable unsupported build test 2024-07-16 16:06:19 +08:00
Marius Vikhammer b6d3e1e8e3 test(newlib): fixed newlib test failing to build for C5 2024-07-11 09:33:04 +08:00
laokaiyao cb22b8aaf7 ci(esp32c5): enable c5 target test 2024-07-02 16:45:49 +08:00
Alexey Lapshin ed6e497c6f feat(build): add COMPILER_STATIC_ANALYZER option 2024-06-18 14:25:37 +08:00
Marius Vikhammer bfe974a9a2 docs(links): fix broken links found in CI 2024-05-30 14:21:00 +08:00
Tomáš Rohlínek 0b4fff69c5 fix(newlib/stdio): remove incorrect check in /dev/console init
Closes https://github.com/espressif/esp-idf/issues/13439
2024-05-27 10:43:13 +02:00
Konstantin Kondrashov b0457ee0ac feat(newlib): Adds flockfile/funlockfile for safe multi-line printing
for printf, vprintf, etc.

Closes https://github.com/espressif/esp-idf/issues/2565
2024-05-24 14:16:16 +03:00
Jiang Guang Ming 5e283e03b8 feat(newlib): add test case for printf float 2024-05-24 17:44:59 +08:00
Jiang Guang Ming e829cee2fd fix(esp_rom): add new rom caps ESP_ROM_HAS_NEWLIB_NANO_PRINTF_FLOAT_BUG 2024-05-24 17:40:34 +08:00
Alexey Gerenkov 57f61d2311 feat(tools): Update Clang version to esp-17.0.1_20240419 2024-05-03 16:55:13 +03:00
David Cermak b1ea47af4c fix(newlib): Allow for timefunc customization if not impl
Related https://github.com/espressif/esp-idf/issues/11873
2024-04-09 16:49:16 +08:00
laokaiyao 65b1fd33d3 ci(esp32c5mp): disable the unsupported tests 2024-04-07 12:13:29 +08:00
Alexey Lapshin 9ff7ad2173 feat(esp_rom): add esp_rom_libc_stubs.h 2024-04-03 18:34:44 +04:00
wanlei 20c18ac52b feat(esp32c61): final introduce helloworld support 2024-04-02 10:50:52 +08:00
Xiao Xufeng 313c4f2cdc fix(all): remove unused header includes 2024-03-25 13:58:40 +08:00
Alexey Lapshin 31a951268a feat(newlib): get rid of dirent.h in favor of toolchain 2024-03-15 12:36:00 +04:00
Alexey Lapshin 4f09fba127 fix(newlib): fix esp32/esp32s3 atomics on PSRAM
Closes https://github.com/espressif/esp-idf/issues/4635
2024-03-15 12:36:00 +04:00
Guillaume Souchere a7bd00eacc feat(newlib): Add definition of aligned_alloc to heap.c
Add the definition of aligned_alloc to the list of
definitions provided by heap.c.

Note that memalign (strictly equivalent) to aligned_alloc
is already defined in heap.c.
2024-03-06 11:06:14 +01:00
Marius Vikhammer f2fe408b99 refactor(core): reformat newlib and pthread with astyle 2024-02-27 10:00:06 +08:00
fl0wl0w 90d1dcfd76 feat(freertos): Introduced new Kconfig option CONFIG_FREERTOS_NUMBER_OF_CORES
This commit replaces the use of portNUM_PROCESSORS and configNUM_CORES
macros in all of ESP-IDF. These macros are needed to realize an SMP
scenario by fetching the number of active cores FreeRTOS is running on.
Instead, a new Kconfig option, CONFIG_FREERTOS_NUMBER_OF_CORES, has been
added as a proxy for the FreeRTOS config option, configNUMBER_OF_CORES.
This new commit is now used to realize an SMP scenario in various places
in ESP-IDF.

[Sudeep Mohanty: Added new Kconfig option CONFIG_FREERTOS_NUMBER_OF_CORES]

Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2024-02-09 09:11:28 +01:00
Ivan Grokhotkov dee5b087fa feat(newlib): implement scandir and alphasort
Based on https://man7.org/linux/man-pages/man3/scandir.3.html
2024-01-25 11:03:19 +01:00
Marius Vikhammer 4b89e52964 fix(newlib): fix stub_table init on C5 2024-01-23 18:05:53 +08:00
C.S.M 298931596a Merge branch 'bugfix/wrong_serial_num_2_rom' into 'master'
fix(uart,usj..): Fix wrong serial number that has been parsed to rom functions

Closes IDFGH-11872

See merge request espressif/esp-idf!28414
2024-01-18 16:17:37 +08:00
Cao Sen Miao 6768805d20 fix(uart,usj...): Fix wrong serial number that has been parsed to rom functions,
Closes https://github.com/espressif/esp-idf/issues/12958
2024-01-18 10:51:51 +08:00
Marius Vikhammer 9ab0d95f65 test(newlib): enable and fix newlib tests on P4 2024-01-18 09:52:11 +08:00
laokaiyao 11e19f40b9 feat(esp32c5): support to build hello world on esp32c5 beta3 2024-01-09 13:11:11 +08:00
Armando 3c5a4f9e8a ci(p4): added todo jira for disabled tests on p4 2024-01-04 09:36:38 +08:00
Armando 1ab742b3c3 ci(p4): enable esp32p4 target test 2024-01-04 09:34:55 +08:00