forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/drivers/remoteproc/Kconfig
....@@ -1,7 +1,8 @@
1
+# SPDX-License-Identifier: GPL-2.0-only
12 menu "Remoteproc drivers"
23
34 config REMOTEPROC
4
- tristate "Support for Remote Processor subsystem"
5
+ bool "Support for Remote Processor subsystem"
56 depends on HAS_DMA
67 select CRC32
78 select FW_LOADER
....@@ -13,18 +14,46 @@
1314
1415 if REMOTEPROC
1516
17
+config REMOTEPROC_CDEV
18
+ bool "Remoteproc character device interface"
19
+ help
20
+ Say y here to have a character device interface for the remoteproc
21
+ framework. Userspace can boot/shutdown remote processors through
22
+ this interface.
23
+
24
+ It's safe to say N if you don't want to use this interface.
25
+
1626 config IMX_REMOTEPROC
1727 tristate "IMX6/7 remoteproc support"
18
- depends on SOC_IMX6SX || SOC_IMX7D
28
+ depends on ARCH_MXC
1929 help
2030 Say y here to support iMX's remote processors (Cortex M4
2131 on iMX7D) via the remote processor framework.
2232
2333 It's safe to say N here.
2434
35
+config INGENIC_VPU_RPROC
36
+ tristate "Ingenic JZ47xx VPU remoteproc support"
37
+ depends on MIPS || COMPILE_TEST
38
+ help
39
+ Say y or m here to support the VPU in the JZ47xx SoCs from Ingenic.
40
+
41
+ This can be either built-in or a loadable module.
42
+ If unsure say N.
43
+
44
+config MTK_SCP
45
+ tristate "Mediatek SCP support"
46
+ depends on ARCH_MEDIATEK || COMPILE_TEST
47
+ select RPMSG_MTK_SCP
48
+ help
49
+ Say y here to support Mediatek's System Companion Processor (SCP) via
50
+ the remote processor framework.
51
+
52
+ It's safe to say N here.
53
+
2554 config OMAP_REMOTEPROC
2655 tristate "OMAP remoteproc support"
27
- depends on ARCH_OMAP4 || SOC_OMAP5
56
+ depends on ARCH_OMAP4 || SOC_OMAP5 || SOC_DRA7XX
2857 depends on OMAP_IOMMU
2958 select MAILBOX
3059 select OMAP2PLUS_MBOX
....@@ -40,6 +69,18 @@
4069
4170 It's safe to say N here if you're not interested in multimedia
4271 offloading or just want a bare minimum kernel.
72
+
73
+config OMAP_REMOTEPROC_WATCHDOG
74
+ bool "OMAP remoteproc watchdog timer"
75
+ depends on OMAP_REMOTEPROC
76
+ default n
77
+ help
78
+ Say Y here to enable watchdog timer for remote processors.
79
+
80
+ This option controls the watchdog functionality for the remote
81
+ processors in OMAP. Dedicated OMAP DMTimers are used by the remote
82
+ processors and triggers the timer interrupt upon a watchdog
83
+ detection.
4384
4485 config WKUP_M3_RPROC
4586 tristate "AMx3xx Wakeup M3 remoteproc support"
....@@ -84,21 +125,8 @@
84125 It's safe to say N here if you're not interested in the Keystone
85126 DSPs or just want to use a bare minimum kernel.
86127
87
-config QCOM_ADSP_PIL
88
- tristate "Qualcomm ADSP Peripheral Image Loader"
89
- depends on OF && ARCH_QCOM
90
- depends on QCOM_SMEM
91
- depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
92
- depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
93
- depends on QCOM_SYSMON || QCOM_SYSMON=n
94
- select MFD_SYSCON
95
- select QCOM_MDT_LOADER
96
- select QCOM_Q6V5_COMMON
97
- select QCOM_RPROC_COMMON
98
- select QCOM_SCM
99
- help
100
- Say y here to support the TrustZone based Peripherial Image Loader
101
- for the Qualcomm ADSP remote processors.
128
+config QCOM_PIL_INFO
129
+ tristate
102130
103131 config QCOM_RPROC_COMMON
104132 tristate
....@@ -108,20 +136,56 @@
108136 depends on ARCH_QCOM
109137 depends on QCOM_SMEM
110138
111
-config QCOM_Q6V5_PIL
112
- tristate "Qualcomm Hexagon V5 Peripherial Image Loader"
139
+config QCOM_Q6V5_ADSP
140
+ tristate "Qualcomm Technology Inc ADSP Peripheral Image Loader"
113141 depends on OF && ARCH_QCOM
114142 depends on QCOM_SMEM
115143 depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
116144 depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
117145 depends on QCOM_SYSMON || QCOM_SYSMON=n
118146 select MFD_SYSCON
147
+ select QCOM_PIL_INFO
148
+ select QCOM_MDT_LOADER
149
+ select QCOM_Q6V5_COMMON
150
+ select QCOM_RPROC_COMMON
151
+ help
152
+ Say y here to support the Peripheral Image Loader
153
+ for the Qualcomm Technology Inc. ADSP remote processors.
154
+
155
+config QCOM_Q6V5_MSS
156
+ tristate "Qualcomm Hexagon V5 self-authenticating modem subsystem support"
157
+ depends on OF && ARCH_QCOM
158
+ depends on QCOM_SMEM
159
+ depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
160
+ depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
161
+ depends on QCOM_SYSMON || QCOM_SYSMON=n
162
+ select MFD_SYSCON
163
+ select QCOM_MDT_LOADER
164
+ select QCOM_PIL_INFO
119165 select QCOM_Q6V5_COMMON
120166 select QCOM_RPROC_COMMON
121167 select QCOM_SCM
122168 help
123
- Say y here to support the Qualcomm Peripherial Image Loader for the
124
- Hexagon V5 based remote processors.
169
+ Say y here to support the Qualcomm self-authenticating modem
170
+ subsystem based on Hexagon V5.
171
+
172
+config QCOM_Q6V5_PAS
173
+ tristate "Qualcomm Hexagon v5 Peripheral Authentication Service support"
174
+ depends on OF && ARCH_QCOM
175
+ depends on QCOM_SMEM
176
+ depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
177
+ depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
178
+ depends on QCOM_SYSMON || QCOM_SYSMON=n
179
+ select MFD_SYSCON
180
+ select QCOM_PIL_INFO
181
+ select QCOM_MDT_LOADER
182
+ select QCOM_Q6V5_COMMON
183
+ select QCOM_RPROC_COMMON
184
+ select QCOM_SCM
185
+ help
186
+ Say y here to support the TrustZone based Peripherial Image Loader
187
+ for the Qualcomm Hexagon v5 based remote processors. This is commonly
188
+ used to control subsystems such as ADSP, Compute and Sensor.
125189
126190 config QCOM_Q6V5_WCSS
127191 tristate "Qualcomm Hexagon based WCSS Peripheral Image Loader"
....@@ -132,6 +196,7 @@
132196 depends on QCOM_SYSMON || QCOM_SYSMON=n
133197 select MFD_SYSCON
134198 select QCOM_MDT_LOADER
199
+ select QCOM_PIL_INFO
135200 select QCOM_Q6V5_COMMON
136201 select QCOM_RPROC_COMMON
137202 select QCOM_SCM
....@@ -162,6 +227,7 @@
162227 depends on QCOM_SMEM
163228 depends on QCOM_SYSMON || QCOM_SYSMON=n
164229 select QCOM_MDT_LOADER
230
+ select QCOM_PIL_INFO
165231 select QCOM_RPROC_COMMON
166232 select QCOM_SCM
167233 help
....@@ -181,6 +247,47 @@
181247 config ST_SLIM_REMOTEPROC
182248 tristate
183249
250
+config STM32_RPROC
251
+ tristate "STM32 remoteproc support"
252
+ depends on ARCH_STM32
253
+ depends on REMOTEPROC
254
+ select MAILBOX
255
+ help
256
+ Say y here to support STM32 MCU processors via the
257
+ remote processor framework.
258
+
259
+ You want to say y here in order to enable AMP
260
+ use-cases to run on your platform (dedicated firmware could be
261
+ offloaded to remote MCU processors using this framework).
262
+
263
+ This can be either built-in or a loadable module.
264
+
265
+config TI_K3_DSP_REMOTEPROC
266
+ tristate "TI K3 DSP remoteproc support"
267
+ depends on ARCH_K3
268
+ select MAILBOX
269
+ select OMAP2PLUS_MBOX
270
+ help
271
+ Say m here to support TI's C66x and C71x DSP remote processor
272
+ subsystems on various TI K3 family of SoCs through the remote
273
+ processor framework.
274
+
275
+ It's safe to say N here if you're not interested in utilizing
276
+ the DSP slave processors.
277
+
278
+config TI_K3_R5_REMOTEPROC
279
+ tristate "TI K3 R5 remoteproc support"
280
+ depends on ARCH_K3
281
+ select MAILBOX
282
+ select OMAP2PLUS_MBOX
283
+ help
284
+ Say m here to support TI's R5F remote processor subsystems
285
+ on various TI K3 family of SoCs through the remote processor
286
+ framework.
287
+
288
+ It's safe to say N here if you're not interested in utilizing
289
+ a slave processor.
290
+
184291 endif # REMOTEPROC
185292
186293 endmenu