Lines Matching defs:smc
19 * @args: The array of values used in registers in smc instruction
36 static void __scm_smc_do_quirk(const struct arm_smccc_args *smc,
39 unsigned long a0 = smc->args[0];
45 arm_smccc_smc_quirk(a0, smc->args[1], smc->args[2],
46 smc->args[3], smc->args[4], smc->args[5],
47 quirk.state.a6, smc->args[7], res, &quirk);
97 struct arm_smccc_args *smc = waitq;
100 __scm_smc_do_quirk(smc, res);
111 smc = &resume;
118 static int __scm_smc_do(struct device *dev, struct arm_smccc_args *smc,
124 __scm_smc_do_quirk(smc, res);
131 ret = __scm_smc_do_quirk_handle_waitq(dev, smc, res);
163 struct arm_smccc_args smc = {0};
165 smc.args[0] = ARM_SMCCC_CALL_VAL(
170 smc.args[1] = desc->arginfo;
172 smc.args[i + SCM_SMC_FIRST_REG_IDX] = desc->args[i];
203 smc.args[SCM_SMC_LAST_REG_IDX] = args_phys;
207 ret = __scm_smc_do(dev, &smc, &smc_res, atomic);