6375 Commits

Author SHA1 Message Date
Aleksei Apaseev
897db53113 ci: fix tests build report generator 2025-02-12 19:07:53 +08:00
Chen Ji Chang
9342b3fba1 Merge branch 'feat/h4_introduce_step1_add_target' into 'master'
feat(esp32h4): introduce target esp32h4(stage 1)

See merge request espressif/esp-idf!36780
2025-02-11 18:11:08 +08:00
akshat
e532499e5d bugfix(wifi): Fix header file errors and remove esp_supplicant from check_public_headers_exceptions.txt 2025-02-10 17:56:52 +08:00
Chen Jichang
6f83f39dce feat(esp32h4): introduce target esp32h4(stage 1) 2025-02-08 17:07:44 +08:00
Gao Xu
1e8a48db74 Merge branch 'feat/h21_enable_ci_build_test' into 'master'
feat(esp32h21): enable ESP32H21 ci build

Closes IDF-11561

See merge request espressif/esp-idf!36197
2025-02-07 14:10:54 +08:00
gaoxu
5ef4f20778 feat(esp32h21): disable unsupported build test 2025-02-06 15:47:51 +08:00
harshal.patil
7d8211bf87
feat(mbedtls): Support both SHA block and DMA modes during runtime
Dynamically switch the SHA operation modes based on the buffer operating length
2025-02-04 16:49:30 +05:30
Erhan Kurubas
f6b407d6b9 test(coredump): collect all expected uart data first, then process lazily 2025-02-01 06:12:11 +08:00
Rocha Euripedes
b09a515587 Merge branch 'fix/test_app_certificate' into 'master'
Regenerate certificates for testing

See merge request espressif/esp-idf!36664
2025-01-29 20:35:17 +08:00
Roland Dobai
57b2ef83ea Merge branch 'feat/diag_cpuinfo' into 'master'
feat(tools): add basic system information to diag report

Closes IDF-12100

See merge request espressif/esp-idf!36627
2025-01-29 17:46:07 +08:00
Euripedes Rocha
45d59f8205 fix(mqtt): Regenerate certificates for testing
- Previous fix ommited one of the client certificates by mistaque.
- This regenerates all certificates to clean that up.
2025-01-28 14:34:29 +01:00
Frantisek Hrbata
7216d11110 feat(tools): enable passing the purge file as an argument to diag
At present, the diag tool uses its default purge file. However, users
may find it beneficial to specify and reuse their own purge file. A new
command line option, --purge, has been introduced to allow users to
provide their own purge file to diag. When this option is used, the
default purge file is ignored.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-01-28 09:19:36 +01:00
Frantisek Hrbata
350dbaf73c feat(tools): add system.yml recipe to diag
This should enable the collection of more detailed information about the
operating system and basic CPU details.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-01-27 13:34:33 +01:00
Frantisek Hrbata
f7b754acfa feat(tools): add option to execute steps only on a specific system
At present, the steps are executed unconditionally. With this
modification, we can restrict each step individually to determine if it
should run on a particular system. For instance, we can execute
different commands on different systems. This is achieved by adding a
new key, "system," to the step dictionary, with possible values being
Linux, Windows, and Darwin.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-01-27 13:34:19 +01:00
Aleksei Apaseev
7d1d949729 Merge branch 'ci/add-pre-signed-urls-of-built-test-related-apps-to-artifacts' into 'master'
ci: fix the issue with missing presigned URLs for test-related apps

Closes RDT-1120

See merge request espressif/esp-idf!36636
2025-01-27 16:19:42 +08:00
Aleksei Apaseev
eb67370462 ci: fix the issue where presigned URLs for test-related applications were not being added to the YAML file 2025-01-26 15:41:06 +08:00
Frantisek Hrbata
88c099d756 fix(tools): allow to save stdout and stderr if the exec command fails
Currently, if a command run by the exec command returns an error
code, its stdout and stderr are not saved. It could be beneficial to
store at least the stderr if requested. Additionally, avoid creating
output files when there is no content and also store the stderr
of the failed command to diag.log.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-01-24 14:41:07 +01:00
Rocha Euripedes
e5ee4207c6 Merge branch 'fix/test_app_certificate' into 'master'
Update test app certificates

Closes IDFCI-2687

