Commit Graph
100 Commits
Author SHA1 Message Date
Ivan Grokhotkov 8f0ee18931 Merge branch 'feature/clang_toolchain_compat' into 'master'
Build system: minimal changes for clang compatibility

See merge request espressif/esp-idf!15168
2021-09-23 08:19:09 +00:00
Ivan Grokhotkov ca73236f8e Merge branch 'bugfix/vfs_io_disabled_console' into 'master'
Fix console output flushing when CONFIG_VFS_SUPPORT_IO is disabled

Closes IDF-3892

See merge request espressif/esp-idf!15210
2021-09-16 10:27:04 +00:00
Ivan Grokhotkov 3c5e7b89ab spi_flash: extern spi_flash_chip_generic_timeout
spi_flash_generic_timeout is currently defined in the header file,
which makes it a common symbol between translation units where this
header file is included. It is also defined in
spi_flash_chip_generic.c.

Add an explicit `extern` to prevent multiple definition errors.
2021-09-16 11:07:54 +02:00
Ivan Grokhotkov b5606f5e81 esp_system: make the abort operation compatible with clang
Clang warns that the original code wouldn't have any effect:

    warning: indirection of non-volatile null pointer will be deleted,
             not trap [-Wnull-dereference]
    note: consider using __builtin_trap() or qualifying pointer
          with 'volatile'

__builtin_trap translates to 'break 1, 15' instruction on Xtensa,
which might be okay in this case. However to absolutely certainly not
break anything for GCC builds, add 'volatile' instead.
2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 82f0488f77 argtable: move GCC-specific pragma to cmake/make files
...and only add it when building with GCC.
2021-09-16 11:07:54 +02:00
Ivan Grokhotkov d0f960a634 newlib: don't use gcc-specific pragmas for clang 2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 1e2b1238c6 cbor: add a workaround for -ffreestanding being passed to clang
Toolchain CMake files for clang currently pass -ffreestanding option
to prevent clang from picking the wrong copy of stdint.h. This is a
temporary hack until we fix clang distributions to not include the
GCC version of stdint.h. This hack, however, results in setting
__STDC_HOSTED__=0, which is being checked by cbor header files,
making some required functions unavailable as a result.
Undefine __STDC_HOSTED__ as a workaround. This flag is only passed
when compiling cbor itself.
2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 81b97b9a6b spi_flash: only add GCC-specific flags when building with GCC 2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 370473b772 spiffs: only add GCC-specific flags when building with GCC 2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 3177df4986 cmake: temporarily silence additional warnings produced by clang 2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 6bba3ea034 cmake: only add GCC-specific flags when building with GCC
There are probably more GCC-specific flags in component CMakeLists.txt
files; these are just the one being added for all the files.
2021-09-16 11:07:54 +02:00
Ivan Grokhotkov 90a87cf5e4 cmake: don't run crosstool-version-check for clang
We will likely need to check clang version as well, eventually.
However at the moment clang builds change too often for such check
to be maintainable. Disable it for clang.
2021-09-16 10:54:27 +02:00
Ivan Grokhotkov 06c0b8a5d0 cmake: don't search for toolchain files in component directory
This feature was added when we thought that target components might be
added out of IDF tree. That never became possible, and with recent
changes in IDF architecture it is unlikely that this feature will be
necessary any time soon. Remove it, simplifying the code.
2021-09-16 10:54:27 +02:00
Ivan Grokhotkov 14e600801e cmake: allow selection of clang based toolchain
This is an experimental feature intended at the moment for ESP-IDF
developers only.

If IDF_TOOLCHAIN=clang environment variable or CMake variable is set,
use toolchain-clang-esp32xx.cmake instead of toolchain-esp32xx.cmake.

These changes aren't sufficient to actually build any IDF project with
clang; subsequent commits add a few workarounds required to do this.

Toolchain files are added for esp32 and esp32s2, which are the targets
supported in our llvm-project fork at the moment.
2021-09-16 10:54:27 +02:00
Ivan Grokhotkov ccda990ce5 newlib: set errno in the explicitly provided reent structure
Since these functions receive the pointer to reent structure, they
should set errno in it rather than using thread-local errno.

