aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/core/control.c31
-rw-r--r--sound/core/device.c6
-rw-r--r--sound/core/info.c20
-rw-r--r--sound/core/info_oss.c2
-rw-r--r--sound/core/init.c20
-rw-r--r--sound/core/isadma.c6
-rw-r--r--sound/core/memory.c5
-rw-r--r--sound/core/misc.c6
-rw-r--r--sound/core/sound.c99
-rw-r--r--sound/core/sound_oss.c6
10 files changed, 113 insertions, 88 deletions
diff --git a/sound/core/control.c b/sound/core/control.c
index 22565c9b9603..bb397eaa7187 100644
--- a/sound/core/control.c
+++ b/sound/core/control.c
@@ -176,6 +176,8 @@ void snd_ctl_notify(struct snd_card *card, unsigned int mask,
176 read_unlock(&card->ctl_files_rwlock); 176 read_unlock(&card->ctl_files_rwlock);
177} 177}
178 178
179EXPORT_SYMBOL(snd_ctl_notify);
180
179/** 181/**
180 * snd_ctl_new - create a control instance from the template 182 * snd_ctl_new - create a control instance from the template
181 * @control: the control template 183 * @control: the control template
@@ -204,6 +206,8 @@ struct snd_kcontrol *snd_ctl_new(struct snd_kcontrol *control, unsigned int acce
204 return kctl; 206 return kctl;
205} 207}
206 208
209EXPORT_SYMBOL(snd_ctl_new);
210
207/** 211/**
208 * snd_ctl_new1 - create a control instance from the template 212 * snd_ctl_new1 - create a control instance from the template
209 * @ncontrol: the initialization record 213 * @ncontrol: the initialization record
@@ -242,6 +246,8 @@ struct snd_kcontrol *snd_ctl_new1(const struct snd_kcontrol_new *ncontrol,
242 return snd_ctl_new(&kctl, access); 246 return snd_ctl_new(&kctl, access);
243} 247}
244 248
249EXPORT_SYMBOL(snd_ctl_new1);
250
245/** 251/**
246 * snd_ctl_free_one - release the control instance 252 * snd_ctl_free_one - release the control instance
247 * @kcontrol: the control instance 253 * @kcontrol: the control instance
@@ -259,6 +265,8 @@ void snd_ctl_free_one(struct snd_kcontrol *kcontrol)
259 } 265 }
260} 266}
261 267
268EXPORT_SYMBOL(snd_ctl_free_one);
269
262static unsigned int snd_ctl_hole_check(struct snd_card *card, 270static unsigned int snd_ctl_hole_check(struct snd_card *card,
263 unsigned int count) 271 unsigned int count)
264{ 272{
@@ -347,6 +355,8 @@ int snd_ctl_add(struct snd_card *card, struct snd_kcontrol *kcontrol)
347 return err; 355 return err;
348} 356}
349 357
358EXPORT_SYMBOL(snd_ctl_add);
359
350/** 360/**
351 * snd_ctl_remove - remove the control from the card and release it 361 * snd_ctl_remove - remove the control from the card and release it
352 * @card: the card instance 362 * @card: the card instance
@@ -373,6 +383,8 @@ int snd_ctl_remove(struct snd_card *card, struct snd_kcontrol *kcontrol)
373 return 0; 383 return 0;
374} 384}
375 385
386EXPORT_SYMBOL(snd_ctl_remove);
387
376/** 388/**
377 * snd_ctl_remove_id - remove the control of the given id and release it 389 * snd_ctl_remove_id - remove the control of the given id and release it
378 * @card: the card instance 390 * @card: the card instance
@@ -399,6 +411,8 @@ int snd_ctl_remove_id(struct snd_card *card, struct snd_ctl_elem_id *id)
399 return ret; 411 return ret;
400} 412}
401 413
414EXPORT_SYMBOL(snd_ctl_remove_id);
415
402/** 416/**
403 * snd_ctl_remove_unlocked_id - remove the unlocked control of the given id and release it 417 * snd_ctl_remove_unlocked_id - remove the unlocked control of the given id and release it
404 * @file: active control handle 418 * @file: active control handle
@@ -461,6 +475,8 @@ int snd_ctl_rename_id(struct snd_card *card, struct snd_ctl_elem_id *src_id,
461 return 0; 475 return 0;
462} 476}
463 477
478EXPORT_SYMBOL(snd_ctl_rename_id);
479
464/** 480/**
465 * snd_ctl_find_numid - find the control instance with the given number-id 481 * snd_ctl_find_numid - find the control instance with the given number-id
466 * @card: the card instance 482 * @card: the card instance
@@ -487,6 +503,8 @@ struct snd_kcontrol *snd_ctl_find_numid(struct snd_card *card, unsigned int numi
487 return NULL; 503 return NULL;
488} 504}
489 505
506EXPORT_SYMBOL(snd_ctl_find_numid);
507
490/** 508/**
491 * snd_ctl_find_id - find the control instance with the given id 509 * snd_ctl_find_id - find the control instance with the given id
492 * @card: the card instance 510 * @card: the card instance
@@ -527,6 +545,8 @@ struct snd_kcontrol *snd_ctl_find_id(struct snd_card *card,
527 return NULL; 545 return NULL;
528} 546}
529 547
548EXPORT_SYMBOL(snd_ctl_find_id);
549
530static int snd_ctl_card_info(struct snd_card *card, struct snd_ctl_file * ctl, 550static int snd_ctl_card_info(struct snd_card *card, struct snd_ctl_file * ctl,
531 unsigned int cmd, void __user *arg) 551 unsigned int cmd, void __user *arg)
532{ 552{
@@ -704,6 +724,8 @@ int snd_ctl_elem_read(struct snd_card *card, struct snd_ctl_elem_value *control)
704 return result; 724 return result;
705} 725}
706 726
727EXPORT_SYMBOL(snd_ctl_elem_read);
728
707static int snd_ctl_elem_read_user(struct snd_card *card, 729static int snd_ctl_elem_read_user(struct snd_card *card,
708 struct snd_ctl_elem_value __user *_control) 730 struct snd_ctl_elem_value __user *_control)
709{ 731{
@@ -767,6 +789,8 @@ int snd_ctl_elem_write(struct snd_card *card, struct snd_ctl_file *file,
767 return result; 789 return result;
768} 790}
769 791
792EXPORT_SYMBOL(snd_ctl_elem_write);
793
770static int snd_ctl_elem_write_user(struct snd_ctl_file *file, 794static int snd_ctl_elem_write_user(struct snd_ctl_file *file,
771 struct snd_ctl_elem_value __user *_control) 795 struct snd_ctl_elem_value __user *_control)
772{ 796{
@@ -1199,11 +1223,15 @@ int snd_ctl_register_ioctl(snd_kctl_ioctl_func_t fcn)
1199 return _snd_ctl_register_ioctl(fcn, &snd_control_ioctls); 1223 return _snd_ctl_register_ioctl(fcn, &snd_control_ioctls);
1200} 1224}
1201 1225
1226EXPORT_SYMBOL(snd_ctl_register_ioctl);
1227
1202#ifdef CONFIG_COMPAT 1228#ifdef CONFIG_COMPAT
1203int snd_ctl_register_ioctl_compat(snd_kctl_ioctl_func_t fcn) 1229int snd_ctl_register_ioctl_compat(snd_kctl_ioctl_func_t fcn)
1204{ 1230{
1205 return _snd_ctl_register_ioctl(fcn, &snd_control_compat_ioctls); 1231 return _snd_ctl_register_ioctl(fcn, &snd_control_compat_ioctls);
1206} 1232}
1233
1234EXPORT_SYMBOL(snd_ctl_register_ioctl_compat);
1207#endif 1235#endif
1208 1236
1209/* 1237/*
@@ -1236,12 +1264,15 @@ int snd_ctl_unregister_ioctl(snd_kctl_ioctl_func_t fcn)
1236 return _snd_ctl_unregister_ioctl(fcn, &snd_control_ioctls); 1264 return _snd_ctl_unregister_ioctl(fcn, &snd_control_ioctls);
1237} 1265}
1238 1266
1267EXPORT_SYMBOL(snd_ctl_unregister_ioctl);
1268
1239#ifdef CONFIG_COMPAT 1269#ifdef CONFIG_COMPAT
1240int snd_ctl_unregister_ioctl_compat(snd_kctl_ioctl_func_t fcn) 1270int snd_ctl_unregister_ioctl_compat(snd_kctl_ioctl_func_t fcn)
1241{ 1271{
1242 return _snd_ctl_unregister_ioctl(fcn, &snd_control_compat_ioctls); 1272 return _snd_ctl_unregister_ioctl(fcn, &snd_control_compat_ioctls);
1243} 1273}
1244 1274
1275EXPORT_SYMBOL(snd_ctl_unregister_ioctl_compat);
1245#endif 1276#endif
1246 1277
1247static int snd_ctl_fasync(int fd, struct file * file, int on) 1278static int snd_ctl_fasync(int fd, struct file * file, int on)
diff --git a/sound/core/device.c b/sound/core/device.c
index b1cf6ec56784..6ce4da4a1081 100644
--- a/sound/core/device.c
+++ b/sound/core/device.c
@@ -63,6 +63,8 @@ int snd_device_new(struct snd_card *card, snd_device_type_t type,
63 return 0; 63 return 0;
64} 64}
65 65
66EXPORT_SYMBOL(snd_device_new);
67
66/** 68/**
67 * snd_device_free - release the device from the card 69 * snd_device_free - release the device from the card
68 * @card: the card instance 70 * @card: the card instance
@@ -107,6 +109,8 @@ int snd_device_free(struct snd_card *card, void *device_data)
107 return -ENXIO; 109 return -ENXIO;
108} 110}
109 111
112EXPORT_SYMBOL(snd_device_free);
113
110/** 114/**
111 * snd_device_disconnect - disconnect the device 115 * snd_device_disconnect - disconnect the device
112 * @card: the card instance 116 * @card: the card instance
@@ -182,6 +186,8 @@ int snd_device_register(struct snd_card *card, void *device_data)
182 return -ENXIO; 186 return -ENXIO;
183} 187}
184 188
189EXPORT_SYMBOL(snd_device_register);
190
185/* 191/*
186 * register all the devices on the card. 192 * register all the devices on the card.
187 * called from init.c 193 * called from init.c
diff --git a/sound/core/info.c b/sound/core/info.c
index 2582b74d3199..9c288539e99d 100644
--- a/sound/core/info.c
+++ b/sound/core/info.c
@@ -111,12 +111,16 @@ int snd_iprintf(struct snd_info_buffer *buffer, char *fmt,...)
111 return res; 111 return res;
112} 112}
113 113
114EXPORT_SYMBOL(snd_iprintf);
115
114/* 116/*
115 117
116 */ 118 */
117 119
118static struct proc_dir_entry *snd_proc_root = NULL; 120static struct proc_dir_entry *snd_proc_root = NULL;
119struct snd_info_entry *snd_seq_root = NULL; 121struct snd_info_entry *snd_seq_root = NULL;
122EXPORT_SYMBOL(snd_seq_root);
123
120#ifdef CONFIG_SND_OSSEMUL 124#ifdef CONFIG_SND_OSSEMUL
121struct snd_info_entry *snd_oss_root = NULL; 125struct snd_info_entry *snd_oss_root = NULL;
122#endif 126#endif
@@ -687,6 +691,8 @@ int snd_info_get_line(struct snd_info_buffer *buffer, char *line, int len)
687 return 0; 691 return 0;
688} 692}
689 693
694EXPORT_SYMBOL(snd_info_get_line);
695
690/** 696/**
691 * snd_info_get_str - parse a string token 697 * snd_info_get_str - parse a string token
692 * @dest: the buffer to store the string token 698 * @dest: the buffer to store the string token
@@ -723,6 +729,8 @@ char *snd_info_get_str(char *dest, char *src, int len)
723 return src; 729 return src;
724} 730}
725 731
732EXPORT_SYMBOL(snd_info_get_str);
733
726/** 734/**
727 * snd_info_create_entry - create an info entry 735 * snd_info_create_entry - create an info entry
728 * @name: the proc file name 736 * @name: the proc file name
@@ -774,6 +782,8 @@ struct snd_info_entry *snd_info_create_module_entry(struct module * module,
774 return entry; 782 return entry;
775} 783}
776 784
785EXPORT_SYMBOL(snd_info_create_module_entry);
786
777/** 787/**
778 * snd_info_create_card_entry - create an info entry for the given card 788 * snd_info_create_card_entry - create an info entry for the given card
779 * @card: the card instance 789 * @card: the card instance
@@ -797,6 +807,8 @@ struct snd_info_entry *snd_info_create_card_entry(struct snd_card *card,
797 return entry; 807 return entry;
798} 808}
799 809
810EXPORT_SYMBOL(snd_info_create_card_entry);
811
800static int snd_info_dev_free_entry(struct snd_device *device) 812static int snd_info_dev_free_entry(struct snd_device *device)
801{ 813{
802 struct snd_info_entry *entry = device->device_data; 814 struct snd_info_entry *entry = device->device_data;
@@ -867,6 +879,8 @@ int snd_card_proc_new(struct snd_card *card, const char *name,
867 return 0; 879 return 0;
868} 880}
869 881
882EXPORT_SYMBOL(snd_card_proc_new);
883
870/** 884/**
871 * snd_info_free_entry - release the info entry 885 * snd_info_free_entry - release the info entry
872 * @entry: the info entry 886 * @entry: the info entry
@@ -883,6 +897,8 @@ void snd_info_free_entry(struct snd_info_entry * entry)
883 kfree(entry); 897 kfree(entry);
884} 898}
885 899
900EXPORT_SYMBOL(snd_info_free_entry);
901
886/** 902/**
887 * snd_info_register - register the info entry 903 * snd_info_register - register the info entry
888 * @entry: the info entry 904 * @entry: the info entry
@@ -913,6 +929,8 @@ int snd_info_register(struct snd_info_entry * entry)
913 return 0; 929 return 0;
914} 930}
915 931
932EXPORT_SYMBOL(snd_info_register);
933
916/** 934/**
917 * snd_info_unregister - de-register the info entry 935 * snd_info_unregister - de-register the info entry
918 * @entry: the info entry 936 * @entry: the info entry
@@ -937,6 +955,8 @@ int snd_info_unregister(struct snd_info_entry * entry)
937 return 0; 955 return 0;
938} 956}
939 957
958EXPORT_SYMBOL(snd_info_unregister);
959
940/* 960/*
941 961
942 */ 962 */
diff --git a/sound/core/info_oss.c b/sound/core/info_oss.c
index f9ce854b3d11..f2efca18728c 100644
--- a/sound/core/info_oss.c
+++ b/sound/core/info_oss.c
@@ -64,6 +64,8 @@ int snd_oss_info_register(int dev, int num, char *string)
64 return 0; 64 return 0;
65} 65}
66 66
67EXPORT_SYMBOL(snd_oss_info_register);
68
67extern void snd_card_info_read_oss(struct snd_info_buffer *buffer); 69extern void snd_card_info_read_oss(struct snd_info_buffer *buffer);
68 70
69static int snd_sndstat_show_strings(struct snd_info_buffer *buf, char *id, int dev) 71static int snd_sndstat_show_strings(struct snd_info_buffer *buf, char *id, int dev)
diff --git a/sound/core/init.c b/sound/core/init.c
index 39ed2e5bb0af..b145d17ba3b2 100644
--- a/sound/core/init.c
+++ b/sound/core/init.c
@@ -40,10 +40,13 @@ struct snd_shutdown_f_ops {
40 40
41unsigned int snd_cards_lock = 0; /* locked for registering/using */ 41unsigned int snd_cards_lock = 0; /* locked for registering/using */
42struct snd_card *snd_cards[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = NULL}; 42struct snd_card *snd_cards[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = NULL};
43EXPORT_SYMBOL(snd_cards);
44
43DEFINE_RWLOCK(snd_card_rwlock); 45DEFINE_RWLOCK(snd_card_rwlock);
44 46
45#if defined(CONFIG_SND_MIXER_OSS) || defined(CONFIG_SND_MIXER_OSS_MODULE) 47#if defined(CONFIG_SND_MIXER_OSS) || defined(CONFIG_SND_MIXER_OSS_MODULE)
46int (*snd_mixer_oss_notify_callback)(struct snd_card *card, int free_flag); 48int (*snd_mixer_oss_notify_callback)(struct snd_card *card, int free_flag);
49EXPORT_SYMBOL(snd_mixer_oss_notify_callback);
47#endif 50#endif
48 51
49#ifdef CONFIG_PROC_FS 52#ifdef CONFIG_PROC_FS
@@ -169,6 +172,8 @@ struct snd_card *snd_card_new(int idx, const char *xid,
169 return NULL; 172 return NULL;
170} 173}
171 174
175EXPORT_SYMBOL(snd_card_new);
176
172static loff_t snd_disconnect_llseek(struct file *file, loff_t offset, int orig) 177static loff_t snd_disconnect_llseek(struct file *file, loff_t offset, int orig)
173{ 178{
174 return -ENODEV; 179 return -ENODEV;
@@ -298,6 +303,8 @@ int snd_card_disconnect(struct snd_card *card)
298 return 0; 303 return 0;
299} 304}
300 305
306EXPORT_SYMBOL(snd_card_disconnect);
307
301/** 308/**
302 * snd_card_free - frees given soundcard structure 309 * snd_card_free - frees given soundcard structure
303 * @card: soundcard structure 310 * @card: soundcard structure
@@ -360,6 +367,8 @@ int snd_card_free(struct snd_card *card)
360 return 0; 367 return 0;
361} 368}
362 369
370EXPORT_SYMBOL(snd_card_free);
371
363static void snd_card_free_thread(void * __card) 372static void snd_card_free_thread(void * __card)
364{ 373{
365 struct snd_card *card = __card; 374 struct snd_card *card = __card;
@@ -405,6 +414,8 @@ int snd_card_free_in_thread(struct snd_card *card)
405 return -EFAULT; 414 return -EFAULT;
406} 415}
407 416
417EXPORT_SYMBOL(snd_card_free_in_thread);
418
408static void choose_default_id(struct snd_card *card) 419static void choose_default_id(struct snd_card *card)
409{ 420{
410 int i, len, idx_flag = 0, loops = SNDRV_CARDS; 421 int i, len, idx_flag = 0, loops = SNDRV_CARDS;
@@ -505,6 +516,8 @@ int snd_card_register(struct snd_card *card)
505 return 0; 516 return 0;
506} 517}
507 518
519EXPORT_SYMBOL(snd_card_register);
520
508#ifdef CONFIG_PROC_FS 521#ifdef CONFIG_PROC_FS
509static struct snd_info_entry *snd_card_info_entry = NULL; 522static struct snd_info_entry *snd_card_info_entry = NULL;
510 523
@@ -644,6 +657,8 @@ int snd_component_add(struct snd_card *card, const char *component)
644 return 0; 657 return 0;
645} 658}
646 659
660EXPORT_SYMBOL(snd_component_add);
661
647/** 662/**
648 * snd_card_file_add - add the file to the file list of the card 663 * snd_card_file_add - add the file to the file list of the card
649 * @card: soundcard structure 664 * @card: soundcard structure
@@ -676,6 +691,8 @@ int snd_card_file_add(struct snd_card *card, struct file *file)
676 return 0; 691 return 0;
677} 692}
678 693
694EXPORT_SYMBOL(snd_card_file_add);
695
679/** 696/**
680 * snd_card_file_remove - remove the file from the file list 697 * snd_card_file_remove - remove the file from the file list
681 * @card: soundcard structure 698 * @card: soundcard structure
@@ -717,6 +734,8 @@ int snd_card_file_remove(struct snd_card *card, struct file *file)
717 return 0; 734 return 0;
718} 735}
719 736
737EXPORT_SYMBOL(snd_card_file_remove);
738
720#ifdef CONFIG_PM 739#ifdef CONFIG_PM
721/** 740/**
722 * snd_power_wait - wait until the power-state is changed. 741 * snd_power_wait - wait until the power-state is changed.
@@ -753,4 +772,5 @@ int snd_power_wait(struct snd_card *card, unsigned int power_state)
753 return result; 772 return result;
754} 773}
755 774
775EXPORT_SYMBOL(snd_power_wait);
756#endif /* CONFIG_PM */ 776#endif /* CONFIG_PM */
diff --git a/sound/core/isadma.c b/sound/core/isadma.c
index 1a378951da5b..d52398727f0a 100644
--- a/sound/core/isadma.c
+++ b/sound/core/isadma.c
@@ -56,6 +56,8 @@ void snd_dma_program(unsigned long dma,
56 release_dma_lock(flags); 56 release_dma_lock(flags);
57} 57}
58 58
59EXPORT_SYMBOL(snd_dma_program);
60
59/** 61/**
60 * snd_dma_disable - stop the ISA DMA transfer 62 * snd_dma_disable - stop the ISA DMA transfer
61 * @dma: the dma number 63 * @dma: the dma number
@@ -72,6 +74,8 @@ void snd_dma_disable(unsigned long dma)
72 release_dma_lock(flags); 74 release_dma_lock(flags);
73} 75}
74 76
77EXPORT_SYMBOL(snd_dma_disable);
78
75/** 79/**
76 * snd_dma_pointer - return the current pointer to DMA transfer buffer in bytes 80 * snd_dma_pointer - return the current pointer to DMA transfer buffer in bytes
77 * @dma: the dma number 81 * @dma: the dma number
@@ -101,3 +105,5 @@ unsigned int snd_dma_pointer(unsigned long dma, unsigned int size)
101 else 105 else
102 return size - result; 106 return size - result;
103} 107}
108
109EXPORT_SYMBOL(snd_dma_pointer);
diff --git a/sound/core/memory.c b/sound/core/memory.c
index 862d62d2e144..fe59850be868 100644
--- a/sound/core/memory.c
+++ b/sound/core/memory.c
@@ -21,6 +21,7 @@
21 */ 21 */
22 22
23#include <linux/config.h> 23#include <linux/config.h>
24#include <linux/module.h>
24#include <asm/io.h> 25#include <asm/io.h>
25#include <asm/uaccess.h> 26#include <asm/uaccess.h>
26 27
@@ -55,6 +56,8 @@ int copy_to_user_fromio(void __user *dst, const volatile void __iomem *src, size
55#endif 56#endif
56} 57}
57 58
59EXPORT_SYMBOL(copy_to_user_fromio);
60
58/** 61/**
59 * copy_from_user_toio - copy data from user-space to mmio-space 62 * copy_from_user_toio - copy data from user-space to mmio-space
60 * @dst: the destination pointer on mmio-space 63 * @dst: the destination pointer on mmio-space
@@ -85,3 +88,5 @@ int copy_from_user_toio(volatile void __iomem *dst, const void __user *src, size
85 return 0; 88 return 0;
86#endif 89#endif
87} 90}
91
92EXPORT_SYMBOL(copy_from_user_toio);
diff --git a/sound/core/misc.c b/sound/core/misc.c
index b53e563c09e6..03fc711f4127 100644
--- a/sound/core/misc.c
+++ b/sound/core/misc.c
@@ -34,6 +34,8 @@ void release_and_free_resource(struct resource *res)
34 } 34 }
35} 35}
36 36
37EXPORT_SYMBOL(release_and_free_resource);
38
37#ifdef CONFIG_SND_VERBOSE_PRINTK 39#ifdef CONFIG_SND_VERBOSE_PRINTK
38void snd_verbose_printk(const char *file, int line, const char *format, ...) 40void snd_verbose_printk(const char *file, int line, const char *format, ...)
39{ 41{
@@ -51,6 +53,8 @@ void snd_verbose_printk(const char *file, int line, const char *format, ...)
51 vprintk(format, args); 53 vprintk(format, args);
52 va_end(args); 54 va_end(args);
53} 55}
56
57EXPORT_SYMBOL(snd_verbose_printk);
54#endif 58#endif
55 59
56#if defined(CONFIG_SND_DEBUG) && defined(CONFIG_SND_VERBOSE_PRINTK) 60#if defined(CONFIG_SND_DEBUG) && defined(CONFIG_SND_VERBOSE_PRINTK)
@@ -71,4 +75,6 @@ void snd_verbose_printd(const char *file, int line, const char *format, ...)
71 va_end(args); 75 va_end(args);
72 76
73} 77}
78
79EXPORT_SYMBOL(snd_verbose_printd);
74#endif 80#endif
diff --git a/sound/core/sound.c b/sound/core/sound.c
index 108e430b5036..67cfa06062b8 100644
--- a/sound/core/sound.c
+++ b/sound/core/sound.c
@@ -39,6 +39,8 @@
39 39
40static int major = CONFIG_SND_MAJOR; 40static int major = CONFIG_SND_MAJOR;
41int snd_major; 41int snd_major;
42EXPORT_SYMBOL(snd_major);
43
42static int cards_limit = 1; 44static int cards_limit = 1;
43static int device_mode = S_IFCHR | S_IRUGO | S_IWUGO; 45static int device_mode = S_IFCHR | S_IRUGO | S_IWUGO;
44 46
@@ -60,6 +62,7 @@ MODULE_ALIAS_CHARDEV_MAJOR(CONFIG_SND_MAJOR);
60 * modules are loaded manually, this limit number increases, too. 62 * modules are loaded manually, this limit number increases, too.
61 */ 63 */
62int snd_ecards_limit; 64int snd_ecards_limit;
65EXPORT_SYMBOL(snd_ecards_limit);
63 66
64static struct snd_minor *snd_minors[SNDRV_OS_MINORS]; 67static struct snd_minor *snd_minors[SNDRV_OS_MINORS];
65static DEFINE_MUTEX(sound_mutex); 68static DEFINE_MUTEX(sound_mutex);
@@ -92,6 +95,8 @@ void snd_request_card(int card)
92 request_module("snd-card-%i", card); 95 request_module("snd-card-%i", card);
93} 96}
94 97
98EXPORT_SYMBOL(snd_request_card);
99
95static void snd_request_other(int minor) 100static void snd_request_other(int minor)
96{ 101{
97 char *str; 102 char *str;
@@ -133,6 +138,8 @@ void *snd_lookup_minor_data(unsigned int minor, int type)
133 return private_data; 138 return private_data;
134} 139}
135 140
141EXPORT_SYMBOL(snd_lookup_minor_data);
142
136static int snd_open(struct inode *inode, struct file *file) 143static int snd_open(struct inode *inode, struct file *file)
137{ 144{
138 unsigned int minor = iminor(inode); 145 unsigned int minor = iminor(inode);
@@ -281,6 +288,8 @@ int snd_register_device(int type, struct snd_card *card, int dev,
281 return 0; 288 return 0;
282} 289}
283 290
291EXPORT_SYMBOL(snd_register_device);
292
284/** 293/**
285 * snd_unregister_device - unregister the device on the given card 294 * snd_unregister_device - unregister the device on the given card
286 * @type: the device type, SNDRV_DEVICE_TYPE_XXX 295 * @type: the device type, SNDRV_DEVICE_TYPE_XXX
@@ -321,6 +330,8 @@ int snd_unregister_device(int type, struct snd_card *card, int dev)
321 return 0; 330 return 0;
322} 331}
323 332
333EXPORT_SYMBOL(snd_unregister_device);
334
324#ifdef CONFIG_PROC_FS 335#ifdef CONFIG_PROC_FS
325/* 336/*
326 * INFO PART 337 * INFO PART
@@ -446,91 +457,3 @@ static void __exit alsa_sound_exit(void)
446 457
447module_init(alsa_sound_init) 458module_init(alsa_sound_init)
448module_exit(alsa_sound_exit) 459module_exit(alsa_sound_exit)
449
450 /* sound.c */
451EXPORT_SYMBOL(snd_major);
452EXPORT_SYMBOL(snd_ecards_limit);
453#if defined(CONFIG_KMOD)
454EXPORT_SYMBOL(snd_request_card);
455#endif
456EXPORT_SYMBOL(snd_register_device);
457EXPORT_SYMBOL(snd_unregister_device);
458EXPORT_SYMBOL(snd_lookup_minor_data);
459#if defined(CONFIG_SND_OSSEMUL)
460EXPORT_SYMBOL(snd_register_oss_device);
461EXPORT_SYMBOL(snd_unregister_oss_device);
462EXPORT_SYMBOL(snd_lookup_oss_minor_data);
463#endif
464 /* memory.c */
465EXPORT_SYMBOL(copy_to_user_fromio);
466EXPORT_SYMBOL(copy_from_user_toio);
467 /* init.c */
468EXPORT_SYMBOL(snd_cards);
469#if defined(CONFIG_SND_MIXER_OSS) || defined(CONFIG_SND_MIXER_OSS_MODULE)
470EXPORT_SYMBOL(snd_mixer_oss_notify_callback);
471#endif
472EXPORT_SYMBOL(snd_card_new);
473EXPORT_SYMBOL(snd_card_disconnect);
474EXPORT_SYMBOL(snd_card_free);
475EXPORT_SYMBOL(snd_card_free_in_thread);
476EXPORT_SYMBOL(snd_card_register);
477EXPORT_SYMBOL(snd_component_add);
478EXPORT_SYMBOL(snd_card_file_add);
479EXPORT_SYMBOL(snd_card_file_remove);
480#ifdef CONFIG_PM
481EXPORT_SYMBOL(snd_power_wait);
482#endif
483 /* device.c */
484EXPORT_SYMBOL(snd_device_new);
485EXPORT_SYMBOL(snd_device_register);
486EXPORT_SYMBOL(snd_device_free);
487 /* isadma.c */
488#ifdef CONFIG_ISA_DMA_API
489EXPORT_SYMBOL(snd_dma_program);
490EXPORT_SYMBOL(snd_dma_disable);
491EXPORT_SYMBOL(snd_dma_pointer);
492#endif
493 /* info.c */
494#ifdef CONFIG_PROC_FS
495EXPORT_SYMBOL(snd_seq_root);
496EXPORT_SYMBOL(snd_iprintf);
497EXPORT_SYMBOL(snd_info_get_line);
498EXPORT_SYMBOL(snd_info_get_str);
499EXPORT_SYMBOL(snd_info_create_module_entry);
500EXPORT_SYMBOL(snd_info_create_card_entry);
501EXPORT_SYMBOL(snd_info_free_entry);
502EXPORT_SYMBOL(snd_info_register);
503EXPORT_SYMBOL(snd_info_unregister);
504EXPORT_SYMBOL(snd_card_proc_new);
505#endif
506 /* info_oss.c */
507#if defined(CONFIG_SND_OSSEMUL) && defined(CONFIG_PROC_FS)
508EXPORT_SYMBOL(snd_oss_info_register);
509#endif
510 /* control.c */
511EXPORT_SYMBOL(snd_ctl_new);
512EXPORT_SYMBOL(snd_ctl_new1);
513EXPORT_SYMBOL(snd_ctl_free_one);
514EXPORT_SYMBOL(snd_ctl_add);
515EXPORT_SYMBOL(snd_ctl_remove);
516EXPORT_SYMBOL(snd_ctl_remove_id);
517EXPORT_SYMBOL(snd_ctl_rename_id);
518EXPORT_SYMBOL(snd_ctl_find_numid);
519EXPORT_SYMBOL(snd_ctl_find_id);
520EXPORT_SYMBOL(snd_ctl_notify);
521EXPORT_SYMBOL(snd_ctl_register_ioctl);
522EXPORT_SYMBOL(snd_ctl_unregister_ioctl);
523#ifdef CONFIG_COMPAT
524EXPORT_SYMBOL(snd_ctl_register_ioctl_compat);
525EXPORT_SYMBOL(snd_ctl_unregister_ioctl_compat);
526#endif
527EXPORT_SYMBOL(snd_ctl_elem_read);
528EXPORT_SYMBOL(snd_ctl_elem_write);
529 /* misc.c */
530EXPORT_SYMBOL(release_and_free_resource);
531#ifdef CONFIG_SND_VERBOSE_PRINTK
532EXPORT_SYMBOL(snd_verbose_printk);
533#endif
534#if defined(CONFIG_SND_DEBUG) && defined(CONFIG_SND_VERBOSE_PRINTK)
535EXPORT_SYMBOL(snd_verbose_printd);
536#endif
diff --git a/sound/core/sound_oss.c b/sound/core/sound_oss.c
index 9055c6de9587..c18f6a45e4d9 100644
--- a/sound/core/sound_oss.c
+++ b/sound/core/sound_oss.c
@@ -58,6 +58,8 @@ void *snd_lookup_oss_minor_data(unsigned int minor, int type)
58 return private_data; 58 return private_data;
59} 59}
60 60
61EXPORT_SYMBOL(snd_lookup_oss_minor_data);
62
61static int snd_oss_kernel_minor(int type, struct snd_card *card, int dev) 63static int snd_oss_kernel_minor(int type, struct snd_card *card, int dev)
62{ 64{
63 int minor; 65 int minor;
@@ -158,6 +160,8 @@ int snd_register_oss_device(int type, struct snd_card *card, int dev,
158 return -EBUSY; 160 return -EBUSY;
159} 161}
160 162
163EXPORT_SYMBOL(snd_register_oss_device);
164
161int snd_unregister_oss_device(int type, struct snd_card *card, int dev) 165int snd_unregister_oss_device(int type, struct snd_card *card, int dev)
162{ 166{
163 int minor = snd_oss_kernel_minor(type, card, dev); 167 int minor = snd_oss_kernel_minor(type, card, dev);
@@ -197,6 +201,8 @@ int snd_unregister_oss_device(int type, struct snd_card *card, int dev)
197 return 0; 201 return 0;
198} 202}
199 203
204EXPORT_SYMBOL(snd_unregister_oss_device);
205
200/* 206/*
201 * INFO PART 207 * INFO PART
202 */ 208 */