Commit 1e1d196b authored by Kristian Høgsberg's avatar Kristian Høgsberg Committed by Stefan Richter

firewire: Set correct buffer lengths for dualbuffer DMA descriptor.

Signed-off-by: default avatarKristian Høgsberg <krh@redhat.com>
Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
parent 9b32d5f3
...@@ -1583,10 +1583,7 @@ ohci_queue_iso_receive(struct fw_iso_context *base, ...@@ -1583,10 +1583,7 @@ ohci_queue_iso_receive(struct fw_iso_context *base,
descriptor_branch_always); descriptor_branch_always);
db->first_size = cpu_to_le16(ctx->base.header_size); db->first_size = cpu_to_le16(ctx->base.header_size);
db->first_req_count = cpu_to_le16(p->header_length); db->first_req_count = cpu_to_le16(p->header_length);
db->second_req_count = cpu_to_le16(p->payload_length); db->first_res_count = db->first_req_count;
db->first_res_count = cpu_to_le16(db->first_req_count);
db->second_res_count = cpu_to_le16(db->second_req_count);
db->first_buffer = cpu_to_le32(d_bus + sizeof *db); db->first_buffer = cpu_to_le32(d_bus + sizeof *db);
if (offset + rest < PAGE_SIZE) if (offset + rest < PAGE_SIZE)
...@@ -1594,6 +1591,8 @@ ohci_queue_iso_receive(struct fw_iso_context *base, ...@@ -1594,6 +1591,8 @@ ohci_queue_iso_receive(struct fw_iso_context *base,
else else
length = PAGE_SIZE - offset; 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]); page_bus = page_private(buffer->pages[page]);
db->second_buffer = cpu_to_le32(page_bus + offset); db->second_buffer = cpu_to_le32(page_bus + offset);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment