Commit Graph

134 Commits

Author SHA1 Message Date
Khaoula Bidani
8144a6638a dts: bindings: flash: add STM32U3 flash controller
Add the Device Tree binding for the STM32U3 flash controller.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Quy Tran
94d5341f27 dts: renesas: Add devicetree property for OSPI support on RA8
Add ospi node on Renesas RA8 devicetree to support QSPI flash driver

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-06 08:41:46 +02:00
Tri Nguyen
1005cd9fa2 drivers: flash: Initial support OSPI flash driver on RA8 boards
Support OSPI flash driver on EK-RA8M1 and EK-RA8D1 with ospi_b
and S28HL512T flash.

Signed-off-by: Tri Nguyen <tri.nguyen.wj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-06 08:41:46 +02:00
Mark O'Donovan
d33da4db35 drivers: flash_stm32_qspi: add st,read-id-dummy-cycles
Add new device tree property specifying the number of
dummy-cycles required when reading the JEDEC ID.

The Arduino Opta has an at25sf128a with JEDEC ID 1F 89 01.
The PR below adds support for this, but the id read is 01 1F 89.
Changing DummyCycles to 16 causes the correct value to be read.

https://github.com/zephyrproject-rtos/zephyr/pull/89539

Signed-off-by: Mark O'Donovan <shiftee@posteo.net>
2025-05-21 14:04:09 +02:00
Jhan BoChao
7450a5249d driver: flash: add flash driver for rts5912
add flash driver for rts5912.

Signed-off-by: Jhan BoChao <jhan_bo_chao@realtek.com>
2025-05-15 11:18:22 +02:00
Duy Nguyen
dc470f782a goc: renesas: rx: Initial support for RX130 SOC
Minimal SOC layer support for Renesas RX SOC
This SOC is using Renesas RXv1 core

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Aksel Skauge Mellbye
4b4d40017a dts: bindings: silabs: Clean up descriptions, add titles
Clean up dt binding descriptions and introduce titles where
needed to make board documentation pages look nice. The supported
hardware table on board documentation pages sources its data
from dt bindings, and needs succinct titles.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
Khoa Nguyen
d9032f03f2 drivers: flash: Update driver flash to support Flash-HP for RA4L1
Update source flash driver to support Flash-HP for RA4L1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Francois Ramu
ae748d08fa dts: bindings: flash controller size of the stm32 xspi nor
This PR adds the size in Bits of the flash nor memory
for the st,stm32-xspi-nor compatible

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Aksel Skauge Mellbye
dba1c4bbbe drivers: flash: silabs: Add low power write support
Add low-power-write property to MSC device tree node, set
MSC_WRITECTRL_LPWRITE if enabled.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Aksel Skauge Mellbye
1de48c36ec drivers: flash: silabs: Introduce Silabs Series 2 flash driver
Introduce separate flash driver for Silabs Series 2. This driver
is forked from the Gecko flash driver with no changes outside of
formatting and naming.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Benjamin Cabé
2c1538d57e dts: stm32: Streamline Devicetree binding descriptions
Ensure consistent (and concise) short descriptions of all the st,*.yaml
bindings

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-04 21:55:54 +01:00
Benjamin Cabé
957647b382 dts: espressif: Streamline device tree binding descriptions
Ensure consistent (and concise) short descriptions of all the esp*.yaml
bindings

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-04 18:26:43 +00:00
Jérôme Pouiller
d97479fdc3 drivers: flash: Introduce SiWx91x Flash driver
Add flash driver for Silicon Labs SiWx91x family.

Co-authored-by: Martin Hoff <martin.hoff@silabs.com>
Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-11 22:07:11 +01:00
Stoyan Bogdanov
77d071da24 drivers: flash: Add support for cc23x0 flash
Add support for flash to cc23x0 SoC. The driver interacts with VIMS
(Versatile Instruction Memory System) internal bus standing before NVM.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-02-04 11:56:05 +01:00
Tom Chang
54a714a61d dts: flash: npcx: add property for SPI device size
This commit adds two properties. One is used to set size of the low
flash device and the other is used to select the low flash device. Then,
the eSPI TAF request can access between two flash devices base on this
setting.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-01-14 17:57:50 +01:00
Khoa Nguyen
1275058979 drivers: flash: update source code Flash driver for Renesas RA
- Bring macro defined of RA8 in flash_hp_ra.h to device tree
- Change to use irq_lock instead of semaphore for code flash
- Modify and add conditions to check and make decision to perform
action at last block.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Tran Van Quy <quy.tran.pz@renesas.com>
2025-01-08 17:02:36 +01:00
Mert Vatansever
321f735f9f dts: arm: adi: Add binding file for MAX32xxx flash driver
This commit adds flash controller driver binding file.

