Re: [PATCH] uio_pci_generic does not export memory resources

Hans J. Koch
2012-06-08T15:18:56Z

On Fri, Jun 08, 2012 at 04:28:58PM +0200, Dominic Eschweiler wrote:
> Am Freitag, den 08.06.2012, 16:03 +0300 schrieb Michael S. Tsirkin:
> > Why is this needed?
> > What's wrong with mapping resources through
> > /sys/bus/pci/devices/XXXXXresourceX
> > ?
> >
> Mmmh ok, the problem here is, that the UIO documentation states:
>
> "/dev/uioX is used to access the address space of the card. Just use
> mmap() to access registers or RAM locations of your card."
>
> and
>
> "From userspace, the different mappings are distinguished by adjusting
> the offset parameter of the mmap() call."
>
>
> This does not work and the "/sys/class/uio/uioX/maps/mapX/" directories
> do also not appear.

Then there's something fundamentally wrong in your driver. Check the return
value of uio_register_device().

> I was very confused when I tried UIO the first time
> and it did not behave like it is described in the documentation.

UIO is the mainline since 2007, and I can assure you it works like described.
Lots of people use it.

Try and fix your driver, then post it. If you absolutely don't get it working,
post a non-working version for review.

Thanks,
Hans