Commit Graph

704 Commits

Author SHA1 Message Date
Mahavir Jain
bad4cd7072
spi_flash: RAM loadable ELF should have dangerous writes option allowed
For RAM loadable ELF case, there is no application or the bootloader on
the flash. And hence the check for getting current running OTA partition
or looking up partition table fails during dangerous writes option.

We are disabling the dangerous writes option for RAM loadable ELF case
and allowing writes to entire flash memory.
2023-03-20 11:10:29 +05:30
laokaiyao
c9f780dc2e gpio: support runtime preserve 2023-03-17 11:59:49 +08:00
Marius Vikhammer
75591a8a13 Merge branch 'ci/driver_single_board' into 'master'
ci: update test apps to use run_all_single_board_cases

See merge request espressif/esp-idf!22669
2023-03-13 09:25:42 +08:00
C.S.M
b0b99a9a1b Merge branch 'feature/flash_support_h2' into 'master'
spi_flash: Allow clock frequency up to 64M on ESP32H2

See merge request espressif/esp-idf!22476
2023-03-10 19:13:03 +08:00
Marius Vikhammer
0be8e03907 ci: update test apps to use run_all_single_board_cases 2023-03-10 14:27:09 +08:00
Cao Sen Miao
bc655a6890 spi_flash: Allow clock frequency up to 64M, and make it default on ESP32H2 2023-03-10 11:39:53 +08:00
Armando
d35b6dd852 spi_flash: support write verify feature on esp_flash_write_encrypted API 2023-03-09 14:55:13 +08:00
Armando
110853517a spi_flash: support write verify feature on esp_flash_write API 2023-03-09 14:55:13 +08:00
gaoxu
44dd14dde4 support SPI_FLASH_VERIFY_WRITE feature on esp_flash driver and add config to test it 2023-03-09 14:55:13 +08:00
Jiang Guang Ming
fc9538c63d Merge branch 'feature/add_more_pytest_config_to_flash_mmap' into 'master'
flash mmap: more config options for flash mmap test app

See merge request espressif/esp-idf!21991
2023-03-08 13:44:29 +08:00
Jiang Guang Ming
5414eda027 flash mmap: disable mmap into instruction address when SPI_FLASH_ROM_IMPL enabled 2023-03-06 19:47:18 +08:00
jiangguangming
232da4ca72 flash mmap: more config option for flash mmap test app 2023-03-06 19:47:15 +08:00
Jiang Guang Ming
3556fe9326 spi_flash: enable spi flash cache test on c6 h2 2023-03-04 07:23:59 -08:00
Armando
4997689de5 cache: support h2 and c6 cache error 2023-02-24 16:16:46 +08:00
Omar Chebib
d55060d184 Merge branch 'staging/rename_twdt_config_examples' into 'master'
TWDT: Use the new TWDT Kconfig options in the examples and tests

See merge request espressif/esp-idf!20363
2023-02-20 10:42:23 +08:00
Armando
4144746fc3 esp_mm: shared and non-shared mapping 2023-02-17 13:04:55 +08:00
Omar Chebib
5e5343d429 TWDT: Use the new TWDT Kconfig options in the examples and tests 2023-02-17 11:22:25 +08:00
C.S.M
ae9713d227 Merge branch 'bugfix/wrap_init' into 'master'
spi_flash: initialize wrap in app stage

See merge request espressif/esp-idf!22362
2023-02-15 12:39:12 +08:00
Cao Sen Miao
fd3e0b0b18 esp32h2(ci): enable target test 2023-02-15 10:20:43 +08:00
Cao Sen Miao
29e0258de2 spi_flash: init wrap in app stage 2023-02-14 18:20:53 +08:00
Cao Sen Miao
0d37436f36 spi_flash: Support flash wrap (burst read), flash driver side 2023-02-13 11:10:15 +08:00
Cao Sen Miao
0f8f13d21d spi_flash: only link flash vendor which is officially supported to save IRAM 2023-02-09 10:28:54 +08:00
Armando
d233f3535d flash_mmap: migrate to use esp_mmap driver 2023-02-07 20:23:52 +08:00
Armando
d6844051fc esp_mm: new virtual memory mapping apis via mmu 2023-02-07 20:23:52 +08:00
Wu Zheng Hui
04987ac201 Merge branch 'feature/add_ram_loadable_app_support' into 'master'
feature: add ram loadable app support

