aboutsummaryrefslogtreecommitdiffstats
path: root/sound/firewire
diff options
context:
space:
mode:
Diffstat (limited to 'sound/firewire')
-rw-r--r--sound/firewire/cmp.c3
-rw-r--r--sound/firewire/iso-resources.c12
-rw-r--r--sound/firewire/iso-resources.h1
3 files changed, 4 insertions, 12 deletions
diff --git a/sound/firewire/cmp.c b/sound/firewire/cmp.c
index 4a37f3a6fab9..14cacbc655dd 100644
--- a/sound/firewire/cmp.c
+++ b/sound/firewire/cmp.c
@@ -49,10 +49,9 @@ static int pcr_modify(struct cmp_connection *c,
49 enum bus_reset_handling bus_reset_handling) 49 enum bus_reset_handling bus_reset_handling)
50{ 50{
51 struct fw_device *device = fw_parent_device(c->resources.unit); 51 struct fw_device *device = fw_parent_device(c->resources.unit);
52 __be32 *buffer = c->resources.buffer;
53 int generation = c->resources.generation; 52 int generation = c->resources.generation;
54 int rcode, errors = 0; 53 int rcode, errors = 0;
55 __be32 old_arg; 54 __be32 old_arg, buffer[2];
56 int err; 55 int err;
57 56
58 buffer[0] = c->last_pcr_value; 57 buffer[0] = c->last_pcr_value;
diff --git a/sound/firewire/iso-resources.c b/sound/firewire/iso-resources.c
index 775dbd5f3445..bb9c0c1fb529 100644
--- a/sound/firewire/iso-resources.c
+++ b/sound/firewire/iso-resources.c
@@ -11,7 +11,6 @@
11#include <linux/jiffies.h> 11#include <linux/jiffies.h>
12#include <linux/mutex.h> 12#include <linux/mutex.h>
13#include <linux/sched.h> 13#include <linux/sched.h>
14#include <linux/slab.h>
15#include <linux/spinlock.h> 14#include <linux/spinlock.h>
16#include "iso-resources.h" 15#include "iso-resources.h"
17 16
@@ -25,10 +24,6 @@
25 */ 24 */
26int fw_iso_resources_init(struct fw_iso_resources *r, struct fw_unit *unit) 25int fw_iso_resources_init(struct fw_iso_resources *r, struct fw_unit *unit)
27{ 26{
28 r->buffer = kmalloc(2 * 4, GFP_KERNEL);
29 if (!r->buffer)
30 return -ENOMEM;
31
32 r->channels_mask = ~0uLL; 27 r->channels_mask = ~0uLL;
33 r->unit = fw_unit_get(unit); 28 r->unit = fw_unit_get(unit);
34 mutex_init(&r->mutex); 29 mutex_init(&r->mutex);
@@ -44,7 +39,6 @@ int fw_iso_resources_init(struct fw_iso_resources *r, struct fw_unit *unit)
44void fw_iso_resources_destroy(struct fw_iso_resources *r) 39void fw_iso_resources_destroy(struct fw_iso_resources *r)
45{ 40{
46 WARN_ON(r->allocated); 41 WARN_ON(r->allocated);
47 kfree(r->buffer);
48 mutex_destroy(&r->mutex); 42 mutex_destroy(&r->mutex);
49 fw_unit_put(r->unit); 43 fw_unit_put(r->unit);
50} 44}
@@ -131,7 +125,7 @@ retry_after_bus_reset:
131 125
132 bandwidth = r->bandwidth + r->bandwidth_overhead; 126 bandwidth = r->bandwidth + r->bandwidth_overhead;
133 fw_iso_resource_manage(card, r->generation, r->channels_mask, 127 fw_iso_resource_manage(card, r->generation, r->channels_mask,
134 &channel, &bandwidth, true, r->buffer); 128 &channel, &bandwidth, true);
135 if (channel == -EAGAIN) { 129 if (channel == -EAGAIN) {
136 mutex_unlock(&r->mutex); 130 mutex_unlock(&r->mutex);
137 goto retry_after_bus_reset; 131 goto retry_after_bus_reset;
@@ -184,7 +178,7 @@ int fw_iso_resources_update(struct fw_iso_resources *r)
184 bandwidth = r->bandwidth + r->bandwidth_overhead; 178 bandwidth = r->bandwidth + r->bandwidth_overhead;
185 179
186 fw_iso_resource_manage(card, r->generation, 1uLL << r->channel, 180 fw_iso_resource_manage(card, r->generation, 1uLL << r->channel,
187 &channel, &bandwidth, true, r->buffer); 181 &channel, &bandwidth, true);
188 /* 182 /*
189 * When another bus reset happens, pretend that the allocation 183 * When another bus reset happens, pretend that the allocation
190 * succeeded; we will try again for the new generation later. 184 * succeeded; we will try again for the new generation later.
@@ -220,7 +214,7 @@ void fw_iso_resources_free(struct fw_iso_resources *r)
220 if (r->allocated) { 214 if (r->allocated) {
221 bandwidth = r->bandwidth + r->bandwidth_overhead; 215 bandwidth = r->bandwidth + r->bandwidth_overhead;
222 fw_iso_resource_manage(card, r->generation, 1uLL << r->channel, 216 fw_iso_resource_manage(card, r->generation, 1uLL << r->channel,
223 &channel, &bandwidth, false, r->buffer); 217 &channel, &bandwidth, false);
224 if (channel < 0) 218 if (channel < 0)
225 dev_err(&r->unit->device, 219 dev_err(&r->unit->device,
226 "isochronous resource deallocation failed\n"); 220 "isochronous resource deallocation failed\n");
diff --git a/sound/firewire/iso-resources.h b/sound/firewire/iso-resources.h
index 3f0730e4d841..5a9af7c61657 100644
--- a/sound/firewire/iso-resources.h
+++ b/sound/firewire/iso-resources.h
@@ -24,7 +24,6 @@ struct fw_iso_resources {
24 unsigned int bandwidth_overhead; 24 unsigned int bandwidth_overhead;
25 int generation; /* in which allocation is valid */ 25 int generation; /* in which allocation is valid */
26 bool allocated; 26 bool allocated;
27 __be32 *buffer;
28}; 27};
29 28
30int fw_iso_resources_init(struct fw_iso_resources *r, 29int fw_iso_resources_init(struct fw_iso_resources *r,