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_ekang...@quicinc.com/
>>
>> Signed-off-by: Ekansh Gupta <quic_ekang...@quicinc.com>
>> ---
>>  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 <amah...@qti.qualcomm.com>
>>  L:  linux-arm-...@vger.kernel.org
>>  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
>>

Reply via email to