Merge "soc: qcom: SCM front-end over QCPE"

This commit is contained in:
Linux Build Service Account 2017-07-11 17:57:48 -07:00 committed by Gerrit - the friendly Code Review server
commit 38c7257a21
5 changed files with 1145 additions and 2 deletions

View file

@ -7,6 +7,7 @@ obj-$(CONFIG_MACH_DOVE) += dove/
obj-$(CONFIG_ARCH_MEDIATEK) += mediatek/ obj-$(CONFIG_ARCH_MEDIATEK) += mediatek/
obj-$(CONFIG_ARCH_QCOM) += qcom/ obj-$(CONFIG_ARCH_QCOM) += qcom/
obj-$(CONFIG_ARCH_ROCKCHIP) += rockchip/ obj-$(CONFIG_ARCH_ROCKCHIP) += rockchip/
obj-$(CONFIG_QCOM_SCM_QCPE) += qcom/
obj-$(CONFIG_ARCH_SUNXI) += sunxi/ obj-$(CONFIG_ARCH_SUNXI) += sunxi/
obj-$(CONFIG_ARCH_TEGRA) += tegra/ obj-$(CONFIG_ARCH_TEGRA) += tegra/
obj-$(CONFIG_SOC_TI) += ti/ obj-$(CONFIG_SOC_TI) += ti/

View file

@ -379,6 +379,10 @@ config QCOM_SCM
bool "Secure Channel Manager (SCM) support" bool "Secure Channel Manager (SCM) support"
default n default n
config QCOM_SCM_QCPE
bool "Para-Virtualized Secure Channel Manager (SCM) support over QCPE"
default n
menuconfig QCOM_SCM_XPU menuconfig QCOM_SCM_XPU
bool "Qualcomm XPU configuration driver" bool "Qualcomm XPU configuration driver"
depends on QCOM_SCM depends on QCOM_SCM

View file

@ -62,6 +62,7 @@ CFLAGS_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1)
obj-$(CONFIG_QCOM_SCM_ERRATA) += scm-errata.o obj-$(CONFIG_QCOM_SCM_ERRATA) += scm-errata.o
obj-$(CONFIG_QCOM_SCM) += scm.o scm-boot.o obj-$(CONFIG_QCOM_SCM) += scm.o scm-boot.o
obj-$(CONFIG_QCOM_SCM_QCPE) += scm_qcpe.o
obj-$(CONFIG_QCOM_SCM_XPU) += scm-xpu.o obj-$(CONFIG_QCOM_SCM_XPU) += scm-xpu.o
obj-$(CONFIG_QCOM_WATCHDOG_V2) += watchdog_v2.o obj-$(CONFIG_QCOM_WATCHDOG_V2) += watchdog_v2.o
obj-$(CONFIG_QCOM_MEMORY_DUMP) += memory_dump.o obj-$(CONFIG_QCOM_MEMORY_DUMP) += memory_dump.o

1137
drivers/soc/qcom/scm_qcpe.c Normal file

File diff suppressed because it is too large Load diff

View file

@ -95,7 +95,7 @@ struct scm_desc {
u64 x5; u64 x5;
}; };
#ifdef CONFIG_QCOM_SCM #if defined(CONFIG_QCOM_SCM) || defined(CONFIG_QCOM_SCM_QCPE)
extern int scm_call(u32 svc_id, u32 cmd_id, const void *cmd_buf, size_t cmd_len, extern int scm_call(u32 svc_id, u32 cmd_id, const void *cmd_buf, size_t cmd_len,
void *resp_buf, size_t resp_len); void *resp_buf, size_t resp_len);
@ -230,7 +230,7 @@ static inline int scm_io_write(phys_addr_t address, u32 val)
return 0; return 0;
} }
inline bool scm_is_secure_device(void) static inline bool scm_is_secure_device(void)
{ {
return false; return false;
} }