zephyr/drivers/flash
Göran Weinholt afc8c2528e drivers: flash: stm32h7x: handle ECC errors on read
The STM32H7x flash has an integrated ECC that can correct single
errors and detect double errors. When a double ECC error is detected,
the DBECCERR1/2 flag is raised and there is a bus fault.

We now mask this bus fault and check the error flags. ECC errors are
logged with the offset of the data. Single ECC errors cause a warning
to be logged and double ECC errors return -EIO.

Fixes #33140.

Signed-off-by: Göran Weinholt <goran.weinholt@endian.se>
2021-05-04 13:03:31 -05:00
..
CMakeLists.txt drivers: flash: Support i.MX FlexSPI NOR driver with XIP 2021-04-15 16:26:39 -05:00
flash_esp32.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_gecko.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_handlers.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
flash_mcux_flexspi_nor.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_page_layout.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
flash_priv.h
flash_sam0.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_sam.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_shell.c drivers/flash/flash_shell: remove flash_write_protection_set() usage 2021-03-29 13:43:55 -04:00
flash_simulator.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_stm32_qspi.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_stm32_v1.c drivers: flash: stm32l1: add initial L1x support 2020-11-30 15:49:15 -06:00
flash_stm32.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
flash_stm32.h drivers/flash: STM32: Fix flash_stm32_priv definition for h7 series 2021-04-28 09:06:42 -05:00
flash_stm32f4x.c drivers: flash: stm32f4: Don't invert an already inverted mask 2020-11-12 08:56:06 -06:00
flash_stm32f7x.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
flash_stm32g0x.c drivers: flash: stm32g0: Flush caches after erase 2021-04-20 12:44:14 +02:00
flash_stm32g4x.c drivers/flash/flash_stm32g4x: fixed build issue 2021-03-29 13:43:55 -04:00
flash_stm32h7x.c drivers: flash: stm32h7x: handle ECC errors on read 2021-05-04 13:03:31 -05:00
flash_stm32l4x.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
flash_stm32wbx.c drivers: flash: stm32wb: Flush caches after erase 2021-04-20 12:44:14 +02:00
jesd216.c drivers: flash: jesd216: add support for DW16 decoding 2021-01-18 16:58:09 -05:00
jesd216.h drivers: flash: jesd216: improve support for address size selection 2021-04-27 14:21:15 +02:00
Kconfig esp32: drivers: spi_flash: add host flash support 2021-03-06 09:34:35 -05:00
Kconfig.at45 drivers: flash: spi nor: Add missing flash layout conf 2020-11-17 16:44:03 -05:00
Kconfig.esp32 esp32: drivers: spi_flash: add host flash support 2021-03-06 09:34:35 -05:00
Kconfig.gecko drivers/flash: select to allow flash write by MPU on ARM SoCs 2021-01-25 08:59:01 -05:00
Kconfig.lpc drivers: soc_flash_lpc: LPC legacy flash driver 2021-01-23 08:01:00 -05:00
Kconfig.mcux drivers: flash: MCUX: Split the relocate define based on target memory 2021-05-04 15:46:52 +02:00
Kconfig.nios2_qspi
Kconfig.nor drivers: flash: spi nor: Add missing flash layout conf 2020-11-17 16:44:03 -05:00
Kconfig.nordic_qspi_nor drivers: flash: nrf_qspi: support JESD216 API 2021-01-18 16:58:09 -05:00
Kconfig.nrf drivers/flash: select to allow flash write by MPU on ARM SoCs 2021-01-25 08:59:01 -05:00
Kconfig.rv32m1
Kconfig.sam drivers/flash: select to allow flash write by MPU on ARM SoCs 2021-01-25 08:59:01 -05:00
Kconfig.sam0 drivers/flash: select to allow flash write by MPU on ARM SoCs 2021-01-25 08:59:01 -05:00
Kconfig.simulator drivers/flash/flash_simulator: integrate WP service into write/erase 2021-03-29 13:43:55 -04:00
Kconfig.stm32 drivers/flash: select to allow flash write by MPU on ARM SoCs 2021-01-25 08:59:01 -05:00
Kconfig.stm32_qspi drivers/flash: flash_stm32_qspi: Set DMA as optional 2021-01-15 10:29:30 -05:00
nrf_qspi_nor.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
soc_flash_lpc.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
soc_flash_mcux.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
soc_flash_nios2_qspi.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
soc_flash_nrf_ticker.c Bluetooth: controller: Propagate ticker force to ULL 2021-04-13 12:15:12 +02:00
soc_flash_nrf.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
soc_flash_nrf.h drivers/flash/soc_flash_nrf: Include additional headers 2021-03-04 13:55:56 +01:00
soc_flash_rv32m1.c drivers: flash: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
spi_flash_at45.c drivers/flash: removed write protection API implementations 2021-03-29 13:43:55 -04:00
spi_nor.c drivers: flash: spi_nor: unconditionally provide config pointer 2021-04-30 13:10:23 -05:00
spi_nor.h drivers: flash: spi-nor: add support for 4-byte addressing 2021-04-27 14:21:15 +02:00