This didn't cause practical issues because console functions in IDF
are only called from threads, and in that case 'r' is a pointer to
the thread-local structure, so &errno is the same thing as
&__errno_r(r). Still, fixing this for consistency.
2021-09-16 09:00:07 +02:00
Ivan Grokhotkov 5da66d1d39 newlib: implement _fstat_r stub for console
When CONFIG_VFS_SUPPORT_IO is disabled, _read_r and _write_r
implementations in syscalls.c are used to provide console I/O via
esp_rom_uart_tx_one_char/esp_rom_uart_rx_one_char.

When newlib opens a (FILE*) stream, it calls fstat to check if the
underlying file is character-oriented. In this case, it configures the
stream to use line buffering. Otherwise (or if fstat fails) the stream
is opened as block buffered.

Since fstat wasn't provided, stdin/stdout/stderr streams got opened in
block buffered mode. For console, we need line buffered output so that
the stream buffer is flushed each time a complete line (ending with
'\n') is sent to stdout or stderr.

Fix by implementing _fstat_r stub, setting st->st_mdoe=S_IFCHR.
2021-09-16 09:00:07 +02:00
Ivan Grokhotkov 28a89d9c29 tools: gdb_panic_server: enable esp32h2 support 2021-09-15 19:24:14 +08:00
Ivan Grokhotkov e21e5aac64 esp_hw_support: update esp32s3 chip ID to the MP version
- Update 7.2.5 chip ID (4) to 7.2.8 chip ID (9).
- Remove TODO in espcoredump regarding this mismatch.
2021-09-13 15:16:45 +02:00
Ivan Grokhotkov c54caa457e Merge branch 'feature/espcoredump_4_esp32s3' into 'master'
Add Esp32s3 support to the coredump component.

See merge request espressif/esp-idf!15097
2021-09-13 12:37:12 +00:00
Ivan Grokhotkov 10ccfbe4ff Merge branch 'bugfix/correct_gcc_inner_functions' into 'master'
tests: refactoring of the gcc's inner functions, because clang doesn't support them

Closes LLVM-16

See merge request espressif/esp-idf!15046
2021-09-10 18:45:12 +00:00
Ivan Grokhotkov 57a32a8615 tools: idf_tools.py: add support for .tar.xz archives 2021-09-10 13:24:02 +02:00
Ivan Grokhotkov 1238253c2c docs: describe memprot faults in the panic handler documentation 2021-09-07 14:00:53 +08:00
Ivan Grokhotkov 19a75177a8 docs: fix syntax errors in only:: blocks 2021-09-07 14:00:53 +08:00
Ivan Grokhotkov 036aae0a2c github: remove lint jobs for unsupported python versions 2021-09-01 19:39:17 +02:00
Ivan Grokhotkov 05d0298656 Merge branch 'feature/add_component_manager_python_dependency' into 'master'
Build System: Add idf-component-manager python dependency

Closes PACMAN-172 and DOC-1623

See merge request espressif/esp-idf!13432
2021-09-01 11:03:33 +00:00
Ivan Grokhotkov 07d7b4344f docs: JTAG debugging updates for C3, S3
- give concrete JTAG pin names for S3
- describe efuses which are related to JTAG debugging (S3, C3)
2021-08-27 14:01:53 +02:00
Ivan Grokhotkov 9a3f99949f Merge branch 'bugfix/strict_data_partition_alignment' into 'master'
partition_table: warn if data partition offset is not 4kB aligned

Closes IDFGH-5572 and IDFGH-5630

See merge request espressif/esp-idf!14902
2021-08-23 17:31:57 +00:00
Ivan Grokhotkov 6cf25ce43f Merge branch 'doc/size_opt_vfs' into 'master'
docs: describe code size optimizations possible in VFS component

See merge request espressif/esp-idf!14783
2021-08-23 07:32:14 +00:00
Ivan Grokhotkov b56c9aafe4 partition_table: warn if data partition offset is not 4kB aligned
If a partition offset is not aligned to 4 kB, erase operations will
fail, even if they are aligned to 4 kB relative to the partition
start. This is because the underlying esp_flash_erase_range function
only works when the address is aligned to 4 kB.

Not making this an error for now, since applications might be using
read-only non-4kB aligned partitions, which still work fine.
Will change this behavior in IDF 5.0, requiring 4 kB alignment for all
partitions.

