diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2006-04-01 00:34:58 +0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2006-04-01 00:34:58 +0400 |
commit | 86579dd06deecfa6ac88d5e84e4d63c397cd6f6d (patch) | |
tree | b4475d3ccde53015ad84a06e4e55e64591171b75 /sound/oss/aci.c | |
parent | 7ea9ea832212c4a755650f7c7cc1ff0b63292a41 (diff) | |
parent | a0f067802576d4eb4c65d40b8ee7d6ea3c81dd61 (diff) | |
download | linux-86579dd06deecfa6ac88d5e84e4d63c397cd6f6d.tar.xz |
Merge branch 'master'
Diffstat (limited to 'sound/oss/aci.c')
-rw-r--r-- | sound/oss/aci.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/sound/oss/aci.c b/sound/oss/aci.c index 3928c2802cc4..3bfac375dbdb 100644 --- a/sound/oss/aci.c +++ b/sound/oss/aci.c @@ -56,7 +56,8 @@ #include <linux/module.h> #include <linux/proc_fs.h> #include <linux/slab.h> -#include <asm/semaphore.h> +#include <linux/mutex.h> + #include <asm/io.h> #include <asm/uaccess.h> #include "sound_config.h" @@ -79,7 +80,7 @@ static int aci_micpreamp=3; /* microphone preamp-level that can't be * * checked with ACI versions prior to 0xb0 */ static int mixer_device; -static struct semaphore aci_sem; +static struct mutex aci_mutex; #ifdef MODULE static int reset; @@ -212,7 +213,7 @@ int aci_rw_cmd(int write1, int write2, int write3) int write[] = {write1, write2, write3}; int read = -EINTR, i; - if (down_interruptible(&aci_sem)) + if (mutex_lock_interruptible(&aci_mutex)) goto out; for (i=0; i<3; i++) { @@ -227,7 +228,7 @@ int aci_rw_cmd(int write1, int write2, int write3) } read = aci_rawread(); -out_up: up(&aci_sem); +out_up: mutex_unlock(&aci_mutex); out: return read; } @@ -603,7 +604,7 @@ static int __init attach_aci(void) char *boardname; int i, rc = -EBUSY; - init_MUTEX(&aci_sem); + mutex_init(&aci_mutex); outb(0xE3, 0xf8f); /* Write MAD16 password */ aci_port = (inb(0xf90) & 0x10) ? |