devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/3] Yet another stab at a fpga framework
@ 2014-07-31 21:59 Alan Tull
  2014-07-31 21:59 ` [RFC PATCH 1/3] fpga manager framework core Alan Tull
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Alan Tull @ 2014-07-31 21:59 UTC (permalink / raw)
  To: linux-kernel
  Cc: H. Peter Anvin, Greg Kroah-Hartman, Jason Gunthorpe,
	Pantelis Antoniou, Grant Likely, Rob Herring, devicetree,
	Pavel Machek, Mark Brown, Philip Balister, Alessandro Rubini,
	Steffen Trumtrar, Jason Cooper, Kyle Teske, Nicolas Pitre,
	Felipe Balbi, Mauro Carvalho Chehab, David Brown, Rob Landley,
	David S. Miller, Joe Perches, Cesar Eduardo Barros, Samuel Ortiz,
	Andrew Morton, Michal Simek, Michal Simek, Alan Tull, Dinh Nguyen,
	Yves Vandervennet, Alan Tull

The function of the framework is to provide consistent ways of
programming raw images into FPGA's.

The core (fpga-mgr.c) does not include a userspace interface
and just exports kernel functions.

This approach separates the core from the interfaces.

Each interface can be enabled or disabled in the defconfig.

Programming from device tree overlays is supported.

The core exports kernel functions to:
  * write the fpga from a buffer or using the firmware layer
  * get fpga status
  * find a particular fpga manager from a device tree phandle
  * register/unregister lower level fpga drivers.

The bus allows us to:
  * program fpga from a device tree overlay using firmware.
  * automatically reload firmware and reprogram fpga during resume.

The sysfs interface:
  * read only, get the name and status of fpga manager.

I have a configfs interface patch which I haven't included,
adds configfs as a separate file.

TODO:
  * Enable bridges after fpga programming, disable during suspend

Examples are provided in the headers of the patches.

Alan Tull


Alan Tull (3):
  fpga manager framework core
  fpga bus driver
  fpga sysfs interface

 drivers/Kconfig          |    2 +
 drivers/Makefile         |    1 +
 drivers/fpga/Kconfig     |   27 +++
 drivers/fpga/Makefile    |   12 ++
 drivers/fpga/bus.c       |  139 +++++++++++++++
 drivers/fpga/fpga-mgr.c  |  431 ++++++++++++++++++++++++++++++++++++++++++++++
 drivers/fpga/sysfs.c     |   68 ++++++++
 include/linux/fpga-mgr.h |  137 +++++++++++++++
 8 files changed, 817 insertions(+)
 create mode 100644 drivers/fpga/Kconfig
 create mode 100644 drivers/fpga/Makefile
 create mode 100644 drivers/fpga/bus.c
 create mode 100644 drivers/fpga/fpga-mgr.c
 create mode 100644 drivers/fpga/sysfs.c
 create mode 100644 include/linux/fpga-mgr.h

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-08-12 22:01 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-31 21:59 [RFC PATCH 0/3] Yet another stab at a fpga framework Alan Tull
2014-07-31 21:59 ` [RFC PATCH 1/3] fpga manager framework core Alan Tull
2014-08-08 21:16   ` Rob Herring
2014-08-12 19:17     ` Alan Tull
2014-08-12 22:01       ` Rob Herring
2014-07-31 21:59 ` [RFC PATCH 2/3] fpga bus driver Alan Tull
2014-07-31 21:59 ` [RFC PATCH 3/3] fpga sysfs interface Alan Tull

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).