Closes https://github.com/espressif/esp-idf/issues/7295
Closes https://github.com/espressif/esp-idf/issues/7350
2021-08-23 08:09:28 +02:00
Ivan Grokhotkov 54595887f6 partition_table: gen_esp32part.py --secure applies to app partitions
...only. Previously this check was done for both app and data
partitions. While checking that data partition size is aligned is
a _good thing_, the check would only occur when secure boot was on.
2021-08-23 08:04:53 +02:00
Ivan Grokhotkov 2e83ac5a99 partition_table: don't print warnings to stdout 2021-08-23 08:01:41 +02:00
Ivan Grokhotkov 152d4f1667 docs: mention VFS options in code size optimization guide 2021-08-23 07:02:19 +02:00
Ivan Grokhotkov b7a4df9031 vfs: list IO functions which can be used with VFS_SUPPORT_IO disabled 2021-08-23 07:02:19 +02:00
Ivan Grokhotkov a005e9bfbc docs: move VFS documentation into the component directory
These files were added into the component directory back when we
didn't have the documentation directory, and weren't moved once the
documentation directory was created.
2021-08-23 07:02:19 +02:00
Ivan Grokhotkov ece73a3e55 examples/protocols: fix compilation when CONFIG_EXAMPLE_USE_OPENETH=y
The code checked CONFIG_ETH_USE_SPI_ETHERNET (which is usually set),
but CONFIG_EXAMPLE_ETH_SPI_xxx_GPIO options are only defined if
CONFIG_EXAMPLE_USE_SPI_ETHERNET is set. Fix the ifdef accordingly.
Regression from aea901f0.
2021-08-15 21:58:42 +05:00
Ivan Grokhotkov 25ab0aeee6 ci: don't download artifacts for docker build job 2021-08-10 11:29:25 +03:00
Ivan Grokhotkov 95699a9260 Merge branch 'bugfix/libsodium_build_with_gnu_make' into 'master'
libsodium: fix build issues with GNU Make

Closes IDF-3673

See merge request espressif/esp-idf!14661
2021-08-08 07:20:02 +00:00
Ivan Grokhotkov b4e8d7f57a Merge branch 'docs/fixed_typo' into 'master'
Fixed typo cause url jump error.

Closes IDFGH-5597

See merge request espressif/esp-idf!14546
2021-08-05 09:40:05 +00:00
Ivan Grokhotkov 69deaf528f Merge branch 'bugfix/fix_espcoredump_test' into 'master'
espcoredump: Update expected output to fix test failures

See merge request espressif/esp-idf!14536
2021-07-28 08:40:20 +00:00
Ivan Grokhotkov da871e3dad Merge branch 'bugfix/tools_tests' into 'master'
tools: fix failing idf_tools tests

See merge request espressif/esp-idf!14532
2021-07-27 15:32:17 +00:00
Ivan Grokhotkov 7f8790b528 ci: run host tests when tools.json is updated 2021-07-27 12:19:35 +02:00
Ivan Grokhotkov 100a80556f tools: test_idf_tools: fix failing tests and improve readability
* fix failing tests: expect s2 binutils to be installed on s3,
  expect risc-v toolchain to be installed on s2 and s3.
* improve readability by adding assert_tool_installed and
  assert_tool_not_installed functions, instead of using an optional
  assertIn argument
* rename "RISC" to "RISCV_ELF" as ULP is arguably very much "R" as in
  "RISC"!
2021-07-27 12:19:16 +02:00
Ivan Grokhotkov d9f3b1fa8e tools: install esp32s2 ULP binutils for esp32s3 as well
ESP32-S3 uses same ULP coprocessor as ESP32-S2, so the same binutils
package is used.
2021-07-27 12:15:03 +02:00
Ivan Grokhotkov b23201b6c9 Merge branch 'bugfix/tools_json_s2_ulp_toolchain' into 'master'
tools: install riscv32-esp-elf for ESP32-S2 and ESP32-S3 as well

See merge request espressif/esp-idf!14509
2021-07-27 05:46:33 +00:00
Ivan Grokhotkov 3fa8e8d1e3 Merge branch 'feature/windows_installer_moved_to_github' into 'master'
tools: Windows Installer project moved to github.com/espressif/idf-installer

Closes IDF-3147

