Commit Graph

686 Commits

Author SHA1 Message Date
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
Armando
38e5043ae8 esp_psram: new psram component 2022-06-14 15:44:27 +08:00
Darian
135480396a Merge branch 'bugfix/spi_should_use_early_log' into 'master'
SPI: Fix incorrect log usage

See merge request espressif/esp-idf!17017
2022-06-14 15:24:37 +08:00
Armando
44f771c713 psram: support s3 copy flash to psram 2022-06-10 10:39:29 +08:00
Cao Sen Miao
6589daabb9 MMU: Add configurable mmu page size support on ESP32C2 2022-06-08 19:34:31 +08:00
Darian Leung
a65165dd52 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-06-08 19:19:44 +08:00
Michael (XIAO Xufeng)
773715d900 Merge branch 'feature/support_refresh_brownout_v1' into 'master'
spi_flash: send reset when brownout detected on XMC flash

Closes IDF-3882

See merge request espressif/esp-idf!16873
2022-06-06 16:27:58 +08:00
Michael (XIAO Xufeng)
6a8aed12ee ci: partially enable ut tests for esp32c2
Disabled test cases are tracked in:

 IDF-4465, IDF-5045, IDF-5057, IDF-5058, IDF-5059, IDF-5060, IDF-5061, IDF-5131

- test_fatfs: IDF-5136

- test_pm: IDF-5053

- test_cache_mmu: IDF-5138

- test_partitions: IDF-5137

- test_vfs: IDF-5139

- test_freertos: IDF-5140

- test_wpa_supplicant: IDF-5046

- test_mbedtls: IDF-5141

- test_pthread: IDF-5142

- test_protocomm: IDF-5143

- test_lightsleep: IDF-5053

- test_taskwdt: IDF-5055

- test_tcp_transport: IDF-5144

- test_app_update: IDF-5145

- test_timer: IDF-5052

- test_spi: IDF-5146

- test_rtc_clk: IDF-5060

- test_heap: IDF-5167

ci: fixed issues for tests of libgcc, ets_timer, newlib

test_pm: support on C2
2022-06-02 14:23:35 +08:00
Cao Sen Miao
6a2d3509dc spi_flash: Making XMC flash works more stable when brownout detected 2022-06-02 10:38:55 +08:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
morris
4352c39e3e Merge branch 'feature/cache_c2_support' into 'master'
cache: access error & illegal error ll functions

Closes IDF-3820

See merge request espressif/esp-idf!18203
2022-05-30 11:40:11 +08:00
Jiang Jiang Jian
f3922f1b7f Merge branch 'feature/flash_mmap_refactor' into 'master'
flash mmap: abstract R/W of MMU table instead of reg access

See merge request espressif/esp-idf!16882
2022-05-29 13:56:37 +08:00
Marius Vikhammer
0687daf2c8 kconfig: move remaining kconfig options out of target component
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
Armando
8532d09259 cache: access error & illegal error ll functions 2022-05-23 15:00:47 +08:00
jiangguangming
9719979e4f UT: add a timeout-tag to make the esp_flash UT ci pass 2022-05-20 16:46:28 +08:00
jiangguangming
9c6afee12f flash mmap: abstract R/W MMU table instead of reg access 2022-05-20 16:46:27 +08:00
wuzhenghui
d8de64bff8 Kconfig: add depends 2022-05-06 15:26:43 +08:00
jiangguangming
a9f8b20431 spi_flash: enable ESP32C2 SPI_FLASH_ROM_IMPL 2022-05-05 17:41:11 +08:00
Simon
e4d85807ea Merge branch 'feature/spi_flash_esp8684_support' into 'master'
spi_flash: refactor spi_flash clock configuration logic and support esp32c2

Closes IDF-4474, IDF-4025, and IDF-4066

See merge request espressif/esp-idf!16602
2022-04-27 11:05:45 +08:00