Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
eb367cb6 | 2 | menu "Remoteproc drivers" |
650d6561 | 3 | |
400e64df | 4 | config REMOTEPROC |
e41ddbc0 | 5 | tristate "Support for Remote Processor subsystem" |
a1a7e0a3 | 6 | depends on HAS_DMA |
a2b950ac | 7 | select CRC32 |
c7426bce | 8 | select FW_LOADER |
2ed6d29c | 9 | select VIRTIO |
2666ca91 | 10 | select WANT_DEV_COREDUMP |
a73d9468 PM |
11 | help |
12 | Support for remote processors (such as DSP coprocessors). These | |
13 | are mainly used on embedded systems. | |
34ed5a33 | 14 | |
e41ddbc0 PG |
15 | if REMOTEPROC |
16 | ||
a0ff4aa6 OR |
17 | config IMX_REMOTEPROC |
18 | tristate "IMX6/7 remoteproc support" | |
19 | depends on SOC_IMX6SX || SOC_IMX7D | |
20 | help | |
21 | Say y here to support iMX's remote processors (Cortex M4 | |
22 | on iMX7D) via the remote processor framework. | |
23 | ||
24 | It's safe to say N here. | |
25 | ||
34ed5a33 OBC |
26 | config OMAP_REMOTEPROC |
27 | tristate "OMAP remoteproc support" | |
e5bc0294 | 28 | depends on ARCH_OMAP4 || SOC_OMAP5 |
9cd8eb43 | 29 | depends on OMAP_IOMMU |
c869c75c SA |
30 | select MAILBOX |
31 | select OMAP2PLUS_MBOX | |
34ed5a33 OBC |
32 | help |
33 | Say y here to support OMAP's remote processors (dual M3 | |
34 | and DSP on OMAP4) via the remote processor framework. | |
35 | ||
36 | Currently only supported on OMAP4. | |
37 | ||
a73d9468 | 38 | Usually you want to say Y here, in order to enable multimedia |
34ed5a33 OBC |
39 | use-cases to run on your platform (multimedia codecs are |
40 | offloaded to remote DSP processors using this framework). | |
41 | ||
a73d9468 | 42 | It's safe to say N here if you're not interested in multimedia |
34ed5a33 | 43 | offloading or just want a bare minimum kernel. |
650d6561 | 44 | |
a01bc0d5 DG |
45 | config WKUP_M3_RPROC |
46 | tristate "AMx3xx Wakeup M3 remoteproc support" | |
47 | depends on SOC_AM33XX || SOC_AM43XX | |
a01bc0d5 DG |
48 | help |
49 | Say y here to support Wakeup M3 remote processor on TI AM33xx | |
50 | and AM43xx family of SoCs. | |
51 | ||
52 | Required for Suspend-to-RAM on AM33xx and AM43xx SoCs. Also needed | |
53 | for deep CPUIdle states on AM33xx SoCs. Allows for loading of the | |
54 | firmware onto these remote processors. | |
55 | If unsure say N. | |
56 | ||
13be5432 RT |
57 | config DA8XX_REMOTEPROC |
58 | tristate "DA8xx/OMAP-L13x remoteproc support" | |
59 | depends on ARCH_DAVINCI_DA8XX | |
c51e882c | 60 | depends on DMA_CMA |
13be5432 RT |
61 | help |
62 | Say y here to support DA8xx/OMAP-L13x remote processors via the | |
63 | remote processor framework. | |
64 | ||
65 | You want to say y here in order to enable AMP | |
66 | use-cases to run on your platform (multimedia codecs are | |
67 | offloaded to remote DSP processors using this framework). | |
68 | ||
69 | This module controls the name of the firmware file that gets | |
70 | loaded on the DSP. This file must reside in the /lib/firmware | |
71 | directory. It can be specified via the module parameter | |
72 | da8xx_fw_name=<filename>, and if not specified will default to | |
73 | "rproc-dsp-fw". | |
74 | ||
75 | It's safe to say n here if you're not interested in multimedia | |
76 | offloading. | |
77 | ||
e88bb8f7 SA |
78 | config KEYSTONE_REMOTEPROC |
79 | tristate "Keystone Remoteproc support" | |
80 | depends on ARCH_KEYSTONE | |
e88bb8f7 SA |
81 | help |
82 | Say Y here here to support Keystone remote processors (DSP) | |
83 | via the remote processor framework. | |
84 | ||
85 | It's safe to say N here if you're not interested in the Keystone | |
86 | DSPs or just want to use a bare minimum kernel. | |
87 | ||
9e004f97 BA |
88 | config QCOM_RPROC_COMMON |
89 | tristate | |
90 | ||
91 | config QCOM_Q6V5_COMMON | |
92 | tristate | |
93 | depends on ARCH_QCOM | |
94 | depends on QCOM_SMEM | |
95 | ||
dc160e44 R |
96 | config QCOM_Q6V5_ADSP |
97 | tristate "Qualcomm Technology Inc ADSP Peripheral Image Loader" | |
98 | depends on OF && ARCH_QCOM | |
99 | depends on QCOM_SMEM | |
100 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) | |
101 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n | |
102 | depends on QCOM_SYSMON || QCOM_SYSMON=n | |
103 | select MFD_SYSCON | |
104 | select QCOM_MDT_LOADER | |
105 | select QCOM_Q6V5_COMMON | |
106 | select QCOM_RPROC_COMMON | |
107 | help | |
108 | Say y here to support the Peripheral Image Loader | |
109 | for the Qualcomm Technology Inc. ADSP remote processors. | |
110 | ||
ef73c22f BA |
111 | config QCOM_Q6V5_MSS |
112 | tristate "Qualcomm Hexagon V5 self-authenticating modem subsystem support" | |
b9e718e9 BA |
113 | depends on OF && ARCH_QCOM |
114 | depends on QCOM_SMEM | |
395a4805 | 115 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
eea07023 | 116 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
1fb82ee8 | 117 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
b9e718e9 | 118 | select MFD_SYSCON |
6103b1a6 | 119 | select QCOM_Q6V5_COMMON |
bde440ee | 120 | select QCOM_RPROC_COMMON |
8af1d63e | 121 | select QCOM_SCM |
b9e718e9 | 122 | help |
ef73c22f BA |
123 | Say y here to support the Qualcomm self-authenticating modem |
124 | subsystem based on Hexagon V5. | |
3b415c8f | 125 | |
ef73c22f BA |
126 | config QCOM_Q6V5_PAS |
127 | tristate "Qualcomm Hexagon v5 Peripheral Authentication Service support" | |
051fb70f BA |
128 | depends on OF && ARCH_QCOM |
129 | depends on QCOM_SMEM | |
395a4805 | 130 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
ab759b97 | 131 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
1fb82ee8 | 132 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
051fb70f | 133 | select MFD_SYSCON |
ef73c22f | 134 | select QCOM_MDT_LOADER |
7d674731 | 135 | select QCOM_Q6V5_COMMON |
bde440ee | 136 | select QCOM_RPROC_COMMON |
e2a32b6b | 137 | select QCOM_SCM |
051fb70f | 138 | help |
9e004f97 BA |
139 | Say y here to support the TrustZone based Peripherial Image Loader |
140 | for the Qualcomm Hexagon v5 based remote processors. This is commonly | |
141 | used to control subsystems such as ADSP, Compute and Sensor. | |
051fb70f | 142 | |
3a3d4163 S |
143 | config QCOM_Q6V5_WCSS |
144 | tristate "Qualcomm Hexagon based WCSS Peripheral Image Loader" | |
145 | depends on OF && ARCH_QCOM | |
146 | depends on QCOM_SMEM | |
12c2b509 | 147 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
3a3d4163 S |
148 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
149 | depends on QCOM_SYSMON || QCOM_SYSMON=n | |
150 | select MFD_SYSCON | |
151 | select QCOM_MDT_LOADER | |
152 | select QCOM_Q6V5_COMMON | |
153 | select QCOM_RPROC_COMMON | |
154 | select QCOM_SCM | |
155 | help | |
156 | Say y here to support the Qualcomm Peripheral Image Loader for the | |
157 | Hexagon V5 based WCSS remote processors. | |
158 | ||
1fb82ee8 BA |
159 | config QCOM_SYSMON |
160 | tristate "Qualcomm sysmon driver" | |
161 | depends on RPMSG | |
162 | depends on ARCH_QCOM | |
dea4bd19 | 163 | depends on NET |
1fb82ee8 BA |
164 | select QCOM_QMI_HELPERS |
165 | help | |
166 | The sysmon driver implements a sysmon QMI client and a handler for | |
167 | the sys_mon SMD and GLINK channel, which are used for graceful | |
168 | shutdown, retrieving failure information and propagating information | |
169 | about other subsystems being shut down. | |
170 | ||
171 | Say y here if your system runs firmware on any other subsystems, e.g. | |
172 | modem or DSP. | |
173 | ||
aed361ad BA |
174 | config QCOM_WCNSS_PIL |
175 | tristate "Qualcomm WCNSS Peripheral Image Loader" | |
176 | depends on OF && ARCH_QCOM | |
395a4805 | 177 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
ab759b97 | 178 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
aed361ad | 179 | depends on QCOM_SMEM |
1fb82ee8 | 180 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
aed361ad | 181 | select QCOM_MDT_LOADER |
bde440ee | 182 | select QCOM_RPROC_COMMON |
aed361ad | 183 | select QCOM_SCM |
aed361ad BA |
184 | help |
185 | Say y here to support the Peripheral Image Loader for the Qualcomm | |
186 | Wireless Connectivity Subsystem. | |
187 | ||
63edb031 LJ |
188 | config ST_REMOTEPROC |
189 | tristate "ST remoteproc support" | |
190 | depends on ARCH_STI | |
231c8dfd LP |
191 | select MAILBOX |
192 | select STI_MBOX | |
63edb031 LJ |
193 | help |
194 | Say y here to support ST's adjunct processors via the remote | |
195 | processor framework. | |
196 | This can be either built-in or a loadable module. | |
197 | ||
bb6869b2 PG |
198 | config ST_SLIM_REMOTEPROC |
199 | tristate | |
e41ddbc0 PG |
200 | |
201 | endif # REMOTEPROC | |
bb6869b2 | 202 | |
650d6561 | 203 | endmenu |