See merge request espressif/esp-idf!19465
2023-02-02 10:28:13 +08:00
wuzhenghui
44df5b31af feature: add ram loadable app support 2023-02-01 17:57:22 +08:00
jiangguangming
b0fa18d290 ci: fix typos tag naming of all flash_multi 2023-02-01 08:46:48 +08:00
Cao Sen Miao
94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
Adam Múdry
586e738f8a add: Unit test - don't trigger WDT when erasing chip 2023-01-08 13:58:37 +00:00
Adam Múdry
cfc8332833 spi: Mask esp_flash_erase chip with esp_flash_erase_sector
add: Fix to prevent WDT trigger
add: comments to better explain SPI API

Closes https://github.com/espressif/esp-idf/issues/9945
Closes https://github.com/espressif/esp-idf/issues/9212
Closes https://github.com/espressif/esp-idf/issues/8135
2023-01-08 13:58:37 +00:00
Matus Fabo
1b747867bd spi: implement yield for spi2 and spi3
add: yield functions for spi2 and spi3
add: spi23 start and end functions
change: function names with spi1 that were not specific to spi1
change: chip data for spi2 and spi3 increased for timestamps
change: merge spi_app_func_arg_t into app_func_arg_t
change: moved os_func_data allocation before host check
2023-01-08 13:58:37 +00:00
Armando
b46cfd15a2 mspi: move timing tuning to esp_hw_support 2023-01-06 14:41:20 +08:00
Wan Lei
419544a2c8 Merge branch 'bugfix/fix_micro_error_SPI_HOST_MAX' into 'master'
spi: fix micro SPI_HOST_MAX error

Closes IDFGH-8932

See merge request espressif/esp-idf!21557
2023-01-05 16:07:17 +08:00
Armando
7b3dc05308 mspi: remove mspi 80m ddr mode warning regarding to timing tuning 2023-01-04 12:45:20 +00:00
Michael (XIAO Xufeng)
c42fe6769a Merge branch 'feat/codeowner_spi_flash_docs' into 'master'
docs/spi_flash: add peripherals to codowner of spi_flash doc pages

See merge request espressif/esp-idf!20311
2022-12-29 15:56:35 +08:00
Cao Sen Miao
4713a9a7f2 ESP32H2: Introduce new chip target esp32h2, hello_world example supported 2022-12-29 12:29:14 +08:00
Michael (XIAO Xufeng)
daa4af1b1f docs: split spi_flash api-reference documents to peripherals folder 2022-12-29 00:59:03 +08:00
Omar Chebib
42b2169542 coredump: add support for stacks in external RAM
Tasks having their stacks in SPIRAM can now be part of the coredump written to flash
2022-12-22 12:47:22 +01:00
wanlei
3c37bccb04 spi_flash: fix flash function arg_check with spi host_id 2022-12-21 20:03:46 +08:00
Armando
25114b716e mspi_tuning: fix psram timing tuning bug
Prior to this commit, when calling:
- spi_timing_enter_mspi_low_speed_mode()
- spi_timing_enter_mspi_high_speed_mode()

psram timing is not tuned. This will lead to a stall during early
startup. This bug is on S3, for 80MHz DDR PSRAM

This commit will add psram timing tuning, in these two functions.
2022-12-09 17:23:23 +08:00
Song Ruo Jing
56302544f6 Merge branch 'ci/enable_esp32c6_target_test_stage' into 'master'
CI: Enable esp32c6 target test stage