See merge request espressif/esp-idf!14120
2021-07-26 21:41:38 +00:00
Ivan Grokhotkov 8940f0ff2c tools: install riscv32-esp-elf for ESP32-S2 as well
riscv32-esp-elf-gcc is used for RISC-V ULP programming.
2021-07-26 09:58:48 +02:00
Ivan Grokhotkov 7534c4467f rom, spi_flash: add a patch for esp_flash_erase_region for C3, S3, H2 2021-07-24 13:28:25 +02:00
Ivan Grokhotkov 118fafef07 spi_flash: add test case for esp_flash_erase_region with 0 size 2021-07-23 14:14:57 +02:00
Ivan Grokhotkov 32d4829fed Merge branch 'bugfix/rtos_systick_cycle_time_error_dfs' into 'master'
fix RTOS SysTick cycle time error caused by DFS

See merge request espressif/esp-idf!14486
2021-07-23 10:59:50 +00:00
Ivan Grokhotkov b4e8e9c845 ci: install CMake version from tools.json in espcoredump test
To help achieve reproducible builds.
2021-07-22 10:14:33 +08:00
Ivan Grokhotkov 2f811b7975 cmake: sort lists obtained from file(GLOB)
CMake sorts result of file(GLOB) command since version 3.6.0:
https://gitlab.kitware.com/cmake/cmake/-/commit/edcccde7d

Since ESP-IDF sets cmake_minimum_required version to 3.5, and version
3.5.1 is used in CI, sort file lists obtained from file(GLOB)
manually.

This helps obtain reproducible order of libraries passed to the linker
and to ldgen.
2021-07-22 10:14:33 +08:00
Ivan Grokhotkov f798206ce5 docs: update the description of JTAG switches on, fix typos
Closes https://github.com/espressif/esp-idf/issues/6021
2021-07-20 20:30:22 +02:00
Ivan Grokhotkov 88e28a57f2 Merge branch 'bugfix/gdbstub_rt_callx0' into 'master'
Fix problem on Esp32S3 with dangerous relocation for gdbstub.

See merge request espressif/esp-idf!14145
2021-07-20 09:56:20 +00:00
Ivan Grokhotkov c28612cd2b Merge branch 'bugfix/freertos_coproc_save_area_alignment' into 'master'
freertos: Apply upstream stack masking fix for xtensa/port.c (Github PR)

Closes IDFGH-5549

See merge request espressif/esp-idf!14379
2021-07-20 09:00:04 +00:00
Ivan Grokhotkov 7b922bb8c6 Merge branch 'bugfix/emac_default_cfg' into 'master'
Fix invalid ETH_MAC_DEFAULT_CONFIG macro in C++

Closes IDF-3592

See merge request espressif/esp-idf!14409
2021-07-19 14:59:58 +00:00
Ivan Grokhotkov 166c30e7b2 Merge branch 'bugfix/code_owner_unit_test_app' into 'master'
gitlab: update codeowner for unit-test-app

See merge request espressif/esp-idf!14391
2021-07-18 09:42:36 +00:00
Ivan Grokhotkov ca51cd67a4 Merge branch 'bugfix/correct_clang_atomics' into 'master'
newlib,clang: implement __sync_* atomics for clang/llvm toolchain.

Closes LLVM-92

See merge request espressif/esp-idf!14269
2021-07-15 19:01:32 +00:00
Ivan Grokhotkov afe14a5ed2 Merge branch 'bugfix/newlib_dirent_decls' into 'master'
newlib: add C++ guards to the platform-specific dirent.h

Closes IDFGH-5465

See merge request espressif/esp-idf!14308
2021-07-15 07:27:14 +00:00
Ivan Grokhotkov da3038cd7a Merge branch 'bugfix/tools_fix_win_c3_gdb' into 'master'
tools: Update ESP32-C3 toolchain for Windows, added some missed DLLs for GDB

Closes IDFGH-5410

See merge request espressif/esp-idf!14276
2021-07-14 23:57:05 +00:00
Ivan Grokhotkov aa404750c3 Merge branch 'bugfix/spi_flash_ubsan_fail' into 'master'
hal: spi_flash: avoid calling memcpy with NULL buffer

Closes IDFCI-737

See merge request espressif/esp-idf!14323
2021-07-14 09:30:41 +00:00
Ivan Grokhotkov 1d44e40fb1 hal: spi_flash: avoid calling memcpy with NULL buffer
In practice, calling memcpy with NULL buffer and 0 size works on the
ESP32, but the C standard considers this an undefined behavior.
When building with UBSAN checks enabled, compiler will insert a check
that memcpy argument is non-NULL, regardless of the size argument.

