All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] Yet another stab at a fpga framework
@ 2014-08-01 22:28 ` atull-yzvPICuk2ABMcg4IHK0kFoH6Mc4MB0Vx
  0 siblings, 0 replies; 27+ messages in thread
From: atull @ 2014-08-01 22:28 UTC (permalink / raw)
  To: gregkh, jgunthorpe, hpa, monstr, michal.simek
  Cc: linux-kernel, devicetree, pantelis.antoniou, robh+dt,
	grant.likely, pavel, broonie, philip, rubini, s.trumtrar, jason,
	kyle.teske, nico, balbi, m.chehab, davidb, rob, davem, cesarb,
	sameo, akpm, linus.walleij, delicious.quinoa, dinguyen, yvanderv,
	Alan Tull

From: Alan Tull <atull@opensource.altera.com>

[resend with fixed email settings]

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

Programming from device tree overlays is supported.

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.
In some production contexts, interfaces that might be used
during development can be disabled.

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

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       |  145 ++++++++++++++++
 drivers/fpga/fpga-mgr.c  |  431 ++++++++++++++++++++++++++++++++++++++++++++++
 drivers/fpga/sysfs.c     |   69 ++++++++
 include/linux/fpga-mgr.h |  137 +++++++++++++++
 8 files changed, 824 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] 27+ messages in thread

end of thread, other threads:[~2014-09-08 21:39 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-01 22:28 [PATCH 0/3] Yet another stab at a fpga framework atull
2014-08-01 22:28 ` atull-yzvPICuk2ABMcg4IHK0kFoH6Mc4MB0Vx
2014-08-01 22:28 ` [PATCH 1/3] fpga manager framework core atull
2014-08-01 22:28   ` atull
2014-08-02  0:15   ` Pavel Machek
2014-08-05 18:11     ` Alan Tull
2014-08-02  0:18   ` Pavel Machek
2014-08-02  0:18     ` Pavel Machek
2014-08-05 20:05     ` Alan Tull
2014-08-09 14:50       ` Pavel Machek
2014-08-09 15:49         ` Greg Kroah-Hartman
2014-08-01 22:28 ` [PATCH 2/3] fpga bus driver atull
2014-08-01 22:28   ` atull-yzvPICuk2ABMcg4IHK0kFoH6Mc4MB0Vx
2014-08-02  0:23   ` Pavel Machek
2014-08-02  0:23     ` Pavel Machek
2014-08-05 17:11     ` Alan Tull
2014-08-05 18:21   ` Pantelis Antoniou
2014-08-05 18:21     ` Pantelis Antoniou
2014-08-01 22:28 ` [PATCH 3/3] fpga sysfs interface atull
2014-08-01 22:28   ` atull
2014-08-02  0:25   ` Pavel Machek
2014-08-02  0:25     ` Pavel Machek
2014-08-05 18:18 ` [PATCH 0/3] Yet another stab at a fpga framework Pantelis Antoniou
2014-08-05 18:18   ` Pantelis Antoniou
2014-09-07 18:57 ` Pavel Machek
2014-09-08 21:00   ` atull
2014-09-08 21:00     ` atull

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.