Re: [PATCH v1] misc: fastrpc: Move fastrpc driver to misc/fastrpc/

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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
>>




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux