Fix default isochronous IRQ interval on firewire-core
libraw1394 takes a negative IRQ interval to mean "every 256 packets" with the juju backend, which doesn't work well if you don't queue that many. Use buf_packets / 4 like the ieee1394 version. Signed-off-by: Jay Fenlason <fenlason@redhat.com> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (order, comment)
This commit is contained in:
parent
e98abe588a
commit
1fb09ead37
|
@ -391,10 +391,13 @@ iso_init(fw_handle_t handle, int type,
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
handle->iso.type = type;
|
/* set irq_interval from < 1 to default values like ieee1394 rawiso */
|
||||||
if (irq_interval < 0)
|
if (irq_interval < 0)
|
||||||
handle->iso.irq_interval = 256;
|
irq_interval = buf_packets / 4;
|
||||||
else
|
if (irq_interval == 0)
|
||||||
|
irq_interval = 1;
|
||||||
|
|
||||||
|
handle->iso.type = type;
|
||||||
handle->iso.irq_interval = irq_interval;
|
handle->iso.irq_interval = irq_interval;
|
||||||
handle->iso.xmit_handler = xmit_handler;
|
handle->iso.xmit_handler = xmit_handler;
|
||||||
handle->iso.recv_handler = recv_handler;
|
handle->iso.recv_handler = recv_handler;
|
||||||
|
|
Reference in New Issue