zephyr/drivers/flash
Erwan Gouriou 0381e8cbe9 drivers/flash: stm32l4: Handle pages_per_bank for all variants
Variable pages_per_bank has been introduced to ease page erase
in dual bank configurations. This has been implemented using
FLASH_OPTR_DUALBANK definition.
It happen that this was not taking into account L4+ series that
use FLASH_OPTR_DBANK instead of FLASH_OPTR_DUALBANK. This lead
to compilation issue for this driver in case of L4+ series.
So, this patch is adding the support of FLASH_OPTR_DBANK definition.

Besides, FLASH_OPTR_DUALBANK (as FLASH_OPTR_DBANK) are actually
defining availability of an option byte to configure use of Dual
Bank. So besides of its definition, its value in flash OPTR register
should be checked to ensure Dual Bank configuration is used.
This patch is taking this into account by adding the check of this
byte. Error -ENOTSUP is returned in case Single Bank is configured
since it has not be validated yet (in case Dual Bank is possible but
not configured).

Fixes #18246 for nucleo_l4r5zi

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-08-17 20:05:21 +02:00
..
CMakeLists.txt
flash_gecko.c
flash_handlers.c
flash_native_posix.c
flash_page_layout.c
flash_priv.h
flash_sam.c
flash_sam0.c
flash_shell.c
flash_simulator.c
flash_stm32.c
flash_stm32.h
flash_stm32f3x.c
flash_stm32f4x.c
flash_stm32f7x.c
flash_stm32f0x.c
flash_stm32g0x.c
flash_stm32l4x.c
flash_stm32wbx.c
Kconfig
Kconfig.gecko
Kconfig.mcux
Kconfig.native_posix
Kconfig.nios2_qspi
Kconfig.nor
Kconfig.nrf
Kconfig.qmsi
Kconfig.rv32m1
Kconfig.sam
Kconfig.sam0
Kconfig.simulator
Kconfig.stm32
Kconfig.w25qxxdv
soc_flash_mcux.c
soc_flash_nios2_qspi.c
soc_flash_nrf.c
soc_flash_rv32m1.c
spi_flash_w25qxxdv_defs.h
spi_flash_w25qxxdv.c
spi_flash_w25qxxdv.h
spi_nor.c
spi_nor.h