mirror of
https://github.com/espressif/esp-idf.git
synced 2026-01-19 08:35:36 +00:00
feat(psram): support 250MHz in experimental
This commit is contained in:
@@ -52,15 +52,15 @@ menu "LDO Regulator Configurations"
|
||||
choice ESP_LDO_VOLTAGE_PSRAM_DOMAIN
|
||||
prompt "PSRAM power domain voltage"
|
||||
depends on ESP_LDO_RESERVE_PSRAM
|
||||
default ESP_LDO_VOLTAGE_PSRAM_1900_MV
|
||||
default ESP_LDO_VOLTAGE_PSRAM_1800_MV
|
||||
help
|
||||
Select the voltage used by the PSRAM power domain.
|
||||
|
||||
config ESP_LDO_VOLTAGE_PSRAM_1900_MV
|
||||
bool "1.9V"
|
||||
config ESP_LDO_VOLTAGE_PSRAM_1800_MV
|
||||
bool "1.8V"
|
||||
endchoice
|
||||
|
||||
config ESP_LDO_VOLTAGE_PSRAM_DOMAIN
|
||||
int
|
||||
default 1900 if ESP_LDO_VOLTAGE_PSRAM_1900_MV
|
||||
default 1800 if ESP_LDO_VOLTAGE_PSRAM_1800_MV
|
||||
endmenu
|
||||
|
||||
@@ -72,7 +72,7 @@ TEST_CASE("LDO channel state dump", "[LDO][manual][ignore]")
|
||||
esp_ldo_channel_handle_t success_ldo_chans[3] = {};
|
||||
esp_ldo_channel_config_t ldo_chan_config = {
|
||||
.chan_id = 2,
|
||||
.voltage_mv = 1900,
|
||||
.voltage_mv = 1800,
|
||||
};
|
||||
TEST_ESP_OK(esp_ldo_acquire_channel(&ldo_chan_config, &success_ldo_chans[0]));
|
||||
|
||||
|
||||
@@ -57,6 +57,8 @@
|
||||
|
||||
#if CONFIG_SPIRAM_SPEED_80M
|
||||
#define AP_HEX_PSRAM_MPLL_DEFAULT_FREQ_MHZ 320
|
||||
#elif CONFIG_SPIRAM_SPEED_250M
|
||||
#define AP_HEX_PSRAM_MPLL_DEFAULT_FREQ_MHZ 500
|
||||
#else
|
||||
#define AP_HEX_PSRAM_MPLL_DEFAULT_FREQ_MHZ 400
|
||||
#endif
|
||||
@@ -467,13 +469,6 @@ esp_err_t esp_psram_impl_enable(void)
|
||||
mode_reg.mr2.density == 0x7 ? PSRAM_SIZE_32MB :
|
||||
mode_reg.mr2.density == 0x6 ? PSRAM_SIZE_64MB : 0;
|
||||
|
||||
#if CONFIG_SPIRAM_SPEED_250M
|
||||
if (mode_reg.mr2.density == 0x7) {
|
||||
ESP_EARLY_LOGE(TAG, "PSRAM Not support 250MHz speed");
|
||||
return ESP_ERR_NOT_SUPPORTED;
|
||||
}
|
||||
#endif
|
||||
|
||||
s_config_mspi_for_psram();
|
||||
mspi_timing_psram_tuning();
|
||||
psram_ctrlr_ll_enable_variable_dummy(PSRAM_CTRLR_LL_MSPI_ID_2, true);
|
||||
|
||||
@@ -30,8 +30,11 @@ menu "PSRAM config"
|
||||
help
|
||||
Select the speed for the PSRAM chip.
|
||||
|
||||
config SPIRAM_SPEED_250M
|
||||
depends on !ESP32P4_SELECTS_REV_LESS_V3
|
||||
bool "250MHz clock speed"
|
||||
|
||||
config SPIRAM_SPEED_200M
|
||||
depends on IDF_EXPERIMENTAL_FEATURES
|
||||
bool "200MHz clock speed"
|
||||
|
||||
config SPIRAM_SPEED_80M
|
||||
@@ -47,6 +50,7 @@ menu "PSRAM config"
|
||||
default 80 if SPIRAM_SPEED_80M
|
||||
default 100 if SPIRAM_SPEED_100M
|
||||
default 200 if SPIRAM_SPEED_200M
|
||||
default 250 if SPIRAM_SPEED_250M
|
||||
|
||||
config SPIRAM_FETCH_INSTRUCTIONS
|
||||
bool
|
||||
|
||||
@@ -129,7 +129,7 @@ static inline void ldo_ll_voltage_to_dref_mul(int ldo_unit, int voltage_mv, uint
|
||||
matched_dref = EFUSE.rd_mac_sys_2.ldo_vo1_dref;
|
||||
}
|
||||
}
|
||||
if (ldo_unit == 1 && voltage_mv == 1900) {
|
||||
if (ldo_unit == 1 && voltage_mv == 1800) {
|
||||
if (EFUSE.rd_mac_sys_2.ldo_vo2_dref && EFUSE.rd_mac_sys_3.ldo_vo2_mul) {
|
||||
matched_mul = EFUSE.rd_mac_sys_3.ldo_vo2_mul;
|
||||
matched_dref = EFUSE.rd_mac_sys_2.ldo_vo2_dref;
|
||||
|
||||
Reference in New Issue
Block a user