Messages in this thread | | | Subject | Re: [PATCH v8 2/4] fpga manager: add sysfs interface document | From | Pantelis Antoniou <> | Date | Wed, 21 Jan 2015 18:33:12 +0200 |
| |
Hi Alan,
> On Jan 21, 2015, at 18:01 , One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> wrote: > > On Thu, 15 Jan 2015 22:54:46 +0200 > Pantelis Antoniou <pantelis.antoniou@konsulko.com> wrote: > >> Hi Alan, >> >>> On Jan 15, 2015, at 22:45 , One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> wrote: >>> >>> On Thu, 15 Jan 2015 11:47:26 -0700 >>> Jason Gunthorpe <jgunthorpe@obsidianresearch.com> wrote: >>>> It is a novel idea, my concern would be that embedding the FPGA in the >>>> DT makes it permanent unswappable kernel memory. >>>> Not having the kernel hold the FPGA is best for many uses. >>> >>> If you have a filesysytem before the FPGA is set up then it belongs in >>> the file system. As you presumably loaded the kernel from somewhere there >>> ought to be a file system (even an initrd). >>> >> >> Request firmware does not imply keeping it around. You can always re-request >> when reloading (although there’s a nasty big of caching that needs to be >> resolved with the firmware loader). > > Which comes down to the same thing. Unless you can prove that there is a > path to recover the firmware file that does not have any dependancies > upon the firmware executing (and those can be subtle and horrid at times) > you need to keep it around for suspend/resume at least and potentially > any unexpected error/reset. >
In that case the only safe place to put it is in the kernel image itself, which is something the firmware loader already supports.
>> One of the ideas rolling about is to put the device tree overlay blob in >> an EEPROM and then load it from there (not from the filesystem). > > That's a fine example of one you can probably always get to and avoid > caching. However if its in eeprom you don't need request_firmware anyway ! >
Sure, I never said that request_firmware is the only way to get hold of a blob. It just happens to be the most convenient one for the kernel (when the blob resides somewhere on a filesystem).
>> Can we please not use ioctls if possible. Configfs seems to work just fine >> for configuration and for any other higher speed API we should use read/write/mmap. > > You don't have the needed state in configfs as far as I can see. >
Sure, but there’s no reason for it not to be there.
>> Ioctls are a pain for scripting and interpreted languages usually. > > You can do ioctls in perl just fine if you are mad (and if you are > using perl you are ;-) ) while python has a complete explicit fcntl.ioctl > model. >
Sure, it can be made to work, but it is a pain.
>> Making the API handle partial reconfiguration from day one might be pushing tricky. >> I don’t remember any case where I came across a need for it. > > Agreed - I don't see the point in adding it until someone needs it and can > describe what is needed accurately. >
/me nods.
> Alan
Regards
— Pantelis
| |