i.MX95 System Manager(SM) implements Logical Machine Management(LMM) and CPU protocol to manage Logical Machine(LM) and CPUs(eg, M7).
To manage M7 in a separate LM or in same LM as U-Boot/Linux itself. LMM APIs and CPU APIs are needed. When M7 is in LM 'lm-m7', and this LM is managable by 'uboot-lm', U-Boot could use LMM_BOOT, LMM_SHUTDOWN and etc to manage 'lm-m7'. If in same LM, use CPU_START, CPU_STOP, CPU_RESET_VECTOR_SET and etc to manage M7. Both LMM/CPU APIs will be used by remoteproc driver. The documentation could be found in Linux Kernel: drivers/firmware/arm_scmi/vendors/imx/imx95.rst Signed-off-by: Peng Fan <[email protected]> --- Peng Fan (5): firmware: scmi: Conditionally compile protocol support firmware: scmi: Cleanup the SCMI MISC ID firmware: scmi: Support probe vendor ID 0x80 and 0x82 firmware: scmi: Add i.MX95 SCMI LMM protocol driver firmware: scmi: Add i.MX95 SCMI CPU Protocol drivers/firmware/scmi/Kconfig | 8 + drivers/firmware/scmi/Makefile | 1 + drivers/firmware/scmi/scmi_agent-uclass.c | 40 +++++ drivers/firmware/scmi/vendors/imx/Kconfig | 15 ++ drivers/firmware/scmi/vendors/imx/Makefile | 8 + drivers/firmware/scmi/vendors/imx/imx-sm-cpu.c | 179 +++++++++++++++++++++ drivers/firmware/scmi/vendors/imx/imx-sm-lmm.c | 213 +++++++++++++++++++++++++ include/scmi_agent-uclass.h | 16 ++ include/scmi_nxp_protocols.h | 73 ++++++++- include/scmi_protocols.h | 3 +- 10 files changed, 552 insertions(+), 4 deletions(-) --- base-commit: bf1d8c1fec863b7da2f0d1ed4bd5526275d70dc2 change-id: 20251017-scmi-lmm-3091aeee8491 Best regards, -- Peng Fan <[email protected]>