Closes IDF-5830 and IDF-5831

See merge request espressif/esp-idf!21010
2022-11-29 19:54:05 +08:00
Cao Sen Miao
fa3a8fdd91 esp_flash: correct veriable 'size' description 2022-11-28 16:54:03 +08:00
Song Ruo Jing
1575b9e43a ci: Disable all currently failed target tests for esp32c6 2022-11-28 12:09:08 +08:00
Song Ruo Jing
7466ddfa8c ci: Make consistence between pytest_*.py and .build-test-rules.yml for esp32c6 (i.e. to pass check_test_scripts_build_test_rules.py) 2022-11-28 11:58:30 +08:00
Marius Vikhammer
6a450c4113 Merge branch 'feature/esp_hw_support_pytest' into 'master'
esp_hw_support: migrate to pytest

See merge request espressif/esp-idf!20938
2022-11-28 10:38:54 +08:00
Marius Vikhammer
59e40fafba esp_hw_support: move test to pytest 2022-11-25 16:21:35 +08:00
C.S.M
28b2deaf24 Merge branch 'feature/add_target_esp32h2' into 'master'
ESP32-H2: Introduce new target for ESP32H2

See merge request espressif/esp-idf!21190
2022-11-24 18:31:19 +08:00
Alexey Gerenkov
47c2c13de5 build: Adds support for universal Clang toolchain 2022-11-23 13:25:16 +03:00
Cao Sen Miao
86aa4df5b5 ESP32-H2: Introduce new target for ESP32H2 2022-11-23 14:38:05 +08:00
Omar Chebib
d965b7fdec Merge branch 'staging/esp_static_assert' into 'master'
C/Cxx: Static assertions are now unified

Closes IDFGH-8479

See merge request espressif/esp-idf!20569
2022-11-22 17:04:02 +08:00
C.S.M
54d9da987a Merge branch 'bugfix/flash_large_memory_size' into 'master'
spi_flash: Fix issue that cannot get accurate flash size when encounter large size memory

Closes IDFGH-8063

See merge request espressif/esp-idf!20738
2022-11-22 16:07:17 +08:00
Omar Chebib
cd21058097 C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
Closes https://github.com/espressif/esp-idf/issues/9938
2022-11-21 16:18:08 +08:00
Armando
aba9f80cd2 partition: use esp_partition_munmap instead of spi_flash_munmap 2022-11-09 20:15:17 +08:00
Kevin (Lao Kaiyao)
5bed8fab49 Merge branch 'refactor/rename_h2_to_h4' into 'master'
esp32h2: renaming esp32h2 to esp32h4

Closes IDF-6098

See merge request espressif/esp-idf!20676
2022-11-09 19:19:43 +08:00
Cao Sen Miao
d9f01ed43c spi_flash: bringup for esp32c6 2022-11-09 12:50:46 +08:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
Darian Leung
cf4fea3206 hal: Fix incorrect spi_hal log usage
esp_flash_init_main() can be during startup before the OS has started, thus should use
the EARLY version of logging.
2022-11-04 09:07:30 +01:00
Martin Vychodil
c9c7573f71 Storage: Partition APIs moved to the new component 'esp_partition'
All the partition handling API functions and data-types were moved from the 'spi_flash' component to the new one named 'esp_partition'. See Storage 5.x migration guide for more details
2022-11-02 21:54:45 +01:00
Armando
f1c0530e78 flash_mmap: disable test on c6 2022-11-02 11:21:11 +08:00
Armando (Dou Yiwen)
3e6c045b1c Merge branch 'refactor/move_flash_mmap_tests_to_test_apps' into 'master'
flash_mmap: move flash mmap tests to test apps

Closes IDF-6134 and IDF-5138

