From: Peng Fan <peng.fan@xxxxxxx> V5: Add Rob's R-b tag for patch 1 Add mutex for patch 2 V4: Drop prot_id in scmi_chan_info, since not used for now. V3: Add back arm,scmi-smc compatible string Change smc-id to arm,smc-id Directly use arm_smccc_1_1_invoke Add prot_id in scmi_chan_info for per protocol shmem usage. V2: patch 1/2: only add smc-id property patch 2/2: Parse smc/hvc from psci node Use prot_id as 2nd arg when issue smc/hvc Differentiate tranports using mboxes or smc-id property https://lore.kernel.org/patchwork/cover/1193435/ This is to add smc/hvc transports support, based on Viresh's v6. SCMI firmware could be implemented in EL3, S-EL1, NS-EL2 or other A core exception level. Then smc/hvc could be used. And for vendor specific firmware, a wrapper layer could added in EL3, S-EL1, NS-EL2 and etc to translate SCMI calls to vendor specific firmware calls. A new compatible string arm,scmi-smc is added. arm,scmi is still for mailbox transports. Per smc/hvc, only Tx supported. Peng Fan (2): dt-bindings: arm: arm,scmi: add smc/hvc transport firmware: arm_scmi: add smc/hvc transport Documentation/devicetree/bindings/arm/arm,scmi.txt | 3 +- drivers/firmware/arm_scmi/Makefile | 2 +- drivers/firmware/arm_scmi/common.h | 1 + drivers/firmware/arm_scmi/driver.c | 1 + drivers/firmware/arm_scmi/smc.c | 152 +++++++++++++++++++++ 5 files changed, 157 insertions(+), 2 deletions(-) create mode 100644 drivers/firmware/arm_scmi/smc.c -- 2.16.4