12fa8f26f1f0e7b6dbb167b9e5fb5e18c115b58d
1 menu "Remoteproc drivers"
3 config REMOTEPROC
4 tristate "Support for Remote Processor subsystem"
5 depends on HAS_DMA
6 select CRC32
7 select FW_LOADER
8 select VIRTIO
9 select WANT_DEV_COREDUMP
10 help
11 Support for remote processors (such as DSP coprocessors). These
12 are mainly used on embedded systems.
14 if REMOTEPROC
16 config IMX_REMOTEPROC
17 tristate "IMX6/7 remoteproc support"
18 depends on SOC_IMX6SX || SOC_IMX7D
19 help
20 Say y here to support iMX's remote processors (Cortex M4
21 on iMX7D) via the remote processor framework.
23 It's safe to say N here.
25 config OMAP_REMOTEPROC
26 tristate "OMAP remoteproc support"
27 depends on ARCH_OMAP4 || SOC_OMAP5
28 depends on OMAP_IOMMU
29 select MAILBOX
30 select OMAP2PLUS_MBOX
31 help
32 Say y here to support OMAP's remote processors (dual M3
33 and DSP on OMAP4) via the remote processor framework.
35 Currently only supported on OMAP4.
37 Usually you want to say Y here, in order to enable multimedia
38 use-cases to run on your platform (multimedia codecs are
39 offloaded to remote DSP processors using this framework).
41 It's safe to say N here if you're not interested in multimedia
42 offloading or just want a bare minimum kernel.
44 config WKUP_M3_RPROC
45 tristate "AMx3xx Wakeup M3 remoteproc support"
46 depends on SOC_AM33XX || SOC_AM43XX
47 help
48 Say y here to support Wakeup M3 remote processor on TI AM33xx
49 and AM43xx family of SoCs.
51 Required for Suspend-to-RAM on AM33xx and AM43xx SoCs. Also needed
52 for deep CPUIdle states on AM33xx SoCs. Allows for loading of the
53 firmware onto these remote processors.
54 If unsure say N.
56 config DA8XX_REMOTEPROC
57 tristate "DA8xx/OMAP-L13x remoteproc support"
58 depends on ARCH_DAVINCI_DA8XX
59 depends on DMA_CMA
60 help
61 Say y here to support DA8xx/OMAP-L13x remote processors via the
62 remote processor framework.
64 You want to say y here in order to enable AMP
65 use-cases to run on your platform (multimedia codecs are
66 offloaded to remote DSP processors using this framework).
68 This module controls the name of the firmware file that gets
69 loaded on the DSP. This file must reside in the /lib/firmware
70 directory. It can be specified via the module parameter
71 da8xx_fw_name=<filename>, and if not specified will default to
72 "rproc-dsp-fw".
74 It's safe to say n here if you're not interested in multimedia
75 offloading.
77 config KEYSTONE_REMOTEPROC
78 tristate "Keystone Remoteproc support"
79 depends on ARCH_KEYSTONE
80 depends on UIO
81 help
82 Say Y here here to support Keystone remote processors (DSP)
83 via the remote processor framework.
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.
88 config QCOM_ADSP_PIL
89 tristate "Qualcomm ADSP Peripheral Image Loader"
90 depends on OF && ARCH_QCOM
91 depends on QCOM_SMEM
92 depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
93 depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
94 depends on QCOM_SYSMON || QCOM_SYSMON=n
95 select MFD_SYSCON
96 select QCOM_MDT_LOADER
97 select QCOM_Q6V5_COMMON
98 select QCOM_RPROC_COMMON
99 select QCOM_SCM
100 help
101 Say y here to support the TrustZone based Peripherial Image Loader
102 for the Qualcomm ADSP remote processors.
104 config QCOM_RPROC_COMMON
105 tristate
107 config QCOM_Q6V5_COMMON
108 tristate
109 depends on ARCH_QCOM
110 depends on QCOM_SMEM
112 config QCOM_Q6V5_PIL
113 tristate "Qualcomm Hexagon V5 Peripherial Image Loader"
114 depends on OF && ARCH_QCOM
115 depends on QCOM_SMEM
116 depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
117 depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
118 depends on QCOM_SYSMON || QCOM_SYSMON=n
119 select MFD_SYSCON
120 select QCOM_Q6V5_COMMON
121 select QCOM_RPROC_COMMON
122 select QCOM_SCM
123 help
124 Say y here to support the Qualcomm Peripherial Image Loader for the
125 Hexagon V5 based remote processors.
127 config QCOM_Q6V5_WCSS
128 tristate "Qualcomm Hexagon based WCSS Peripheral Image Loader"
129 depends on OF && ARCH_QCOM
130 depends on QCOM_SMEM
131 depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
132 depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
133 depends on QCOM_SYSMON || QCOM_SYSMON=n
134 select MFD_SYSCON
135 select QCOM_MDT_LOADER
136 select QCOM_Q6V5_COMMON
137 select QCOM_RPROC_COMMON
138 select QCOM_SCM
139 help
140 Say y here to support the Qualcomm Peripheral Image Loader for the
141 Hexagon V5 based WCSS remote processors.
143 config QCOM_SYSMON
144 tristate "Qualcomm sysmon driver"
145 depends on RPMSG
146 depends on ARCH_QCOM
147 depends on NET
148 select QCOM_QMI_HELPERS
149 help
150 The sysmon driver implements a sysmon QMI client and a handler for
151 the sys_mon SMD and GLINK channel, which are used for graceful
152 shutdown, retrieving failure information and propagating information
153 about other subsystems being shut down.
155 Say y here if your system runs firmware on any other subsystems, e.g.
156 modem or DSP.
158 config QCOM_WCNSS_PIL
159 tristate "Qualcomm WCNSS Peripheral Image Loader"
160 depends on OF && ARCH_QCOM
161 depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
162 depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
163 depends on QCOM_SMEM
164 depends on QCOM_SYSMON || QCOM_SYSMON=n
165 select QCOM_MDT_LOADER
166 select QCOM_RPROC_COMMON
167 select QCOM_SCM
168 help
169 Say y here to support the Peripheral Image Loader for the Qualcomm
170 Wireless Connectivity Subsystem.
172 config ST_REMOTEPROC
173 tristate "ST remoteproc support"
174 depends on ARCH_STI
175 select MAILBOX
176 select STI_MBOX
177 help
178 Say y here to support ST's adjunct processors via the remote
179 processor framework.
180 This can be either built-in or a loadable module.
182 config ST_SLIM_REMOTEPROC
183 tristate
185 endif # REMOTEPROC
187 endmenu