See merge request espressif/esp-idf!36540
2025-01-24 18:44:35 +08:00
Euripedes Rocha
c9670ca283 fix(mqtt): Update test app certificates
Certificates expired, so need to update for testing to pass.
2025-01-23 14:40:34 +01:00
Harshal Patil
9cabe79385 Merge branch 'fix/incorrect_reserved_bits_calculation_in_xts_pseudo_round_conf' into 'master'
fix(soc): Fix incorrect reserved bits calculation in xts_pseudo_round_conf

See merge request espressif/esp-idf!36473
2025-01-23 18:49:03 +08:00
Roland Dobai
c640466e32 docs(coredump): Add minor documentation improvements for coredump 2025-01-22 13:44:56 +01:00
Frantisek Hrbata
a08995b302 fix(ldgen): don't emit intermediate placements without sections
When a symbol needs to be placed to a different target than the one
designated for the object file, the object file is expanded, which
includes the following steps:

1. Creating a new placement for the symbol's input section with the
   specified target.
2. Excluding the object placement from the orignal target.
3. Creating a new intermediate placement for the object for the original
   target, where its input sections are expanded, excluding the input
   section for the symbol.

Let's illustrate the object expansion process with the following example:

[sections:rodata]
entries:
    .rodata+
    .sdata2+
    .srodata+

[scheme:default]
entries:
    text -> flash_text
    rodata -> flash_rodata

[scheme:noflash]
entries:
    text -> iram0_text
    rodata -> dram0_data

[mapping:soc_pm]
archive: libsoc.a
entries:
    gpio_periph: GPIO_HOLD_MASK (noflash)

gpio_periph section headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
  [ 0]                   NULL            00000000 000000 000000 00      0   0  0
  [ 1] .text             PROGBITS        00000000 000034 000000 00  AX  0   0  2
  [ 2] .data             PROGBITS        00000000 000034 000000 00  WA  0   0  1
  [ 3] .bss              NOBITS          00000000 000034 000000 00  WA  0   0  1
  [ 4] .rodata.GPIO_HOLD_MASK PROGBITS        00000000 000034 000058 00   A  0   0  4
  [ 5] .rodata.GPIO_PIN_MUX_REG PROGBITS        00000000 00008c 000058 00   A  0   0  4
  [ 6] .debug_info       PROGBITS        00000000 0000e4 0000d8 00      0   0  1
  [ 7] .rela.debug_info  RELA            00000000 0009d4 000108 0c   I 16   6  4
  [ 8] .debug_abbrev     PROGBITS        00000000 0001bc 000070 00      0   0  1
  [ 9] .debug_aranges    PROGBITS        00000000 00022c 000018 00      0   0  1
  [10] .rela.debug_aranges RELA            00000000 000adc 00000c 0c   I 16   9  4
  [11] .debug_line       PROGBITS        00000000 000244 0001ab 00      0   0  1
  [12] .debug_str        PROGBITS        00000000 0003ef 00022d 01  MS  0   0  1
  [13] .comment          PROGBITS        00000000 00061c 000030 01  MS  0   0  1
  [14] .note.GNU-stack   PROGBITS        00000000 00064c 000000 00      0   0  1
  [15] .riscv.attributes RISCV_ATTRIBUTES 00000000 00064c 000044 00      0   0  1
  [16] .symtab           SYMTAB          00000000 000690 000260 10     17  36  4
  [17] .strtab           STRTAB          00000000 0008f0 0000e1 00      0   0  1
  [18] .shstrtab         STRTAB          00000000 000ae8 0000d1 00      0   0  1

1. Creating a new placement
.dram0.data :
{
    *libsoc.a:gpio_periph.*(.rodata.GPIO_HOLD_MASK .sdata2.GPIO_HOLD_MASK .srodata.GPIO_HOLD_MASK)
}

2. Excluding the object placement
.flash.rodata :
{
    *(EXCLUDE_FILE(*libsoc.a:gpio_periph.*) .rodata.* ...)
}

3. Creating a new intermediate placement
.flash.rodata :
{
    *libsoc.a:gpio_periph.*(.rodata.GPIO_PIN_MUX_REG)
}

Now, let's do the same, but also move GPIO_PIN_MUX_REG to noflash with an updated mapping.

[mapping:soc_pm]
archive: libsoc.a
entries:
    gpio_periph: GPIO_HOLD_MASK (noflash)
    gpio_periph: GPIO_PIN_MUX_REG (noflash)

