[patch 1/5] Staging: VME Framework for the Linux Kernel
martyn.welch at gefanuc.com
Tue Aug 11 01:02:52 PDT 2009
Emilio G. Cota wrote:
> Martyn Welch wrote:
>> If the driver writer wants a "single shot" effect, there's little
>> overhead in creating a one item link-list and executing it. However,
>> without support for this mode the author is stuck with single shot
>> transfers. If the author wants to perform scatter gather type
>> transfers, without this functionality in the API - which is supported by
>> all the bridges I have seen - he won't be able to easily avail himself
>> of this functionality and get "work done".
> Again, he (the driver writer) should know *nothing* about that.
> As for the scatter-gather case, what should happen is:
> User: hey, there's a buffer I want to transfer. here's
> a pointer and size
Buffer where? On VME or PCI, where are you transferring it to? The API I
have will allow scattered locations on VME to be copied to PCI and
visa-versa, scattered locations on PCI to be copied to VME and
visa-versa. Even scattered locations on VME to scattered locations on
PCI with a bit of effort.
> VME layer: ok, passing it to the bridge
> VME bridge: I know I'm over PCI, so I'll get the pages
> from memory and map the sg list over PCI, and
> then will tell the bridge to perform from there.
> That's just a particular example, but for the user (read driver
> writer) it's much simpler this way. Doesn't need to know about
> lists or whatever.
But seems to fail to provide the flexibility that I outlined above.
Martyn Welch MEng MPhil MIET (Principal Software Engineer) T:+44(0)1327322748
GE Fanuc Intelligent Platforms Ltd, |Registered in England and Wales
Tove Valley Business Park, Towcester, |(3828642) at 100 Barbirolli Square,
Northants, NN12 6PF, UK T:+44(0)1327359444 |Manchester,M2 3AB VAT:GB 927559189
More information about the devel