Messages in this thread | | | From | Federico Vaga <> | Subject | Re: kernFS/sysfs: mmap and vm_operations close | Date | Wed, 27 Sep 2017 11:38:47 +0200 |
| |
On Wednesday, 27 September 2017 09:45:51 CEST Greg Kroah-Hartman wrote: > On Wed, Sep 27, 2017 at 08:41:12AM +0200, Federico Vaga wrote: > > On Tuesday, 26 September 2017 23:31:29 CEST Greg Kroah-Hartman wrote: > > > On Tue, Sep 26, 2017 at 05:50:55PM +0200, Federico Vaga wrote:
[...]
> > I want to make our VME interface "as PCI as possible", so I want to > > re-create resources that users can `mmap` to access the device memory. > > Have you looked at the UIO interface?
Yes, but I do not see many differences (user prospective) in doing my mmap with UIO, debugfs, sysfs, or char-device. I would have used a char-device, but I wanted to offer a "PCI like" interface so I did as PCI does. Is the PCI approach obsolete and it should not be taken as example? I chose sysfs only for this reason, not because sysfs gives me something more; actually it does not, and that's why we are here :D
> > This abstraction will allow us to write utilities that works on PCI and > > VME > > devices without dealing with the peculiarity of each interface. This is > > particularly useful when you have FPGAs that can run the "same" code on > > different buses, but it is true as well when you have the same hardware > > (the same memory map) installed on VME cards or PCI cards. > > > > That's why a sysfs VME resource seems to me the easiest and clean way to > > achieve this. I do not want to create yet another layer that hides the > > differences between the two buses when mmap is so straight forward and > > easy to implement. Another point is that adding a new layer add > > complexity in the architecture and for the developers; they have to learn > > yet another non- standard interface that I invent, while the concept of > > resource is something that everybody know. > > Or if you use the VME kernel interface, everything will "just work"...
(in private explanation about why we cannot use the VME kernel)
> > > sysfs binary attributes are for dumping binary data that the kernel > > > doesn't touch/parse, through to hardware. Why use mmap for this? Do > > > you have a pointer to your code somewhere? > > > > No pointer :S > > Sorry, I can't help out much then. > > Best of luck!
No problem, thank you for your time.
-- Federico Vaga http://www.federicovaga.it
| |