See merge request espressif/esp-idf!20789
2022-11-01 20:00:33 +08:00
Armando
ba4d312d86 flash_mmap: format test_mmap.c 2022-11-01 11:27:16 +08:00
Armando
db1bc05bc7 flash_mmap: fix mmap unordered test on c2 2022-11-01 11:27:15 +08:00
Armando
92ad6b36ad flash_mmap: move mmap tests to test_app 2022-11-01 11:27:15 +08:00
Song Ruo Jing
2557e24a28 ci: Enable esp32c6 example, test_apps, and unit tests CI build stage 2022-11-01 11:23:21 +08:00
Cao Sen Miao
b4964279d4 spi_flash: Fix issue that cannot get accurate flash size when encounter large size memory,
Closes https://github.com/espressif/esp-idf/pull/9566
2022-10-31 11:05:36 +08:00
Cao Sen Miao
2c9bb4eb7d spi_flash: Support select flash mode automatically at run time(Quad flash or Octal flash) 2022-10-18 11:25:35 +08:00
Ivan Grokhotkov
0a352a6ff2
vfs, spi_flash: re-enable unit tests for C2 2022-10-12 11:09:36 +02:00
wuzhenghui
ff8dd1e1a8 esp32c6: add spi_flash support 2022-09-26 20:32:13 +08:00
Gao Xu
1005c3b9d5 Merge branch 'feature/add_flash_copy_to_psram_example' into 'master'
system: add an example showing moving Flash content to PSRAM feature

Closes IDF-5156

See merge request espressif/esp-idf!19340
2022-09-21 12:15:19 +08:00
gaoxu
0909f5b230 system: don't disable cache if Flash .text and .rodata are moved to PSRAM 2022-09-19 12:23:23 +08:00
Cao Sen Miao
421e77d773 spi_flash: Add several flash chips HPM(120M) support 2022-09-13 17:06:43 +08:00
KonstantinKondrashov
aea2fe0816 freertos: Adds new APIs to set/get and restore base priority
Closes https://github.com/espressif/esp-idf/issues/7580
2022-09-01 07:07:08 +00:00
Simon
949ddc3501 Merge branch 'test/add_c2_extflash_test' into 'master'
esp_flash: Add EXT flash test on ESP32-C2

See merge request espressif/esp-idf!19700
2022-08-29 11:42:58 +08:00
Cao Sen Miao
0313d2a5b4 esp_flash: Add ext flash on ESP32-C2 2022-08-26 12:53:56 +08:00
Armando
dc5cab7730 esp_psram: rename esp_private/mmu.h to mmu_psram_flash.h
Prior to this commit, esp_psram/include/esp_private/mmu.h contains some
APIs that is used for:
- copy flash content to psram
- necessary sync APIs used by flash_mmap.c, due to above feature

This commit rename it to mmu_psram_flash.h, therefore mmu.h can be used
for real mmu related APIs.