This caused a failure in tools/test_apps/system/panic, which is built
with USBAN enabled for several components.
2021-07-09 11:24:25 +02:00
Ivan Grokhotkov cbf207bfb8 newlib: add C++ guards to the platform-specific dirent.h
Before newlib 3.3.0, <dirent.h> bundled in newlib did not include any
function declarations. Instead, the file included the platform-
specific <sys/dirent.h>. This inclusion was inside a C++ guard block.
ESP-IDF provided sys/dirent.h inside newlib component, and this file
contained all the necessary function and structure declarations.

Since https://github.com/espressif/newlib-esp32/commit/da418955f5dca2f8570561c5dd6e79e25ebaeba2,
common function declarations have been added to <dirent.h> in newlib.
However, the inclusion of sys/dirent.h has been moved out of the C++
guard block. However we didn't notice this change and did not update
sys/dirent.h in ESP-IDF newlib component to and the now-required
C++ guards there.

This commit adds the missing C++ guards to the platform-specific
sys/dirent.h.

The declarations of common dirent.h functions are now present both in
<dirent.h> (provided by newlib) and in sys/dirent.h (provided by IDF).
We keep the declarations in sys/dirent.h for compatibility, since some
ESP-IDF files and applications may include <sys/dirent.h> directly,
rather than <dirent.h>.

Closes https://github.com/espressif/esp-idf/issues/7204
2021-07-08 15:53:58 +02:00
Ivan Grokhotkov 82a5f9c4b7 Merge branch 'bugfix/tls_alignment' into 'master'
esp32[s2,s3]: fix _flash_rodata_align value in the linker scripts

See merge request espressif/esp-idf!14220
2021-07-02 06:36:09 +00:00
Ivan Grokhotkov a6c721b24c esp32[s2,s3]: fix _flash_rodata_align value in the linker scripts
Regression from 4702feeee. The TLS segment is located inside
.flash.rodata, so we need to get the alignment of that section, not
.flash.rodata_noload.
2021-07-01 16:13:31 +02:00
Ivan Grokhotkov 969904cba6 unit-test-app: increase timer task size
FreeRTOS timer tests use quite a lot of stack, close to the limit on
the ESP32. ESP32-S3 has larger coprocessor save area, so there is less
space left for the actual stack, and the tests fail with a stack
overflow. Increase the stack size to make the tests work reliably.
2021-06-29 16:56:35 +02:00
Ivan Grokhotkov 3ce1fa70aa xtensa: update libhal for esp32s3
Built from:
  https://github.com/foss-xtensa/xtensa-hal (commit b014610)

With toolchain:
  xtensa-esp32s3-elf-gcc (crosstool-NG esp-2021r1) 8.4.0

Commands:

  ./configure --host=xtensa-esp32s3-elf CC=xtensa-esp32s3-elf-gcc \
    CFLAGS="-mlongcalls -I$IDF_PATH/components/xtensa/esp32s3/include"

  make

  xtensa-esp32s3-elf-strip --strip-debug src/hal/libhal.a
2021-06-29 16:56:35 +02:00
Ivan Grokhotkov ca5ed172a5 xtensa: update configuration overlay for esp32s3
From LX7_ESP32_S3_MP_linux_redist.tgz with SHA256:
63f305a982b2ee94cc78e5c20e3e3eb8bf0edeeaf703af0227a418bc34f7b848
copied from xtensa-elf/arch/include/xtensa/config/ with changes:
1) pre-commit fixes applied
2) re-added CONFIGID0 and CONFIGID1 in specreg.h
2021-06-29 16:56:35 +02:00
Ivan Grokhotkov d7928bf1db Merge branch 'feature/esp32c3_apptrace' into 'master'
apptrace: refactoring & esp32c3 support

See merge request espressif/esp-idf!11702
2021-06-28 06:00:24 +00:00
Ivan Grokhotkov 94611bc281 Merge branch 'bugfix/add_exception_emergency_pool_again' into 'master'
[esp_system]: added __cxx_eh_arena_size_get again

