Merge branch 'change/mmu_psram_anti_fi_bootloader_size' into 'master'

change(hal): exclude PSRAM anti-FI check from bootloader build

See merge request espressif/esp-idf!51188
This commit is contained in:
Mahavir Jain
2026-07-30 07:04:31 +05:30
3 changed files with 6 additions and 2 deletions

View File

@@ -226,6 +226,7 @@ __attribute__((always_inline)) static inline void mmu_ll_write_entry(uint32_t mm
REG_WRITE(SPI_MEM_MMU_ITEM_INDEX_REG(0), entry_id);
REG_WRITE(SPI_MEM_MMU_ITEM_CONTENT_REG(0), mmu_raw_value);
#if !BOOTLOADER_BUILD && !ESP_TEE_BUILD
// Anti-FI check to confirm the encryption status for PSRAM entry.
// This avoids a potential FI attacks to keep PSRAM unencrypted and
// hence read out plaintext in execute from PSRAM model.
@@ -234,6 +235,7 @@ __attribute__((always_inline)) static inline void mmu_ll_write_entry(uint32_t mm
} else {
ESP_FAULT_ASSERT(!(mmu_ll_cache_encryption_enabled() && target == MMU_TARGET_PSRAM0 && efuse_hal_chip_revision() > 100));
}
#endif // !BOOTLOADER_BUILD && !ESP_TEE_BUILD
}
/**

View File

@@ -227,7 +227,7 @@ __attribute__((always_inline)) static inline void mmu_ll_write_entry(uint32_t mm
mmu_raw_value = mmu_val | SOC_MMU_VALID;
REG_WRITE(SPI_MEM_MMU_ITEM_INDEX_REG(0), entry_id);
REG_WRITE(SPI_MEM_MMU_ITEM_CONTENT_REG(0), mmu_raw_value);
#if !BOOTLOADER_BUILD && !ESP_TEE_BUILD
// Anti-FI check to confirm the encryption status for PSRAM entry.
// This avoids a potential FI attacks to keep PSRAM unencrypted and
// hence read out plaintext in execute from PSRAM model.
@@ -236,6 +236,7 @@ __attribute__((always_inline)) static inline void mmu_ll_write_entry(uint32_t mm
} else {
ESP_FAULT_ASSERT(!(mmu_ll_cache_encryption_enabled() && target == MMU_TARGET_PSRAM0 && efuse_hal_chip_revision() > 100));
}
#endif // !BOOTLOADER_BUILD && !ESP_TEE_BUILD
}
/**

View File

@@ -290,7 +290,7 @@ __attribute__((always_inline)) static inline void mmu_ll_write_entry(uint32_t mm
REG_WRITE(index_reg, entry_id);
REG_WRITE(content_reg, mmu_val);
#if !BOOTLOADER_BUILD
// Anti-FI check to confirm the encryption status for PSRAM entry.
// This avoids a potential FI attacks to keep PSRAM unencrypted and
// hence read out plaintext in execute from PSRAM model.
@@ -299,6 +299,7 @@ __attribute__((always_inline)) static inline void mmu_ll_write_entry(uint32_t mm
} else {
ESP_FAULT_ASSERT(!(mmu_ll_cache_encryption_enabled() && target == MMU_TARGET_PSRAM0));
}
#endif // !BOOTLOADER_BUILD
}
#if SOC_PSRAM_ENCRYPTION_PAGE_CONFIGURABLE