Signed-off-by: Mert Vatansever <mert.vatansever@analog.com>
2024-10-22 20:39:41 +02:00
Declan Snyder
86f65f2591 dts: nxp: Rename nxp,iap-msf1 to nxp,msf1
IAP is a reference to the method of software interaction with the flash
used in the current driver implementing support for this flash. The
DT compatible should not be named like this.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-10-09 18:23:39 +01:00
Francois Ramu
72370b23ce dts: bindings: flash_controller stm32 qspi has requires-ulbpr property
Add the <requires-ulbpr> property from the "jedec,spi-nor-common.yaml"
to the existing st,stm32-qspi-nor.yaml. So that external quad-NOR with
unlock the Global Block Protection (BPR) (opcode 0x98) is accepted.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-10-01 09:52:34 +02:00
Mathieu Choplain
4b357345df dts: bindings: flash: add STM32WB0 flash controller
Add the Device Tree binding for the STM32WB0 flash controller.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2024-09-12 10:03:37 +02:00
Duy Phuong Hoang. Nguyen
e1f990c176 drivers: flash: Initial support flash driver on EK-RA8M1
Initial commit for flash driver support on board using RA8 MCUs
* drivers: flash: implementation for flash driver on EK-RA8M1
* dts: arm: add device node for flash of EK-RA8M1
* boards: arm: enable support flash driver for ek_ra8m1, update
board documentation

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
Signed-off-by: Duy Phuong Hoang. Nguyen <duy.nguyen.xa@renesas.com>
2024-09-06 11:28:04 -04:00
Michal Smola
d913f6cc9f dts: bindings: kinetis-ftfa: Add configuration properties
Add configuration settings for the FOPT, FSEC, and flash configuration
offset to the FTFA module binding.

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2024-09-05 17:01:33 -04:00
Reto Schneider
a6737ba864 dts: bindings: Add Si32 flash controller
Initial version

Developed-by: Michael Zimmermann

Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
2024-08-26 18:51:36 +02:00
Andrzej Głąbek
791ba98e7a dts: bindings: nordic: Require pinctrl-names together with pinctrl-0
... so that a clear devicetree error is reported when the pinctrl-names
property is missing, not a quite cryptic compilation error about an
undeclared PINCTRL_STATE_*_UPPER_TOKEN symbol in pinctrl.h.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-08-02 03:29:30 -04:00
Sreeram Tatapudi
eebc998a5a drivers: flash: Support for IFX QSPI Flash driver
Initial version

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2024-07-29 14:14:10 +02:00
Andrzej Głąbek
31a6ac49a8 dts: bindings: Fix license identifiers in a few files provided by Nordic
Correct license identifiers in two files copied from internal Nordic
repositories that were not properly adjusted for Zephyr:
- dts/bindings/flash_controller/nordic,rram-controller.yaml (added in
  commit 3a8ee7df91)
- dts/bindings/misc/nordic,nrf-dppic-local.yaml (added in commit
  796d09d2a6)

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-07-18 09:23:03 -04:00
Guillaume Gautier
3e99dc26f6 dts: bindings: flash_controller: add ncs line property to stm32 xspi flash
Add a property to define the nCS line used by the XSPI driver for the
external Flash.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-06-14 15:44:38 +02:00
Joakim Andersson
04e56f72c7 drivers: flash: Fix stm32 ospi and xpsi reset gpios handling
Fix compilation error when reset-gpios is enabled.
Undefined reference to dev_cfg variable.
Reset gpio duration needs to be defined, but is not in binding file.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2024-06-12 12:51:06 -04:00
Francois Ramu
e255444179 dts: bindings: introduce a new compatible for stm32 xSPI flash controller
The new bindings for the stm32 xspi is for new stm32 devices with
XSPI peripherals like the stm32h5 serie. This is close to the octo-spi.
Adapt the flash controller constants to the XSPI model especially.
This is done through a new xspi.h definition file.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-05-15 10:56:04 +02:00
Dominik Ermel
a14c69a52a dts/bindings/flash_simulator: Restrict erase-value
The commit restricts erase-value to either 0xff or 0x00.
On program-erase type devices writes can only change from
erase value of bit to opposite, ease usually consists of two
operations which is programming the opposite value to every bit
of erase range and then turning back all bits to the "erase-value";
above makes it impossible to have erase value of device to be other
than 0xff or 0x00.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2024-04-24 19:42:44 +00:00
Mahesh Mahadevan
84febc3929 dts: Add support for MCX internal flash
Add support for internal flash

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-03-22 14:25:31 +00:00
cyliang tw
47ed29bf49 drivers: flash: support for Nuvoton numaker series RMC
Add Nuvoton numaker series flash memory controller(RMC) with erase,
 read & write features of soc-flash.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2024-03-11 14:22:55 +01:00
Jakub Zymelka
3a8ee7df91 drivers: Add flash driver for RRAM
Added a simple driver for RRAM. It is implemented as a flash driver,
because the "RRAM eFlash" macro obeys flash-like constraints.
Although users are not required to erase before write.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2024-02-26 10:27:23 +01:00
Francois Ramu
cd239bf8f1 dts: bindings: flash controller stm32 qspi nor flash reg property
Address and size are given by the DTS register property
of the qspi nor. The size Property becomes useless.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-02-02 13:48:18 +01:00
Francois Ramu
078e32fa37 dts: bindings: flash controller stm32 ospi nor flash reg property
Address and size are given by the DTS register property
of the ospi nor. The size Property becomes useless

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-02-02 13:48:18 +01:00
Navinkumar Balabakthan
6048373bd2 dts: arm64: intel: dtsi support for cadence Nand driver for Agilex5
dtsi support for nand controller added to bring up nand driver on Agilex5