See merge request espressif/esp-idf!14089
2021-06-23 10:34:27 +00:00
Ivan Grokhotkov 768fe3a10c Merge branch 'test/wifi_connect_with_full_scan_in_examples' into 'master'
example: set example wifi scan method to all channel

Closes IDFCI-528 and IDFCI-685

See merge request espressif/esp-idf!13911
2021-06-23 10:20:43 +00:00
Ivan Grokhotkov bdb01b8285 Merge branch 'bugfix/longjmp_s3' into 'master'
[esp_rom]: fixed S3 longjmp patch

Closes IDF-3391

See merge request espressif/esp-idf!13946
2021-06-22 04:00:51 +00:00
Ivan Grokhotkov 3326cc852f Merge branch 'bugfix/ci_panic_test_timeout' into 'master'
ci panic test: Update the panic test timeout from 3s to 10s

See merge request espressif/esp-idf!14068
2021-06-21 11:52:08 +00:00
Ivan Grokhotkov ae0657083b Merge branch 'feature/move-filters-from-idf-monitor' into 'master'
Moved GDB utils and logging utils out of idf_monitor.py

See merge request espressif/esp-idf!13555
2021-06-18 10:27:14 +00:00
Ivan Grokhotkov c576c1414b Merge branch 'bugfix/fix-autocomplete-bash' into 'master'
Replaced broken link to shell autocompletion

See merge request espressif/esp-idf!13938
2021-06-18 10:24:00 +00:00
Ivan Grokhotkov 228fc04646 Merge branch 'example/ledc_pwm_basic' into 'master'
Example: Added LEDC basic PWM example

Closes DO-70

See merge request espressif/esp-idf!13114
2021-06-15 11:12:46 +00:00
Ivan Grokhotkov 038a4db41e Merge branch 'feature/idf_monitor_time_stamps' into 'master'
Tools: Add timestamp printing for IDF Monitor

Closes IDFGH-5261

See merge request espressif/esp-idf!13749
2021-06-15 08:48:59 +00:00
Ivan Grokhotkov 0e68c222ac Merge branch 'bugfix/dfu_split_large_bins' into 'master'
tools: Split up large binaries into smaller chunks in the DFU binary

Closes IDFGH-5227

See merge request espressif/esp-idf!13556
2021-05-31 17:19:28 +00:00
Ivan Grokhotkov 5f0ec8c9b7 Merge branch 'feature/log_linux' into 'master'
[log]: Normal log works on Linux

Closes IDF-3245

See merge request espressif/esp-idf!13610
2021-05-31 17:16:43 +00:00
Ivan Grokhotkov ffe0c21af3 Merge branch 'bugfix/fixed-autocompletion-test' into 'master'
Fixed test autocompletion

Closes IDFCI-641

See merge request espressif/esp-idf!13675
2021-05-26 19:19:34 +00:00
Ivan Grokhotkov 38d902f544 Merge branch 'feature/gdbstubs_rt' into 'master'
Extension of GDBStub component for handling GDB by serial port at runtime.

See merge request espressif/esp-idf!10312
2021-05-18 17:14:51 +00:00
Ivan Grokhotkov 8e66e554cb Merge branch 'feature/partition_type_any' into 'master'
esp_partition: add ESP_PARTITION_TYPE_ANY for iterating over all partition types (Github PR)

Closes IDFGH-4783

See merge request espressif/esp-idf!13434
2021-05-17 16:19:41 +00:00
Ivan Grokhotkov 1ca2afd982 Merge branch 'bugfix/add-MAXNAMLEN-definition' into 'master'
[newlib]add the definition of MAXNAMLEN in sys/dirent.h

Closes IDF-3219

See merge request espressif/esp-idf!13535
2021-05-17 08:03:35 +00:00
Ivan Grokhotkov 67b0e0389f Merge branch 'bugfix/hid_stack_size' into 'master'
esp_hid: allow setting stack size for the event task, increase stack size in the example (Github PR)

Closes IDFGH-4568 and IDFGH-4563

See merge request espressif/esp-idf!13438
2021-05-12 18:52:42 +00:00
Ivan Grokhotkov 47685f901d examples: sdmmc: set slot width and pins explicitly
... and prefer SDMMC_SLOT_FLAG_INTERNAL_PULLUP over explicitly setting
pullups on pins.
2021-05-10 23:21:27 +02:00
Ivan Grokhotkov 2c8f413059 driver: sdmmc: add esp32s3 support
* Extend sdmmc_slot_config_t with GPIO pin numbers for all SD bus
  signals. These new fields are available if SOC_SDMMC_USE_GPIO_MATRIX
  is set.
