From: =?utf-8?q?Kristian_H=C3=B8gsberg?= Subject: [PATCH] firewire: Set correct buffer lengths for dualbuffer DMA descriptor. Date: Fri, 16 Feb 2007 17:34:45 -0500 Signed-off-by: Kristian Høgsberg Signed-off-by: Stefan Richter --- drivers/firewire/fw-ohci.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c index b5a1545..76ac70a 100644 --- a/drivers/firewire/fw-ohci.c +++ b/drivers/firewire/fw-ohci.c @@ -1583,10 +1583,7 @@ ohci_queue_iso_receive(struct fw_iso_context *base, descriptor_branch_always); db->first_size = cpu_to_le16(ctx->base.header_size); db->first_req_count = cpu_to_le16(p->header_length); - db->second_req_count = cpu_to_le16(p->payload_length); - db->first_res_count = cpu_to_le16(db->first_req_count); - db->second_res_count = cpu_to_le16(db->second_req_count); - + db->first_res_count = db->first_req_count; db->first_buffer = cpu_to_le32(d_bus + sizeof *db); if (offset + rest < PAGE_SIZE) @@ -1594,6 +1591,8 @@ ohci_queue_iso_receive(struct fw_iso_context *base, else length = PAGE_SIZE - offset; + db->second_req_count = cpu_to_le16(length); + db->second_res_count = db->second_req_count; page_bus = page_private(buffer->pages[page]); db->second_buffer = cpu_to_le32(page_bus + offset); -- 1.4.4.2