Signed-off-by: Navinkumar Balabakthan <navinkumar.balabakthan@intel.com>
2024-01-30 18:01:31 +01:00
Bjarki Arge Andreasen
6f28ea08a5 atmel: sam: flash: Add flash pages property
This commit adds layput page cells to the atmel sam flash
controller and the flash node. These allow for describing
the actual flash page layout of each soc, allowing the
flash driver to fully utilize the capabilities of the
flash.

With this update, we unlock the following capabilties:
  - utilize 2048 erase block size for small sectors
  - utilize 16384 erase block size for large sectors

Signed-off-by: Bjarki Arge Andreasen <bjarkix123@gmail.com>
2024-01-23 15:22:26 +00:00
Aaron Ye
51d5794387 drivers: flash: Add Ambiq flash controller driver.
This commit adds flash controller driver for Ambiq Apollo4 SoCs.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-10-27 10:50:05 +02:00
Jerzy Kasenberg
d5edbba89f dts: bindings: flash-controller: Add smartbond QSPI parameters
This adds QSPI controller properties that allow tuning
chip select timings (needed for accessing QSPI at high speed)

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg@codecoup.pl>
2023-08-22 12:16:16 +02:00
Madhurima Paruchuri
9fab38dd04 drivers: flash: npcx: Update erase function to allow 0x1000 byte erase size
Modify the NPCX driver erase method to allow 0x1000 byte size erases
along with 0x10000 byte size erases based on input parameters

Signed-off-by: Madhurima Paruchuri <mparuchuri@google.com>
2023-08-03 10:29:14 +02:00
cyliang tw
ecbaac60bd drivers: flash: support for Nuvoton numaker series FMC
Add Nuvoton numaker series flash memory controller(FMC) with erase,
 read & write features of soc-flash. Also update Nuvoton manifest
 to include zephyrproject-rtos/hal_nuvoton#6.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2023-07-21 10:41:40 +00:00
Mulin Chao
f34fff91bc driver: flash: npcx: introduce npcx flash driver
This CL attempts to implement npcx's flash driver instead of the
original one (npcx spi driver plus spi_nor flash driver).

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2023-07-20 16:22:47 +02:00
Erwan Gouriou
2af4d1aa00 dts: bindings: Add stm32wba flash controller binding
Required to compile wba variant of stm32 flash controller

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2023-07-11 15:05:05 +02:00
Sreeram Tatapudi
98858f1e6a drivers: flash: Add Infineon CAT1 Flash driver
- Added initial version of Infineon CAT1 Flash driver
- Added binding file for infineon,cat1-flash-controller.yaml
- Added overlays for subsys/nvs and drivers/flash_shell
to support cy8cproto_063_ble, cy8cproto_062_4343w boards
- Defined erase-block-size in PSoC6 MPN dtsi.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2023-05-08 11:16:09 +02:00
Laczen JMS
d496a17bb6 flash_simulator: add ability to use memory region
Add the ability for the flash simulator to store its contents in a
memory region.

This allows filesystems on the flash simulator to survive a reboot.
And allows subsystems (e.g. coredump) to store their info on ram while
using the (existing) flash partition backend.

Add a example (for nucleo_f411re) that shows how to configure the flash
simulator for hardware (cfg discussion #54166).

Signed-off-by: Laczen JMS <laczenjms@gmail.com>
2023-05-04 20:49:57 +02:00
Patryk Duda
417368e63d drivers: flash: Add support for defining custom RDP1 byte value
This patch makes possible to choose custom byte which should be used
to enable non-permanent readout protection (RDP1). Actually, any byte
except 0xAA and 0xCC (which are used by RDP0 and RDP2 respectively)
can be used to enable RDP1 but in multi-image environment, some other
image could check if RDP1 is enabled by comparing it to some hardcoded
value.

If property is not defined, 0x55 will be used to enable RDP1. The
default value comes from STM32 HAL.

Signed-off-by: Patryk Duda <pdk@semihalf.com>
2023-03-28 15:43:16 +00:00
Gerson Fernando Budke
1dce3c3ee2 drivers: eefc: sam: Update to use clock control
This update Atmel SAM eefc devicetree to use clock control information.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2023-03-21 14:12:25 -07:00
Gerard Marull-Paretas
708a00d587 drivers: flash: nrf_qspi_nor: drop -pin support
Driver will now use pinctrl only.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-02-28 08:42:05 -08:00
Erwan Gouriou
306f4d0bbc dts: stm32: flash: Get all series using same driver to use same compat
Compat "st,stm32f1-flash-controller" is now used by all series using
F1x flash driver.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-08 19:49:12 +01:00