[POWERPC] Add DTS for MPC8349E-mITX board
[powerpc.git] / sound / oss / soundcard.c
index a686be9..2344d09 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * linux/drivers/sound/soundcard.c
+ * linux/sound/oss/soundcard.c
  *
  * Sound card driver for Linux
  *
@@ -22,7 +22,6 @@
  * Christoph Hellwig : Some cleanup work (2000/03/01)
  */
 
-#include <linux/config.h>
 
 #include "sound_config.h"
 #include <linux/init.h>
@@ -38,7 +37,6 @@
 #include <linux/wait.h>
 #include <linux/slab.h>
 #include <linux/ioport.h>
-#include <linux/devfs_fs_kernel.h>
 #include <linux/major.h>
 #include <linux/delay.h>
 #include <linux/proc_fs.h>
@@ -109,6 +107,7 @@ int *load_mixer_volumes(char *name, int *levels, int present)
                mixer_vols[n].levels[i] = levels[i];
        return mixer_vols[n].levels;
 }
+EXPORT_SYMBOL(load_mixer_volumes);
 
 static int set_mixer_levels(void __user * arg)
 {
@@ -543,12 +542,6 @@ static int __init oss_init(void)
        int             err;
        int i, j;
        
-       /* drag in sound_syms.o */
-       {
-               extern char sound_syms_symbol;
-               sound_syms_symbol = 0;
-       }
-
 #ifdef CONFIG_PCI
        if(dmabug)
                isa_dma_bridge_buggy = dmabug;
@@ -564,25 +557,17 @@ static int __init oss_init(void)
        sound_dmap_flag = (dmabuf > 0 ? 1 : 0);
 
        for (i = 0; i < sizeof (dev_list) / sizeof *dev_list; i++) {
-               devfs_mk_cdev(MKDEV(SOUND_MAJOR, dev_list[i].minor),
-                               S_IFCHR | dev_list[i].mode,
-                               "sound/%s", dev_list[i].name);
-               class_device_create(sound_class,
+               class_device_create(sound_class, NULL,
                                    MKDEV(SOUND_MAJOR, dev_list[i].minor),
                                    NULL, "%s", dev_list[i].name);
 
                if (!dev_list[i].num)
                        continue;
 
-               for (j = 1; j < *dev_list[i].num; j++) {
-                       devfs_mk_cdev(MKDEV(SOUND_MAJOR,
-                                               dev_list[i].minor + (j*0x10)),
-                                       S_IFCHR | dev_list[i].mode,
-                                       "sound/%s%d", dev_list[i].name, j);
-                       class_device_create(sound_class,
+               for (j = 1; j < *dev_list[i].num; j++)
+                       class_device_create(sound_class, NULL,
                                            MKDEV(SOUND_MAJOR, dev_list[i].minor + (j*0x10)),
                                            NULL, "%s%d", dev_list[i].name, j);
-               }
        }
 
        if (sound_nblocks >= 1024)
@@ -596,14 +581,11 @@ static void __exit oss_cleanup(void)
        int i, j;
 
        for (i = 0; i < sizeof (dev_list) / sizeof *dev_list; i++) {
-               devfs_remove("sound/%s", dev_list[i].name);
                class_device_destroy(sound_class, MKDEV(SOUND_MAJOR, dev_list[i].minor));
                if (!dev_list[i].num)
                        continue;
-               for (j = 1; j < *dev_list[i].num; j++) {
-                       devfs_remove("sound/%s%d", dev_list[i].name, j);
+               for (j = 1; j < *dev_list[i].num; j++)
                        class_device_destroy(sound_class, MKDEV(SOUND_MAJOR, dev_list[i].minor + (j*0x10)));
-               }
        }
        
        unregister_sound_special(1);
@@ -627,6 +609,8 @@ static void __exit oss_cleanup(void)
 module_init(oss_init);
 module_exit(oss_cleanup);
 MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("OSS Sound subsystem");
+MODULE_AUTHOR("Hannu Savolainen, et al.");
 
 
 int sound_alloc_dma(int chn, char *deviceID)
@@ -640,6 +624,7 @@ int sound_alloc_dma(int chn, char *deviceID)
 
        return 0;
 }
+EXPORT_SYMBOL(sound_alloc_dma);
 
 int sound_open_dma(int chn, char *deviceID)
 {
@@ -655,6 +640,7 @@ int sound_open_dma(int chn, char *deviceID)
        dma_alloc_map[chn] = DMA_MAP_BUSY;
        return 0;
 }
+EXPORT_SYMBOL(sound_open_dma);
 
 void sound_free_dma(int chn)
 {
@@ -665,6 +651,7 @@ void sound_free_dma(int chn)
        free_dma(chn);
        dma_alloc_map[chn] = DMA_MAP_UNAVAIL;
 }
+EXPORT_SYMBOL(sound_free_dma);
 
 void sound_close_dma(int chn)
 {
@@ -674,6 +661,7 @@ void sound_close_dma(int chn)
        }
        dma_alloc_map[chn] = DMA_MAP_FREE;
 }
+EXPORT_SYMBOL(sound_close_dma);
 
 static void do_sequencer_timer(unsigned long dummy)
 {
@@ -681,8 +669,7 @@ static void do_sequencer_timer(unsigned long dummy)
 }
 
 
-static struct timer_list seq_timer =
-               TIMER_INITIALIZER(do_sequencer_timer, 0, 0);
+static DEFINE_TIMER(seq_timer, do_sequencer_timer, 0, 0);
 
 void request_sound_timer(int count)
 {
@@ -728,6 +715,7 @@ void conf_printf(char *name, struct address_info *hw_config)
        printk("\n");
 #endif
 }
+EXPORT_SYMBOL(conf_printf);
 
 void conf_printf2(char *name, int base, int irq, int dma, int dma2)
 {
@@ -748,3 +736,5 @@ void conf_printf2(char *name, int base, int irq, int dma, int dma2)
        printk("\n");
 #endif
 }
+EXPORT_SYMBOL(conf_printf2);
+