diff options
-rw-r--r-- | sound/oss/Makefile | 8 | ||||
-rw-r--r-- | sound/oss/audio_syms.c | 14 | ||||
-rw-r--r-- | sound/oss/dev_table.c | 44 | ||||
-rw-r--r-- | sound/oss/dev_table.h | 17 | ||||
-rw-r--r-- | sound/oss/dmabuf.c | 10 | ||||
-rw-r--r-- | sound/oss/midi_syms.c | 29 | ||||
-rw-r--r-- | sound/oss/midi_synth.c | 21 | ||||
-rw-r--r-- | sound/oss/midibuf.c | 11 | ||||
-rw-r--r-- | sound/oss/sequencer.c | 14 | ||||
-rw-r--r-- | sound/oss/sequencer_syms.c | 22 | ||||
-rw-r--r-- | sound/oss/sound_calls.h | 1 | ||||
-rw-r--r-- | sound/oss/sound_syms.c | 50 | ||||
-rw-r--r-- | sound/oss/sound_timer.c | 4 | ||||
-rw-r--r-- | sound/oss/soundcard.c | 16 |
14 files changed, 93 insertions, 168 deletions
diff --git a/sound/oss/Makefile b/sound/oss/Makefile index 8313757b6487..2489bd6bb085 100644 --- a/sound/oss/Makefile +++ b/sound/oss/Makefile | |||
@@ -63,10 +63,10 @@ obj-$(CONFIG_DMASOUND) += dmasound/ | |||
63 | # Declare multi-part drivers. | 63 | # Declare multi-part drivers. |
64 | 64 | ||
65 | sound-objs := \ | 65 | sound-objs := \ |
66 | dev_table.o soundcard.o sound_syms.o \ | 66 | dev_table.o soundcard.o \ |
67 | audio.o audio_syms.o dmabuf.o \ | 67 | audio.o dmabuf.o \ |
68 | midi_syms.o midi_synth.o midibuf.o \ | 68 | midi_synth.o midibuf.o \ |
69 | sequencer.o sequencer_syms.o sound_timer.o sys_timer.o | 69 | sequencer.o sound_timer.o sys_timer.o |
70 | 70 | ||
71 | pas2-objs := pas2_card.o pas2_midi.o pas2_mixer.o pas2_pcm.o | 71 | pas2-objs := pas2_card.o pas2_midi.o pas2_mixer.o pas2_pcm.o |
72 | sb-objs := sb_card.o | 72 | sb-objs := sb_card.o |
diff --git a/sound/oss/audio_syms.c b/sound/oss/audio_syms.c deleted file mode 100644 index 3919e4d6b3f3..000000000000 --- a/sound/oss/audio_syms.c +++ /dev/null | |||
@@ -1,14 +0,0 @@ | |||
1 | /* | ||
2 | * Exported symbols for audio driver. | ||
3 | */ | ||
4 | |||
5 | #include <linux/module.h> | ||
6 | |||
7 | char audio_syms_symbol; | ||
8 | |||
9 | #include "sound_config.h" | ||
10 | #include "sound_calls.h" | ||
11 | |||
12 | EXPORT_SYMBOL(DMAbuf_start_dma); | ||
13 | EXPORT_SYMBOL(DMAbuf_inputintr); | ||
14 | EXPORT_SYMBOL(DMAbuf_outputintr); | ||
diff --git a/sound/oss/dev_table.c b/sound/oss/dev_table.c index fb64279f3935..08274c995d06 100644 --- a/sound/oss/dev_table.c +++ b/sound/oss/dev_table.c | |||
@@ -13,9 +13,39 @@ | |||
13 | 13 | ||
14 | #include <linux/init.h> | 14 | #include <linux/init.h> |
15 | 15 | ||
16 | #define _DEV_TABLE_C_ | ||
17 | #include "sound_config.h" | 16 | #include "sound_config.h" |
18 | 17 | ||
18 | struct audio_operations *audio_devs[MAX_AUDIO_DEV]; | ||
19 | EXPORT_SYMBOL(audio_devs); | ||
20 | |||
21 | int num_audiodevs; | ||
22 | EXPORT_SYMBOL(num_audiodevs); | ||
23 | |||
24 | struct mixer_operations *mixer_devs[MAX_MIXER_DEV]; | ||
25 | EXPORT_SYMBOL(mixer_devs); | ||
26 | |||
27 | int num_mixers; | ||
28 | EXPORT_SYMBOL(num_mixers); | ||
29 | |||
30 | struct synth_operations *synth_devs[MAX_SYNTH_DEV+MAX_MIDI_DEV]; | ||
31 | EXPORT_SYMBOL(synth_devs); | ||
32 | |||
33 | int num_synths; | ||
34 | |||
35 | struct midi_operations *midi_devs[MAX_MIDI_DEV]; | ||
36 | EXPORT_SYMBOL(midi_devs); | ||
37 | |||
38 | int num_midis; | ||
39 | EXPORT_SYMBOL(num_midis); | ||
40 | |||
41 | struct sound_timer_operations *sound_timer_devs[MAX_TIMER_DEV] = { | ||
42 | &default_sound_timer, NULL | ||
43 | }; | ||
44 | EXPORT_SYMBOL(sound_timer_devs); | ||
45 | |||
46 | int num_sound_timers = 1; | ||
47 | |||
48 | |||
19 | static int sound_alloc_audiodev(void); | 49 | static int sound_alloc_audiodev(void); |
20 | 50 | ||
21 | int sound_install_audiodrv(int vers, char *name, struct audio_driver *driver, | 51 | int sound_install_audiodrv(int vers, char *name, struct audio_driver *driver, |
@@ -75,6 +105,7 @@ int sound_install_audiodrv(int vers, char *name, struct audio_driver *driver, | |||
75 | audio_init_devices(); | 105 | audio_init_devices(); |
76 | return num; | 106 | return num; |
77 | } | 107 | } |
108 | EXPORT_SYMBOL(sound_install_audiodrv); | ||
78 | 109 | ||
79 | int sound_install_mixer(int vers, char *name, struct mixer_operations *driver, | 110 | int sound_install_mixer(int vers, char *name, struct mixer_operations *driver, |
80 | int driver_size, void *devc) | 111 | int driver_size, void *devc) |
@@ -113,6 +144,7 @@ int sound_install_mixer(int vers, char *name, struct mixer_operations *driver, | |||
113 | mixer_devs[n] = op; | 144 | mixer_devs[n] = op; |
114 | return n; | 145 | return n; |
115 | } | 146 | } |
147 | EXPORT_SYMBOL(sound_install_mixer); | ||
116 | 148 | ||
117 | void sound_unload_audiodev(int dev) | 149 | void sound_unload_audiodev(int dev) |
118 | { | 150 | { |
@@ -122,6 +154,7 @@ void sound_unload_audiodev(int dev) | |||
122 | unregister_sound_dsp((dev<<4)+3); | 154 | unregister_sound_dsp((dev<<4)+3); |
123 | } | 155 | } |
124 | } | 156 | } |
157 | EXPORT_SYMBOL(sound_unload_audiodev); | ||
125 | 158 | ||
126 | static int sound_alloc_audiodev(void) | 159 | static int sound_alloc_audiodev(void) |
127 | { | 160 | { |
@@ -144,6 +177,7 @@ int sound_alloc_mididev(void) | |||
144 | num_midis = i + 1; | 177 | num_midis = i + 1; |
145 | return i; | 178 | return i; |
146 | } | 179 | } |
180 | EXPORT_SYMBOL(sound_alloc_mididev); | ||
147 | 181 | ||
148 | int sound_alloc_synthdev(void) | 182 | int sound_alloc_synthdev(void) |
149 | { | 183 | { |
@@ -158,6 +192,7 @@ int sound_alloc_synthdev(void) | |||
158 | } | 192 | } |
159 | return -1; | 193 | return -1; |
160 | } | 194 | } |
195 | EXPORT_SYMBOL(sound_alloc_synthdev); | ||
161 | 196 | ||
162 | int sound_alloc_mixerdev(void) | 197 | int sound_alloc_mixerdev(void) |
163 | { | 198 | { |
@@ -169,6 +204,7 @@ int sound_alloc_mixerdev(void) | |||
169 | num_mixers = i + 1; | 204 | num_mixers = i + 1; |
170 | return i; | 205 | return i; |
171 | } | 206 | } |
207 | EXPORT_SYMBOL(sound_alloc_mixerdev); | ||
172 | 208 | ||
173 | int sound_alloc_timerdev(void) | 209 | int sound_alloc_timerdev(void) |
174 | { | 210 | { |
@@ -183,6 +219,7 @@ int sound_alloc_timerdev(void) | |||
183 | } | 219 | } |
184 | return -1; | 220 | return -1; |
185 | } | 221 | } |
222 | EXPORT_SYMBOL(sound_alloc_timerdev); | ||
186 | 223 | ||
187 | void sound_unload_mixerdev(int dev) | 224 | void sound_unload_mixerdev(int dev) |
188 | { | 225 | { |
@@ -192,6 +229,7 @@ void sound_unload_mixerdev(int dev) | |||
192 | num_mixers--; | 229 | num_mixers--; |
193 | } | 230 | } |
194 | } | 231 | } |
232 | EXPORT_SYMBOL(sound_unload_mixerdev); | ||
195 | 233 | ||
196 | void sound_unload_mididev(int dev) | 234 | void sound_unload_mididev(int dev) |
197 | { | 235 | { |
@@ -200,15 +238,19 @@ void sound_unload_mididev(int dev) | |||
200 | unregister_sound_midi((dev<<4)+2); | 238 | unregister_sound_midi((dev<<4)+2); |
201 | } | 239 | } |
202 | } | 240 | } |
241 | EXPORT_SYMBOL(sound_unload_mididev); | ||
203 | 242 | ||
204 | void sound_unload_synthdev(int dev) | 243 | void sound_unload_synthdev(int dev) |
205 | { | 244 | { |
206 | if (dev != -1) | 245 | if (dev != -1) |
207 | synth_devs[dev] = NULL; | 246 | synth_devs[dev] = NULL; |
208 | } | 247 | } |
248 | EXPORT_SYMBOL(sound_unload_synthdev); | ||
209 | 249 | ||
210 | void sound_unload_timerdev(int dev) | 250 | void sound_unload_timerdev(int dev) |
211 | { | 251 | { |
212 | if (dev != -1) | 252 | if (dev != -1) |
213 | sound_timer_devs[dev] = NULL; | 253 | sound_timer_devs[dev] = NULL; |
214 | } | 254 | } |
255 | EXPORT_SYMBOL(sound_unload_timerdev); | ||
256 | |||
diff --git a/sound/oss/dev_table.h b/sound/oss/dev_table.h index adf1d625b576..b7617bee6388 100644 --- a/sound/oss/dev_table.h +++ b/sound/oss/dev_table.h | |||
@@ -352,22 +352,8 @@ struct sound_timer_operations | |||
352 | void (*arm_timer)(int dev, long time); | 352 | void (*arm_timer)(int dev, long time); |
353 | }; | 353 | }; |
354 | 354 | ||
355 | #ifdef _DEV_TABLE_C_ | ||
356 | struct audio_operations *audio_devs[MAX_AUDIO_DEV]; | ||
357 | int num_audiodevs; | ||
358 | struct mixer_operations *mixer_devs[MAX_MIXER_DEV]; | ||
359 | int num_mixers; | ||
360 | struct synth_operations *synth_devs[MAX_SYNTH_DEV+MAX_MIDI_DEV]; | ||
361 | int num_synths; | ||
362 | struct midi_operations *midi_devs[MAX_MIDI_DEV]; | ||
363 | int num_midis; | ||
364 | |||
365 | extern struct sound_timer_operations default_sound_timer; | 355 | extern struct sound_timer_operations default_sound_timer; |
366 | struct sound_timer_operations *sound_timer_devs[MAX_TIMER_DEV] = { | 356 | |
367 | &default_sound_timer, NULL | ||
368 | }; | ||
369 | int num_sound_timers = 1; | ||
370 | #else | ||
371 | extern struct audio_operations *audio_devs[MAX_AUDIO_DEV]; | 357 | extern struct audio_operations *audio_devs[MAX_AUDIO_DEV]; |
372 | extern int num_audiodevs; | 358 | extern int num_audiodevs; |
373 | extern struct mixer_operations *mixer_devs[MAX_MIXER_DEV]; | 359 | extern struct mixer_operations *mixer_devs[MAX_MIXER_DEV]; |
@@ -378,7 +364,6 @@ extern struct midi_operations *midi_devs[MAX_MIDI_DEV]; | |||
378 | extern int num_midis; | 364 | extern int num_midis; |
379 | extern struct sound_timer_operations * sound_timer_devs[MAX_TIMER_DEV]; | 365 | extern struct sound_timer_operations * sound_timer_devs[MAX_TIMER_DEV]; |
380 | extern int num_sound_timers; | 366 | extern int num_sound_timers; |
381 | #endif /* _DEV_TABLE_C_ */ | ||
382 | 367 | ||
383 | extern int sound_map_buffer (int dev, struct dma_buffparms *dmap, buffmem_desc *info); | 368 | extern int sound_map_buffer (int dev, struct dma_buffparms *dmap, buffmem_desc *info); |
384 | void sound_timer_init (struct sound_lowlev_timer *t, char *name); | 369 | void sound_timer_init (struct sound_lowlev_timer *t, char *name); |
diff --git a/sound/oss/dmabuf.c b/sound/oss/dmabuf.c index 6ff67f73cbb9..b256c0401161 100644 --- a/sound/oss/dmabuf.c +++ b/sound/oss/dmabuf.c | |||
@@ -926,6 +926,7 @@ int DMAbuf_start_dma(int dev, unsigned long physaddr, int count, int dma_mode) | |||
926 | sound_start_dma(dmap, physaddr, count, dma_mode); | 926 | sound_start_dma(dmap, physaddr, count, dma_mode); |
927 | return count; | 927 | return count; |
928 | } | 928 | } |
929 | EXPORT_SYMBOL(DMAbuf_start_dma); | ||
929 | 930 | ||
930 | static int local_start_dma(struct audio_operations *adev, unsigned long physaddr, int count, int dma_mode) | 931 | static int local_start_dma(struct audio_operations *adev, unsigned long physaddr, int count, int dma_mode) |
931 | { | 932 | { |
@@ -1055,6 +1056,8 @@ void DMAbuf_outputintr(int dev, int notify_only) | |||
1055 | do_outputintr(dev, notify_only); | 1056 | do_outputintr(dev, notify_only); |
1056 | spin_unlock_irqrestore(&dmap->lock,flags); | 1057 | spin_unlock_irqrestore(&dmap->lock,flags); |
1057 | } | 1058 | } |
1059 | EXPORT_SYMBOL(DMAbuf_outputintr); | ||
1060 | |||
1058 | /* called with dmap->lock held in irq context */ | 1061 | /* called with dmap->lock held in irq context */ |
1059 | static void do_inputintr(int dev) | 1062 | static void do_inputintr(int dev) |
1060 | { | 1063 | { |
@@ -1154,6 +1157,7 @@ void DMAbuf_inputintr(int dev) | |||
1154 | do_inputintr(dev); | 1157 | do_inputintr(dev); |
1155 | spin_unlock_irqrestore(&dmap->lock,flags); | 1158 | spin_unlock_irqrestore(&dmap->lock,flags); |
1156 | } | 1159 | } |
1160 | EXPORT_SYMBOL(DMAbuf_inputintr); | ||
1157 | 1161 | ||
1158 | void DMAbuf_init(int dev, int dma1, int dma2) | 1162 | void DMAbuf_init(int dev, int dma1, int dma2) |
1159 | { | 1163 | { |
@@ -1162,12 +1166,6 @@ void DMAbuf_init(int dev, int dma1, int dma2) | |||
1162 | * NOTE! This routine could be called several times. | 1166 | * NOTE! This routine could be called several times. |
1163 | */ | 1167 | */ |
1164 | 1168 | ||
1165 | /* drag in audio_syms.o */ | ||
1166 | { | ||
1167 | extern char audio_syms_symbol; | ||
1168 | audio_syms_symbol = 0; | ||
1169 | } | ||
1170 | |||
1171 | if (adev && adev->dmap_out == NULL) { | 1169 | if (adev && adev->dmap_out == NULL) { |
1172 | if (adev->d == NULL) | 1170 | if (adev->d == NULL) |
1173 | panic("OSS: audio_devs[%d]->d == NULL\n", dev); | 1171 | panic("OSS: audio_devs[%d]->d == NULL\n", dev); |
diff --git a/sound/oss/midi_syms.c b/sound/oss/midi_syms.c deleted file mode 100644 index 5b146ddf5725..000000000000 --- a/sound/oss/midi_syms.c +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | /* | ||
2 | * Exported symbols for midi driver. | ||
3 | */ | ||
4 | |||
5 | #include <linux/module.h> | ||
6 | |||
7 | char midi_syms_symbol; | ||
8 | |||
9 | #include "sound_config.h" | ||
10 | #define _MIDI_SYNTH_C_ | ||
11 | #include "midi_synth.h" | ||
12 | |||
13 | EXPORT_SYMBOL(do_midi_msg); | ||
14 | EXPORT_SYMBOL(midi_synth_open); | ||
15 | EXPORT_SYMBOL(midi_synth_close); | ||
16 | EXPORT_SYMBOL(midi_synth_ioctl); | ||
17 | EXPORT_SYMBOL(midi_synth_kill_note); | ||
18 | EXPORT_SYMBOL(midi_synth_start_note); | ||
19 | EXPORT_SYMBOL(midi_synth_set_instr); | ||
20 | EXPORT_SYMBOL(midi_synth_reset); | ||
21 | EXPORT_SYMBOL(midi_synth_hw_control); | ||
22 | EXPORT_SYMBOL(midi_synth_aftertouch); | ||
23 | EXPORT_SYMBOL(midi_synth_controller); | ||
24 | EXPORT_SYMBOL(midi_synth_panning); | ||
25 | EXPORT_SYMBOL(midi_synth_setup_voice); | ||
26 | EXPORT_SYMBOL(midi_synth_send_sysex); | ||
27 | EXPORT_SYMBOL(midi_synth_bender); | ||
28 | EXPORT_SYMBOL(midi_synth_load_patch); | ||
29 | EXPORT_SYMBOL(MIDIbuf_avail); | ||
diff --git a/sound/oss/midi_synth.c b/sound/oss/midi_synth.c index d2ab5c08b616..9e450988ed36 100644 --- a/sound/oss/midi_synth.c +++ b/sound/oss/midi_synth.c | |||
@@ -84,6 +84,7 @@ do_midi_msg(int synthno, unsigned char *msg, int mlen) | |||
84 | ; | 84 | ; |
85 | } | 85 | } |
86 | } | 86 | } |
87 | EXPORT_SYMBOL(do_midi_msg); | ||
87 | 88 | ||
88 | static void | 89 | static void |
89 | midi_outc(int midi_dev, int data) | 90 | midi_outc(int midi_dev, int data) |
@@ -276,6 +277,7 @@ int midi_synth_ioctl(int dev, unsigned int cmd, void __user *arg) | |||
276 | return -EINVAL; | 277 | return -EINVAL; |
277 | } | 278 | } |
278 | } | 279 | } |
280 | EXPORT_SYMBOL(midi_synth_ioctl); | ||
279 | 281 | ||
280 | int | 282 | int |
281 | midi_synth_kill_note(int dev, int channel, int note, int velocity) | 283 | midi_synth_kill_note(int dev, int channel, int note, int velocity) |
@@ -342,6 +344,7 @@ midi_synth_kill_note(int dev, int channel, int note, int velocity) | |||
342 | 344 | ||
343 | return 0; | 345 | return 0; |
344 | } | 346 | } |
347 | EXPORT_SYMBOL(midi_synth_kill_note); | ||
345 | 348 | ||
346 | int | 349 | int |
347 | midi_synth_set_instr(int dev, int channel, int instr_no) | 350 | midi_synth_set_instr(int dev, int channel, int instr_no) |
@@ -364,6 +367,7 @@ midi_synth_set_instr(int dev, int channel, int instr_no) | |||
364 | 367 | ||
365 | return 0; | 368 | return 0; |
366 | } | 369 | } |
370 | EXPORT_SYMBOL(midi_synth_set_instr); | ||
367 | 371 | ||
368 | int | 372 | int |
369 | midi_synth_start_note(int dev, int channel, int note, int velocity) | 373 | midi_synth_start_note(int dev, int channel, int note, int velocity) |
@@ -405,6 +409,7 @@ midi_synth_start_note(int dev, int channel, int note, int velocity) | |||
405 | } | 409 | } |
406 | return 0; | 410 | return 0; |
407 | } | 411 | } |
412 | EXPORT_SYMBOL(midi_synth_start_note); | ||
408 | 413 | ||
409 | void | 414 | void |
410 | midi_synth_reset(int dev) | 415 | midi_synth_reset(int dev) |
@@ -412,6 +417,7 @@ midi_synth_reset(int dev) | |||
412 | 417 | ||
413 | leave_sysex(dev); | 418 | leave_sysex(dev); |
414 | } | 419 | } |
420 | EXPORT_SYMBOL(midi_synth_reset); | ||
415 | 421 | ||
416 | int | 422 | int |
417 | midi_synth_open(int dev, int mode) | 423 | midi_synth_open(int dev, int mode) |
@@ -444,6 +450,7 @@ midi_synth_open(int dev, int mode) | |||
444 | 450 | ||
445 | return 1; | 451 | return 1; |
446 | } | 452 | } |
453 | EXPORT_SYMBOL(midi_synth_open); | ||
447 | 454 | ||
448 | void | 455 | void |
449 | midi_synth_close(int dev) | 456 | midi_synth_close(int dev) |
@@ -459,11 +466,13 @@ midi_synth_close(int dev) | |||
459 | 466 | ||
460 | midi_devs[orig_dev]->close(orig_dev); | 467 | midi_devs[orig_dev]->close(orig_dev); |
461 | } | 468 | } |
469 | EXPORT_SYMBOL(midi_synth_close); | ||
462 | 470 | ||
463 | void | 471 | void |
464 | midi_synth_hw_control(int dev, unsigned char *event) | 472 | midi_synth_hw_control(int dev, unsigned char *event) |
465 | { | 473 | { |
466 | } | 474 | } |
475 | EXPORT_SYMBOL(midi_synth_hw_control); | ||
467 | 476 | ||
468 | int | 477 | int |
469 | midi_synth_load_patch(int dev, int format, const char __user *addr, | 478 | midi_synth_load_patch(int dev, int format, const char __user *addr, |
@@ -542,11 +551,13 @@ midi_synth_load_patch(int dev, int format, const char __user *addr, | |||
542 | midi_outc(orig_dev, 0xf7); | 551 | midi_outc(orig_dev, 0xf7); |
543 | return 0; | 552 | return 0; |
544 | } | 553 | } |
545 | 554 | EXPORT_SYMBOL(midi_synth_load_patch); | |
555 | |||
546 | void midi_synth_panning(int dev, int channel, int pressure) | 556 | void midi_synth_panning(int dev, int channel, int pressure) |
547 | { | 557 | { |
548 | } | 558 | } |
549 | 559 | EXPORT_SYMBOL(midi_synth_panning); | |
560 | |||
550 | void midi_synth_aftertouch(int dev, int channel, int pressure) | 561 | void midi_synth_aftertouch(int dev, int channel, int pressure) |
551 | { | 562 | { |
552 | int orig_dev = synth_devs[dev]->midi_dev; | 563 | int orig_dev = synth_devs[dev]->midi_dev; |
@@ -576,6 +587,7 @@ void midi_synth_aftertouch(int dev, int channel, int pressure) | |||
576 | 587 | ||
577 | midi_outc(orig_dev, pressure); | 588 | midi_outc(orig_dev, pressure); |
578 | } | 589 | } |
590 | EXPORT_SYMBOL(midi_synth_aftertouch); | ||
579 | 591 | ||
580 | void | 592 | void |
581 | midi_synth_controller(int dev, int channel, int ctrl_num, int value) | 593 | midi_synth_controller(int dev, int channel, int ctrl_num, int value) |
@@ -604,6 +616,7 @@ midi_synth_controller(int dev, int channel, int ctrl_num, int value) | |||
604 | midi_outc(orig_dev, ctrl_num); | 616 | midi_outc(orig_dev, ctrl_num); |
605 | midi_outc(orig_dev, value & 0x7f); | 617 | midi_outc(orig_dev, value & 0x7f); |
606 | } | 618 | } |
619 | EXPORT_SYMBOL(midi_synth_controller); | ||
607 | 620 | ||
608 | void | 621 | void |
609 | midi_synth_bender(int dev, int channel, int value) | 622 | midi_synth_bender(int dev, int channel, int value) |
@@ -635,11 +648,13 @@ midi_synth_bender(int dev, int channel, int value) | |||
635 | midi_outc(orig_dev, value & 0x7f); | 648 | midi_outc(orig_dev, value & 0x7f); |
636 | midi_outc(orig_dev, (value >> 7) & 0x7f); | 649 | midi_outc(orig_dev, (value >> 7) & 0x7f); |
637 | } | 650 | } |
651 | EXPORT_SYMBOL(midi_synth_bender); | ||
638 | 652 | ||
639 | void | 653 | void |
640 | midi_synth_setup_voice(int dev, int voice, int channel) | 654 | midi_synth_setup_voice(int dev, int voice, int channel) |
641 | { | 655 | { |
642 | } | 656 | } |
657 | EXPORT_SYMBOL(midi_synth_setup_voice); | ||
643 | 658 | ||
644 | int | 659 | int |
645 | midi_synth_send_sysex(int dev, unsigned char *bytes, int len) | 660 | midi_synth_send_sysex(int dev, unsigned char *bytes, int len) |
@@ -695,3 +710,5 @@ midi_synth_send_sysex(int dev, unsigned char *bytes, int len) | |||
695 | 710 | ||
696 | return 0; | 711 | return 0; |
697 | } | 712 | } |
713 | EXPORT_SYMBOL(midi_synth_send_sysex); | ||
714 | |||
diff --git a/sound/oss/midibuf.c b/sound/oss/midibuf.c index c0e4bbc22c80..a40be0cf1d97 100644 --- a/sound/oss/midibuf.c +++ b/sound/oss/midibuf.c | |||
@@ -414,18 +414,11 @@ unsigned int MIDIbuf_poll(int dev, struct file *file, poll_table * wait) | |||
414 | } | 414 | } |
415 | 415 | ||
416 | 416 | ||
417 | void MIDIbuf_init(void) | ||
418 | { | ||
419 | /* drag in midi_syms.o */ | ||
420 | { | ||
421 | extern char midi_syms_symbol; | ||
422 | midi_syms_symbol = 0; | ||
423 | } | ||
424 | } | ||
425 | |||
426 | int MIDIbuf_avail(int dev) | 417 | int MIDIbuf_avail(int dev) |
427 | { | 418 | { |
428 | if (midi_in_buf[dev]) | 419 | if (midi_in_buf[dev]) |
429 | return DATA_AVAIL (midi_in_buf[dev]); | 420 | return DATA_AVAIL (midi_in_buf[dev]); |
430 | return 0; | 421 | return 0; |
431 | } | 422 | } |
423 | EXPORT_SYMBOL(MIDIbuf_avail); | ||
424 | |||
diff --git a/sound/oss/sequencer.c b/sound/oss/sequencer.c index 23922377250d..5c215f787ca9 100644 --- a/sound/oss/sequencer.c +++ b/sound/oss/sequencer.c | |||
@@ -156,6 +156,7 @@ void seq_copy_to_input(unsigned char *event_rec, int len) | |||
156 | wake_up(&midi_sleeper); | 156 | wake_up(&midi_sleeper); |
157 | spin_unlock_irqrestore(&lock,flags); | 157 | spin_unlock_irqrestore(&lock,flags); |
158 | } | 158 | } |
159 | EXPORT_SYMBOL(seq_copy_to_input); | ||
159 | 160 | ||
160 | static void sequencer_midi_input(int dev, unsigned char data) | 161 | static void sequencer_midi_input(int dev, unsigned char data) |
161 | { | 162 | { |
@@ -205,6 +206,7 @@ void seq_input_event(unsigned char *event_rec, int len) | |||
205 | } | 206 | } |
206 | seq_copy_to_input(event_rec, len); | 207 | seq_copy_to_input(event_rec, len); |
207 | } | 208 | } |
209 | EXPORT_SYMBOL(seq_input_event); | ||
208 | 210 | ||
209 | int sequencer_write(int dev, struct file *file, const char __user *buf, int count) | 211 | int sequencer_write(int dev, struct file *file, const char __user *buf, int count) |
210 | { | 212 | { |
@@ -1553,6 +1555,7 @@ void sequencer_timer(unsigned long dummy) | |||
1553 | { | 1555 | { |
1554 | seq_startplay(); | 1556 | seq_startplay(); |
1555 | } | 1557 | } |
1558 | EXPORT_SYMBOL(sequencer_timer); | ||
1556 | 1559 | ||
1557 | int note_to_freq(int note_num) | 1560 | int note_to_freq(int note_num) |
1558 | { | 1561 | { |
@@ -1586,6 +1589,7 @@ int note_to_freq(int note_num) | |||
1586 | 1589 | ||
1587 | return note_freq; | 1590 | return note_freq; |
1588 | } | 1591 | } |
1592 | EXPORT_SYMBOL(note_to_freq); | ||
1589 | 1593 | ||
1590 | unsigned long compute_finetune(unsigned long base_freq, int bend, int range, | 1594 | unsigned long compute_finetune(unsigned long base_freq, int bend, int range, |
1591 | int vibrato_cents) | 1595 | int vibrato_cents) |
@@ -1639,19 +1643,12 @@ unsigned long compute_finetune(unsigned long base_freq, int bend, int range, | |||
1639 | else | 1643 | else |
1640 | return (base_freq * amount) / 10000; /* Bend up */ | 1644 | return (base_freq * amount) / 10000; /* Bend up */ |
1641 | } | 1645 | } |
1642 | 1646 | EXPORT_SYMBOL(compute_finetune); | |
1643 | 1647 | ||
1644 | void sequencer_init(void) | 1648 | void sequencer_init(void) |
1645 | { | 1649 | { |
1646 | /* drag in sequencer_syms.o */ | ||
1647 | { | ||
1648 | extern char sequencer_syms_symbol; | ||
1649 | sequencer_syms_symbol = 0; | ||
1650 | } | ||
1651 | |||
1652 | if (sequencer_ok) | 1650 | if (sequencer_ok) |
1653 | return; | 1651 | return; |
1654 | MIDIbuf_init(); | ||
1655 | queue = (unsigned char *)vmalloc(SEQ_MAX_QUEUE * EV_SZ); | 1652 | queue = (unsigned char *)vmalloc(SEQ_MAX_QUEUE * EV_SZ); |
1656 | if (queue == NULL) | 1653 | if (queue == NULL) |
1657 | { | 1654 | { |
@@ -1667,6 +1664,7 @@ void sequencer_init(void) | |||
1667 | } | 1664 | } |
1668 | sequencer_ok = 1; | 1665 | sequencer_ok = 1; |
1669 | } | 1666 | } |
1667 | EXPORT_SYMBOL(sequencer_init); | ||
1670 | 1668 | ||
1671 | void sequencer_unload(void) | 1669 | void sequencer_unload(void) |
1672 | { | 1670 | { |
diff --git a/sound/oss/sequencer_syms.c b/sound/oss/sequencer_syms.c deleted file mode 100644 index 118525638bd3..000000000000 --- a/sound/oss/sequencer_syms.c +++ /dev/null | |||
@@ -1,22 +0,0 @@ | |||
1 | /* | ||
2 | * Exported symbols for sequencer driver. | ||
3 | */ | ||
4 | |||
5 | #include <linux/module.h> | ||
6 | |||
7 | char sequencer_syms_symbol; | ||
8 | |||
9 | #include "sound_config.h" | ||
10 | #include "sound_calls.h" | ||
11 | |||
12 | EXPORT_SYMBOL(note_to_freq); | ||
13 | EXPORT_SYMBOL(compute_finetune); | ||
14 | EXPORT_SYMBOL(seq_copy_to_input); | ||
15 | EXPORT_SYMBOL(seq_input_event); | ||
16 | EXPORT_SYMBOL(sequencer_init); | ||
17 | EXPORT_SYMBOL(sequencer_timer); | ||
18 | |||
19 | EXPORT_SYMBOL(sound_timer_init); | ||
20 | EXPORT_SYMBOL(sound_timer_interrupt); | ||
21 | EXPORT_SYMBOL(sound_timer_syncinterval); | ||
22 | |||
diff --git a/sound/oss/sound_calls.h b/sound/oss/sound_calls.h index cd335ba81450..87d8ad4a0340 100644 --- a/sound/oss/sound_calls.h +++ b/sound/oss/sound_calls.h | |||
@@ -71,7 +71,6 @@ unsigned int MIDIbuf_poll(int dev, struct file *file, poll_table * wait); | |||
71 | int MIDIbuf_avail(int dev); | 71 | int MIDIbuf_avail(int dev); |
72 | 72 | ||
73 | void MIDIbuf_bytes_received(int dev, unsigned char *buf, int count); | 73 | void MIDIbuf_bytes_received(int dev, unsigned char *buf, int count); |
74 | void MIDIbuf_init(void); | ||
75 | 74 | ||
76 | 75 | ||
77 | /* From soundcard.c */ | 76 | /* From soundcard.c */ |
diff --git a/sound/oss/sound_syms.c b/sound/oss/sound_syms.c deleted file mode 100644 index cb7c33fe5b05..000000000000 --- a/sound/oss/sound_syms.c +++ /dev/null | |||
@@ -1,50 +0,0 @@ | |||
1 | /* | ||
2 | * The sound core exports the following symbols to the rest of | ||
3 | * modulespace. | ||
4 | * | ||
5 | * (C) Copyright 1997 Alan Cox, Licensed under the GNU GPL | ||
6 | * | ||
7 | * Thu May 27 1999 Andrew J. Kroll <ag784@freenet..buffalo..edu> | ||
8 | * left out exported symbol... fixed | ||
9 | */ | ||
10 | |||
11 | #include <linux/module.h> | ||
12 | #include "sound_config.h" | ||
13 | #include "sound_calls.h" | ||
14 | |||
15 | char sound_syms_symbol; | ||
16 | |||
17 | EXPORT_SYMBOL(mixer_devs); | ||
18 | EXPORT_SYMBOL(audio_devs); | ||
19 | EXPORT_SYMBOL(num_mixers); | ||
20 | EXPORT_SYMBOL(num_audiodevs); | ||
21 | |||
22 | EXPORT_SYMBOL(midi_devs); | ||
23 | EXPORT_SYMBOL(num_midis); | ||
24 | EXPORT_SYMBOL(synth_devs); | ||
25 | |||
26 | EXPORT_SYMBOL(sound_timer_devs); | ||
27 | |||
28 | EXPORT_SYMBOL(sound_install_audiodrv); | ||
29 | EXPORT_SYMBOL(sound_install_mixer); | ||
30 | EXPORT_SYMBOL(sound_alloc_dma); | ||
31 | EXPORT_SYMBOL(sound_free_dma); | ||
32 | EXPORT_SYMBOL(sound_open_dma); | ||
33 | EXPORT_SYMBOL(sound_close_dma); | ||
34 | EXPORT_SYMBOL(sound_alloc_mididev); | ||
35 | EXPORT_SYMBOL(sound_alloc_mixerdev); | ||
36 | EXPORT_SYMBOL(sound_alloc_timerdev); | ||
37 | EXPORT_SYMBOL(sound_alloc_synthdev); | ||
38 | EXPORT_SYMBOL(sound_unload_audiodev); | ||
39 | EXPORT_SYMBOL(sound_unload_mididev); | ||
40 | EXPORT_SYMBOL(sound_unload_mixerdev); | ||
41 | EXPORT_SYMBOL(sound_unload_timerdev); | ||
42 | EXPORT_SYMBOL(sound_unload_synthdev); | ||
43 | |||
44 | EXPORT_SYMBOL(load_mixer_volumes); | ||
45 | |||
46 | EXPORT_SYMBOL(conf_printf); | ||
47 | EXPORT_SYMBOL(conf_printf2); | ||
48 | |||
49 | MODULE_DESCRIPTION("OSS Sound subsystem"); | ||
50 | MODULE_AUTHOR("Hannu Savolainen, et al."); | ||
diff --git a/sound/oss/sound_timer.c b/sound/oss/sound_timer.c index 146bf85de958..f0f0c19fbff7 100644 --- a/sound/oss/sound_timer.c +++ b/sound/oss/sound_timer.c | |||
@@ -76,6 +76,7 @@ void sound_timer_syncinterval(unsigned int new_usecs) | |||
76 | tmr_ctr = 0; | 76 | tmr_ctr = 0; |
77 | usecs_per_tmr = new_usecs; | 77 | usecs_per_tmr = new_usecs; |
78 | } | 78 | } |
79 | EXPORT_SYMBOL(sound_timer_syncinterval); | ||
79 | 80 | ||
80 | static void tmr_reset(void) | 81 | static void tmr_reset(void) |
81 | { | 82 | { |
@@ -300,6 +301,7 @@ void sound_timer_interrupt(void) | |||
300 | } | 301 | } |
301 | spin_unlock_irqrestore(&lock,flags); | 302 | spin_unlock_irqrestore(&lock,flags); |
302 | } | 303 | } |
304 | EXPORT_SYMBOL(sound_timer_interrupt); | ||
303 | 305 | ||
304 | void sound_timer_init(struct sound_lowlev_timer *t, char *name) | 306 | void sound_timer_init(struct sound_lowlev_timer *t, char *name) |
305 | { | 307 | { |
@@ -321,3 +323,5 @@ void sound_timer_init(struct sound_lowlev_timer *t, char *name) | |||
321 | strcpy(sound_timer.info.name, name); | 323 | strcpy(sound_timer.info.name, name); |
322 | sound_timer_devs[n] = &sound_timer; | 324 | sound_timer_devs[n] = &sound_timer; |
323 | } | 325 | } |
326 | EXPORT_SYMBOL(sound_timer_init); | ||
327 | |||
diff --git a/sound/oss/soundcard.c b/sound/oss/soundcard.c index 683dc00a8d2b..2344d09c7114 100644 --- a/sound/oss/soundcard.c +++ b/sound/oss/soundcard.c | |||
@@ -107,6 +107,7 @@ int *load_mixer_volumes(char *name, int *levels, int present) | |||
107 | mixer_vols[n].levels[i] = levels[i]; | 107 | mixer_vols[n].levels[i] = levels[i]; |
108 | return mixer_vols[n].levels; | 108 | return mixer_vols[n].levels; |
109 | } | 109 | } |
110 | EXPORT_SYMBOL(load_mixer_volumes); | ||
110 | 111 | ||
111 | static int set_mixer_levels(void __user * arg) | 112 | static int set_mixer_levels(void __user * arg) |
112 | { | 113 | { |
@@ -541,12 +542,6 @@ static int __init oss_init(void) | |||
541 | int err; | 542 | int err; |
542 | int i, j; | 543 | int i, j; |
543 | 544 | ||
544 | /* drag in sound_syms.o */ | ||
545 | { | ||
546 | extern char sound_syms_symbol; | ||
547 | sound_syms_symbol = 0; | ||
548 | } | ||
549 | |||
550 | #ifdef CONFIG_PCI | 545 | #ifdef CONFIG_PCI |
551 | if(dmabug) | 546 | if(dmabug) |
552 | isa_dma_bridge_buggy = dmabug; | 547 | isa_dma_bridge_buggy = dmabug; |
@@ -614,6 +609,8 @@ static void __exit oss_cleanup(void) | |||
614 | module_init(oss_init); | 609 | module_init(oss_init); |
615 | module_exit(oss_cleanup); | 610 | module_exit(oss_cleanup); |
616 | MODULE_LICENSE("GPL"); | 611 | MODULE_LICENSE("GPL"); |
612 | MODULE_DESCRIPTION("OSS Sound subsystem"); | ||
613 | MODULE_AUTHOR("Hannu Savolainen, et al."); | ||
617 | 614 | ||
618 | 615 | ||
619 | int sound_alloc_dma(int chn, char *deviceID) | 616 | int sound_alloc_dma(int chn, char *deviceID) |
@@ -627,6 +624,7 @@ int sound_alloc_dma(int chn, char *deviceID) | |||
627 | 624 | ||
628 | return 0; | 625 | return 0; |
629 | } | 626 | } |
627 | EXPORT_SYMBOL(sound_alloc_dma); | ||
630 | 628 | ||
631 | int sound_open_dma(int chn, char *deviceID) | 629 | int sound_open_dma(int chn, char *deviceID) |
632 | { | 630 | { |
@@ -642,6 +640,7 @@ int sound_open_dma(int chn, char *deviceID) | |||
642 | dma_alloc_map[chn] = DMA_MAP_BUSY; | 640 | dma_alloc_map[chn] = DMA_MAP_BUSY; |
643 | return 0; | 641 | return 0; |
644 | } | 642 | } |
643 | EXPORT_SYMBOL(sound_open_dma); | ||
645 | 644 | ||
646 | void sound_free_dma(int chn) | 645 | void sound_free_dma(int chn) |
647 | { | 646 | { |
@@ -652,6 +651,7 @@ void sound_free_dma(int chn) | |||
652 | free_dma(chn); | 651 | free_dma(chn); |
653 | dma_alloc_map[chn] = DMA_MAP_UNAVAIL; | 652 | dma_alloc_map[chn] = DMA_MAP_UNAVAIL; |
654 | } | 653 | } |
654 | EXPORT_SYMBOL(sound_free_dma); | ||
655 | 655 | ||
656 | void sound_close_dma(int chn) | 656 | void sound_close_dma(int chn) |
657 | { | 657 | { |
@@ -661,6 +661,7 @@ void sound_close_dma(int chn) | |||
661 | } | 661 | } |
662 | dma_alloc_map[chn] = DMA_MAP_FREE; | 662 | dma_alloc_map[chn] = DMA_MAP_FREE; |
663 | } | 663 | } |
664 | EXPORT_SYMBOL(sound_close_dma); | ||
664 | 665 | ||
665 | static void do_sequencer_timer(unsigned long dummy) | 666 | static void do_sequencer_timer(unsigned long dummy) |
666 | { | 667 | { |
@@ -714,6 +715,7 @@ void conf_printf(char *name, struct address_info *hw_config) | |||
714 | printk("\n"); | 715 | printk("\n"); |
715 | #endif | 716 | #endif |
716 | } | 717 | } |
718 | EXPORT_SYMBOL(conf_printf); | ||
717 | 719 | ||
718 | void conf_printf2(char *name, int base, int irq, int dma, int dma2) | 720 | void conf_printf2(char *name, int base, int irq, int dma, int dma2) |
719 | { | 721 | { |
@@ -734,3 +736,5 @@ void conf_printf2(char *name, int base, int irq, int dma, int dma2) | |||
734 | printk("\n"); | 736 | printk("\n"); |
735 | #endif | 737 | #endif |
736 | } | 738 | } |
739 | EXPORT_SYMBOL(conf_printf2); | ||
740 | |||