xref: /openbmc/linux/drivers/remoteproc/Kconfig (revision 8730046c)
1menu "Remoteproc drivers"
2
3config 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 VIRTUALIZATION
10
11if REMOTEPROC
12
13config OMAP_REMOTEPROC
14	tristate "OMAP remoteproc support"
15	depends on HAS_DMA
16	depends on ARCH_OMAP4 || SOC_OMAP5
17	depends on OMAP_IOMMU
18	depends on REMOTEPROC
19	select MAILBOX
20	select OMAP2PLUS_MBOX
21	select RPMSG_VIRTIO
22	help
23	  Say y here to support OMAP's remote processors (dual M3
24	  and DSP on OMAP4) via the remote processor framework.
25
26	  Currently only supported on OMAP4.
27
28	  Usually you want to say y here, in order to enable multimedia
29	  use-cases to run on your platform (multimedia codecs are
30	  offloaded to remote DSP processors using this framework).
31
32	  It's safe to say n here if you're not interested in multimedia
33	  offloading or just want a bare minimum kernel.
34
35config WKUP_M3_RPROC
36	tristate "AMx3xx Wakeup M3 remoteproc support"
37	depends on SOC_AM33XX || SOC_AM43XX
38	depends on REMOTEPROC
39	help
40	  Say y here to support Wakeup M3 remote processor on TI AM33xx
41	  and AM43xx family of SoCs.
42
43	  Required for Suspend-to-RAM on AM33xx and AM43xx SoCs. Also needed
44	  for deep CPUIdle states on AM33xx SoCs. Allows for loading of the
45	  firmware onto these remote processors.
46	  If unsure say N.
47
48config DA8XX_REMOTEPROC
49	tristate "DA8xx/OMAP-L13x remoteproc support"
50	depends on ARCH_DAVINCI_DA8XX
51	depends on REMOTEPROC
52	select CMA if MMU
53	select RPMSG_VIRTIO
54	help
55	  Say y here to support DA8xx/OMAP-L13x remote processors via the
56	  remote processor framework.
57
58	  You want to say y here in order to enable AMP
59	  use-cases to run on your platform (multimedia codecs are
60	  offloaded to remote DSP processors using this framework).
61
62	  This module controls the name of the firmware file that gets
63	  loaded on the DSP.  This file must reside in the /lib/firmware
64	  directory.  It can be specified via the module parameter
65	  da8xx_fw_name=<filename>, and if not specified will default to
66	  "rproc-dsp-fw".
67
68	  It's safe to say n here if you're not interested in multimedia
69	  offloading.
70
71config QCOM_ADSP_PIL
72	tristate "Qualcomm ADSP Peripheral Image Loader"
73	depends on OF && ARCH_QCOM
74	depends on REMOTEPROC
75	depends on QCOM_SMEM
76	select MFD_SYSCON
77	select QCOM_MDT_LOADER
78	select QCOM_SCM
79	help
80	  Say y here to support the TrustZone based Peripherial Image Loader
81	  for the Qualcomm ADSP remote processors.
82
83config QCOM_MDT_LOADER
84	tristate
85
86config QCOM_Q6V5_PIL
87	tristate "Qualcomm Hexagon V5 Peripherial Image Loader"
88	depends on OF && ARCH_QCOM
89	depends on QCOM_SMEM
90	depends on REMOTEPROC
91	select MFD_SYSCON
92	select QCOM_MDT_LOADER
93	select QCOM_SCM
94	help
95	  Say y here to support the Qualcomm Peripherial Image Loader for the
96	  Hexagon V5 based remote processors.
97
98config QCOM_WCNSS_PIL
99	tristate "Qualcomm WCNSS Peripheral Image Loader"
100	depends on OF && ARCH_QCOM
101	depends on QCOM_SMD || (COMPILE_TEST && QCOM_SMD=n)
102	depends on QCOM_SMEM
103	depends on REMOTEPROC
104	select QCOM_MDT_LOADER
105	select QCOM_SCM
106	help
107	  Say y here to support the Peripheral Image Loader for the Qualcomm
108	  Wireless Connectivity Subsystem.
109
110config ST_REMOTEPROC
111	tristate "ST remoteproc support"
112	depends on ARCH_STI
113	depends on REMOTEPROC
114	help
115	  Say y here to support ST's adjunct processors via the remote
116	  processor framework.
117	  This can be either built-in or a loadable module.
118
119config ST_SLIM_REMOTEPROC
120	tristate
121	depends on REMOTEPROC
122
123endif # REMOTEPROC
124
125endmenu
126