Commit Graph

412 Commits

Author SHA1 Message Date
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
Song Ruo Jing
0e759c6deb Merge branch 'refactor/esp_driver_uart' into 'master'
refactor(uart): make uart driver as component

Closes IDF-8384

See merge request espressif/esp-idf!27333
2023-12-18 19:16:34 +08:00
Song Ruo Jing
bc09031496 refactor(uart_vfs): Move uart implementation of vfs to esp_driver_uart
Deprecated esp_vfs_dev_uart_xxx APIs
vfs_uart test case moved to esp_driver_uart test_apps
Astyle fixed for uart_vfs
2023-12-15 17:14:55 +08:00
Jakob Hasse
874d10ce11 refactor(esp_system): moved shared stack tests from newlib to here 2023-12-11 14:20:55 +08:00
Sudeep Mohanty
bf237a2bd4 Merge branch 'feature/freertos_expose_list_integrity_check_option' into 'master'
feat(freertos): Exposed Kconfig option for configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES

Closes IDF-8366

See merge request espressif/esp-idf!26960
2023-11-14 21:27:19 +08:00
Sudeep Mohanty
d507a86285 feat(freertos): Exposed Kconfig option for configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES
This commit exposes the FreeRTOS List integrity check option
configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES via menuconfig.
2023-11-09 14:54:13 +01:00
Jakob Hasse
8624e9edf4 fix(newlib,ci): wrong floating point number handling in tests 2023-11-09 17:12:07 +08:00
Cody P Schafer
9e1e245477 fix(heap): memalign respect malloc_alwaysinternal_limit
This changes `memalign` (and `posix_memalign`) so that it uses an
allocation method with the same selection criteria (checking
`malloc_alwaysinternal_limit` and picking one of:

- always MALLOC_CAP_INTERNAL
- MALLOC_CAP_INTERNAL first with fallback
- MALLOC_CAP_SPIRAM first with fallback

`malloc_alwaysinternal_limit` is in turn set by the options
`CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL` and
`CONFIG_SPRIAM_USE_CAPS_ALLOC`.

This notably affects folks using esp-rs to build rust code for the
esp-idf, as all allocations from rust use `memalign`.

Merges https://github.com/espressif/esp-idf/pull/12375
2023-11-01 01:58:27 +08:00
Zim Kalinowski
fa1a3ce0b5 Merge branch 'refactor/components_linux_compatible' into 'master'
Exclude all currently incompatible components from Linux build

Closes IDF-8318 and IDF-5996

See merge request espressif/esp-idf!25598
2023-10-18 20:17:49 +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
Alexey Lapshin
b41b175a59 feat(newlib): Add sbom manifest file 2023-10-13 19:15:03 +04:00
Alexey Lapshin
932040e08c fix(newlib): fix esp32-spiram-rom-functions entries name 2023-10-09 12:13:02 +04:00
Alexey Lapshin
fdc6d0d813 change(newlib): use GCC builtin subword atomics 2023-10-09 12:13:02 +04:00
Alexey Lapshin
a43c509d4b change(newlib): update newlib according to new internal structures 2023-10-09 12:13:02 +04:00
Alexey Lapshin
c94d443a1b feat(newlib): add iterator into test output 2023-10-09 12:13:02 +04: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
Chen Yudong
2e11919f70 fix(ci): change build-test-rules files folder 2023-09-20 19:17:06 +08:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Alexey Gerenkov
3247253671 Merge branch 'feature/newlib_getentropy' into 'master'
feat(newlib): Implement getentropy() function

Closes IDFGH-10746 and IDF-7383

See merge request espressif/esp-idf!25192
2023-08-18 23:43:29 +08:00
Armando
706d684418 feat(esp32p4): introduced new target esp32p4, supported hello_world 2023-08-09 19:33:25 +08:00
Alexey Gerenkov
f8e020b1d7 feat(newlib): Implement getentropy() function
Closes https://github.com/espressif/esp-idf/issues/11963
2023-08-08 18:06:58 +03: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
Darian Leung
1e51387222 refactor(freertos): Refactor usage of portSTACK_TYPE to StackType_t
portSTACK_TYPE is an internal macro defined by the porting layer. This commit
changes all references to StackType_t which is the official type exposed by
FreeRTOS.
2023-07-31 16:59:41 +02:00
Zim Kalinowski
8433229958 fix(newlib): included limits.h to fix warning 2023-07-12 10:03:03 +08:00
Alexey Gerenkov
e9345bcced build: Adds support for Clangs's toolchain compiler-rt 2023-06-08 16:49:37 +03:00
Marius Vikhammer
1590fbd31c ci: misc fixes for newlib test app
Enabled additional tests for C2, added config for testing with newlib nano
as well as cleaned up old configs
2023-05-10 11:14:15 +08:00
Zim Kalinowski
a825dde9c0 newlib: move test to pytest 2023-05-08 12:31:48 +02:00
laokaiyao
bf2a7b2df6 esp32h4: removed esp32h4 related codes 2023-04-23 12:03:07 +00:00
Ivan Grokhotkov
35ea136d5a
newlib: implement fsync for the case of CONFIG_VFS_SUPPORT_IO=0
This feature allows calling fsync even if the vfs component is not
used.
The second part of the commit adds an fsync call in the panic test app
enabling it to be used over usb-serial-jtag.
2023-04-18 11:19:36 +02:00
Cao Sen Miao
e5355e57a1 newlib: Put atomic function in IRAM 2023-03-24 11:18:55 +08:00
Alexey Lapshin
a32bbedcd9 newlib: implement 8/16-bit atomic operations for riscv 2023-02-22 05:33:03 +00:00
Alexey Lapshin
8849b1b5aa newlib: fix and add new atomic tests for multicore chips 2023-02-22 05:33:03 +00:00
Cao Sen Miao
fd3e0b0b18 esp32h2(ci): enable target test 2023-02-15 10:20:43 +08:00
Marius Vikhammer
f9c1a2b791 Merge branch 'feature/core_c6_component_tests' into 'master'
ci: update idf-core related tests for C6

Closes IDF-6888

See merge request espressif/esp-idf!22282
2023-02-14 16:47:52 +08:00
Marius Vikhammer
25abc7f6d8 ci: update idf-core related tests for C6 2023-02-13 13:01:57 +08:00
Ivan Grokhotkov
bb25d6abd3 Merge branch 'bugfix/newlib_leftover_files' into 'master'
newlib: remove leftover file from the binary distribution

See merge request espressif/esp-idf!22252
2023-02-12 03:08:25 +08:00
Marius Vikhammer
6233b0aa64 Merge branch 'feature/c6_newlib_nano' into 'master'
newlib: update newlib nano documentation for C6

See merge request espressif/esp-idf!22219
2023-02-09 10:13:47 +08:00
Marius Vikhammer
2e55775f95 Merge branch 'bugfix/newlib_tz_env_mutex' into 'master'
newlib: Use correct recursive mutex for env and regular mutex for tz

Closes IDFGH-9266

See merge request espressif/esp-idf!22200
2023-02-08 13:39:36 +08:00
Marius Vikhammer
65a4058e8c newlib: update newlib nano documentation for C6
C6 ROM has the the full IO formatting functions included.
2023-02-08 10:56:28 +08:00
Ivan Grokhotkov
e10ff6b4e3
newlib: remove leftover file from the binary distribution 2023-02-06 22:23:48 +01:00
wuzhenghui
44df5b31af feature: add ram loadable app support 2023-02-01 17:57:22 +08:00
Steve Jothen
7ca5fa87c0 Use correct recursive mutex for env and regular mutex for tz 2023-01-30 10:59:53 +01:00