Thread (36 messages) flat view 36 messages, 3 authors, 2012-11-19
STALE5012d

[PATCH] Device Tree binding for the 'mv_xor' XOR engine DMA driver

From: Thomas Petazzoni <hidden>
Date: 2012-11-18 10:50:30

Dear Andrew Lunn,

On Sun, 18 Nov 2012 11:36:26 +0100, Andrew Lunn wrote:
I tested on kirkwood, both old style and DT. I tested using the
dmatest kernel module. That shows up an old issue, pre-dating your
patchset. It dmatest dereferences a NULL pointer during cleanup, due
to a missing function in the driver. I will submit a patch for this
soon.
Ok.
The dmatest shows up a second issue:

root at qnap:~# insmod ./dmatest.ko iterations=100
dmatest: Started 2 threads using dma0chan0
dmatest: Started 2 threads using dma1chan0
dmatest: Started 2 threads using dma2chan0
dmatest: Started 2 threads using dma3chan0
dma3chan0-xor0: #3: prep error with src_off=0x13c2 dst_off=0x2c7c len=0x5d
dma1chan0-copy0: #16: prep error with src_off=0x1f50 dst_off=0x904 len=0x33
dma3chan0-copy0: #22: prep error with src_off=0x14c2 dst_off=0x389b len=0x6f
dma0chan0-copy0: #31: prep error with src_off=0x10b6 dst_off=0x323c len=0x2f
dma3chan0-copy0: #49: prep error with src_off=0x17b5 dst_off=0x3eca len=0x29

The driver refuses any operation where the buffer is less than 128
bytes. The datasheet for Kirkwood says the buffer length must be 8
bytes or more. So maybe we should reduce this 128 limit down to 8?

But is the driver allowed to refuse small copies? Is the caller
expected to fall back to software? Does the dma core implement this
fallback? Lots of questions i don't know the answers to.
Thanks a lot for all this testing. I guess we can try to sort out those
issues as follow-up patches. I'll add bug tracker entries for those
items so that we remember to get to them at some point.
Anyway, you can add a 

Tested-by: Andrew Lunn <andrew@lunn.ch>

since with your patches it works just as well as before your patches.
Excellent, thanks!

I'll try to fix the few issues found by Sebastian tomorrow, integrate
your two patches and send a formal pull request to Jason if you're OK.

Best regards, 

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help