mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-11-04 06:11:06 +00:00 
			
		
		
		
	Merge branch 'feature/support_new_psram_v4.3' into 'release/v4.3'
psram: add ESP32-D0WD-R2-V3 support(backport v4.3) See merge request espressif/esp-idf!16707
This commit is contained in:
		@@ -119,6 +119,11 @@ typedef enum {
 | 
			
		||||
#define D2WD_PSRAM_CLK_IO          CONFIG_D2WD_PSRAM_CLK_IO  // Default value is 9
 | 
			
		||||
#define D2WD_PSRAM_CS_IO           CONFIG_D2WD_PSRAM_CS_IO   // Default value is 10
 | 
			
		||||
 | 
			
		||||
// There is no reason to change the pin of an embedded psram.
 | 
			
		||||
// So define the number of pin directly, instead of configurable.
 | 
			
		||||
#define D0WDR2_V3_PSRAM_CLK_IO    6
 | 
			
		||||
#define D0WDR2_V3_PSRAM_CS_IO     16
 | 
			
		||||
 | 
			
		||||
// For ESP32-PICO chip, the psram share clock with flash. The flash clock pin is fixed, which is IO6.
 | 
			
		||||
#define PICO_PSRAM_CLK_IO          6
 | 
			
		||||
#define PICO_PSRAM_CS_IO           CONFIG_PICO_PSRAM_CS_IO   // Default value is 10
 | 
			
		||||
@@ -847,6 +852,16 @@ esp_err_t IRAM_ATTR psram_enable(psram_cache_mode_t mode, psram_vaddr_mode_t vad
 | 
			
		||||
        ESP_EARLY_LOGI(TAG, "This chip is ESP32-D0WD");
 | 
			
		||||
        psram_io.psram_clk_io = D0WD_PSRAM_CLK_IO;
 | 
			
		||||
        psram_io.psram_cs_io  = D0WD_PSRAM_CS_IO;
 | 
			
		||||
    } else if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32D0WDR2V3) {
 | 
			
		||||
        ESP_EARLY_LOGI(TAG, "This chip is ESP32-D0WDR2-V3");
 | 
			
		||||
        rtc_vddsdio_config_t cfg = rtc_vddsdio_get_config();
 | 
			
		||||
        if (cfg.tieh != RTC_VDDSDIO_TIEH_3_3V) {
 | 
			
		||||
            ESP_EARLY_LOGE(TAG, "VDDSDIO is not 3.3V");
 | 
			
		||||
            return ESP_FAIL;
 | 
			
		||||
        }
 | 
			
		||||
        s_clk_mode = PSRAM_CLK_MODE_NORM;
 | 
			
		||||
        psram_io.psram_clk_io = D0WDR2_V3_PSRAM_CLK_IO;
 | 
			
		||||
        psram_io.psram_cs_io  = D0WDR2_V3_PSRAM_CS_IO;
 | 
			
		||||
    } else {
 | 
			
		||||
        ESP_EARLY_LOGE(TAG, "Not a valid or known package id: %d", pkg_ver);
 | 
			
		||||
        abort();
 | 
			
		||||
 
 | 
			
		||||
@@ -116,6 +116,7 @@
 | 
			
		||||
#define EFUSE_RD_CHIP_VER_PKG_ESP32U4WDH   4
 | 
			
		||||
#define EFUSE_RD_CHIP_VER_PKG_ESP32PICOD4  5
 | 
			
		||||
#define EFUSE_RD_CHIP_VER_PKG_ESP32PICOV302  6
 | 
			
		||||
#define EFUSE_RD_CHIP_VER_PKG_ESP32D0WDR2V3  7
 | 
			
		||||
/* EFUSE_RD_SPI_PAD_CONFIG_HD : RO ;bitpos:[8:4] ;default: 5'b0 ; */
 | 
			
		||||
/*description: read for SPI_pad_config_hd*/
 | 
			
		||||
#define EFUSE_RD_SPI_PAD_CONFIG_HD  0x0000001F
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user