Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updating . . #10

Open
wants to merge 10,000 commits into
base: master
Choose a base branch
from
Open

Updating . . #10

wants to merge 10,000 commits into from

Conversation

annejan
Copy link
Member

@annejan annejan commented Oct 31, 2017

No description provided.

mahavirj and others added 30 commits January 8, 2025 12:46
feat(esp_tee): Support for flash memory isolation and protection (SPI0)

See merge request espressif/esp-idf!35486
…nto 'master'

feat(https_server): Added checks to verify if uri is empty

Closes IDFGH-10685

See merge request espressif/esp-idf!36157
fix(bt/controller): fixed missing critical protections on linked-list structure of (e)SCO buffers

Closes BT-3932 and COEXQABR24-85

See merge request espressif/esp-idf!36097
feat(802.15.4): support register isr callback

See merge request espressif/esp-idf!31347
docs(ulp): Fix esp_idf_monitor command for ulp monitoring

See merge request espressif/esp-idf!36205
…fixes

This commit:
- Removes the link time symbol name clash detection.
- Extracts symbols of type NOTYPE for global identifiers defined in
  assembly files.
- Makes the prefix argument optional for ulp_add_build_binary_targets().
- Adds a unit test for the ulp binary embed with a prefix feature.
fix(adc): fix adc oneshot error after continuous

Closes IDFGH-13620

See merge request espressif/esp-idf!36077
WPA3-Enterprise mandates the use of AKM suite selector
00:0F:AC:5 (IEEE80211 802.1X with SHA-256)
feat(efuse): Adds efuses for esp32h2 eco5

Closes IDF-11405

See merge request espressif/esp-idf!35896
Cleanup USB PHY

See merge request espressif/esp-idf!35783
mspi: rename mspi_timing_tuning_ll.h to mspi_ll.h

Closes IDF-11918

See merge request espressif/esp-idf!36039
docs(esp_tee): Added documentation for ESP-TEE

Closes IDF-10483

See merge request espressif/esp-idf!34852
fix(mqtt): Fix mqtt tests with local mosquitto

See merge request espressif/esp-idf!35859
mahavirj and others added 30 commits January 20, 2025 20:59
feat(app_update): esp_ota_mark_app_invalid_rollback() without reboot (GitHub PR)

Closes IDFGH-14234
Closes #15030

See merge request espressif/esp-idf!35843
MQTT5 API header added to documentation

See merge request espressif/esp-idf!35548
fix(esp_wifi): fix some analyzer issues

Closes IDFGH-14306, IDFGH-14307, and IDFGH-14308

See merge request espressif/esp-idf!36100
feat(spi_lcd): move callback function to iram

Closes IDFGH-14372

See merge request espressif/esp-idf!36354
fix(ci): restart avahi-daemon

See merge request espressif/esp-idf!36278
update PR

update mr

Update components/esp_http_client/esp_http_client.c

Co-authored-by: Nilesh Kale <[email protected]>
This commit update code format as per IDF standard for API
esp_http_client_get_and_clear_last_tls_error().
feat(https): Get TLS errors from http client (GitHub PR)

Closes IDFGH-14265

See merge request espressif/esp-idf!35833
…to 'master'

fix(esp_http_client): Revert Deprecated Tag on Previously Marked Private API

See merge request espressif/esp-idf!36451
fix some wifi power save issues and optimize phy sleep for esp32c5 eco1 and beta5

Closes PM-306, PM-319, PM-320, PM-296, PM-308, PM-311, PM-310, PM-309, PM-295, PM-274, PM-271, IDFCI-2604, and IDFCI-2605

See merge request espressif/esp-idf!35093
driver: clean up some tasks in epic

Closes IDF-11118, IDF-12003, IDF-10243, IDF-10245, IDF-10246, IDF-10248, IDF-10249, IDF-10252, IDF-10253, IDF-10255, and IDF-10259

See merge request espressif/esp-idf!36377
feat(bt): add vendor hci command and event to support test

See merge request espressif/esp-idf!36515
…ster'

ci: enhance dynamic pipeline with bin size diff

Closes IDFCI-2213 and IDF-7232

See merge request espressif/esp-idf!35356
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 <[email protected]>
fix(ldgen): don't emit intermediate placements without sections

Closes IDF-11972

See merge request espressif/esp-idf!36432
dev: update pre-commit hook idf-build-apps version

Closes RDT-1103

See merge request espressif/esp-idf!36538
change(rmt): change rx buffer prints from error to debug (GitHub PR)

Closes IDFGH-14449

See merge request espressif/esp-idf!36460
fix(i2c_master): Enhance i2c delete device and bus logic

Closes IDFGH-14387

See merge request espressif/esp-idf!36527
…o 'master'

feat(openthread): support hardware reset RCP while processing RCP failure

See merge request espressif/esp-idf!36270
fix(blufi): Fixed crash issue during memcpy in example

Closes BLERP-1401, BLERP-1402, and BLERP-1403

See merge request espressif/esp-idf!35105
feat(ble): Added API to get/set low power clock source

Closes BTQABR2023-370

See merge request espressif/esp-idf!34373
fix(wifi): fix max idle period 1 issue

Closes WIFIBUG-1022

See merge request espressif/esp-idf!36484
feat(esp_eth): new gpio init strategy

Closes IDF-11128

See merge request espressif/esp-idf!35827
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.