I have a Problem with the ohci1394 driver!

I have a 3-port IEEE1394-b PCI card with a AVLAB Technologies chip (Vendor ID 0x00010.

I loaded the kernel 2.6.4 for suse 9.0 and the driver IEEE1394 sources from the linux1394.org site.
I compiled my kernel and it is running. Then replaced the driver sources with the files from the 1394-site, builded and installed the modules.

I tried to create a IP-over1394 connection with a XP platform.

With “ifconfig eth1” I tried to create a eth1 interface.
I got an error message in my shell: SIOCSIFFLAGS: ressource not available

I traced a problem in the ohci.c module. In the function “ohci_iso_recv_init” in line 1278 in the if statement “recv->buf_stride” at all times is larger (8192 Bytes) than PAGE_SIZE (4096 Bytes). Thus the debug message “ohci_iso_recv_init: problem choosing a buffer stride” appears in the kmsg shell. The initialization is aborted.

The isochronouns max. data payload for 1394b devices is at 8192 Bytes, thus
“recv->buf_stride” is too large at all times.
I have no idea solving the problem.

Perhapes somebody can help!


Mirko Spies