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

firewire: Move async transmit to use the general context code.

The old async transmit context handling was starting and stopping
DMA for every packet transmission.  This could cause silently failing
packet transmission, if the DMA was reprogrammed too close to being
stopped.

The general context code keeps DMA running at all times and fixes this
problem.  It's also a nice cleanup.
Signed-off-by: default avatarKristian Høgsberg <krh@redhat.com>
Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
parent 2603bf21
This diff is collapsed.
...@@ -203,8 +203,6 @@ struct fw_packet { ...@@ -203,8 +203,6 @@ struct fw_packet {
size_t payload_length; size_t payload_length;
u32 timestamp; u32 timestamp;
dma_addr_t payload_bus;
/* This callback is called when the packet transmission has /* This callback is called when the packet transmission has
* completed; for successful transmission, the status code is * completed; for successful transmission, the status code is
* the ack received from the destination, otherwise it's a * the ack received from the destination, otherwise it's a
...@@ -215,6 +213,7 @@ struct fw_packet { ...@@ -215,6 +213,7 @@ struct fw_packet {
fw_packet_callback_t callback; fw_packet_callback_t callback;
int ack; int ack;
struct list_head link; struct list_head link;
void *driver_data;
}; };
struct fw_transaction { struct fw_transaction {
......
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