diff options
-rw-r--r-- | MAINTAINERS | 1 | ||||
-rw-r--r-- | arch/arm/Kconfig | 2 | ||||
-rw-r--r-- | arch/arm/mach-qcom/Kconfig | 3 | ||||
-rw-r--r-- | arch/arm/mach-qcom/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/mach-qcom/platsmp.c | 2 | ||||
-rw-r--r-- | drivers/firmware/Kconfig | 4 | ||||
-rw-r--r-- | drivers/firmware/Makefile | 2 | ||||
-rw-r--r-- | drivers/firmware/qcom_scm.c (renamed from arch/arm/mach-qcom/scm.c) | 2 | ||||
-rw-r--r-- | include/linux/qcom_scm.h (renamed from arch/arm/mach-qcom/scm.h) | 0 |
9 files changed, 11 insertions, 8 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index ddc5a8cf9a8a..beb8aa4840e4 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -1317,6 +1317,7 @@ L: linux-soc@vger.kernel.org | |||
1317 | S: Maintained | 1317 | S: Maintained |
1318 | F: arch/arm/mach-qcom/ | 1318 | F: arch/arm/mach-qcom/ |
1319 | F: drivers/soc/qcom/ | 1319 | F: drivers/soc/qcom/ |
1320 | F: drivers/firmware/qcom_scm.c | ||
1320 | T: git git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git | 1321 | T: git git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git |
1321 | 1322 | ||
1322 | ARM/RADISYS ENP2611 MACHINE SUPPORT | 1323 | ARM/RADISYS ENP2611 MACHINE SUPPORT |
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 9f1f09a2bc9b..7ffd1518d2aa 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -2160,6 +2160,8 @@ source "net/Kconfig" | |||
2160 | 2160 | ||
2161 | source "drivers/Kconfig" | 2161 | source "drivers/Kconfig" |
2162 | 2162 | ||
2163 | source "drivers/firmware/Kconfig" | ||
2164 | |||
2163 | source "fs/Kconfig" | 2165 | source "fs/Kconfig" |
2164 | 2166 | ||
2165 | source "arch/arm/Kconfig.debug" | 2167 | source "arch/arm/Kconfig.debug" |
diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig index 48003ea652b9..2256cd1e25d1 100644 --- a/arch/arm/mach-qcom/Kconfig +++ b/arch/arm/mach-qcom/Kconfig | |||
@@ -22,7 +22,4 @@ config ARCH_MSM8974 | |||
22 | bool "Enable support for MSM8974" | 22 | bool "Enable support for MSM8974" |
23 | select HAVE_ARM_ARCH_TIMER | 23 | select HAVE_ARM_ARCH_TIMER |
24 | 24 | ||
25 | config QCOM_SCM | ||
26 | bool | ||
27 | |||
28 | endif | 25 | endif |
diff --git a/arch/arm/mach-qcom/Makefile b/arch/arm/mach-qcom/Makefile index 10b684140aa1..e324375fa919 100644 --- a/arch/arm/mach-qcom/Makefile +++ b/arch/arm/mach-qcom/Makefile | |||
@@ -1,5 +1,2 @@ | |||
1 | obj-y := board.o | 1 | obj-y := board.o |
2 | obj-$(CONFIG_SMP) += platsmp.o | 2 | obj-$(CONFIG_SMP) += platsmp.o |
3 | obj-$(CONFIG_QCOM_SCM) += scm.o | ||
4 | |||
5 | CFLAGS_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1) | ||
diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c index 596e6237dc7e..4b67e56911d3 100644 --- a/arch/arm/mach-qcom/platsmp.c +++ b/arch/arm/mach-qcom/platsmp.c | |||
@@ -17,10 +17,10 @@ | |||
17 | #include <linux/of_address.h> | 17 | #include <linux/of_address.h> |
18 | #include <linux/smp.h> | 18 | #include <linux/smp.h> |
19 | #include <linux/io.h> | 19 | #include <linux/io.h> |
20 | #include <linux/qcom_scm.h> | ||
20 | 21 | ||
21 | #include <asm/smp_plat.h> | 22 | #include <asm/smp_plat.h> |
22 | 23 | ||
23 | #include "scm.h" | ||
24 | 24 | ||
25 | #define VDD_SC1_ARRAY_CLAMP_GFS_CTL 0x35a0 | 25 | #define VDD_SC1_ARRAY_CLAMP_GFS_CTL 0x35a0 |
26 | #define SCSS_CPU1CORE_RESET 0x2d80 | 26 | #define SCSS_CPU1CORE_RESET 0x2d80 |
diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig index 41983883cef4..6517132e5d8b 100644 --- a/drivers/firmware/Kconfig +++ b/drivers/firmware/Kconfig | |||
@@ -132,6 +132,10 @@ config ISCSI_IBFT | |||
132 | detect iSCSI boot parameters dynamically during system boot, say Y. | 132 | detect iSCSI boot parameters dynamically during system boot, say Y. |
133 | Otherwise, say N. | 133 | Otherwise, say N. |
134 | 134 | ||
135 | config QCOM_SCM | ||
136 | bool | ||
137 | depends on ARM || ARM64 | ||
138 | |||
135 | source "drivers/firmware/google/Kconfig" | 139 | source "drivers/firmware/google/Kconfig" |
136 | source "drivers/firmware/efi/Kconfig" | 140 | source "drivers/firmware/efi/Kconfig" |
137 | 141 | ||
diff --git a/drivers/firmware/Makefile b/drivers/firmware/Makefile index 5373dc5b6011..3fdd3912709a 100644 --- a/drivers/firmware/Makefile +++ b/drivers/firmware/Makefile | |||
@@ -11,6 +11,8 @@ obj-$(CONFIG_DMIID) += dmi-id.o | |||
11 | obj-$(CONFIG_ISCSI_IBFT_FIND) += iscsi_ibft_find.o | 11 | obj-$(CONFIG_ISCSI_IBFT_FIND) += iscsi_ibft_find.o |
12 | obj-$(CONFIG_ISCSI_IBFT) += iscsi_ibft.o | 12 | obj-$(CONFIG_ISCSI_IBFT) += iscsi_ibft.o |
13 | obj-$(CONFIG_FIRMWARE_MEMMAP) += memmap.o | 13 | obj-$(CONFIG_FIRMWARE_MEMMAP) += memmap.o |
14 | obj-$(CONFIG_QCOM_SCM) += qcom_scm.o | ||
15 | CFLAGS_qcom_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1) | ||
14 | 16 | ||
15 | obj-$(CONFIG_GOOGLE_FIRMWARE) += google/ | 17 | obj-$(CONFIG_GOOGLE_FIRMWARE) += google/ |
16 | obj-$(CONFIG_EFI) += efi/ | 18 | obj-$(CONFIG_EFI) += efi/ |
diff --git a/arch/arm/mach-qcom/scm.c b/drivers/firmware/qcom_scm.c index 3e0e334374de..6e7a72bdb176 100644 --- a/arch/arm/mach-qcom/scm.c +++ b/drivers/firmware/qcom_scm.c | |||
@@ -21,11 +21,11 @@ | |||
21 | #include <linux/mutex.h> | 21 | #include <linux/mutex.h> |
22 | #include <linux/errno.h> | 22 | #include <linux/errno.h> |
23 | #include <linux/err.h> | 23 | #include <linux/err.h> |
24 | #include <linux/qcom_scm.h> | ||
24 | 25 | ||
25 | #include <asm/outercache.h> | 26 | #include <asm/outercache.h> |
26 | #include <asm/cacheflush.h> | 27 | #include <asm/cacheflush.h> |
27 | 28 | ||
28 | #include "scm.h" | ||
29 | 29 | ||
30 | #define QCOM_SCM_ENOMEM -5 | 30 | #define QCOM_SCM_ENOMEM -5 |
31 | #define QCOM_SCM_EOPNOTSUPP -4 | 31 | #define QCOM_SCM_EOPNOTSUPP -4 |
diff --git a/arch/arm/mach-qcom/scm.h b/include/linux/qcom_scm.h index 6bb84cffb396..6bb84cffb396 100644 --- a/arch/arm/mach-qcom/scm.h +++ b/include/linux/qcom_scm.h | |||