On Sun, Jan 11, 2015 at 10:29 AM, atull <atull@xxxxxxxxxxxxxxxxxxxxx> wrote: > On Sat, 10 Jan 2015, Pavel Machek wrote: > >> On Sat 2015-01-10 10:10:51, Pantelis Antoniou wrote: >> > Hi Pavel, >> > >> > > On Jan 9, 2015, at 22:56 , Pavel Machek <pavel@xxxxxxx> wrote: >> > > >> > > On Fri 2015-01-09 13:14:24, atull wrote: >> > >> On Wed, 7 Jan 2015, Pavel Machek wrote: >> > >> >> > >>> On Tue 2015-01-06 14:13:37, atull@xxxxxxxxxxxxxxxxxxxxx wrote: >> > >>>> + >> > >>>> +What: /sys/class/fpga_manager/<fpga>/firmware >> > >>>> +Date: October 2014 >> > >>>> +KernelVersion: 3.18 >> > >>>> +Contact: Alan Tull <atull@xxxxxxxxxxxxxxxxxxxxx> >> > >>>> +Description: Name of the FPGA image file to load using firmware >> > >>>> class. >> > >>> >> > >>> This one is ugly: it unneccessarily passes firmware name through the >> > >>> kernel. Just make interface and code simpler by always passing >> > >>> "socfpga-fpga-image" or something like that. >> > >>> >> > >>> Thanks, >> > >>> Pavel >> > >> >> > >> Hi Pavel, >> > >> >> > >> It might be ugly. It's not unnecessary. Some uses of FPGAs involve >> > >> switching out the FPGA images dynamically under control of the userspace. >> > > >> > > Then configure udev to load right firmware for you, or ln -s >> > > image-i-want-now socfpga-fpga-image to select the one to read…? >> > > >> > >> > Who said that udev is going to be available in the kind of system this is going to end in? >> >> Noone. >> >> > Doing ln -s tricks to load a different image? Really? >> >> But if you don't have udev, you can do ln -s. It is better than >> open-coding symlink functionality into >> /sys/class/fpga_manager/<fpga>/firmware ... cause that's what this is. >> >> Actually, clean implementation of "firmware" would be symlink in >> sysfs; but I'd say that would be overdoing it. >> >> > I say the interface is fine as it is. >> >> I say it is not. >> Pavel > > Hi Pavel, > > I see that we could do it that way and it would eliminate one of the > sysfs files (../fpga_manager/<fpga>/firmware). Either way we are assuming > that there are fpga images in the filesystem in the firmware search path, > so I don't see why adding a piece of indirection (symlink) makes things > better. > > We want to be able to switch out the FPGA image > under control of userspace. So we don't want an interface that makes > it more cumbersome or tries to pretend that there's only one image. > > Previous uses of the firmware layer has been to use it to load once after > bootup; this is different since some use cases will want to switch out > the FPGA image. If someone wants there to be only one FPGA image on > the FGPA forever, they will probably not be using this framework; their > FPGA will probably be loaded before Linux boots up. That's not really true. Some WiFi devices have to load different firmware for client and AP modes and switching is a common usecase in phones. There may be other instances of drivers wanting configurable firmware names already. A common interface here would be nice. It could also be useful to expose the firmware names such that you could generate a list of all firmware files needed for a machine (that may already be possible with uevents?). Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html