[SPAM] [PATCH 2/3] FPGA: add a programming command

Sascha Hauer s.hauer at pengutronix.de
Fri Nov 8 03:22:31 EST 2013


On Thu, Nov 07, 2013 at 11:27:39PM +0800, Jean-Christophe PLAGNIOL-VILLARD wrote:
> 
> On Nov 7, 2013, at 10:37 PM, Lucas Stach <l.stach at pengutronix.de> wrote:
> 
> > Am Donnerstag, den 07.11.2013, 15:37 +0100 schrieb Jean-Christophe
> > PLAGNIOL-VILLARD:
> >> On 12:09 Thu 07 Nov     , Sascha Hauer wrote:
> >>> On Thu, Nov 07, 2013 at 11:04:56AM +0100, Jean-Christophe PLAGNIOL-VILLARD wrote:
> >>>> Hi,
> >>>> 
> >>>> 	I really do not like it
> >>>> 
> >>>> 	we need to have an API to load firmware same a Linux
> >>> 
> >>> The firmware loading mechanism in Linux is driven by the driver
> >>> requesting a firmware. This is appropriate for WiFi drivers which can't
> >>> continue without a firmware. For FPGAs which can be loaded, unloaded, or
> >>> even partially loaded, it's the user that should trigger firmware
> >>> loading, not the driver.
> >>> 
> >>> Also, in barebox a user should decide if and when a firmware is loaded.
> >>> We have cases where a single board requires different Firmwares
> >>> depending on bootstrapping. In this case You don't want to have fixed
> >>> firmware names.
> >>> 
> >>> So no, the Linux Firmware model is not suitable for barebox (it sucks
> >>> for Linux aswell in many cases).
> >> 
> >> and command is horrible as you need to known the protocol which you do not
> >> care
> >> 
> >> you just need to known the fpga device and firmware you want to use
> >> 
> >> then the fpga driver will handle
> >> 
> > Did you take the time to read the patches?
> > 
> > From a user perspective you only specify which FPGA you want to program
> > and tell the command which firmware file to use. The protocol and other
> > lowlevel stuff is taken care of in the handler.
> 
> yes I did but the issue is that you need to use a command instead just simply
> set a parameter to the fpga device
> 
> that why I hate the idea of command you use the device to set the firmware you want

I'm fine with a /dev/fpga.x interface to load firmware. However, I find
a command still useful. A command can list all available FPGAs, can
handle partitioned FPGAs and has better possibilities to react to
unusual situations. Right now Jürgens interface to the FPGA driver has
a open/write/close interface. Integrating a cdev into this should be
simple. Then time can decide whether a /dev/ interface or a command or
both is more useful.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list