firewire: Configure channel and speed at context creation time.
We need the channel number as we queue up iso packets for transmission
so we can fill out the header correctly.
Signed-off-by: Kristian Høgsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
diff --git a/drivers/firewire/fw-iso.c b/drivers/firewire/fw-iso.c
index deff692..dc5a7e3 100644
--- a/drivers/firewire/fw-iso.c
+++ b/drivers/firewire/fw-iso.c
@@ -106,7 +106,8 @@
}
struct fw_iso_context *
-fw_iso_context_create(struct fw_card *card, int type, size_t header_size,
+fw_iso_context_create(struct fw_card *card, int type,
+ int channel, int speed, size_t header_size,
fw_iso_callback_t callback, void *callback_data)
{
struct fw_iso_context *ctx;
@@ -117,6 +118,8 @@
ctx->card = card;
ctx->type = type;
+ ctx->channel = channel;
+ ctx->speed = speed;
ctx->header_size = header_size;
ctx->callback = callback;
ctx->callback_data = callback_data;
@@ -134,12 +137,8 @@
EXPORT_SYMBOL(fw_iso_context_destroy);
int
-fw_iso_context_start(struct fw_iso_context *ctx,
- int channel, int speed, int cycle)
+fw_iso_context_start(struct fw_iso_context *ctx, int cycle)
{
- ctx->channel = channel;
- ctx->speed = speed;
-
return ctx->card->driver->start_iso(ctx, cycle);
}
EXPORT_SYMBOL(fw_iso_context_start);