On 6/12/2024 11:58 PM, Dmitry Baryshkov wrote: > On Wed, Jun 12, 2024 at 12:17:28PM +0530, Ekansh Gupta wrote: >> Move fastrpc.c from misc/ to misc/fastrpc/. New C files are planned >> to be added for PD notifications and other missing features. Adding >> and maintaining new files from within fastrpc directory would be easy. >> >> Example of feature that is being planned to be introduced in a new C >> file: >> https://lore.kernel.org/all/20240606165939.12950-6-quic_ekangupt@xxxxxxxxxxx/ >> >> Signed-off-by: Ekansh Gupta <quic_ekangupt@xxxxxxxxxxx> >> --- >> MAINTAINERS | 2 +- >> drivers/misc/Kconfig | 13 +------------ >> drivers/misc/Makefile | 2 +- >> drivers/misc/fastrpc/Kconfig | 16 ++++++++++++++++ >> drivers/misc/fastrpc/Makefile | 2 ++ >> drivers/misc/{ => fastrpc}/fastrpc.c | 0 >> 6 files changed, 21 insertions(+), 14 deletions(-) >> create mode 100644 drivers/misc/fastrpc/Kconfig >> create mode 100644 drivers/misc/fastrpc/Makefile >> rename drivers/misc/{ => fastrpc}/fastrpc.c (100%) > Please consider whether it makes sense to move to drivers/accel instead > (and possibly writing a better Kconfig entry, specifying that the driver > is to be used to offload execution to the DSP). Planning to keep the driver to misc/ only as part of this patch. Moving to accel/ might introduce some conventions to be followed which might require significant changes in driver. I'll write more meaningful Kconfig entry in next spin. Thanks --Ekansh > >> diff --git a/MAINTAINERS b/MAINTAINERS >> index d6c90161c7bf..e9c79e9063f8 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -18501,7 +18501,7 @@ M: Amol Maheshwari <amahesh@xxxxxxxxxxxxxxxx> >> L: linux-arm-msm@xxxxxxxxxxxxxxx >> S: Maintained >> F: Documentation/devicetree/bindings/misc/qcom,fastrpc.yaml >> -F: drivers/misc/fastrpc.c >> +F: drivers/misc/fastrpc/ >> F: include/uapi/misc/fastrpc.h >> >> QUALCOMM HEXAGON ARCHITECTURE >> diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig >> index faf983680040..630e8ccd8669 100644 >> --- a/drivers/misc/Kconfig >> +++ b/drivers/misc/Kconfig >> @@ -276,18 +276,6 @@ config QCOM_COINCELL >> to maintain PMIC register and RTC state in the absence of >> external power. >> >> -config QCOM_FASTRPC >> - tristate "Qualcomm FastRPC" >> - depends on ARCH_QCOM || COMPILE_TEST >> - depends on RPMSG >> - select DMA_SHARED_BUFFER >> - select QCOM_SCM >> - help >> - Provides a communication mechanism that allows for clients to >> - make remote method invocations across processor boundary to >> - applications DSP processor. Say M if you want to enable this >> - module. >> - >> config SGI_GRU >> tristate "SGI GRU driver" >> depends on X86_UV && SMP >> @@ -602,4 +590,5 @@ source "drivers/misc/cardreader/Kconfig" >> source "drivers/misc/uacce/Kconfig" >> source "drivers/misc/pvpanic/Kconfig" >> source "drivers/misc/mchp_pci1xxxx/Kconfig" >> +source "drivers/misc/fastrpc/Kconfig" >> endmenu >> diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile >> index 153a3f4837e8..f83d73844ea5 100644 >> --- a/drivers/misc/Makefile >> +++ b/drivers/misc/Makefile >> @@ -16,7 +16,6 @@ obj-$(CONFIG_TIFM_CORE) += tifm_core.o >> obj-$(CONFIG_TIFM_7XX1) += tifm_7xx1.o >> obj-$(CONFIG_PHANTOM) += phantom.o >> obj-$(CONFIG_QCOM_COINCELL) += qcom-coincell.o >> -obj-$(CONFIG_QCOM_FASTRPC) += fastrpc.o >> obj-$(CONFIG_SENSORS_BH1770) += bh1770glc.o >> obj-$(CONFIG_SENSORS_APDS990X) += apds990x.o >> obj-$(CONFIG_ENCLOSURE_SERVICES) += enclosure.o >> @@ -69,3 +68,4 @@ obj-$(CONFIG_TMR_INJECT) += xilinx_tmr_inject.o >> obj-$(CONFIG_TPS6594_ESM) += tps6594-esm.o >> obj-$(CONFIG_TPS6594_PFSM) += tps6594-pfsm.o >> obj-$(CONFIG_NSM) += nsm.o >> +obj-y += fastrpc/ >> diff --git a/drivers/misc/fastrpc/Kconfig b/drivers/misc/fastrpc/Kconfig >> new file mode 100644 >> index 000000000000..3243dc56b2a0 >> --- /dev/null >> +++ b/drivers/misc/fastrpc/Kconfig >> @@ -0,0 +1,16 @@ >> +# SPDX-License-Identifier: GPL-2.0-only >> +# >> +# Qualcomm FastRPC devices >> +# >> + >> +config QCOM_FASTRPC >> + tristate "Qualcomm FastRPC" >> + depends on ARCH_QCOM || COMPILE_TEST >> + depends on RPMSG >> + select DMA_SHARED_BUFFER >> + select QCOM_SCM >> + help >> + Provides a communication mechanism that allows for clients to >> + make remote method invocations across processor boundary to >> + applications DSP processor. Say M if you want to enable this >> + module. >> \ No newline at end of file >> diff --git a/drivers/misc/fastrpc/Makefile b/drivers/misc/fastrpc/Makefile >> new file mode 100644 >> index 000000000000..77fd2b763b6b >> --- /dev/null >> +++ b/drivers/misc/fastrpc/Makefile >> @@ -0,0 +1,2 @@ >> +# SPDX-License-Identifier: GPL-2.0 >> +obj-$(CONFIG_QCOM_FASTRPC) += fastrpc.o >> diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc/fastrpc.c >> similarity index 100% >> rename from drivers/misc/fastrpc.c >> rename to drivers/misc/fastrpc/fastrpc.c >> -- >> 2.43.0 >>