[PATCH v2 3/3] firmware: qcom: scm: Drop export of qcom_scm_mem_protect_video_var()
From: Sumit Garg
Date: Tue Oct 27 2026 - 09:07:12 EST
From: Sumit Garg <sumit.garg@xxxxxxxxxxxxxxxx>
All the users now go through the generic PAS API, so fold the SCM call
into the SCM PAS backend op and drop the exported API along with its
declaration.
Signed-off-by: Sumit Garg <sumit.garg@xxxxxxxxxxxxxxxx>
---
drivers/firmware/qcom/qcom_scm.c | 44 +++++++++++++---------------------
include/linux/firmware/qcom/qcom_scm.h | 2 --
2 files changed, 17 insertions(+), 29 deletions(-)
diff --git a/drivers/firmware/qcom/qcom_scm.c b/drivers/firmware/qcom/qcom_scm.c
index 5445c1aa14cc..5746a41800b1 100644
--- a/drivers/firmware/qcom/qcom_scm.c
+++ b/drivers/firmware/qcom/qcom_scm.c
@@ -985,9 +985,23 @@ static int qcom_scm_pas_mem_protect_video_var(struct device *dev, u32 cp_start,
u32 cp_size, u32 cp_nonpixel_start,
u32 cp_nonpixel_size)
{
- return qcom_scm_mem_protect_video_var(cp_start, cp_size,
- cp_nonpixel_start,
- cp_nonpixel_size);
+ int ret;
+ struct qcom_scm_desc desc = {
+ .svc = QCOM_SCM_SVC_MP,
+ .cmd = QCOM_SCM_MP_VIDEO_VAR,
+ .arginfo = QCOM_SCM_ARGS(4, QCOM_SCM_VAL, QCOM_SCM_VAL,
+ QCOM_SCM_VAL, QCOM_SCM_VAL),
+ .args[0] = cp_start,
+ .args[1] = cp_size,
+ .args[2] = cp_nonpixel_start,
+ .args[3] = cp_nonpixel_size,
+ .owner = ARM_SMCCC_OWNER_SIP,
+ };
+ struct qcom_scm_res res;
+
+ ret = qcom_scm_call(dev, &desc, &res);
+
+ return ret ? : res.result[0];
}
static struct qcom_pas_ops qcom_pas_ops_scm = {
@@ -1214,30 +1228,6 @@ int qcom_scm_iommu_set_cp_pool_size(u32 spare, u32 size)
}
EXPORT_SYMBOL_GPL(qcom_scm_iommu_set_cp_pool_size);
-int qcom_scm_mem_protect_video_var(u32 cp_start, u32 cp_size,
- u32 cp_nonpixel_start,
- u32 cp_nonpixel_size)
-{
- int ret;
- struct qcom_scm_desc desc = {
- .svc = QCOM_SCM_SVC_MP,
- .cmd = QCOM_SCM_MP_VIDEO_VAR,
- .arginfo = QCOM_SCM_ARGS(4, QCOM_SCM_VAL, QCOM_SCM_VAL,
- QCOM_SCM_VAL, QCOM_SCM_VAL),
- .args[0] = cp_start,
- .args[1] = cp_size,
- .args[2] = cp_nonpixel_start,
- .args[3] = cp_nonpixel_size,
- .owner = ARM_SMCCC_OWNER_SIP,
- };
- struct qcom_scm_res res;
-
- ret = qcom_scm_call(__scm->dev, &desc, &res);
-
- return ret ? : res.result[0];
-}
-EXPORT_SYMBOL_GPL(qcom_scm_mem_protect_video_var);
-
static int __qcom_scm_assign_mem(struct device *dev, phys_addr_t mem_region,
size_t mem_sz, phys_addr_t src, size_t src_sz,
phys_addr_t dest, size_t dest_sz)
diff --git a/include/linux/firmware/qcom/qcom_scm.h b/include/linux/firmware/qcom/qcom_scm.h
index a0a6bc0229c4..48e627079e97 100644
--- a/include/linux/firmware/qcom/qcom_scm.h
+++ b/include/linux/firmware/qcom/qcom_scm.h
@@ -75,8 +75,6 @@ bool qcom_scm_set_gpu_smmu_aperture_is_available(void);
int qcom_scm_iommu_secure_ptbl_size(u32 spare, size_t *size);
int qcom_scm_iommu_secure_ptbl_init(u64 addr, u32 size, u32 spare);
int qcom_scm_iommu_set_cp_pool_size(u32 spare, u32 size);
-int qcom_scm_mem_protect_video_var(u32 cp_start, u32 cp_size,
- u32 cp_nonpixel_start, u32 cp_nonpixel_size);
int qcom_scm_assign_mem(phys_addr_t mem_addr, size_t mem_sz, u64 *src,
const struct qcom_scm_vmperm *newvm,
unsigned int dest_cnt);
--
2.43.0