#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/init.h>
-#include <linux/mutex.h>
MODULE_AUTHOR("Vojtech Pavlik <vojtech@ucw.cz>");
MODULE_DESCRIPTION("TurboGraFX parallel port interface driver");
char phys[TGFX_MAX_DEVICES][32];
int sticks;
int used;
- struct mutex sem;
+ struct semaphore sem;
} *tgfx_base[TGFX_MAX_PORTS];
/*
struct tgfx *tgfx = dev->private;
int err;
- err = mutex_lock_interruptible(&tgfx->sem);
+ err = down_interruptible(&tgfx->sem);
if (err)
return err;
mod_timer(&tgfx->timer, jiffies + TGFX_REFRESH_TIME);
}
- mutex_unlock(&tgfx->sem);
+ up(&tgfx->sem);
return 0;
}
{
struct tgfx *tgfx = dev->private;
- mutex_lock(&tgfx->sem);
+ down(&tgfx->sem);
if (!--tgfx->used) {
del_timer_sync(&tgfx->timer);
parport_write_control(tgfx->pd->port, 0x00);
parport_release(tgfx->pd);
}
- mutex_unlock(&tgfx->sem);
+ up(&tgfx->sem);
}
goto err_unreg_pardev;
}
- mutex_init(&tgfx->sem);
+ init_MUTEX(&tgfx->sem);
tgfx->pd = pd;
init_timer(&tgfx->timer);
tgfx->timer.data = (long) tgfx;