memory: Add STM32 Octo Memory Manager driver
authorPatrice Chotard <patrice.chotard@foss.st.com>
Thu, 11 Sep 2025 06:59:41 +0000 (08:59 +0200)
committerPatrice Chotard <patrice.chotard@foss.st.com>
Thu, 18 Sep 2025 15:20:39 +0000 (17:20 +0200)
commitb7328e2f39d946f8727d28a12df24fb8f351a0d0
tree1c68ccc2e503eaf440b928452720dc8ce355825c
parent08ccc1f56cc70c4116abac3d1cbe392b867d10bf
memory: Add STM32 Octo Memory Manager driver

Octo Memory Manager driver (OMM) manages:
  - the muxing between 2 OSPI busses and 2 output ports.
    There are 4 possible muxing configurations:
      - direct mode (no multiplexing): OSPI1 output is on port 1 and OSPI2
        output is on port 2
      - OSPI1 and OSPI2 are multiplexed over the same output port 1
      - swapped mode (no multiplexing), OSPI1 output is on port 2,
        OSPI2 output is on port 1
      - OSPI1 and OSPI2 are multiplexed over the same output port 2
  - the split of the memory area shared between the 2 OSPI instances.
  - chip select selection override.
  - the time between 2 transactions in multiplexed mode.
  - check firewall access.

Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
MAINTAINERS
drivers/memory/Kconfig
drivers/memory/Makefile
drivers/memory/stm32_omm.c [new file with mode: 0644]