This commit also moves above mention funcitons in `mmu.c` and
`mmu_psram.c` to `mmu_psram_flash.c`, leaving `mmu.c` to be used for
real mmu driver.
2022-08-25 20:35:20 +08:00
Ivan Grokhotkov
d5973b8b14
build system: add 'linux' component to common requirements
'linux' component provides some of the common header files, such as
'sys/queue.h' and 'sys/lock.h'. For chip targets, it is possible to
include these files without having to add any extra requirements.
With this change, the same behavior will apply for the linux target.
2022-08-22 14:50:19 +02:00
songruojing
304a8f142d esp32c6: introduce the target
Add esp32c6 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32c6`
2022-08-19 11:13:02 +08:00
Laukik Hase
85d00a4dac
ci: Fix host-test failures 2022-08-17 10:59:32 +05:30
Ivan Grokhotkov
ab02e15601
spi_flash: use Unity fixture in the partition API test 2022-08-15 18:15:19 +02:00
Ivan Grokhotkov
91d0e016a1
spi_flash: fix build for Linux target
CONFIG_MMU_PAGE_SIZE is not defined for the Linux target, add a
fallback definition.
2022-08-15 18:15:19 +02:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
Shubham Kulkarni
b6d69840e8 partition_table: Support registering custom subtypes 2022-08-03 05:18:37 +00:00
wangyuanze
8781a50abe spi_flash: fix hpm dummy error when using 80m flash and psram 2022-07-28 14:32:30 +08:00
Darian
c8ee369a7c Merge branch 'feature/deprecate-old-cpu-api' into 'master'
HAL: Deprecate old CPU/SoC/Interrupt Controller HAL API

Closes IDF-4919 and IDF-5032

See merge request espressif/esp-idf!18987
2022-07-23 00:37:33 +08:00
Cao Sen Miao
ec6a56ed0c spi_flash: re-enable the HPM mode on several XMC chips 2022-07-22 09:54:56 +08:00
Guillaume Souchere
6005cc9163 hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces
This commit marks all functions in interrupt_controller_hal.h, cpu_ll.h and cpu_hal.h as deprecated.
Users should use functions from esp_cpu.h instead.
2022-07-22 00:06:06 +08:00
Darian Leung
781d06af73 esp_hw_support: Remove compare_set.h API
This function removes the following legacy atomic CAS functions:

From compare_set.h (file removed):
- compare_and_set_native()
- compare_and_set_extram()

From portmacro.h
- uxPortCompareSet()
- uxPortCompareSetExtram()

Users should call esp_cpu_compare_and_set() instead as this function hides the details
of atomic CAS on internal and external RAM addresses.

Due to the removal of compare_set.h, some missing header includes are also fixed in this commit.
2022-07-22 00:06:06 +08:00
Jiang Jiang Jian
cf5b097c88 Merge branch 'bugfix/further_fix_for_mspi_current_leakage' into 'master'
system/sleep: further fix spi flash/ram current leakage

Closes IDF-4720

See merge request espressif/esp-idf!18566
2022-07-21 19:14:26 +08:00
Jing Li
66395a5c00 system/sleep: further fix spi flash/ram current leakage 2022-07-21 19:14:26 +08:00
Cao Sen Miao
e69f658ac6 flash_encryption: Add several test environments for flash encryption test 2022-07-20 12:49:42 +08:00
Fu Hanxi
05d2357062 feat: use standalone project idf-build-apps for find/build apps utils 2022-07-14 08:26:31 +08:00
Cao Sen Miao
683d92bc88 flash_encryption: Fix issue that flash encryption cannot work when 8-line psram enabled,
Closes https://github.com/espressif/esp-idf/issues/9244,
                  Closes https://github.com/espressif/esp-idf/issues/9287
2022-07-12 16:08:57 +08:00
Cao Sen Miao
a690a87829 spi_flash: Remove legacy spi_flash drivers 2022-07-01 11:01:34 +08:00
Cao Sen Miao
d9b4b82edc spi_flash: Modify documentations 2022-07-01 10:59:34 +08:00
Cao Sen Miao
64147c3794 CXX: Make spi_flash related part works 2022-07-01 10:59:34 +08:00
Cao Sen Miao
435bbb444c spi_flash: move cache stuff to private 2022-07-01 10:59:34 +08:00
Sudeep Mohanty
3cd2b67f84 Revert "hal: Fix incorrect spi_hal log usage"
This reverts commit a65165dd52.
2022-06-29 14:52:28 +00:00
Armando
f31d88e3fe spi: move spi_common_internal to esp_private 2022-06-24 19:12:13 +08:00
Zim Kalinowski
c414d7b292 freertos: increase timeout for multi flash test cases 2022-06-20 10:25:39 +00:00
Armando (Dou Yiwen)
0b80546f8e Merge branch 'feature/new_esp_psram_component' into 'master'
esp_psram: new esp psram component

Closes IDF-4318, IDF-4382, IDF-4841, and IDFGH-7192

See merge request espressif/esp-idf!18050
2022-06-15 19:16:56 +08:00