On Oct 13 2023 13:48, Bartosz Golaszewski wrote: [...] > @@ -192,25 +193,12 @@ int __scm_smc_call(struct device *dev, const struct qcom_scm_desc *desc, > SCM_SMC_FIRST_EXT_IDX]); > } > > - args_phys = dma_map_single(dev, args_virt, alloc_len, > - DMA_TO_DEVICE); > - > - if (dma_mapping_error(dev, args_phys)) { > - kfree(args_virt); > - return -ENOMEM; > - } > - > - smc.args[SCM_SMC_LAST_REG_IDX] = args_phys; > + smc.args[SCM_SMC_LAST_REG_IDX] = qcom_tzmem_to_phys(args_virt); > } > > /* ret error check follows after args_virt cleanup*/ Since args_virt cleanup is being removed, please remove this comment also. > ret = __scm_smc_do(dev, &smc, &smc_res, atomic); > > - if (args_virt) { > - dma_unmap_single(dev, args_phys, alloc_len, DMA_TO_DEVICE); > - kfree(args_virt); > - } > - > if (ret) > return ret; Guru Das.