Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] stm32 mspi drivers for the MSPI flash and controller #78186

Draft
wants to merge 15 commits into
base: main
Choose a base branch
from

Commits on Oct 15, 2024

  1. dts: bindings: stm32 mspi and mspi-controller dts bindings

    Add the mspi-device and mspi-flash controller bindings
    for the stm32 devices.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    2ebfd87 View commit details
    Browse the repository at this point in the history
  2. dts: arm: stm32h5 serie has a mspi controller instead of xspi

    Replace the xpsi by the mspi node in the DTS
    of the stm32h5 serie
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    a3591d8 View commit details
    Browse the repository at this point in the history
  3. boards: st: stm32h573 disco has a mspi node

    Declare the mspi node of the stm32h573i_dk in place
    of the xspi.
    New properties are declared according to the
    mspi-controller.yaml.
    Only SPi/STR supported yet. XIP not supported yet.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    cc054b7 View commit details
    Browse the repository at this point in the history
  4. include: drivers: mspi include header files for mspi driver

    Include there the jesd216.h and spi_nor.h header files for adding the
    command and jedec structure to be used by the mspi driver
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    95755c8 View commit details
    Browse the repository at this point in the history
  5. drivers: mspi: stm32 mspi controller entity

    Enable the stm32 MSPI controller based on the xspi peripheral
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    6bbef40 View commit details
    Browse the repository at this point in the history
  6. drivers: flash: mspi NOR mx devices

    Enable the  MSPI NOR multi-SPI flash device accessed through
    a mspi controller
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    06c51c2 View commit details
    Browse the repository at this point in the history
  7. drivers: mspi: stm32 mspi functions to check controller

    Add the functions to verfify device and configure
    the mspi controller device.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    51748b1 View commit details
    Browse the repository at this point in the history
  8. drivers: mspi: stm32 mspi read and write in sync/async/dma

    Make the read and write access to the mspi NOR device
    in sync/async PIO and DMA bus mode.
    Including the dummyCycles
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    22c7dd4 View commit details
    Browse the repository at this point in the history
  9. drivers: flash: mspi nor device accessed in sync/async/dma

    Propose read an write access in sync/ascync on PIO/DMA
    to the flash device.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    ac57c4c View commit details
    Browse the repository at this point in the history
  10. drivers: mspi: stm32 mspi driver controller access to memory

    For stm32 mcus, this commit adds a reset, jedec and
    configuration commands to be sent to the device
    through the mspi controller.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    e277831 View commit details
    Browse the repository at this point in the history
  11. drivers: flash: mspi nor flash device memory functions

    This commit adds a reset and jedec
    commands and a memory configuration io_mode/data_rate
    sent to the NOR flash device through the controller.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    5ae5751 View commit details
    Browse the repository at this point in the history
  12. include: mspi transfer mode for accessing status register

    Add another mode for selecting read/write the status reg
    of a device
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    0be5ac2 View commit details
    Browse the repository at this point in the history
  13. samples: drivers: configure the sample to run on stm32h573_dk

    Declare the stm32h573i_dk node to be MSPI compatible when running
    the samples/drivers/jesd216 or samples/drivers/mspi/
    Only SPI/STR mode.
    No DMA in this version.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    1b68724 View commit details
    Browse the repository at this point in the history
  14. drivers: flash: mspi NOR flash driver polling the status REG

    Add a function to poll the NOR flash status register with a MSPI_REG
    set as direction and bit mask/value se to the packet structure
    This info is going to the MSPI driver through mspi_transceive function
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    24d9366 View commit details
    Browse the repository at this point in the history
  15. drivers: mspi: stm32 mspi driver can poll the status register bit

    Get the bit mask/value structure when polling the device
    status register bits and send
    the corresponding HAL_XSPI_AutoPolling function. This function
    is blocking until the callback matches the expected bits.
    
    Signed-off-by: Francois Ramu <[email protected]>
    FRASTM committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    43626c2 View commit details
    Browse the repository at this point in the history