1. Creating a new placement
.dram0.data :
{
    *libsoc.a:gpio_periph.*(.rodata.GPIO_HOLD_MASK .sdata2.GPIO_HOLD_MASK .srodata.GPIO_HOLD_MASK)
    *libsoc.a:gpio_periph.*(.rodata.GPIO_PIN_MUX_REG .sdata2.GPIO_PIN_MUX_REG
                            .srodata.GPIO_PIN_MUX_REG)
}

2. Excluding the object placement
.flash.rodata :
{
    *(EXCLUDE_FILE(*libsoc.a:gpio_periph.*) .rodata.* ...)
}

3. Creating a new intermediate placement
.flash.rodata :
{
    *libsoc.a:gpio_periph.*
}

The *libsoc.a:gpio_periph.* entity in step 3 no longer has input
sections, as there are no remaining .rodata input sections in the object
file. The linker behavior for this mapping is to include all object
input sections that have not yet been placed as described in
https://sourceware.org/binutils/docs/ld.html#Input-Section-Basics
"If you use a file name without a list of sections, then all sections in
the input file will be included in the output section. This is not
commonly done, but it may by useful on occasion."

The map file for such mapping now contains following input sections

 .flash.rodata   0x3c0a0120    0x19b34
     *libsoc.a:gpio_periph.*()
     .debug_info    0x3c0b95bf       0xd8 esp-idf/soc/libsoc.a(gpio_periph.c.obj)
     .debug_abbrev  0x3c0b9697       0x70 esp-idf/soc/libsoc.a(gpio_periph.c.obj)
     .debug_aranges
                    0x3c0b9707       0x18 esp-idf/soc/libsoc.a(gpio_periph.c.obj)
     .debug_line    0x3c0b971f      0x1ab esp-idf/soc/libsoc.a(gpio_periph.c.obj)
     .debug_str     0x3c0b98ca      0x21a esp-idf/soc/libsoc.a(gpio_periph.c.obj)
                                    0x22d (size before relaxing)
     .comment       0x3c0b9ae4       0x30 esp-idf/soc/libsoc.a(gpio_periph.c.obj)
     .note.GNU-stack
                    0x3c0b9ae4        0x0 esp-idf/soc/libsoc.a(gpio_periph.c.obj)
     .riscv.attributes
                    0x3c0b9ae4       0x44 esp-idf/soc/libsoc.a(gpio_periph.c.obj)

This is incorrect, and such intermediate placement should not be
generated. This type of placement can be recognized because it is not
explicitly defined in the mapping and lacks input sections. We can
identify this in the significant function and prevent issuing commands
for such placement.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-01-21 20:37:58 +08:00
Aleksei Apaseev
bef7edb940 Merge branch 'ci/enhace-dynamic-pipeline-with-bin-size-diff' into 'master'
ci: enhance dynamic pipeline with bin size diff

Closes IDFCI-2213 and IDF-7232

See merge request espressif/esp-idf!35356
2025-01-21 19:31:25 +08:00
laokaiyao
c13ac70aa7 ci: check register half word 2025-01-20 16:37:18 +08:00
laokaiyao
0cfa86670a
ci(check): update check_soc_struct_headers script 2025-01-20 13:30:03 +05:30
Marius Vikhammer
afc1b31f43 Merge branch 'test/freertos_gptimer_not_supported' into 'master'
test(freertos): allow freertos tests to compile even when gptimer is not supported

Closes IDF-11554

See merge request espressif/esp-idf!36461
2025-01-20 09:56:48 +08:00
Omar Chebib
8dfcafa1b2 Merge branch 'feat/intr_alloc_force_intrno' into 'master'
feat(esp_hw_support): add the possibility to allocate two sources to the same interrupt line

Closes IDF-9552

See merge request espressif/esp-idf!35473
2025-01-20 09:43:00 +08:00
Martin Vychodil
0672b326e3 Merge branch 'fix/broken_fatfsgen_tests' into 'master'
fix(storage/fatfsgen): broken test_apps scripts for fatfsgen

See merge request espressif/esp-idf!36453
2025-01-18 00:47:16 +08:00
Aleksei Apaseev
803a288029 ci: enhance the Dynamic pipeline report with binary size information 2025-01-17 18:52:54 +08:00
Marius Vikhammer
638b22ef4e test(freertos): changed freertos tests to compile even if no gptimer 2025-01-17 12:07:07 +08:00
Tomáš Rohlínek
f9d6e356bf
fix(storage/fatfsgen): broken test_apps scripts for fatfsgen 2025-01-16 13:41:57 +01:00
Martin Vychodil
57668738c2 Merge branch 'fix/broken_fatfsgen_tests' into 'master'
fix(storage/fatfsgen): broken test_apps scripts for fatfsgen

