linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Eli Billauer <eli.billauer@gmail.com>
Cc: linux-kernel@vger.kernel.org, gregkh@linuxfoundation.org,
	Philip Balister <philip@balister.org>,
	Pavel Machek <pavel@denx.de>, John Linn <john.linn@xilinx.com>,
	Michal Simek <michal.simek@xilinx.com>,
	"Ira W. Snyder" <iws@ovro.caltech.edu>
Subject: Re: [PATCH 2/2] New driver: Xillybus generic interface for FPGA (programmable logic)
Date: Fri, 30 Nov 2012 17:28:47 +0000	[thread overview]
Message-ID: <201211301728.48008.arnd@arndb.de> (raw)
In-Reply-To: <1354117293-13632-2-git-send-email-eli.billauer@gmail.com>

On Wednesday 28 November 2012, Eli Billauer wrote:
> 
> Xillybus is a general-purpose framework for communication between programmable
> logic (FPGA) and a host. It provides a simple connection between hardware FIFOs
> in the FPGA and their respective device files on the host. The user space
> programming model is like piping data from or to the FPGA.
> 
> The underlying transport between the host and FPGA is either PCIe or AXI
> (AMBA bus by ARM).
> 
> The Xillybus logic (IP core) is configurable in the number of pipes it presents
> and their nature. The driver autodetects these pipes, making it essentially
> forward-compatible to future configurations. The benefit of having this driver
> enabled in the kernel is that hardware vendors may release a new card, knowing
> that it will work out of the box on any future Linux machine, with the specific
> configuration defined for the FPGA part.
> 
> This driver has been available for download for over a year, and has been
> actively used on a wide variety of kernels versions and configurations.

I have a much higher-level comment on this driver: There seem to be a number
of parties that are interested in having reprogrammable logic available in
Linux and that will want to merge their drivers. I'm aware of these other
people that must have some interest (and one person I can't mention here
because of NDA):

Philip Balister  <philip@balister.org> (OpenSDR)
Dinh Nguyen <dinguyen@altera.com> (ARM SOCFPGA maintainer)
Pavel Machek <pavel@denx.de> (SOCFPGA contributor)
John Linn <john.linn@xilinx.com> (Zynq maintainer)
Michal Simek <michal.simek@xilinx.com> (Zynq maintainer)
Ira W. Snyder <iws@ovro.caltech.edu> (Carma driver author)

I believe it is in everybody's interest to define a single kernel-to-user
interface that can be used to install a payload in an any of the FPGA
implementations, and a common way to probe logical devices that are
implemented in that FPGA.

Your driver seems like an good start for such an interface, and I
think it would be reasonable to put it into a new drivers/fpga/
subsystems rather than a "misc" driver, but that requires at least
the user level interface to be generic enough to cover all the use
cases. Ideally, the in-kernel interface would also be generic to allow
plugging in additional hardware drivers and allowing to add independent
back-ends for functionality based on the model that gets loaded into
the FPGA. However, we don't have to do it right away, as we can always
change in-kernel interfaces when needed, unlike the user interfaces
that have to remain stable.

	Arnd

  parent reply	other threads:[~2012-11-30 17:29 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-28 15:41 [PATCH 1/2] pci_ids: Added FPGA-related entries Eli Billauer
2012-11-28 15:41 ` [PATCH 2/2] New driver: Xillybus generic interface for FPGA (programmable logic) Eli Billauer
2012-11-28 16:57   ` Greg KH
2012-11-30 14:50     ` Eli Billauer
2012-11-30 16:32       ` Greg KH
2012-11-30 16:58         ` Eli Billauer
2012-11-30 17:32           ` Arnd Bergmann
2012-12-02 17:26         ` Eli Billauer
2012-12-04  3:41           ` Greg KH
2012-12-04 10:13             ` Eli Billauer
2012-12-04 20:43               ` Arnd Bergmann
2012-12-04 21:42                 ` Eli Billauer
2012-12-04 23:05                   ` Arnd Bergmann
2012-12-05  0:03                     ` Eli Billauer
2012-12-05 15:48                 ` Greg KH
2012-11-30 17:28   ` Arnd Bergmann [this message]
2012-11-30 17:36     ` Greg KH
2012-12-01  3:19       ` Philip Balister
2012-12-01 16:56         ` Greg KH
2012-12-01 16:58           ` Greg KH
2012-12-01 19:30           ` Philip Balister
2012-12-01 20:33             ` Josh Cartwright
2012-12-01 20:48         ` Arnd Bergmann
2012-12-02 12:38           ` Eli Billauer
2012-12-03 20:24           ` John Linn
2012-12-04 19:49           ` Philip Balister
2012-12-04 20:54             ` Arnd Bergmann
2012-12-05 12:34             ` Pavel Machek
2012-11-28 16:50 ` [PATCH 1/2] pci_ids: Added FPGA-related entries Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201211301728.48008.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=eli.billauer@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=iws@ovro.caltech.edu \
    --cc=john.linn@xilinx.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michal.simek@xilinx.com \
    --cc=pavel@denx.de \
    --cc=philip@balister.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).