Thomas Gleixner | ec8f24b | 2019-05-19 13:07:45 +0100 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0-only |
Kees Cook | eb367cb | 2013-01-16 18:53:51 -0800 | [diff] [blame] | 2 | menu "Remoteproc drivers" |
Ohad Ben-Cohen | 650d656 | 2011-12-14 13:01:59 +0200 | [diff] [blame] | 3 | |
Ohad Ben-Cohen | 400e64d | 2011-10-20 16:52:46 +0200 | [diff] [blame] | 4 | config REMOTEPROC |
Christoph Hellwig | 6334150 | 2019-08-30 08:43:12 +0200 | [diff] [blame] | 5 | bool "Support for Remote Processor subsystem" |
Sjur Brændeland | a1a7e0a | 2012-09-13 20:03:58 +0200 | [diff] [blame] | 6 | depends on HAS_DMA |
Ohad Ben-Cohen | a2b950a | 2013-04-07 14:06:07 +0300 | [diff] [blame] | 7 | select CRC32 |
Robert Tivy | c7426bc | 2013-03-28 18:41:43 -0700 | [diff] [blame] | 8 | select FW_LOADER |
Ohad Ben-Cohen | 2ed6d29 | 2012-09-30 10:25:34 +0200 | [diff] [blame] | 9 | select VIRTIO |
Sarangdhar Joshi | 2666ca9 | 2018-01-05 16:04:17 -0800 | [diff] [blame] | 10 | select WANT_DEV_COREDUMP |
Pavel Machek | a73d946 | 2016-12-19 10:22:50 +0100 | [diff] [blame] | 11 | help |
| 12 | Support for remote processors (such as DSP coprocessors). These |
| 13 | are mainly used on embedded systems. |
Ohad Ben-Cohen | 34ed5a3 | 2011-10-20 18:53:35 +0200 | [diff] [blame] | 14 | |
Peter Griffin | e41ddbc | 2016-10-18 10:39:08 +0100 | [diff] [blame] | 15 | if REMOTEPROC |
| 16 | |
Siddharth Gupta | 4476770 | 2020-07-29 10:40:00 -0700 | [diff] [blame] | 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 | |
Oleksij Rempel | a0ff4aa6 | 2017-08-17 09:15:26 +0200 | [diff] [blame] | 26 | config IMX_REMOTEPROC |
| 27 | tristate "IMX6/7 remoteproc support" |
Fabio Estevam | 0aa2582 | 2019-06-03 20:46:27 -0300 | [diff] [blame] | 28 | depends on ARCH_MXC |
Oleksij Rempel | a0ff4aa6 | 2017-08-17 09:15:26 +0200 | [diff] [blame] | 29 | help |
| 30 | Say y here to support iMX's remote processors (Cortex M4 |
| 31 | on iMX7D) via the remote processor framework. |
| 32 | |
| 33 | It's safe to say N here. |
| 34 | |
Paul Cercueil | 48f0a1b | 2020-05-15 12:43:39 +0200 | [diff] [blame] | 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 | |
Erin Lo | 63c13d6 | 2019-11-12 19:03:25 +0800 | [diff] [blame] | 44 | config MTK_SCP |
| 45 | tristate "Mediatek SCP support" |
Alexandre Courbot | 9a4e668 | 2020-09-15 10:29:11 +0900 | [diff] [blame^] | 46 | depends on ARCH_MEDIATEK || COMPILE_TEST |
Pi-Hsun Shih | 7017996 | 2019-11-12 19:03:26 +0800 | [diff] [blame] | 47 | select RPMSG_MTK_SCP |
Erin Lo | 63c13d6 | 2019-11-12 19:03:25 +0800 | [diff] [blame] | 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 | |
Ohad Ben-Cohen | 34ed5a3 | 2011-10-20 18:53:35 +0200 | [diff] [blame] | 54 | config OMAP_REMOTEPROC |
| 55 | tristate "OMAP remoteproc support" |
Suman Anna | 0aaf191 | 2020-03-24 13:00:27 +0200 | [diff] [blame] | 56 | depends on ARCH_OMAP4 || SOC_OMAP5 || SOC_DRA7XX |
Ohad Ben-Cohen | 9cd8eb4 | 2012-02-28 13:04:33 +0200 | [diff] [blame] | 57 | depends on OMAP_IOMMU |
Suman Anna | c869c75 | 2013-03-12 17:55:29 -0500 | [diff] [blame] | 58 | select MAILBOX |
| 59 | select OMAP2PLUS_MBOX |
Ohad Ben-Cohen | 34ed5a3 | 2011-10-20 18:53:35 +0200 | [diff] [blame] | 60 | help |
| 61 | Say y here to support OMAP's remote processors (dual M3 |
| 62 | and DSP on OMAP4) via the remote processor framework. |
| 63 | |
| 64 | Currently only supported on OMAP4. |
| 65 | |
Pavel Machek | a73d946 | 2016-12-19 10:22:50 +0100 | [diff] [blame] | 66 | Usually you want to say Y here, in order to enable multimedia |
Ohad Ben-Cohen | 34ed5a3 | 2011-10-20 18:53:35 +0200 | [diff] [blame] | 67 | use-cases to run on your platform (multimedia codecs are |
| 68 | offloaded to remote DSP processors using this framework). |
| 69 | |
Pavel Machek | a73d946 | 2016-12-19 10:22:50 +0100 | [diff] [blame] | 70 | It's safe to say N here if you're not interested in multimedia |
Ohad Ben-Cohen | 34ed5a3 | 2011-10-20 18:53:35 +0200 | [diff] [blame] | 71 | offloading or just want a bare minimum kernel. |
Ohad Ben-Cohen | 650d656 | 2011-12-14 13:01:59 +0200 | [diff] [blame] | 72 | |
Suman Anna | 69591e4 | 2020-03-24 13:00:34 +0200 | [diff] [blame] | 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. |
| 84 | |
Dave Gerlach | a01bc0d | 2015-05-22 15:45:30 -0500 | [diff] [blame] | 85 | config WKUP_M3_RPROC |
| 86 | tristate "AMx3xx Wakeup M3 remoteproc support" |
| 87 | depends on SOC_AM33XX || SOC_AM43XX |
Dave Gerlach | a01bc0d | 2015-05-22 15:45:30 -0500 | [diff] [blame] | 88 | help |
| 89 | Say y here to support Wakeup M3 remote processor on TI AM33xx |
| 90 | and AM43xx family of SoCs. |
| 91 | |
| 92 | Required for Suspend-to-RAM on AM33xx and AM43xx SoCs. Also needed |
| 93 | for deep CPUIdle states on AM33xx SoCs. Allows for loading of the |
| 94 | firmware onto these remote processors. |
| 95 | If unsure say N. |
| 96 | |
Robert Tivy | 13be543 | 2013-04-09 14:20:21 -0700 | [diff] [blame] | 97 | config DA8XX_REMOTEPROC |
| 98 | tristate "DA8xx/OMAP-L13x remoteproc support" |
| 99 | depends on ARCH_DAVINCI_DA8XX |
Suman Anna | c51e882 | 2017-05-18 17:08:59 -0500 | [diff] [blame] | 100 | depends on DMA_CMA |
Robert Tivy | 13be543 | 2013-04-09 14:20:21 -0700 | [diff] [blame] | 101 | help |
| 102 | Say y here to support DA8xx/OMAP-L13x remote processors via the |
| 103 | remote processor framework. |
| 104 | |
| 105 | You want to say y here in order to enable AMP |
| 106 | use-cases to run on your platform (multimedia codecs are |
| 107 | offloaded to remote DSP processors using this framework). |
| 108 | |
| 109 | This module controls the name of the firmware file that gets |
| 110 | loaded on the DSP. This file must reside in the /lib/firmware |
| 111 | directory. It can be specified via the module parameter |
| 112 | da8xx_fw_name=<filename>, and if not specified will default to |
| 113 | "rproc-dsp-fw". |
| 114 | |
| 115 | It's safe to say n here if you're not interested in multimedia |
| 116 | offloading. |
| 117 | |
Suman Anna | e88bb8f | 2017-06-13 18:45:12 -0500 | [diff] [blame] | 118 | config KEYSTONE_REMOTEPROC |
| 119 | tristate "Keystone Remoteproc support" |
| 120 | depends on ARCH_KEYSTONE |
Suman Anna | e88bb8f | 2017-06-13 18:45:12 -0500 | [diff] [blame] | 121 | help |
| 122 | Say Y here here to support Keystone remote processors (DSP) |
| 123 | via the remote processor framework. |
| 124 | |
| 125 | It's safe to say N here if you're not interested in the Keystone |
| 126 | DSPs or just want to use a bare minimum kernel. |
| 127 | |
Bjorn Andersson | 549b67d | 2020-06-22 12:19:39 -0700 | [diff] [blame] | 128 | config QCOM_PIL_INFO |
| 129 | tristate |
| 130 | |
Bjorn Andersson | 9e004f9 | 2018-09-24 16:45:25 -0700 | [diff] [blame] | 131 | config QCOM_RPROC_COMMON |
| 132 | tristate |
| 133 | |
| 134 | config QCOM_Q6V5_COMMON |
| 135 | tristate |
| 136 | depends on ARCH_QCOM |
| 137 | depends on QCOM_SMEM |
| 138 | |
Rohit kumar | dc160e4 | 2018-09-24 16:37:50 +0530 | [diff] [blame] | 139 | config QCOM_Q6V5_ADSP |
| 140 | tristate "Qualcomm Technology Inc ADSP Peripheral Image Loader" |
| 141 | depends on OF && ARCH_QCOM |
| 142 | depends on QCOM_SMEM |
| 143 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
| 144 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
| 145 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
| 146 | select MFD_SYSCON |
Bjorn Andersson | d4c78d2 | 2020-06-22 12:19:40 -0700 | [diff] [blame] | 147 | select QCOM_PIL_INFO |
Rohit kumar | dc160e4 | 2018-09-24 16:37:50 +0530 | [diff] [blame] | 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 | |
Bjorn Andersson | ef73c22 | 2018-09-24 16:45:26 -0700 | [diff] [blame] | 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 |
YueHaibing | f1d72c5 | 2019-07-04 14:46:49 +0800 | [diff] [blame] | 163 | select QCOM_MDT_LOADER |
Bjorn Andersson | d4c78d2 | 2020-06-22 12:19:40 -0700 | [diff] [blame] | 164 | select QCOM_PIL_INFO |
Bjorn Andersson | ef73c22 | 2018-09-24 16:45:26 -0700 | [diff] [blame] | 165 | select QCOM_Q6V5_COMMON |
| 166 | select QCOM_RPROC_COMMON |
| 167 | select QCOM_SCM |
| 168 | help |
| 169 | Say y here to support the Qualcomm self-authenticating modem |
| 170 | subsystem based on Hexagon V5. |
| 171 | |
Bjorn Andersson | 9e004f9 | 2018-09-24 16:45:25 -0700 | [diff] [blame] | 172 | config QCOM_Q6V5_PAS |
| 173 | tristate "Qualcomm Hexagon v5 Peripheral Authentication Service support" |
Bjorn Andersson | b9e718e | 2016-08-22 22:57:44 -0700 | [diff] [blame] | 174 | depends on OF && ARCH_QCOM |
| 175 | depends on QCOM_SMEM |
Bjorn Andersson | 395a480 | 2017-03-27 22:26:34 -0700 | [diff] [blame] | 176 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
Bjorn Andersson | eea0702 | 2017-08-29 16:13:35 -0700 | [diff] [blame] | 177 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
Bjorn Andersson | 1fb82ee | 2017-08-27 21:51:38 -0700 | [diff] [blame] | 178 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
Bjorn Andersson | b9e718e | 2016-08-22 22:57:44 -0700 | [diff] [blame] | 179 | select MFD_SYSCON |
Bjorn Andersson | d4c78d2 | 2020-06-22 12:19:40 -0700 | [diff] [blame] | 180 | select QCOM_PIL_INFO |
Bjorn Andersson | b9e718e | 2016-08-22 22:57:44 -0700 | [diff] [blame] | 181 | select QCOM_MDT_LOADER |
Bjorn Andersson | 6103b1a | 2018-06-04 13:30:37 -0700 | [diff] [blame] | 182 | select QCOM_Q6V5_COMMON |
Bjorn Andersson | bde440e | 2017-01-27 02:28:32 -0800 | [diff] [blame] | 183 | select QCOM_RPROC_COMMON |
Arnd Bergmann | 8af1d63 | 2016-12-09 12:47:02 +0100 | [diff] [blame] | 184 | select QCOM_SCM |
Bjorn Andersson | b9e718e | 2016-08-22 22:57:44 -0700 | [diff] [blame] | 185 | help |
| 186 | Say y here to support the TrustZone based Peripherial Image Loader |
Bjorn Andersson | 9e004f9 | 2018-09-24 16:45:25 -0700 | [diff] [blame] | 187 | for the Qualcomm Hexagon v5 based remote processors. This is commonly |
| 188 | used to control subsystems such as ADSP, Compute and Sensor. |
Bjorn Andersson | 051fb70 | 2016-06-20 14:28:41 -0700 | [diff] [blame] | 189 | |
Sricharan R | 3a3d416 | 2018-06-07 22:57:11 +0530 | [diff] [blame] | 190 | config QCOM_Q6V5_WCSS |
| 191 | tristate "Qualcomm Hexagon based WCSS Peripheral Image Loader" |
| 192 | depends on OF && ARCH_QCOM |
| 193 | depends on QCOM_SMEM |
Arnd Bergmann | 12c2b50 | 2018-07-18 13:16:26 +0200 | [diff] [blame] | 194 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
Sricharan R | 3a3d416 | 2018-06-07 22:57:11 +0530 | [diff] [blame] | 195 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
| 196 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
| 197 | select MFD_SYSCON |
| 198 | select QCOM_MDT_LOADER |
Bjorn Andersson | d4c78d2 | 2020-06-22 12:19:40 -0700 | [diff] [blame] | 199 | select QCOM_PIL_INFO |
Sricharan R | 3a3d416 | 2018-06-07 22:57:11 +0530 | [diff] [blame] | 200 | select QCOM_Q6V5_COMMON |
| 201 | select QCOM_RPROC_COMMON |
| 202 | select QCOM_SCM |
| 203 | help |
| 204 | Say y here to support the Qualcomm Peripheral Image Loader for the |
| 205 | Hexagon V5 based WCSS remote processors. |
| 206 | |
Bjorn Andersson | 1fb82ee | 2017-08-27 21:51:38 -0700 | [diff] [blame] | 207 | config QCOM_SYSMON |
| 208 | tristate "Qualcomm sysmon driver" |
| 209 | depends on RPMSG |
| 210 | depends on ARCH_QCOM |
Arnd Bergmann | dea4bd1 | 2018-02-22 16:57:38 +0100 | [diff] [blame] | 211 | depends on NET |
Bjorn Andersson | 1fb82ee | 2017-08-27 21:51:38 -0700 | [diff] [blame] | 212 | select QCOM_QMI_HELPERS |
| 213 | help |
| 214 | The sysmon driver implements a sysmon QMI client and a handler for |
| 215 | the sys_mon SMD and GLINK channel, which are used for graceful |
| 216 | shutdown, retrieving failure information and propagating information |
| 217 | about other subsystems being shut down. |
| 218 | |
| 219 | Say y here if your system runs firmware on any other subsystems, e.g. |
| 220 | modem or DSP. |
| 221 | |
Bjorn Andersson | aed361a | 2016-08-12 18:18:59 -0700 | [diff] [blame] | 222 | config QCOM_WCNSS_PIL |
| 223 | tristate "Qualcomm WCNSS Peripheral Image Loader" |
| 224 | depends on OF && ARCH_QCOM |
Bjorn Andersson | 395a480 | 2017-03-27 22:26:34 -0700 | [diff] [blame] | 225 | depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n) |
Arnd Bergmann | ab759b9 | 2017-09-11 21:54:17 +0200 | [diff] [blame] | 226 | depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n |
Bjorn Andersson | aed361a | 2016-08-12 18:18:59 -0700 | [diff] [blame] | 227 | depends on QCOM_SMEM |
Bjorn Andersson | 1fb82ee | 2017-08-27 21:51:38 -0700 | [diff] [blame] | 228 | depends on QCOM_SYSMON || QCOM_SYSMON=n |
Bjorn Andersson | aed361a | 2016-08-12 18:18:59 -0700 | [diff] [blame] | 229 | select QCOM_MDT_LOADER |
Bjorn Andersson | d4c78d2 | 2020-06-22 12:19:40 -0700 | [diff] [blame] | 230 | select QCOM_PIL_INFO |
Bjorn Andersson | bde440e | 2017-01-27 02:28:32 -0800 | [diff] [blame] | 231 | select QCOM_RPROC_COMMON |
Bjorn Andersson | aed361a | 2016-08-12 18:18:59 -0700 | [diff] [blame] | 232 | select QCOM_SCM |
Bjorn Andersson | aed361a | 2016-08-12 18:18:59 -0700 | [diff] [blame] | 233 | help |
| 234 | Say y here to support the Peripheral Image Loader for the Qualcomm |
| 235 | Wireless Connectivity Subsystem. |
| 236 | |
Lee Jones | 63edb03 | 2016-01-12 12:46:18 +0000 | [diff] [blame] | 237 | config ST_REMOTEPROC |
| 238 | tristate "ST remoteproc support" |
| 239 | depends on ARCH_STI |
Loic Pallardy | 231c8df | 2017-01-31 13:35:54 +0100 | [diff] [blame] | 240 | select MAILBOX |
| 241 | select STI_MBOX |
Lee Jones | 63edb03 | 2016-01-12 12:46:18 +0000 | [diff] [blame] | 242 | help |
| 243 | Say y here to support ST's adjunct processors via the remote |
| 244 | processor framework. |
| 245 | This can be either built-in or a loadable module. |
| 246 | |
Peter Griffin | bb6869b | 2016-10-18 10:39:06 +0100 | [diff] [blame] | 247 | config ST_SLIM_REMOTEPROC |
| 248 | tristate |
Peter Griffin | e41ddbc | 2016-10-18 10:39:08 +0100 | [diff] [blame] | 249 | |
Fabien Dessenne | 13140de | 2019-05-14 10:26:58 +0200 | [diff] [blame] | 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 | |
Suman Anna | 6edbe02 | 2020-07-21 17:36:16 -0500 | [diff] [blame] | 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 | |
Peter Griffin | e41ddbc | 2016-10-18 10:39:08 +0100 | [diff] [blame] | 278 | endif # REMOTEPROC |
Peter Griffin | bb6869b | 2016-10-18 10:39:06 +0100 | [diff] [blame] | 279 | |
Ohad Ben-Cohen | 650d656 | 2011-12-14 13:01:59 +0200 | [diff] [blame] | 280 | endmenu |