]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/macintosh/therm_windtunnel.c
macintosh/therm_windtunnel: Convert semaphore to mutex
[net-next-2.6.git] / drivers / macintosh / therm_windtunnel.c
index d11821af3b8d07e7a70c5d07f3ac84bc5859b52e..3da0a02efd7668f6088dd28eb05f88b7c1d0b768 100644 (file)
 #include <linux/slab.h>
 #include <linux/init.h>
 #include <linux/kthread.h>
+#include <linux/of_platform.h>
 
 #include <asm/prom.h>
 #include <asm/machdep.h>
 #include <asm/io.h>
 #include <asm/system.h>
 #include <asm/sections.h>
-#include <asm/of_platform.h>
 #include <asm/macio.h>
 
 #define LOG_TEMP               0                       /* continously log temperature */
@@ -62,7 +62,7 @@ static struct {
        volatile int            running;
        struct task_struct      *poll_task;
        
-       struct semaphore        lock;
+       struct mutex            lock;
        struct of_device        *of_dev;
        
        struct i2c_client       *thermostat;
@@ -286,23 +286,23 @@ restore_regs( void )
 
 static int control_loop(void *dummy)
 {
-       down(&x.lock);
+       mutex_lock(&x.lock);
        setup_hardware();
-       up(&x.lock);
+       mutex_unlock(&x.lock);
 
        for (;;) {
                msleep_interruptible(8000);
                if (kthread_should_stop())
                        break;
 
-               down(&x.lock);
+               mutex_lock(&x.lock);
                poll_temp();
-               up(&x.lock);
+               mutex_unlock(&x.lock);
        }
 
-       down(&x.lock);
+       mutex_lock(&x.lock);
        restore_regs();
-       up(&x.lock);
+       mutex_unlock(&x.lock);
 
        return 0;
 }
@@ -489,7 +489,7 @@ g4fan_init( void )
        const struct apple_thermal_info *info;
        struct device_node *np;
 
-       init_MUTEX( &x.lock );
+       mutex_init(&x.lock);
 
        if( !(np=of_find_node_by_name(NULL, "power-mgt")) )
                return -ENODEV;