soc: qcom: Migrate SCM calls in secure_buffer

Migrate SCM calls to use the upstream SCM driver.

Change-Id: I09d5a64f18de4c691c20d3bb94371cdf6385b1d5
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
This commit is contained in:
Siddharth Gupta 2019-10-11 23:15:28 -07:00 • committed by Elliot Berman
commit d0a14e5c2c
4 changed files with 12 additions and 1 deletions

View file

@ -601,6 +601,13 @@ int qcom_mdf_assign_memory_to_subsys(u64 start_addr, u64 end_addr,
}
EXPORT_SYMBOL(qcom_mdf_assign_memory_to_subsys);
int qcom_scm_get_feat_version_cp(u64 *version)
{
return __qcom_scm_get_feat_version(__scm->dev, QCOM_SCM_MP_CP_FEAT_ID,
version);
}
EXPORT_SYMBOL(qcom_scm_get_feat_version_cp);
/**
* qcom_scm_dcvs_core_available() - check if core DCVS operations are available
*/

View file

@ -62,6 +62,7 @@ extern int __qcom_scm_is_call_available(struct device *dev, u32 svc_id,
extern int __qcom_scm_get_feat_version(struct device *dev, u64 feat_id,
u64 *version);
#define QCOM_SCM_TZ_DBG_ETM_FEAT_ID 0x08
#define QCOM_SCM_MP_CP_FEAT_ID 0x0c
#define QCOM_SCM_SVC_PWR 0x09
#define QCOM_SCM_PWR_MMU_SYNC 0x08

View file

@ -380,7 +380,7 @@ config QCOM_SECURE_CHAN_MANAGER
config QCOM_SECURE_BUFFER
tristate "Helper functions for secure buffers through TZ"
depends on QCOM_SECURE_CHAN_MANAGER
depends on QCOM_SCM
help
Enable for targets that need to call into TZ to secure
memory buffers. This ensures that only the correct clients can

View file

@ -116,6 +116,7 @@ extern int qcom_scm_assign_mem(phys_addr_t mem_addr, size_t mem_sz,
unsigned int dest_cnt);
extern int qcom_scm_mem_protect_sd_ctrl(u32 devid, phys_addr_t mem_addr,
u64 mem_size, u32 vmid);
extern int qcom_scm_get_feat_version_cp(u64 *version);
extern bool qcom_scm_kgsl_set_smmu_aperture_available(void);
extern int qcom_scm_kgsl_set_smmu_aperture(
unsigned int num_context_bank);
@ -246,6 +247,8 @@ static inline int qcom_scm_smmu_prepare_atos_id(u64 dev_id, int cb_num,
static inline int qcom_mdf_assign_memory_to_subsys(struct device *dev,
u64 start_addr, u64 end_addr, phys_addr_t paddr, u64 size)
{ return -ENODEV; }
static inline int qcom_scm_get_feat_version_cp(u64 *version)
{ return -ENODEV; }
static inline bool qcom_scm_dcvs_core_available(void) { return false; }
static inline bool qcom_scm_dcvs_ca_available(void) { return false; }
static inline int qcom_scm_dcvs_init_v2(phys_addr_t addr, size_t size,