Closes IDFCI-2644 and IDFCI-2645

See merge request espressif/esp-idf!36317
2025-01-16 20:12:59 +08:00
Tomáš Rohlínek
2140c9b688
fix(storage/fatfsgen): broken test_apps scripts for fatfsgen 2025-01-16 12:13:16 +01:00
Omar Chebib
16b8a2ea3b feat(esp_hw_support): two interrupts sources can now be mapped to the same interrupt line 2025-01-15 13:13:24 +08:00
Omar Chebib
52b558d218 Merge branch 'feature/enable_fp_backtracing' into 'master'
feat(riscv): implement frame pointer option for backtracing

See merge request espressif/esp-idf!32342
2025-01-13 18:11:49 +08:00
Roland Dobai
f2c3fc2129 Merge branch 'ci/check_copyright_bsasm' into 'master'
CI: Check copyright for BSASM files

Closes IDFGH-14382

See merge request espressif/esp-idf!36255
2025-01-13 17:24:45 +08:00
morris
aa40af2510 test(twai): add cxx build test 2025-01-10 18:54:12 +08:00
Ondrej Kosta
4762db2dd8 Merge branch 'ci/iperf_esp32p4' into 'master'
ci(esp_eth): added ESP32P4 to iperf CI test

See merge request espressif/esp-idf!35540
2025-01-10 15:33:29 +08:00
Roland Dobai
fc6272e9b0 ci(tools): Check copyright for BSASM files 2025-01-09 15:16:56 +01:00
Omar Chebib
980cf269c7 feat(riscv): implement frame pointer option for backtracing 2025-01-09 11:57:02 +08:00
C.S.M
50cd05c4ac Merge branch 'refactor/move_bod_to_hw_support' into 'master'
refactor(bod): Move brownout handling file from esp_system to esp_hw_support

See merge request espressif/esp-idf!36191
2025-01-09 11:08:05 +08:00
David Čermák
bca1e958ea Merge branch 'test/new_mosquitto' into 'master'
fix(mqtt): Fix mqtt tests with local mosquitto

See merge request espressif/esp-idf!35859
2025-01-08 18:19:24 +08:00
C.S.M
5e4fd8ee52 refactor(bod): Move brownout handling file from esp_system to esp_hw_support 2025-01-08 14:41:37 +08:00
Zhang Hai Peng
80b28a9816 Merge branch 'bugfix/fix_ble_conn_fail_in_ci' into 'master'
fix(ble/bluedroid): Optimize CI configuration for Bluedroid example

Closes IDFCI-2628

See merge request espressif/esp-idf!36138
2025-01-08 10:05:41 +08:00
Ondrej Kosta
b07db010ac ci(esp_eth): added ESP32P4 to iperf CI test
Updated (increased) ETH_THROUGHPUT_SPI_ETH limits.
Improved iperf optimization description
2025-01-07 12:41:54 +01:00
David Cermak
7fa64f64d6 fix(mqtt): Fix test with local mosquitto increasing stack size
4kB stack size for mosquitto runner task wasn't enough and with
recent updates of sock_utils it caused stack overflows
2025-01-07 09:00:23 +01:00
morris
c8d4e1b094 Merge branch 'feature/bitscrambler_support' into 'master'
feature(driver): BitScrambler loopback support

See merge request espressif/esp-idf!31236
2025-01-03 16:08:52 +08:00
zhanghaipeng
aa2f136e16 fix(ble/bluedroid): Optimize CI configuration for Bluedroid example 2025-01-03 14:35:07 +08:00
Marius Vikhammer
b07761825e Merge branch 'feature/dcache_write_flash_panic' into 'master'
feat(panic): panic immediately on an attempt to write to flash via dcache

See merge request espressif/esp-idf!34190
2025-01-03 10:12:30 +08:00
Marius Vikhammer
cfe7021801 Merge branch 'bugfix/h2_wifi_intr' into 'master'
fix(interrupt): fixed wrongly reserved interrupt for wifi on H2

See merge request espressif/esp-idf!36073
2025-01-02 15:01:44 +08:00