* Add shorter "sd" and "wp" aliases for "gpio_sd" and "gpio_wp" field
  names in sdmmc_slot_config_t.
* Deprecate sdmmc_host_pullup_en, prefer to enable this feature using
  SDMMC_SLOT_FLAG_INTERNAL_PULLUP instead.
2021-05-10 23:21:27 +02:00
Ivan Grokhotkov 17c65dad27 soc: add esp32s3 sdmmc support
* sync the latest struct header file from ESP32
* add soc_caps.h macros to distinguish between IO MUX and GPIO Matrix
  support in SDMMC on different chips.
* store GPIO matrix signal numbers in sdmmc_slot_info_t
2021-05-10 23:21:27 +02:00
Ivan Grokhotkov bd3a6dda87 soc: esp32s2: remove SDMMC header files
no SDMMC peripheral in this chip
2021-05-10 23:21:27 +02:00
Ivan Grokhotkov 1248ddaf3c ci: add component_ut_test_{esp32s2,esp32c3} jobs 2021-05-10 21:23:04 +02:00
Ivan Grokhotkov 2c6f9c4d50 Merge branch 'feature/oocd_ver_upgrade' into 'master'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20210401'

See merge request espressif/esp-idf!11377
2021-05-10 16:20:14 +00:00
Ivan Grokhotkov 6f8e0d9d55 test: add test app for stdatomic functions 2021-05-10 18:13:36 +02:00
Ivan Grokhotkov 742102079a newlib: stdatomic: emulate 64-bit atomics on 32-bit SMP SoCs
Closes https://github.com/espressif/esp-idf/issues/3163
2021-05-10 18:13:36 +02:00
Ivan Grokhotkov 32fcd4f02a newlib: stdatomic: fix prototypes, don't disable compiler warnings 2021-05-10 18:13:35 +02:00
Ivan Grokhotkov 1fb58684a2 unity: add UNITY_MAIN_FUNC helper macro to run multiple test groups 2021-05-10 18:13:35 +02:00
Ivan Grokhotkov 71f711976d unity: add option to enable 64-bit formatting support
This option is not enabled by default because many existing tests
use integer assertions to check the pointers:

   TEST_ASSERT_EQUAL(NULL, pointer)

This causes a "cast from pointer to integer of different size"
(-Wpointer-to-int-cast) warning to be generated, as Unity converts
every argument to UNITY_UINT first, and with 64-bit support enabled,
UNITY_UINT becomes a 64-bit unsigned type.
2021-05-10 18:13:35 +02:00
Ivan Grokhotkov f67f7d6774 Merge branch 'bugfix/adc_channel_comment_typo' into 'master'
adc: fix typos in comments (Github PR)

Closes IDFGH-4774

See merge request espressif/esp-idf!13437
2021-05-06 11:49:58 +00:00
Ivan Grokhotkov acd06daf39 Merge branch 'bugfix/spiram_h_header_guards' into 'master'
add missing header guards to {esp32,esp32s3}/spiram.h (Github PR)

Closes IDFGH-4861

See merge request espressif/esp-idf!13435
2021-05-06 11:49:39 +00:00
Ivan Grokhotkov 3717a318f6 Merge branch 'bugfix/gpio_isr_doc' into 'master'
gpio_isr_register(): Correct order of arguments in docs (Github PR)

Closes IDFGH-1780

See merge request espressif/esp-idf!13439
2021-05-06 11:49:34 +00:00
Ivan Grokhotkov d7f219686f Merge branch 'feature/spiffsgen_py_esp8266_compat' into 'master'
spiffsgen.py: esp8266 compatibility options, performance improvement, type annotations

Closes IDFGH-4925

See merge request espressif/esp-idf!12839
2021-05-05 15:04:19 +00:00
Ivan Grokhotkov 2887c88f56 spiram: add header guards to esp32s3/spiram.h and remove the exception 2021-05-05 15:27:19 +02:00
Ivan Grokhotkov f92e1c45ae esp_partition: add test, docs for ESP_PARTITION_TYPE_ANY 2021-05-05 15:11:29 +02:00