From bf83c4ebee145170676189fd336778560df85ce1 Mon Sep 17 00:00:00 2001 From: Yilin Sun Date: Sat, 11 Feb 2023 11:01:16 +0800 Subject: [PATCH] Changed QSPI IO speed to high. Signed-off-by: Yilin Sun --- assets/FIRE_STM32H750_PRO_QSPI.FLM | Bin 87492 -> 87444 bytes board/peripherals.c | 21 +++++++++------------ include/boot_header.h | 2 ++ 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/assets/FIRE_STM32H750_PRO_QSPI.FLM b/assets/FIRE_STM32H750_PRO_QSPI.FLM index 472cd5997bbf9100135236a74b7cf0efa0f8ae9e..f7395fe9ef8d9d7ac90815590ee0e0d92aee5d17 100755 GIT binary patch delta 2237 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 diff --git a/board/peripherals.c b/board/peripherals.c index 125b1aa..22a7185 100644 --- a/board/peripherals.c +++ b/board/peripherals.c @@ -36,50 +36,50 @@ void HAL_QSPI_MspInit(QSPI_HandleTypeDef* qspiHandle) { __HAL_RCC_QSPI_CLK_ENABLE(); - __HAL_RCC_GPIOG_CLK_ENABLE(); - __HAL_RCC_GPIOF_CLK_ENABLE(); - __HAL_RCC_GPIOH_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); + __HAL_RCC_GPIOF_CLK_ENABLE(); + __HAL_RCC_GPIOG_CLK_ENABLE(); + __HAL_RCC_GPIOH_CLK_ENABLE(); GPIO_InitStruct.Pin = GPIO_PIN_9 | GPIO_PIN_14; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate = GPIO_AF9_QUADSPI; HAL_GPIO_Init(GPIOG, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_6; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate = GPIO_AF10_QUADSPI; HAL_GPIO_Init(GPIOG, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_6 | GPIO_PIN_7; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate = GPIO_AF9_QUADSPI; HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_8 | GPIO_PIN_9; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate = GPIO_AF10_QUADSPI; HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_2 | GPIO_PIN_3; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate = GPIO_AF9_QUADSPI; HAL_GPIO_Init(GPIOH, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_2; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate = GPIO_AF9_QUADSPI; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); } @@ -90,11 +90,8 @@ void HAL_QSPI_MspDeInit(QSPI_HandleTypeDef* qspiHandle) { __HAL_RCC_QSPI_CLK_DISABLE(); HAL_GPIO_DeInit(GPIOG, GPIO_PIN_9 | GPIO_PIN_14 | GPIO_PIN_6); - HAL_GPIO_DeInit(GPIOF, GPIO_PIN_6 | GPIO_PIN_7 | GPIO_PIN_8 | GPIO_PIN_9); - HAL_GPIO_DeInit(GPIOH, GPIO_PIN_2 | GPIO_PIN_3); - HAL_GPIO_DeInit(GPIOB, GPIO_PIN_2); } } \ No newline at end of file diff --git a/include/boot_header.h b/include/boot_header.h index dd3a7a9..6ac3179 100644 --- a/include/boot_header.h +++ b/include/boot_header.h @@ -6,6 +6,8 @@ #define BOOT_HEADER_SIGNATURE_VALID 0x46434642 /* FCFB */ #define BOOT_HEADER_CONFIG_INIT_SDRAM_Pos 0 #define BOOT_HEADER_CONFIG_INIT_SDRAM_Msk (1 << BOOT_HEADER_CONFIG_INIT_SDRAM_Pos) +#define BOOT_HEADER_CONFIG_KEEP_RTC_Pos 1 +#define BOOT_HEADER_CONFIG_KEEP_RTC_Msk (1 << BOOT_HEADER_CONFIG_KEEP_RTC_Msk) typedef struct { uint32_t signature;