
Create the rpmsg_ctrl.c module and move the code related to the rpmsg_ctrldev device in this new module. Add the dependency between rpmsg_char and rpmsg_ctrl in the kconfig file: 1) RPMSG_CTRL can set as module or built-in if RPMSG=y || RPMSG_CHAR=y || RPMSG_CHAR=n 2) RPMSG_CTRL can not be set as built-in if RPMSG=m || RPMSG_CHAR=m Note that RPMGH_CHAR and RPMSG_CTRL can be activated separately. Therefore, the RPMSG_CTRL configuration must be set for backwards compatibility. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220124102524.295783-4-arnaud.pouliquen@foss.st.com
2.2 KiB
SPDX-License-Identifier: GPL-2.0
menu "Rpmsg drivers"
RPMSG always gets selected by whoever wants it
config RPMSG tristate
config RPMSG_CHAR tristate "RPMSG device interface" depends on RPMSG depends on NET help Say Y here to export rpmsg endpoints as device files, usually found in /dev. They make it possible for user-space programs to send and receive rpmsg packets.
config RPMSG_CTRL tristate "RPMSG control interface" depends on RPMSG && ( RPMSG_CHAR || RPMSG_CHAR=n ) help Say Y here to enable the support of the /dev/rpmsg_ctrlX API. This API allows user-space programs to create endpoints with specific service name, source and destination addresses.
config RPMSG_NS tristate "RPMSG name service announcement" depends on RPMSG help Say Y here to enable the support of the name service announcement channel that probes the associated RPMsg device on remote endpoint service announcement.
config RPMSG_MTK_SCP tristate "MediaTek SCP" depends on MTK_SCP select RPMSG help Say y here to enable support providing communication channels to remote processors in MediaTek platforms. This use IPI and IPC to communicate with remote processors.
config RPMSG_QCOM_GLINK tristate select RPMSG
config RPMSG_QCOM_GLINK_RPM tristate "Qualcomm RPM Glink driver" select RPMSG_QCOM_GLINK depends on HAS_IOMEM depends on MAILBOX help Say y here to enable support for the GLINK RPM communication driver, which serves as a channel for communication with the RPM in GLINK enabled systems.
config RPMSG_QCOM_GLINK_SMEM tristate "Qualcomm SMEM Glink driver" select RPMSG_QCOM_GLINK depends on MAILBOX depends on QCOM_SMEM help Say y here to enable support for the GLINK SMEM communication driver, which provides support for using the GLINK communication protocol over SMEM.
config RPMSG_QCOM_SMD tristate "Qualcomm Shared Memory Driver (SMD)" depends on MAILBOX depends on QCOM_SMEM select RPMSG help Say y here to enable support for the Qualcomm Shared Memory Driver providing communication channels to remote processors in Qualcomm platforms.
config RPMSG_VIRTIO tristate "Virtio RPMSG bus driver" depends on HAS_DMA select RPMSG select RPMSG_NS select VIRTIO
endmenu