Sfoglia il codice sorgente

system: don't disable cache if Flash .text and .rodata are moved to PSRAM

gaoxu 3 anni fa
parent
commit
0909f5b230
1 ha cambiato i file con 3 aggiunte e 2 eliminazioni
  1. 3 2
      components/spi_flash/spi_flash_os_func_app.c

+ 3 - 2
components/spi_flash/spi_flash_os_func_app.c

@@ -22,6 +22,7 @@
 
 #include "esp_private/spi_common_internal.h"
 
+#define SPI_FLASH_CACHE_NO_DISABLE  (CONFIG_SPI_FLASH_AUTO_SUSPEND || (CONFIG_SPIRAM_FETCH_INSTRUCTIONS && CONFIG_SPIRAM_RODATA))
 static const char TAG[] = "spi_flash";
 
 /*
@@ -60,14 +61,14 @@ static inline bool on_spi1_check_yield(spi1_app_func_arg_t* ctx);
 
 IRAM_ATTR static void cache_enable(void* arg)
 {
-#ifndef CONFIG_SPI_FLASH_AUTO_SUSPEND
+#if !SPI_FLASH_CACHE_NO_DISABLE
     spi_flash_enable_interrupts_caches_and_other_cpu();
 #endif
 }
 
 IRAM_ATTR static void cache_disable(void* arg)
 {
-#ifndef CONFIG_SPI_FLASH_AUTO_SUSPEND
+#if !SPI_FLASH_CACHE_NO_DISABLE
     spi_flash_disable_interrupts_caches_and_other_cpu();
 #endif
 }