mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-30 10:47:19 +02:00
fix(gpio_reserve): reserve the mspi pin regarding line mode
This commit is contained in:
@ -157,8 +157,18 @@ void IRAM_ATTR esp_mspi_pin_init(void)
|
|||||||
void esp_mspi_pin_reserve(void)
|
void esp_mspi_pin_reserve(void)
|
||||||
{
|
{
|
||||||
uint64_t reserve_pin_mask = 0;
|
uint64_t reserve_pin_mask = 0;
|
||||||
|
uint8_t mspi_io;
|
||||||
for (esp_mspi_io_t i = 0; i < ESP_MSPI_IO_MAX; i++) {
|
for (esp_mspi_io_t i = 0; i < ESP_MSPI_IO_MAX; i++) {
|
||||||
reserve_pin_mask |= BIT64(esp_mspi_get_io(i));
|
#if SOC_SPI_MEM_SUPPORT_OPI_MODE
|
||||||
|
if (!bootloader_flash_is_octal_mode_enabled()
|
||||||
|
&& i >= ESP_MSPI_IO_DQS && i <= ESP_MSPI_IO_D7) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
mspi_io = esp_mspi_get_io(i);
|
||||||
|
if (mspi_io < 64) { // 'reserve_pin_mask' have 64 bits length
|
||||||
|
reserve_pin_mask |= BIT64(mspi_io);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
esp_gpio_reserve(reserve_pin_mask);
|
esp_gpio_reserve(reserve_pin_mask);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user