summaryrefslogtreecommitdiffstats
path: root/drivers/sound/adlib_card.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1997-01-07 02:33:00 +0000
committer <ralf@linux-mips.org>1997-01-07 02:33:00 +0000
commitbeb116954b9b7f3bb56412b2494b562f02b864b1 (patch)
tree120e997879884e1b9d93b265221b939d2ef1ade1 /drivers/sound/adlib_card.c
parent908d4681a1dc3792ecafbe64265783a86c4cccb6 (diff)
Import of Linux/MIPS 2.1.14
Diffstat (limited to 'drivers/sound/adlib_card.c')
-rw-r--r--drivers/sound/adlib_card.c61
1 files changed, 30 insertions, 31 deletions
diff --git a/drivers/sound/adlib_card.c b/drivers/sound/adlib_card.c
index 636506938..a99891f93 100644
--- a/drivers/sound/adlib_card.c
+++ b/drivers/sound/adlib_card.c
@@ -2,50 +2,49 @@
* sound/adlib_card.c
*
* Detection routine for the AdLib card.
+ */
+
+/*
+ * Copyright (C) by Hannu Savolainen 1993-1996
*
- * Copyright by Hannu Savolainen 1993
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer. 2.
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
- * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
+ * OSS/Free for Linux is distributed under the GNU GENERAL PUBLIC LICENSE (GPL)
+ * Version 2 (June 1991). See the "COPYING" file distributed with this software
+ * for more info.
*/
+#include <linux/config.h>
+
#include "sound_config.h"
-#if defined(CONFIGURE_SOUNDCARD) && !defined(EXCLUDE_YM3812)
+#if defined(CONFIG_YM3812)
-long
-attach_adlib_card (long mem_start, struct address_info *hw_config)
+void
+attach_adlib_card (struct address_info *hw_config)
{
- if (opl3_detect (FM_MONO))
- {
- mem_start = opl3_init (mem_start);
- }
- return mem_start;
+ opl3_init (hw_config->io_base, hw_config->osp);
+ request_region (hw_config->io_base, 4, "OPL3/OPL2");
}
int
probe_adlib (struct address_info *hw_config)
{
- return opl3_detect (FM_MONO);
+
+ if (check_region (hw_config->io_base, 4))
+ {
+ DDB (printk ("opl3.c: I/O port %x already in use\n",
+ hw_config->io_base));
+ return 0;
+ }
+
+ return opl3_detect (hw_config->io_base, hw_config->osp);
}
+void
+unload_adlib (struct address_info *hw_config)
+{
+ release_region (hw_config->io_base, 4);
+}
+
+
#endif