[linux-dvb] FYI: CinergyT2 and embeded enviroment

Petr Nejedly P.Nejedly at sh.cvut.cz
Tue Mar 15 19:09:26 CET 2005


I was trying to make CinergyT2 working on on two embeded boxes,
LinkSys NSLU2 and Asus WL500gx (both have USB2.0 HCD, one from
VIA, other one from NEC), but it oopsed kernel on both of them as soon
as it started transfer of the TS data.

After several sleepless nights, I've hacked together a simplified driver
(mimicking the original one) that doesn't oops and is able to provide 
full TS stream
on these devices. The only important difference is that I allocate the 
URB buffers
using kmalloc, while the original driver does pci_alloc_consistent.
If I use pci_alloc_consistent, my driver starts to oops the kernel as well,
although the memory region seems to be allocated right.

Does the original driver really need to allocate the buffers this way? I 
haven't seen
any other USB driver doing so (except ttusb-budget from the same author, 
which
fails in such embeded enviroment as well, although w/o crash, just 
getting zeroed
buffers from ISOC instead of real data).

I haven't tried using kmalloc instead of pci_alloc_consistent on my x86 
desktop
yet but should it work, wouldn't it be better to rewrite the driver to 
use kmalloc?

Nenik





More information about the linux-dvb mailing list