[PATCH v4 0/7] firmware: imx: NXP Edgelock Enclave MUAP Driver

From: Pankaj Gupta
Date: Wed Jul 12 2023 - 08:13:07 EST


v4 Changes:
- Post internal review, changed the name from "ele-mu" to "se-fw".
- Disposed-off comments in the dt-binding file.
- Removed the non-hw related dt-bindings from the driver code.
- Corrected the File MAINTAINERS for correct name of yaml file.

v3 Changes:
- update the commit message for documentation.
- Fixed dt-binding checking error for file- fsl,ele_mu.yaml
- Coverity fixes in the ele_mu.c

v2 Changes:

- Fixed Kernel Test Bot issues.
- Removed ".../devicetree/bindings/mailbox/fsl,muap.txt"

v1:

The Messaging Unit module enables two processing elements within the SoC to
communicate and coordinate by passing messages (e.g., data, status and control)
through its interfaces.

The NXP i.MX EdgeLock Enclave Message Unit (ELE-MUAP) is specifically targeted
for use between application core and Edgelocke Enclave. It allows to send
messages to the EL Enclave using a shared mailbox.

Patch-set add the ELE-MU kernel driver for exchanging messages with i.MX NXP
ELE IP; both from:
- User-Space Applications via character driver.
- Kernel-space, used by kernel management layers like DM-Crypt.

Pankaj Gupta (7):
dt-bindings: arm: fsl: add se-fw binding doc
arm64: dts: imx8ulp-evk: added nxp secure enclave firmware
arm64: dts: imx8ulp-evk: reserved mem-ranges to constrain ele_fw
dma-range
arm64: dts: imx93-11x11-evk: added nxp secure enclave fw
arm64: dts: imx93-11x11-evk: reserved mem-ranges to constrain ele_fw
dma-range
firmware: imx: add driver for NXP EdgeLock Enclave
MAINTAINERS: Added maintainer details

.../bindings/arm/freescale/fsl,se-fw.yaml | 121 ++
MAINTAINERS | 10 +
arch/arm64/boot/dts/freescale/imx8ulp-evk.dts | 15 +
arch/arm64/boot/dts/freescale/imx8ulp.dtsi | 12 +-
.../boot/dts/freescale/imx93-11x11-evk.dts | 15 +
arch/arm64/boot/dts/freescale/imx93.dtsi | 11 +-
drivers/firmware/imx/Kconfig | 12 +
drivers/firmware/imx/Makefile | 2 +
drivers/firmware/imx/ele_base_msg.c | 372 +++++
drivers/firmware/imx/ele_fw_api.c | 112 ++
drivers/firmware/imx/se_fw.c | 1443 +++++++++++++++++
drivers/firmware/imx/se_fw.h | 180 ++
include/linux/firmware/imx/ele_base_msg.h | 62 +
include/linux/firmware/imx/ele_fw_api.h | 19 +
include/linux/firmware/imx/ele_mu_ioctl.h | 52 +
15 files changed, 2436 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/freescale/fsl,se-fw.yaml
create mode 100644 drivers/firmware/imx/ele_base_msg.c
create mode 100644 drivers/firmware/imx/ele_fw_api.c
create mode 100644 drivers/firmware/imx/se_fw.c
create mode 100644 drivers/firmware/imx/se_fw.h
create mode 100644 include/linux/firmware/imx/ele_base_msg.h
create mode 100644 include/linux/firmware/imx/ele_fw_api.h
create mode 100644 include/linux/firmware/imx/ele_mu_ioctl.h

--
2.34.1