Re: [RFC PATCH] fpga: Introduce new fpga subsystem

From: Michal Simek
Date: Thu Sep 19 2013 - 07:53:57 EST


On 09/18/2013 09:02 PM, Dinh Nguyen wrote:
> Hi Michal,
>
> On Wed, 2013-09-18 at 17:56 +0200, Michal Simek wrote:
>> This new subsystem should unify all fpga drivers which
>> do the same things. Load configuration data to fpga
>> or another programmable logic through common interface.
>> It doesn't matter if it is MMIO device, gpio bitbanging,
>> etc. connection. The point is to have the same
>> inteface for these drivers.
>>
>> Signed-off-by: Michal Simek <michal.simek@xxxxxxxxxx>
>
> [CC] Alan Tull <delicious.quinoa@xxxxxxxxx>
> [CC] Yves Vandervennet <rocket.yvanderv@xxxxxxxxx>
>
> Thanks for doing this. Myself and Alan Tull had plans to send this
> upstream, but we wanted to make sure that this framework would also work
> on the Xilinx platform as well. Have you had a chance to test this on a
> SOCFGPA platform? If not, we can go do that.

Sorry. No. I don't have any socfpga platform to be able to test it.
I believe Alan will test it.

>>
>> ---
>> MAINTAINERS | 7 +
>> drivers/Kconfig | 2 +
>> drivers/Makefile | 1 +
>> drivers/fpga/Kconfig | 18 ++
>> drivers/fpga/Makefile | 5 +
>> drivers/fpga/fpga-mgr.c | 433 ++++++++++++++++++++++++++++++++++++++++++++++++
>> include/linux/fpga.h | 105 ++++++++++++
>> 7 files changed, 571 insertions(+)
>> create mode 100644 drivers/fpga/Kconfig
>> create mode 100644 drivers/fpga/Makefile
>> create mode 100644 drivers/fpga/fpga-mgr.c
>> create mode 100644 include/linux/fpga.h
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index e61c2e8..5c7597b 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -3427,6 +3427,13 @@ F: include/linux/fmc*.h
>> F: include/linux/ipmi-fru.h
>> K: fmc_d.*register
>>
>> +FPGA SUBSYSTEM
>> +M: Michal Simek <michal.simek@xxxxxxxxxx>
>
> Since the basic framework of this driver was done by Alan Tull and
> myself, can you please add Alan and myself as the maintainer here?

If we end up with any reasonable solution which will suitable
for all of us I have no problem to add you here because every change
in this subsystem should be validated by all parties.
You should be definitely in a CC for all these emails which will
be ensured by adding your names here.

But still there will be just one repo which will store patches
for this subsystem.

>> +T: git git://git.xilinx.com/linux-xlnx.git
>> +S: Supported
>> +F: drivers/fpga/
>> +F: include/linux/fpga.h
>> +
>> FPU EMULATOR
>> M: Bill Metzenthen <billm@xxxxxxxxxxxxx>
>> W: http://floatingpoint.sourceforge.net/emulator/index.html
>> diff --git a/drivers/Kconfig b/drivers/Kconfig
>> index aa43b91..17f3caa 100644
>> --- a/drivers/Kconfig
>> +++ b/drivers/Kconfig
>> @@ -166,4 +166,6 @@ source "drivers/reset/Kconfig"
>>
>> source "drivers/fmc/Kconfig"
>>
>> +source "drivers/fpga/Kconfig"
>> +
>> endmenu
>> diff --git a/drivers/Makefile b/drivers/Makefile
>> index ab93de8..2b5e73b 100644
>> --- a/drivers/Makefile
>> +++ b/drivers/Makefile
>> @@ -152,3 +152,4 @@ obj-$(CONFIG_VME_BUS) += vme/
>> obj-$(CONFIG_IPACK_BUS) += ipack/
>> obj-$(CONFIG_NTB) += ntb/
>> obj-$(CONFIG_FMC) += fmc/
>> +obj-$(CONFIG_FPGA) += fpga/
>> diff --git a/drivers/fpga/Kconfig b/drivers/fpga/Kconfig
>> new file mode 100644
>> index 0000000..5357645
>> --- /dev/null
>> +++ b/drivers/fpga/Kconfig
>> @@ -0,0 +1,18 @@
>> +#
>> +# FPGA framework configuration
>> +#
>> +
>> +menu "FPGA devices"
>> +
>> +config FPGA
>> + tristate "FPGA Framework"
>> + help
>> + Say Y here if you want support for configuring FPGAs from the
>> + kernel. The FPGA framework adds a FPGA manager class and FPGA
>> + manager drivers.
>> +
>> +if FPGA
>
> Not sure what this is for?

It is just for adding fpga end driver here. I have here
zynq devcfg driver.
It is just preparation for others end driver.

Thanks,
Michal

--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform


Attachment: signature.asc
Description: OpenPGP digital signature