Re: [PATCHv3 08/16] staging: vme_user: provide DMA functionality

From: Martyn Welch
Date: Wed Jul 08 2015 - 09:41:37 EST


On 07/07/15 13:51, Alessio Igor Bogani wrote:
Current VME stack links windows not to the boards, but to device drivers.
>Driver
>could potentially minimise window usage within itâs scope (any sort of
>window
>reusing, like mapping whole A16 once to be used with all boards), but this
>wonât
>work across multiple drivers. Even if all of your drivers are window-wise
>economic,
>they will still need some amount of windows per each driver. Not that we
>have that
>many kernel drivers...
Yes you can share a window/image between all boards of the same type
(in effect we are porting our drivers in this way)*but* it isn't the
expected way to work (see Documentation/vme_api.txt struct
vme_driver's probe() and match() functions and the GE PIO2 VME
driver).

I think it's perfectly valid to use a single window to dynamically map to the address space belonging to one of a number of devices supported by a single driver. I think this is almost preferable to mapping a large window over a large portion of the VME address space to drive a number of devices as (depending on there spacing in the VME address space) the latter could cause issues with filling available PCI address space. Admittedly this is more of a problem on 32-bit systems, but...

--
Martyn Welch (Lead Software Engineer) | Registered in England and Wales
GE Intelligent Platforms | (3828642) at 100 Barbirolli Square
T +44(0)1327322748 | Manchester, M2 3AB
E martyn.welch@xxxxxx | VAT:GB 927559189
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/