mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 17:24:17 +08:00
ab759b9732
When RPMSG_QCOM_GLINK_SMEM=m and one driver causes the qcom_common.c file
to be compiled as built-in, we get a link error:
drivers/remoteproc/qcom_common.o: In function `glink_subdev_remove':
qcom_common.c:(.text+0x130): undefined reference to `qcom_glink_smem_unregister'
qcom_common.c:(.text+0x130): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `qcom_glink_smem_unregister'
drivers/remoteproc/qcom_common.o: In function `glink_subdev_probe':
qcom_common.c:(.text+0x160): undefined reference to `qcom_glink_smem_register'
qcom_common.c:(.text+0x160): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `qcom_glink_smem_register'
Out of the three PIL driver instances, QCOM_ADSP_PIL already has a
Kconfig dependency to prevent this from happening, but the other two
do not. This adds the same dependency there.
Fixes: eea07023e6
("remoteproc: qcom: adsp: Allow defining GLINK edge")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
150 lines
4.3 KiB
Plaintext
150 lines
4.3 KiB
Plaintext
menu "Remoteproc drivers"
|
|
|
|
config REMOTEPROC
|
|
tristate "Support for Remote Processor subsystem"
|
|
depends on HAS_DMA
|
|
select CRC32
|
|
select FW_LOADER
|
|
select VIRTIO
|
|
help
|
|
Support for remote processors (such as DSP coprocessors). These
|
|
are mainly used on embedded systems.
|
|
|
|
if REMOTEPROC
|
|
|
|
config IMX_REMOTEPROC
|
|
tristate "IMX6/7 remoteproc support"
|
|
depends on SOC_IMX6SX || SOC_IMX7D
|
|
help
|
|
Say y here to support iMX's remote processors (Cortex M4
|
|
on iMX7D) via the remote processor framework.
|
|
|
|
It's safe to say N here.
|
|
|
|
config OMAP_REMOTEPROC
|
|
tristate "OMAP remoteproc support"
|
|
depends on HAS_DMA
|
|
depends on ARCH_OMAP4 || SOC_OMAP5
|
|
depends on OMAP_IOMMU
|
|
select MAILBOX
|
|
select OMAP2PLUS_MBOX
|
|
select RPMSG_VIRTIO
|
|
help
|
|
Say y here to support OMAP's remote processors (dual M3
|
|
and DSP on OMAP4) via the remote processor framework.
|
|
|
|
Currently only supported on OMAP4.
|
|
|
|
Usually you want to say Y here, in order to enable multimedia
|
|
use-cases to run on your platform (multimedia codecs are
|
|
offloaded to remote DSP processors using this framework).
|
|
|
|
It's safe to say N here if you're not interested in multimedia
|
|
offloading or just want a bare minimum kernel.
|
|
|
|
config WKUP_M3_RPROC
|
|
tristate "AMx3xx Wakeup M3 remoteproc support"
|
|
depends on SOC_AM33XX || SOC_AM43XX
|
|
help
|
|
Say y here to support Wakeup M3 remote processor on TI AM33xx
|
|
and AM43xx family of SoCs.
|
|
|
|
Required for Suspend-to-RAM on AM33xx and AM43xx SoCs. Also needed
|
|
for deep CPUIdle states on AM33xx SoCs. Allows for loading of the
|
|
firmware onto these remote processors.
|
|
If unsure say N.
|
|
|
|
config DA8XX_REMOTEPROC
|
|
tristate "DA8xx/OMAP-L13x remoteproc support"
|
|
depends on ARCH_DAVINCI_DA8XX
|
|
depends on DMA_CMA
|
|
select RPMSG_VIRTIO
|
|
help
|
|
Say y here to support DA8xx/OMAP-L13x remote processors via the
|
|
remote processor framework.
|
|
|
|
You want to say y here in order to enable AMP
|
|
use-cases to run on your platform (multimedia codecs are
|
|
offloaded to remote DSP processors using this framework).
|
|
|
|
This module controls the name of the firmware file that gets
|
|
loaded on the DSP. This file must reside in the /lib/firmware
|
|
directory. It can be specified via the module parameter
|
|
da8xx_fw_name=<filename>, and if not specified will default to
|
|
"rproc-dsp-fw".
|
|
|
|
It's safe to say n here if you're not interested in multimedia
|
|
offloading.
|
|
|
|
config KEYSTONE_REMOTEPROC
|
|
tristate "Keystone Remoteproc support"
|
|
depends on ARCH_KEYSTONE
|
|
select RPMSG_VIRTIO
|
|
help
|
|
Say Y here here to support Keystone remote processors (DSP)
|
|
via the remote processor framework.
|
|
|
|
It's safe to say N here if you're not interested in the Keystone
|
|
DSPs or just want to use a bare minimum kernel.
|
|
|
|
config QCOM_ADSP_PIL
|
|
tristate "Qualcomm ADSP Peripheral Image Loader"
|
|
depends on OF && ARCH_QCOM
|
|
depends on QCOM_SMEM
|
|
depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
|
|
depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
|
|
select MFD_SYSCON
|
|
select QCOM_MDT_LOADER
|
|
select QCOM_RPROC_COMMON
|
|
select QCOM_SCM
|
|
help
|
|
Say y here to support the TrustZone based Peripherial Image Loader
|
|
for the Qualcomm ADSP remote processors.
|
|
|
|
config QCOM_RPROC_COMMON
|
|
tristate
|
|
|
|
config QCOM_Q6V5_PIL
|
|
tristate "Qualcomm Hexagon V5 Peripherial Image Loader"
|
|
depends on OF && ARCH_QCOM
|
|
depends on QCOM_SMEM
|
|
depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
|
|
depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
|
|
select MFD_SYSCON
|
|
select QCOM_RPROC_COMMON
|
|
select QCOM_SCM
|
|
help
|
|
Say y here to support the Qualcomm Peripherial Image Loader for the
|
|
Hexagon V5 based remote processors.
|
|
|
|
config QCOM_WCNSS_PIL
|
|
tristate "Qualcomm WCNSS Peripheral Image Loader"
|
|
depends on OF && ARCH_QCOM
|
|
depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
|
|
depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
|
|
depends on QCOM_SMEM
|
|
select QCOM_MDT_LOADER
|
|
select QCOM_RPROC_COMMON
|
|
select QCOM_SCM
|
|
help
|
|
Say y here to support the Peripheral Image Loader for the Qualcomm
|
|
Wireless Connectivity Subsystem.
|
|
|
|
config ST_REMOTEPROC
|
|
tristate "ST remoteproc support"
|
|
depends on ARCH_STI
|
|
select MAILBOX
|
|
select STI_MBOX
|
|
select RPMSG_VIRTIO
|
|
help
|
|
Say y here to support ST's adjunct processors via the remote
|
|
processor framework.
|
|
This can be either built-in or a loadable module.
|
|
|
|
config ST_SLIM_REMOTEPROC
|
|
tristate
|
|
|
|
endif # REMOTEPROC
|
|
|
|
endmenu
|