Commit Graph

727 Commits

Author SHA1 Message Date
Cao Sen Miao
5bd535e9e0 spi_flash: Add strict test for flash suspend 2023-05-11 20:12:41 +08:00
Cao Sen Miao
ed96dadd06 spi_flash: 2nd stage for supporting flash suspend. (1). Support more esp chips (2). Improve real-time performance (3). Making timing more stable (4) Add documents 2023-05-11 20:10:30 +08:00
Armando
dbf3612d6d spi_flash: replace flash clock src change API with mspi timing API 2023-05-04 17:05:35 +08:00
Armando
8eec6558d1 mspi: refactor timing tuning driver to make it compatible with p4 2023-05-04 17:05:35 +08:00
Marius Vikhammer
9357f0977c Merge branch 'ci/chip_support_network_invalid_kconfigs' into 'master'
ci: remove redundant ci configs for chip support and network components

See merge request espressif/esp-idf!23430
2023-04-26 17:26:05 +08:00
Marius Vikhammer
bca026455c ci: remove redundent ci configs for chip support and network components
CI would build psram config test apps even for target with no psram.
2023-04-26 09:54:29 +08:00
Radek Tandler
d8f2c0e715 Merge branch 'feature/storage_host_test_ffs' into 'master'
fatfs: host test migrated to CMake and esp_partition emulation for linux

See merge request espressif/esp-idf!23265
2023-04-25 15:30:09 +08:00
Kevin (Lao Kaiyao)
6b5077f2d7 Merge branch 'refactor/remove_esp32h4_target' into 'master'
esp32h4: removed esp32h4 target (stage 2)

Closes IDF-7237, IDF-7238, and IDF-7239

See merge request espressif/esp-idf!23179
2023-04-24 23:34:19 +08:00
laokaiyao
bf2a7b2df6 esp32h4: removed esp32h4 related codes 2023-04-23 12:03:07 +00:00
wanlei
b519eed230 spi_flash: fix config SPI_FLASH_SHARE_SPI1_BUS dependency 2023-04-21 18:57:06 +08:00
radek.tandler
13a305656d host_test: cleanup of make based obsolete code in wl, fatfs and spi_flash 2023-04-21 10:45:17 +02:00
laokaiyao
b7053b46ef esp32h4: remove esp32h4 target from peripherals 2023-04-20 15:19:45 +08:00
C.S.M
247cc7dd87 Merge branch 'feature/cache_32M_map' into 'master'
spi_flash: 32M bits address flash cache map

Closes IDF-7119 and IDF-4693

See merge request espressif/esp-idf!23021
2023-04-14 16:01:25 +08:00
Cao Sen Miao
c7053641bc spi_flash: 32M bits address flash map, (for customer use only) 2023-04-14 11:37:09 +08:00
Radek Tandler
d8b8ab5d43 Merge branch 'feature/wl_host_test_cmake' into 'master'
Storage: Migrate WL host test to CMake

See merge request espressif/esp-idf!23015
2023-04-13 13:16:57 +08:00
radek.tandler
0402874d3c host_test: wl migrated to Cmake and linux emulation of esp_partition
- build system changed to CMake
 - host tests changed to use partition api on linux instead of mocked code
 - extended wl flash host tests to cover power off recovery code
2023-04-11 16:16:53 +02:00
Darian Leung
3d2e674326 freertos: Move private API additions to "freertos_idf_additions_priv.h"
Previously, some IDF FreeRTOS API additions that were meant to be private were
exposed through the same "idf_additions.h" header. This commit moves those
functions to a separate header included via
"esp_private/freertos_idf_additions_priv.h" so that they are not mistaken as
public API by users.

This commit also fixes some missing include and C++ guards in idf_additions.h
2023-04-07 15:24:34 +08:00
wanlei
500aab6618 add a test to verify SPI_FLASH_ENABLE_COUNTERS feature 2023-04-06 11:40:40 +08:00
gaoxu
542a61b6cb support SPI_FLASH_ENABLE_COUNTERS feature on esp_flash driver and rename the functions to esp_flash_xx 2023-04-06 11:40:40 +08:00
Armando
739b3f03fb kconfig: make 120 MSPI DDR as experimental feature 2023-04-03 10:30:50 +08:00
Jiang Guang Ming
e8e58f57a8 spi_flash: support flash mmap pytest on C6 and H2 2023-03-27 00:22:58 -07:00
Cao Sen Miao
5bac46b3e8 MMU: Fix stale data being read on memory mapped instruction page 2023-03-24 18:59:57 +08:00
Mahavir Jain
86b6f87d68 Merge branch 'bugfix/ram_loadable_elf_flash_mmap_issue' into 'master'
Fix flash mmap data integrity issue for RAM loadable ELF case

See merge request espressif/esp-idf!22802
2023-03-23 12:13:35 +08:00
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