@@ -48,6 +48,7 @@ void esp_system_reset_modules_on_exit(void)
4848 modem_lpcon_ll_reset_all (& MODEM_LPCON );
4949#endif
5050 // Set Peripheral clk rst
51+ SET_PERI_REG_MASK (PCR_MSPI_CLK_CONF_REG , PCR_MSPI_AXI_RST_EN ); // Must reset mspi AXI before reset mspi core.
5152 SET_PERI_REG_MASK (PCR_MSPI_CONF_REG , PCR_MSPI_RST_EN );
5253 SET_PERI_REG_MASK (PCR_UART0_CONF_REG , PCR_UART0_RST_EN );
5354 SET_PERI_REG_MASK (PCR_UART1_CONF_REG , PCR_UART1_RST_EN );
@@ -59,9 +60,11 @@ void esp_system_reset_modules_on_exit(void)
5960 SET_PERI_REG_MASK (PCR_SDIO_SLAVE_CONF_REG , PCR_SDIO_SLAVE_RST_EN );
6061 //ETM may directly control the GPIO or other peripherals even after CPU reset. Reset to stop these control.
6162 SET_PERI_REG_MASK (PCR_ETM_CONF_REG , PCR_ETM_RST_EN );
63+ SET_PERI_REG_MASK (PCR_REGDMA_CONF_REG , PCR_REGDMA_RST_EN );
6264
6365 // Clear Peripheral clk rst
6466 CLEAR_PERI_REG_MASK (PCR_MSPI_CONF_REG , PCR_MSPI_RST_EN );
67+ CLEAR_PERI_REG_MASK (PCR_MSPI_CLK_CONF_REG , PCR_MSPI_AXI_RST_EN ); // Must release mspi core reset before mspi AXI.
6568 CLEAR_PERI_REG_MASK (PCR_UART0_CONF_REG , PCR_UART0_RST_EN );
6669 CLEAR_PERI_REG_MASK (PCR_UART1_CONF_REG , PCR_UART1_RST_EN );
6770 CLEAR_PERI_REG_MASK (PCR_SYSTIMER_CONF_REG , PCR_SYSTIMER_RST_EN );
@@ -70,6 +73,7 @@ void esp_system_reset_modules_on_exit(void)
7073 CLEAR_PERI_REG_MASK (PCR_PWM_CONF_REG , PCR_PWM_RST_EN );
7174 CLEAR_PERI_REG_MASK (PCR_SDIO_SLAVE_CONF_REG , PCR_SDIO_SLAVE_RST_EN );
7275 CLEAR_PERI_REG_MASK (PCR_ETM_CONF_REG , PCR_ETM_RST_EN );
76+ CLEAR_PERI_REG_MASK (PCR_REGDMA_CONF_REG , PCR_REGDMA_RST_EN );
7377
7478 // Reset crypto peripherals. This ensures a clean state for the crypto peripherals after a CPU restart
7579 // and hence avoiding any possibility with crypto failure in ROM security workflows.
0 commit comments