X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fparport%2Fshare.c;h=ea62bed6bc8329932d2080e1f1675b557a89c9c7;hb=987b0145d94eecf292d8b301228356f44611ab7c;hp=bbbfd79adbafc84788d02003703e4238d15735ba;hpb=f7ed79d23a47594e7834d66a8f14449796d4f3e6;p=linux-2.6.git diff --git a/drivers/parport/share.c b/drivers/parport/share.c index bbbfd79ad..ea62bed6b 100644 --- a/drivers/parport/share.c +++ b/drivers/parport/share.c @@ -32,7 +32,6 @@ #include #include -#include #include #undef PARPORT_PARANOID @@ -51,7 +50,7 @@ static DEFINE_SPINLOCK(full_list_lock); static LIST_HEAD(drivers); -static DEFINE_MUTEX(registration_lock); +static DECLARE_MUTEX(registration_lock); /* What you can do to a port that's gone away.. */ static void dead_write_lines (struct parport *p, unsigned char b){} @@ -159,11 +158,11 @@ int parport_register_driver (struct parport_driver *drv) if (list_empty(&portlist)) get_lowlevel_driver (); - mutex_lock(®istration_lock); + down(®istration_lock); list_for_each_entry(port, &portlist, list) drv->attach(port); list_add(&drv->list, &drivers); - mutex_unlock(®istration_lock); + up(®istration_lock); return 0; } @@ -189,11 +188,11 @@ void parport_unregister_driver (struct parport_driver *drv) { struct parport *port; - mutex_lock(®istration_lock); + down(®istration_lock); list_del_init(&drv->list); list_for_each_entry(port, &portlist, list) drv->detach(port); - mutex_unlock(®istration_lock); + up(®istration_lock); } static void free_port (struct parport *port) @@ -367,7 +366,7 @@ void parport_announce_port (struct parport *port) #endif parport_proc_register(port); - mutex_lock(®istration_lock); + down(®istration_lock); spin_lock_irq(&parportlist_lock); list_add_tail(&port->list, &portlist); for (i = 1; i < 3; i++) { @@ -384,7 +383,7 @@ void parport_announce_port (struct parport *port) if (slave) attach_driver_chain(slave); } - mutex_unlock(®istration_lock); + up(®istration_lock); } /** @@ -410,7 +409,7 @@ void parport_remove_port(struct parport *port) { int i; - mutex_lock(®istration_lock); + down(®istration_lock); /* Spread the word. */ detach_driver_chain (port); @@ -437,7 +436,7 @@ void parport_remove_port(struct parport *port) } spin_unlock(&parportlist_lock); - mutex_unlock(®istration_lock); + up(®istration_lock); parport_proc_unregister(port);