Merge master.kernel.org:/pub/scm/linux/kernel/git/sfrench/cifs-2.6
[pandora-kernel.git] / sound / core / misc.c
index b53e563..6db86a7 100644 (file)
@@ -34,6 +34,8 @@ void release_and_free_resource(struct resource *res)
        }
 }
 
+EXPORT_SYMBOL(release_and_free_resource);
+
 #ifdef CONFIG_SND_VERBOSE_PRINTK
 void snd_verbose_printk(const char *file, int line, const char *format, ...)
 {
@@ -51,6 +53,8 @@ void snd_verbose_printk(const char *file, int line, const char *format, ...)
        vprintk(format, args);
        va_end(args);
 }
+
+EXPORT_SYMBOL(snd_verbose_printk);
 #endif
 
 #if defined(CONFIG_SND_DEBUG) && defined(CONFIG_SND_VERBOSE_PRINTK)
@@ -71,4 +75,34 @@ void snd_verbose_printd(const char *file, int line, const char *format, ...)
        va_end(args);
 
 }
+
+EXPORT_SYMBOL(snd_verbose_printd);
+#endif
+
+#ifdef CONFIG_PCI
+#include <linux/pci.h>
+/**
+ * snd_pci_quirk_lookup - look up a PCI SSID quirk list
+ * @pci: pci_dev handle
+ * @list: quirk list, terminated by a null entry
+ *
+ * Look through the given quirk list and finds a matching entry
+ * with the same PCI SSID.  When subdevice is 0, all subdevice
+ * values may match.
+ *
+ * Returns the matched entry pointer, or NULL if nothing matched.
+ */
+const struct snd_pci_quirk *
+snd_pci_quirk_lookup(struct pci_dev *pci, const struct snd_pci_quirk *list)
+{
+       const struct snd_pci_quirk *q;
+
+       for (q = list; q->subvendor; q++)
+               if (q->subvendor == pci->subsystem_vendor &&
+                   (!q->subdevice || q->subdevice == pci->subsystem_device))
+                       return q;
+       return NULL;
+}
+
+EXPORT_SYMBOL(snd_pci_quirk_lookup);
 #endif