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 mu binding doc
arm64: dts: imx93-11x11-evk: added ele-mu
arm64: dts: imx93-11x11-evk: reserved mem-ranges to constrain ele-mu
dma-range
arm64: dts: imx8ulp-evk: added ele-mu
arm64: dts: imx8ulp-evk: reserved mem-ranges to constrain ele-mu
dma-range
firmware: imx: add ELE MU driver support
MAINTAINERS: Added maintainer details
.../bindings/arm/freescale/fsl,ele_mu.yaml | 144 ++
MAINTAINERS | 9 +
arch/arm64/boot/dts/freescale/imx8ulp-evk.dts | 15 +
arch/arm64/boot/dts/freescale/imx8ulp.dtsi | 13 +-
.../boot/dts/freescale/imx93-11x11-evk.dts | 15 +
arch/arm64/boot/dts/freescale/imx93.dtsi | 12 +-
drivers/firmware/imx/Kconfig | 11 +
drivers/firmware/imx/Makefile | 2 +
drivers/firmware/imx/ele_base_msg.c | 372 +++++
drivers/firmware/imx/ele_fw_api.c | 112 ++
drivers/firmware/imx/ele_mu.c | 1442 +++++++++++++++++
drivers/firmware/imx/ele_mu.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, 2458 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/freescale/fsl,ele_mu.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/ele_mu.c
create mode 100644 drivers/firmware/imx/ele_mu.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
added support for ele-mu for imx8ulp-evk.
Signed-off-by: Pankaj Gupta <[email protected]>
---
arch/arm64/boot/dts/freescale/imx8ulp.dtsi | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8ulp.dtsi b/arch/arm64/boot/dts/freescale/imx8ulp.dtsi
index ce8de81cac9a..cbc2769e4c8c 100644
--- a/arch/arm64/boot/dts/freescale/imx8ulp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8ulp.dtsi
@@ -113,7 +113,7 @@ sosc: clock-sosc {
#clock-cells = <0>;
};
- sram@2201f000 {
+ sram0: sram@2201f000 {
compatible = "mmio-sram";
reg = <0x0 0x2201f000 0x0 0x1000>;
@@ -160,6 +160,17 @@ s4muap: mailbox@27020000 {
#mbox-cells = <2>;
};
+ ele_mu: ele-mu {
+ compatible = "fsl,imx-ele";
+ mboxes = <&s4muap 0 0 &s4muap 1 0>;
+ mbox-names = "tx", "rx";
+ fsl,ele_mu_did = <7>;
+ fsl,ele_mu_id = <2>;
+ fsl,ele_mu_max_users = <4>;
+ sram-pool = <&sram0>;
+ status = "okay";
+ };
+
per_bridge3: bus@29000000 {
compatible = "simple-bus";
reg = <0x29000000 0x800000>;
--
2.34.1