diff options
author | Takashi Iwai <tiwai@suse.de> | 2005-12-01 04:43:51 -0500 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2006-01-03 06:30:05 -0500 |
commit | 04f141a8800d022981f0405a8d307c98aba55105 (patch) | |
tree | 2083ebe4a2959d57db1c016f1b8fa396e5c3f2af | |
parent | e28563cceb9f258ebe3c50fc27d8f4ff0ac4bfa4 (diff) |
[ALSA] Optimize for config without PROC_FS (seq and oss parts)
Modules: ALSA<-OSS emulation,ALSA sequencer,ALSA<-OSS sequencer
Optimize the code when compiled without CONFIG_PROC_FS (in seq and oss
emulation parts).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/core/oss/mixer_oss.c | 5 | ||||
-rw-r--r-- | sound/core/oss/pcm_oss.c | 5 | ||||
-rw-r--r-- | sound/core/seq/oss/seq_oss.c | 14 | ||||
-rw-r--r-- | sound/core/seq/oss/seq_oss_init.c | 3 | ||||
-rw-r--r-- | sound/core/seq/oss/seq_oss_midi.c | 3 | ||||
-rw-r--r-- | sound/core/seq/oss/seq_oss_readq.c | 2 | ||||
-rw-r--r-- | sound/core/seq/oss/seq_oss_synth.c | 3 | ||||
-rw-r--r-- | sound/core/seq/seq_clientmgr.c | 3 | ||||
-rw-r--r-- | sound/core/seq/seq_device.c | 8 | ||||
-rw-r--r-- | sound/core/seq/seq_info.c | 13 | ||||
-rw-r--r-- | sound/core/seq/seq_info.h | 6 | ||||
-rw-r--r-- | sound/core/seq/seq_queue.c | 3 | ||||
-rw-r--r-- | sound/core/seq/seq_timer.c | 3 |
13 files changed, 50 insertions, 21 deletions
diff --git a/sound/core/oss/mixer_oss.c b/sound/core/oss/mixer_oss.c index 2d7a42014f51..f08e65a2bffe 100644 --- a/sound/core/oss/mixer_oss.c +++ b/sound/core/oss/mixer_oss.c | |||
@@ -1053,6 +1053,7 @@ static int snd_mixer_oss_build_input(struct snd_mixer_oss *mixer, struct snd_mix | |||
1053 | return 0; | 1053 | return 0; |
1054 | } | 1054 | } |
1055 | 1055 | ||
1056 | #ifdef CONFIG_PROC_FS | ||
1056 | /* | 1057 | /* |
1057 | */ | 1058 | */ |
1058 | #define MIXER_VOL(name) [SOUND_MIXER_##name] = #name | 1059 | #define MIXER_VOL(name) [SOUND_MIXER_##name] = #name |
@@ -1200,6 +1201,10 @@ static void snd_mixer_oss_proc_done(struct snd_mixer_oss *mixer) | |||
1200 | mixer->proc_entry = NULL; | 1201 | mixer->proc_entry = NULL; |
1201 | } | 1202 | } |
1202 | } | 1203 | } |
1204 | #else /* !CONFIG_PROC_FS */ | ||
1205 | #define snd_mixer_oss_proc_init(mix) | ||
1206 | #define snd_mixer_oss_proc_done(mix) | ||
1207 | #endif /* CONFIG_PROC_FS */ | ||
1203 | 1208 | ||
1204 | static void snd_mixer_oss_build(struct snd_mixer_oss *mixer) | 1209 | static void snd_mixer_oss_build(struct snd_mixer_oss *mixer) |
1205 | { | 1210 | { |
diff --git a/sound/core/oss/pcm_oss.c b/sound/core/oss/pcm_oss.c index 2ae283c7b28a..16df1246a131 100644 --- a/sound/core/oss/pcm_oss.c +++ b/sound/core/oss/pcm_oss.c | |||
@@ -2269,6 +2269,7 @@ static int snd_pcm_oss_mmap(struct file *file, struct vm_area_struct *area) | |||
2269 | return 0; | 2269 | return 0; |
2270 | } | 2270 | } |
2271 | 2271 | ||
2272 | #ifdef CONFIG_PROC_FS | ||
2272 | /* | 2273 | /* |
2273 | * /proc interface | 2274 | * /proc interface |
2274 | */ | 2275 | */ |
@@ -2420,6 +2421,10 @@ static void snd_pcm_oss_proc_done(struct snd_pcm *pcm) | |||
2420 | } | 2421 | } |
2421 | } | 2422 | } |
2422 | } | 2423 | } |
2424 | #else /* !CONFIG_PROC_FS */ | ||
2425 | #define snd_pcm_oss_proc_init(pcm) | ||
2426 | #define snd_pcm_oss_proc_done(pcm) | ||
2427 | #endif /* CONFIG_PROC_FS */ | ||
2423 | 2428 | ||
2424 | /* | 2429 | /* |
2425 | * ENTRY functions | 2430 | * ENTRY functions |
diff --git a/sound/core/seq/oss/seq_oss.c b/sound/core/seq/oss/seq_oss.c index 4b51ab56507b..c98f0ba13810 100644 --- a/sound/core/seq/oss/seq_oss.c +++ b/sound/core/seq/oss/seq_oss.c | |||
@@ -52,8 +52,13 @@ int seq_oss_debug = 0; | |||
52 | */ | 52 | */ |
53 | static int register_device(void); | 53 | static int register_device(void); |
54 | static void unregister_device(void); | 54 | static void unregister_device(void); |
55 | #ifdef CONFIG_PROC_FS | ||
55 | static int register_proc(void); | 56 | static int register_proc(void); |
56 | static void unregister_proc(void); | 57 | static void unregister_proc(void); |
58 | #else | ||
59 | static inline int register_proc(void) { return 0; } | ||
60 | static inline void unregister_proc(void) {} | ||
61 | #endif | ||
57 | 62 | ||
58 | static int odev_open(struct inode *inode, struct file *file); | 63 | static int odev_open(struct inode *inode, struct file *file); |
59 | static int odev_release(struct inode *inode, struct file *file); | 64 | static int odev_release(struct inode *inode, struct file *file); |
@@ -61,9 +66,6 @@ static ssize_t odev_read(struct file *file, char __user *buf, size_t count, loff | |||
61 | static ssize_t odev_write(struct file *file, const char __user *buf, size_t count, loff_t *offset); | 66 | static ssize_t odev_write(struct file *file, const char __user *buf, size_t count, loff_t *offset); |
62 | static long odev_ioctl(struct file *file, unsigned int cmd, unsigned long arg); | 67 | static long odev_ioctl(struct file *file, unsigned int cmd, unsigned long arg); |
63 | static unsigned int odev_poll(struct file *file, poll_table * wait); | 68 | static unsigned int odev_poll(struct file *file, poll_table * wait); |
64 | #ifdef CONFIG_PROC_FS | ||
65 | static void info_read(struct snd_info_entry *entry, struct snd_info_buffer *buf); | ||
66 | #endif | ||
67 | 69 | ||
68 | 70 | ||
69 | /* | 71 | /* |
@@ -276,12 +278,10 @@ info_read(struct snd_info_entry *entry, struct snd_info_buffer *buf) | |||
276 | up(®ister_mutex); | 278 | up(®ister_mutex); |
277 | } | 279 | } |
278 | 280 | ||
279 | #endif /* CONFIG_PROC_FS */ | ||
280 | 281 | ||
281 | static int __init | 282 | static int __init |
282 | register_proc(void) | 283 | register_proc(void) |
283 | { | 284 | { |
284 | #ifdef CONFIG_PROC_FS | ||
285 | struct snd_info_entry *entry; | 285 | struct snd_info_entry *entry; |
286 | 286 | ||
287 | entry = snd_info_create_module_entry(THIS_MODULE, SNDRV_SEQ_OSS_PROCNAME, snd_seq_root); | 287 | entry = snd_info_create_module_entry(THIS_MODULE, SNDRV_SEQ_OSS_PROCNAME, snd_seq_root); |
@@ -297,16 +297,14 @@ register_proc(void) | |||
297 | return -ENOMEM; | 297 | return -ENOMEM; |
298 | } | 298 | } |
299 | info_entry = entry; | 299 | info_entry = entry; |
300 | #endif | ||
301 | return 0; | 300 | return 0; |
302 | } | 301 | } |
303 | 302 | ||
304 | static void | 303 | static void |
305 | unregister_proc(void) | 304 | unregister_proc(void) |
306 | { | 305 | { |
307 | #ifdef CONFIG_PROC_FS | ||
308 | if (info_entry) | 306 | if (info_entry) |
309 | snd_info_unregister(info_entry); | 307 | snd_info_unregister(info_entry); |
310 | info_entry = NULL; | 308 | info_entry = NULL; |
311 | #endif | ||
312 | } | 309 | } |
310 | #endif /* CONFIG_PROC_FS */ | ||
diff --git a/sound/core/seq/oss/seq_oss_init.c b/sound/core/seq/oss/seq_oss_init.c index 1d4473eadcf3..97e2493e931f 100644 --- a/sound/core/seq/oss/seq_oss_init.c +++ b/sound/core/seq/oss/seq_oss_init.c | |||
@@ -502,6 +502,7 @@ snd_seq_oss_reset(struct seq_oss_devinfo *dp) | |||
502 | } | 502 | } |
503 | 503 | ||
504 | 504 | ||
505 | #ifdef CONFIG_PROC_FS | ||
505 | /* | 506 | /* |
506 | * misc. functions for proc interface | 507 | * misc. functions for proc interface |
507 | */ | 508 | */ |
@@ -552,4 +553,4 @@ snd_seq_oss_system_info_read(struct snd_info_buffer *buf) | |||
552 | snd_seq_oss_readq_info_read(dp->readq, buf); | 553 | snd_seq_oss_readq_info_read(dp->readq, buf); |
553 | } | 554 | } |
554 | } | 555 | } |
555 | 556 | #endif /* CONFIG_PROC_FS */ | |
diff --git a/sound/core/seq/oss/seq_oss_midi.c b/sound/core/seq/oss/seq_oss_midi.c index eb7ae990965c..0a711d2d04f0 100644 --- a/sound/core/seq/oss/seq_oss_midi.c +++ b/sound/core/seq/oss/seq_oss_midi.c | |||
@@ -668,6 +668,7 @@ snd_seq_oss_midi_make_info(struct seq_oss_devinfo *dp, int dev, struct midi_info | |||
668 | } | 668 | } |
669 | 669 | ||
670 | 670 | ||
671 | #ifdef CONFIG_PROC_FS | ||
671 | /* | 672 | /* |
672 | * proc interface | 673 | * proc interface |
673 | */ | 674 | */ |
@@ -707,4 +708,4 @@ snd_seq_oss_midi_info_read(struct snd_info_buffer *buf) | |||
707 | snd_use_lock_free(&mdev->use_lock); | 708 | snd_use_lock_free(&mdev->use_lock); |
708 | } | 709 | } |
709 | } | 710 | } |
710 | 711 | #endif /* CONFIG_PROC_FS */ | |
diff --git a/sound/core/seq/oss/seq_oss_readq.c b/sound/core/seq/oss/seq_oss_readq.c index abc70078add3..f5de79f29f1e 100644 --- a/sound/core/seq/oss/seq_oss_readq.c +++ b/sound/core/seq/oss/seq_oss_readq.c | |||
@@ -222,6 +222,7 @@ snd_seq_oss_readq_put_timestamp(struct seq_oss_readq *q, unsigned long curt, int | |||
222 | } | 222 | } |
223 | 223 | ||
224 | 224 | ||
225 | #ifdef CONFIG_PROC_FS | ||
225 | /* | 226 | /* |
226 | * proc interface | 227 | * proc interface |
227 | */ | 228 | */ |
@@ -232,3 +233,4 @@ snd_seq_oss_readq_info_read(struct seq_oss_readq *q, struct snd_info_buffer *buf | |||
232 | (waitqueue_active(&q->midi_sleep) ? "sleeping":"running"), | 233 | (waitqueue_active(&q->midi_sleep) ? "sleeping":"running"), |
233 | q->qlen, q->input_time); | 234 | q->qlen, q->input_time); |
234 | } | 235 | } |
236 | #endif /* CONFIG_PROC_FS */ | ||
diff --git a/sound/core/seq/oss/seq_oss_synth.c b/sound/core/seq/oss/seq_oss_synth.c index 0b6025c92b9e..ab570a0a6183 100644 --- a/sound/core/seq/oss/seq_oss_synth.c +++ b/sound/core/seq/oss/seq_oss_synth.c | |||
@@ -621,6 +621,7 @@ snd_seq_oss_synth_make_info(struct seq_oss_devinfo *dp, int dev, struct synth_in | |||
621 | } | 621 | } |
622 | 622 | ||
623 | 623 | ||
624 | #ifdef CONFIG_PROC_FS | ||
624 | /* | 625 | /* |
625 | * proc interface | 626 | * proc interface |
626 | */ | 627 | */ |
@@ -648,4 +649,4 @@ snd_seq_oss_synth_info_read(struct snd_info_buffer *buf) | |||
648 | snd_use_lock_free(&rec->use_lock); | 649 | snd_use_lock_free(&rec->use_lock); |
649 | } | 650 | } |
650 | } | 651 | } |
651 | 652 | #endif /* CONFIG_PROC_FS */ | |
diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c index 2a9c6b316b14..9c32fd262f8d 100644 --- a/sound/core/seq/seq_clientmgr.c +++ b/sound/core/seq/seq_clientmgr.c | |||
@@ -2413,6 +2413,7 @@ int snd_seq_kernel_client_write_poll(int clientid, struct file *file, poll_table | |||
2413 | 2413 | ||
2414 | /*---------------------------------------------------------------------------*/ | 2414 | /*---------------------------------------------------------------------------*/ |
2415 | 2415 | ||
2416 | #ifdef CONFIG_PROC_FS | ||
2416 | /* | 2417 | /* |
2417 | * /proc interface | 2418 | * /proc interface |
2418 | */ | 2419 | */ |
@@ -2518,7 +2519,7 @@ void snd_seq_info_clients_read(struct snd_info_entry *entry, | |||
2518 | snd_seq_client_unlock(client); | 2519 | snd_seq_client_unlock(client); |
2519 | } | 2520 | } |
2520 | } | 2521 | } |
2521 | 2522 | #endif /* CONFIG_PROC_FS */ | |
2522 | 2523 | ||
2523 | /*---------------------------------------------------------------------------*/ | 2524 | /*---------------------------------------------------------------------------*/ |
2524 | 2525 | ||
diff --git a/sound/core/seq/seq_device.c b/sound/core/seq/seq_device.c index 3f935a18b5e7..9ece443fba55 100644 --- a/sound/core/seq/seq_device.c +++ b/sound/core/seq/seq_device.c | |||
@@ -78,7 +78,9 @@ struct ops_list { | |||
78 | static LIST_HEAD(opslist); | 78 | static LIST_HEAD(opslist); |
79 | static int num_ops; | 79 | static int num_ops; |
80 | static DECLARE_MUTEX(ops_mutex); | 80 | static DECLARE_MUTEX(ops_mutex); |
81 | #ifdef CONFIG_PROC_FS | ||
81 | static struct snd_info_entry *info_entry = NULL; | 82 | static struct snd_info_entry *info_entry = NULL; |
83 | #endif | ||
82 | 84 | ||
83 | /* | 85 | /* |
84 | * prototypes | 86 | * prototypes |
@@ -100,6 +102,7 @@ static void remove_drivers(void); | |||
100 | * show all drivers and their status | 102 | * show all drivers and their status |
101 | */ | 103 | */ |
102 | 104 | ||
105 | #ifdef CONFIG_PROC_FS | ||
103 | static void snd_seq_device_info(struct snd_info_entry *entry, | 106 | static void snd_seq_device_info(struct snd_info_entry *entry, |
104 | struct snd_info_buffer *buffer) | 107 | struct snd_info_buffer *buffer) |
105 | { | 108 | { |
@@ -117,6 +120,7 @@ static void snd_seq_device_info(struct snd_info_entry *entry, | |||
117 | } | 120 | } |
118 | up(&ops_mutex); | 121 | up(&ops_mutex); |
119 | } | 122 | } |
123 | #endif | ||
120 | 124 | ||
121 | /* | 125 | /* |
122 | * load all registered drivers (called from seq_clientmgr.c) | 126 | * load all registered drivers (called from seq_clientmgr.c) |
@@ -544,6 +548,7 @@ static void unlock_driver(struct ops_list *ops) | |||
544 | 548 | ||
545 | static int __init alsa_seq_device_init(void) | 549 | static int __init alsa_seq_device_init(void) |
546 | { | 550 | { |
551 | #ifdef CONFIG_PROC_FS | ||
547 | info_entry = snd_info_create_module_entry(THIS_MODULE, "drivers", | 552 | info_entry = snd_info_create_module_entry(THIS_MODULE, "drivers", |
548 | snd_seq_root); | 553 | snd_seq_root); |
549 | if (info_entry == NULL) | 554 | if (info_entry == NULL) |
@@ -555,13 +560,16 @@ static int __init alsa_seq_device_init(void) | |||
555 | snd_info_free_entry(info_entry); | 560 | snd_info_free_entry(info_entry); |
556 | return -ENOMEM; | 561 | return -ENOMEM; |
557 | } | 562 | } |
563 | #endif | ||
558 | return 0; | 564 | return 0; |
559 | } | 565 | } |
560 | 566 | ||
561 | static void __exit alsa_seq_device_exit(void) | 567 | static void __exit alsa_seq_device_exit(void) |
562 | { | 568 | { |
563 | remove_drivers(); | 569 | remove_drivers(); |
570 | #ifdef CONFIG_PROC_FS | ||
564 | snd_info_unregister(info_entry); | 571 | snd_info_unregister(info_entry); |
572 | #endif | ||
565 | if (num_ops) | 573 | if (num_ops) |
566 | snd_printk(KERN_ERR "drivers not released (%d)\n", num_ops); | 574 | snd_printk(KERN_ERR "drivers not released (%d)\n", num_ops); |
567 | } | 575 | } |
diff --git a/sound/core/seq/seq_info.c b/sound/core/seq/seq_info.c index 3257cf4ec258..acce21afdaa4 100644 --- a/sound/core/seq/seq_info.c +++ b/sound/core/seq/seq_info.c | |||
@@ -27,7 +27,7 @@ | |||
27 | #include "seq_clientmgr.h" | 27 | #include "seq_clientmgr.h" |
28 | #include "seq_timer.h" | 28 | #include "seq_timer.h" |
29 | 29 | ||
30 | 30 | #ifdef CONFIG_PROC_FS | |
31 | static struct snd_info_entry *queues_entry; | 31 | static struct snd_info_entry *queues_entry; |
32 | static struct snd_info_entry *clients_entry; | 32 | static struct snd_info_entry *clients_entry; |
33 | static struct snd_info_entry *timer_entry; | 33 | static struct snd_info_entry *timer_entry; |
@@ -52,7 +52,6 @@ create_info_entry(char *name, int size, void (*read)(struct snd_info_entry *, | |||
52 | return entry; | 52 | return entry; |
53 | } | 53 | } |
54 | 54 | ||
55 | |||
56 | /* create all our /proc entries */ | 55 | /* create all our /proc entries */ |
57 | int __init snd_seq_info_init(void) | 56 | int __init snd_seq_info_init(void) |
58 | { | 57 | { |
@@ -66,11 +65,9 @@ int __init snd_seq_info_init(void) | |||
66 | 65 | ||
67 | int __exit snd_seq_info_done(void) | 66 | int __exit snd_seq_info_done(void) |
68 | { | 67 | { |
69 | if (queues_entry) | 68 | snd_info_unregister(queues_entry); |
70 | snd_info_unregister(queues_entry); | 69 | snd_info_unregister(clients_entry); |
71 | if (clients_entry) | 70 | snd_info_unregister(timer_entry); |
72 | snd_info_unregister(clients_entry); | ||
73 | if (timer_entry) | ||
74 | snd_info_unregister(timer_entry); | ||
75 | return 0; | 71 | return 0; |
76 | } | 72 | } |
73 | #endif | ||
diff --git a/sound/core/seq/seq_info.h b/sound/core/seq/seq_info.h index 5a91ebce43a0..4892a7f35c08 100644 --- a/sound/core/seq/seq_info.h +++ b/sound/core/seq/seq_info.h | |||
@@ -29,8 +29,12 @@ void snd_seq_info_timer_read(struct snd_info_entry *entry, struct snd_info_buffe | |||
29 | void snd_seq_info_queues_read(struct snd_info_entry *entry, struct snd_info_buffer *buffer); | 29 | void snd_seq_info_queues_read(struct snd_info_entry *entry, struct snd_info_buffer *buffer); |
30 | 30 | ||
31 | 31 | ||
32 | #ifdef CONFIG_PROC_FS | ||
32 | int snd_seq_info_init( void ); | 33 | int snd_seq_info_init( void ); |
33 | int snd_seq_info_done( void ); | 34 | int snd_seq_info_done( void ); |
34 | 35 | #else | |
36 | static inline int snd_seq_info_init(void) { return 0; } | ||
37 | static inline int snd_seq_info_done(void) { return 0; } | ||
38 | #endif | ||
35 | 39 | ||
36 | #endif | 40 | #endif |
diff --git a/sound/core/seq/seq_queue.c b/sound/core/seq/seq_queue.c index b537a71e1e19..9cf20f045542 100644 --- a/sound/core/seq/seq_queue.c +++ b/sound/core/seq/seq_queue.c | |||
@@ -756,6 +756,7 @@ int snd_seq_control_queue(struct snd_seq_event *ev, int atomic, int hop) | |||
756 | 756 | ||
757 | /*----------------------------------------------------------------*/ | 757 | /*----------------------------------------------------------------*/ |
758 | 758 | ||
759 | #ifdef CONFIG_PROC_FS | ||
759 | /* exported to seq_info.c */ | 760 | /* exported to seq_info.c */ |
760 | void snd_seq_info_queues_read(struct snd_info_entry *entry, | 761 | void snd_seq_info_queues_read(struct snd_info_entry *entry, |
761 | struct snd_info_buffer *buffer) | 762 | struct snd_info_buffer *buffer) |
@@ -789,3 +790,5 @@ void snd_seq_info_queues_read(struct snd_info_entry *entry, | |||
789 | queuefree(q); | 790 | queuefree(q); |
790 | } | 791 | } |
791 | } | 792 | } |
793 | #endif /* CONFIG_PROC_FS */ | ||
794 | |||
diff --git a/sound/core/seq/seq_timer.c b/sound/core/seq/seq_timer.c index a1d8bfd60ae9..b4b9a132cb16 100644 --- a/sound/core/seq/seq_timer.c +++ b/sound/core/seq/seq_timer.c | |||
@@ -425,6 +425,7 @@ snd_seq_tick_time_t snd_seq_timer_get_cur_tick(struct snd_seq_timer *tmr) | |||
425 | } | 425 | } |
426 | 426 | ||
427 | 427 | ||
428 | #ifdef CONFIG_PROC_FS | ||
428 | /* exported to seq_info.c */ | 429 | /* exported to seq_info.c */ |
429 | void snd_seq_info_timer_read(struct snd_info_entry *entry, | 430 | void snd_seq_info_timer_read(struct snd_info_entry *entry, |
430 | struct snd_info_buffer *buffer) | 431 | struct snd_info_buffer *buffer) |
@@ -451,3 +452,5 @@ void snd_seq_info_timer_read(struct snd_info_entry *entry, | |||
451 | queuefree(q); | 452 | queuefree(q); |
452 | } | 453 | } |
453 | } | 454 | } |
455 | #endif /* CONFIG_PROC_FS */ | ||
456 | |||