drivers: flash : introduce a new driver for the OCTOSPI
This is the stm32 octospi driver based on the exisitng quadspi for stm32 devices and source code from the STM32Cube. This drivers initialized the peripheral and the NOR memory in SPI or OctoSPI mode with STR or DTR data Transfer rates. The NOR-flash can provide the SDFP table directly (if supported) or through the DeviceTree. Limitation: no DMA transfer. Signed-off-by: Francois Ramu <francois.ramu@st.com>
This commit is contained in:
parent
712d2537be
commit
16754378fb
4 changed files with 1621 additions and 0 deletions
|
@ -20,6 +20,7 @@ zephyr_library_sources_ifdef(CONFIG_SOC_FLASH_NIOS2_QSPI soc_flash_nios2_qspi.c)
|
|||
zephyr_library_sources_ifdef(CONFIG_SOC_FLASH_GECKO flash_gecko.c)
|
||||
zephyr_library_sources_ifdef(CONFIG_SOC_FLASH_RV32M1 soc_flash_rv32m1.c)
|
||||
zephyr_library_sources_ifdef(CONFIG_FLASH_STM32_QSPI flash_stm32_qspi.c)
|
||||
zephyr_library_sources_ifdef(CONFIG_FLASH_STM32_OSPI flash_stm32_ospi.c)
|
||||
zephyr_library_sources_ifdef(CONFIG_FLASH_MCUX_FLEXSPI_MX25UM51345G flash_mcux_flexspi_mx25um51345g.c)
|
||||
zephyr_library_sources_ifdef(CONFIG_FLASH_MCUX_FLEXSPI_NOR flash_mcux_flexspi_nor.c)
|
||||
zephyr_library_sources_ifdef(CONFIG_FLASH_MCUX_FLEXSPI_HYPERFLASH flash_mcux_flexspi_hyperflash.c)
|
||||
|
|
|
@ -90,6 +90,8 @@ source "drivers/flash/Kconfig.stm32"
|
|||
|
||||
source "drivers/flash/Kconfig.stm32_qspi"
|
||||
|
||||
source "drivers/flash/Kconfig.stm32_ospi"
|
||||
|
||||
source "drivers/flash/Kconfig.sam0"
|
||||
|
||||
source "drivers/flash/Kconfig.sam"
|
||||
|
|
19
drivers/flash/Kconfig.stm32_ospi
Normal file
19
drivers/flash/Kconfig.stm32_ospi
Normal file
|
@ -0,0 +1,19 @@
|
|||
# STM32 Octo SPI flash driver configuration options
|
||||
|
||||
# Copyright (c) 2022 STMicroelectronics
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
DT_COMPAT_ST_STM32_OSPI_NOR := st,stm32-ospi-nor
|
||||
|
||||
config FLASH_STM32_OSPI
|
||||
bool "STM32 Octo SPI Flash driver"
|
||||
depends on SOC_FAMILY_STM32
|
||||
default $(dt_compat_enabled,$(DT_COMPAT_ST_STM32_OSPI_NOR))
|
||||
select USE_STM32_HAL_OSPI
|
||||
select USE_STM32_LL_DLYB if SOC_SERIES_STM32U5X
|
||||
select FLASH_HAS_DRIVER_ENABLED
|
||||
select FLASH_JESD216
|
||||
select FLASH_PAGE_LAYOUT
|
||||
select FLASH_HAS_PAGE_LAYOUT
|
||||
help
|
||||
Enable OSPI-NOR support on the STM32 family of processors.
|
1599
drivers/flash/flash_stm32_ospi.c
Normal file
1599
drivers/flash/flash_stm32_ospi.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue