diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c2.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c2.c index dec91e78ae7..8aa9df34935 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c2.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c2.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2020-2023 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -34,6 +34,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { SET_PERI_REG_MASK(SPI_MEM_USER_REG(0), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M); diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c3.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c3.c index 52dfafa9919..efcae990982 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c3.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c3.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2020-2023 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -35,6 +35,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { SET_PERI_REG_MASK(SPI_MEM_USER_REG(0), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M); diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c5.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c5.c index 2dd79f2c600..a87d800dfc5 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c5.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c5.c @@ -31,6 +31,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { SET_PERI_REG_MASK(SPI_MEM_USER_REG(0), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M); diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c6.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c6.c index eaa3b161cde..4e6701de9ae 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c6.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c6.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -31,6 +31,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { SET_PERI_REG_MASK(SPI_MEM_USER_REG(0), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M); diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32h2.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32h2.c index f4a436f49d0..11b366b1de9 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32h2.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32h2.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -32,6 +32,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { SET_PERI_REG_MASK(SPI_MEM_USER_REG(0), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M); diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32p4.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32p4.c index 5e9433ca3ff..2ac9b2d0e1b 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32p4.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32p4.c @@ -28,6 +28,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { SET_PERI_REG_MASK(SPI_MEM_C_USER_REG, SPI_MEM_C_CS_HOLD_M | SPI_MEM_C_CS_SETUP_M); diff --git a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32s3.c b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32s3.c index c02aad5bbf7..046553332cc 100644 --- a/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32s3.c +++ b/components/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32s3.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2020-2023 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -41,6 +41,11 @@ void bootloader_flash_update_id() chip->device_id = bootloader_read_flash_id(); } +void bootloader_flash_update_size(uint32_t size) +{ + rom_spiflash_legacy_data->chip.chip_size = size; +} + void IRAM_ATTR bootloader_flash_cs_timing_config() { //SPI0/1 share the cs_hold / cs_setup, cd_hold_time / cd_setup_time, cs_hold_delay registers for FLASH, so we only need to set SPI0 related registers here diff --git a/tools/test_apps/system/build_test/sdkconfig.ci.spi_flash_opts b/tools/test_apps/system/build_test/sdkconfig.ci.spi_flash_opts new file mode 100644 index 00000000000..b39a57479b1 --- /dev/null +++ b/tools/test_apps/system/build_test/sdkconfig.ci.spi_flash_opts @@ -0,0 +1 @@ +CONFIG_SPI_FLASH_SIZE_OVERRIDE=y