Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
[pandora-kernel.git] / sound / firewire / iso-resources.c
index 775dbd5..5f17b77 100644 (file)
@@ -8,10 +8,10 @@
 #include <linux/device.h>
 #include <linux/firewire.h>
 #include <linux/firewire-constants.h>
+#include <linux/export.h>
 #include <linux/jiffies.h>
 #include <linux/mutex.h>
 #include <linux/sched.h>
-#include <linux/slab.h>
 #include <linux/spinlock.h>
 #include "iso-resources.h"
 
  */
 int fw_iso_resources_init(struct fw_iso_resources *r, struct fw_unit *unit)
 {
-       r->buffer = kmalloc(2 * 4, GFP_KERNEL);
-       if (!r->buffer)
-               return -ENOMEM;
-
        r->channels_mask = ~0uLL;
        r->unit = fw_unit_get(unit);
        mutex_init(&r->mutex);
@@ -36,6 +32,7 @@ int fw_iso_resources_init(struct fw_iso_resources *r, struct fw_unit *unit)
 
        return 0;
 }
+EXPORT_SYMBOL(fw_iso_resources_init);
 
 /**
  * fw_iso_resources_destroy - destroy a resource manager
@@ -44,10 +41,10 @@ int fw_iso_resources_init(struct fw_iso_resources *r, struct fw_unit *unit)
 void fw_iso_resources_destroy(struct fw_iso_resources *r)
 {
        WARN_ON(r->allocated);
-       kfree(r->buffer);
        mutex_destroy(&r->mutex);
        fw_unit_put(r->unit);
 }
+EXPORT_SYMBOL(fw_iso_resources_destroy);
 
 static unsigned int packet_bandwidth(unsigned int max_payload_bytes, int speed)
 {
@@ -131,7 +128,7 @@ retry_after_bus_reset:
 
        bandwidth = r->bandwidth + r->bandwidth_overhead;
        fw_iso_resource_manage(card, r->generation, r->channels_mask,
-                              &channel, &bandwidth, true, r->buffer);
+                              &channel, &bandwidth, true);
        if (channel == -EAGAIN) {
                mutex_unlock(&r->mutex);
                goto retry_after_bus_reset;
@@ -152,6 +149,7 @@ retry_after_bus_reset:
 
        return channel;
 }
+EXPORT_SYMBOL(fw_iso_resources_allocate);
 
 /**
  * fw_iso_resources_update - update resource allocations after a bus reset
@@ -184,7 +182,7 @@ int fw_iso_resources_update(struct fw_iso_resources *r)
        bandwidth = r->bandwidth + r->bandwidth_overhead;
 
        fw_iso_resource_manage(card, r->generation, 1uLL << r->channel,
-                              &channel, &bandwidth, true, r->buffer);
+                              &channel, &bandwidth, true);
        /*
         * When another bus reset happens, pretend that the allocation
         * succeeded; we will try again for the new generation later.
@@ -203,6 +201,7 @@ int fw_iso_resources_update(struct fw_iso_resources *r)
 
        return channel;
 }
+EXPORT_SYMBOL(fw_iso_resources_update);
 
 /**
  * fw_iso_resources_free - frees allocated resources
@@ -220,7 +219,7 @@ void fw_iso_resources_free(struct fw_iso_resources *r)
        if (r->allocated) {
                bandwidth = r->bandwidth + r->bandwidth_overhead;
                fw_iso_resource_manage(card, r->generation, 1uLL << r->channel,
-                                      &channel, &bandwidth, false, r->buffer);
+                                      &channel, &bandwidth, false);
                if (channel < 0)
                        dev_err(&r->unit->device,
                                "isochronous resource deallocation failed\n");
@@ -230,3 +229,4 @@ void fw_iso_resources_free(struct fw_iso_resources *r)
 
        mutex_unlock(&r->mutex);
 }
+EXPORT_SYMBOL(fw_iso_resources_free);