X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fchar%2Fppdev.c;h=7af7a7e6b9c2e570ff53eff4152e5f61d6cf7738;hb=5554b35933245e95710d709175e14c02cbc956a4;hp=84ac64fc48a1a72f4d3aebbf5fffac70e2200ae1;hpb=f4ebc993759dc25dc3db6b6f1a13a23df8264d4b;p=linux-2.6 diff --git a/drivers/char/ppdev.c b/drivers/char/ppdev.c index 84ac64fc48..7af7a7e6b9 100644 --- a/drivers/char/ppdev.c +++ b/drivers/char/ppdev.c @@ -66,7 +66,7 @@ #include #include #include -#include +#include #include #define PP_VERSION "ppdev: user-space parallel port driver" @@ -268,9 +268,9 @@ static ssize_t pp_write (struct file * file, const char __user * buf, return bytes_written; } -static void pp_irq (int irq, void * private) +static void pp_irq (void *private) { - struct pp_struct * pp = (struct pp_struct *) private; + struct pp_struct *pp = private; if (pp->irqresponse) { parport_write_control (pp->pdev->port, pp->irqctl); @@ -639,6 +639,7 @@ static int pp_open (struct inode * inode, struct file * file) unsigned int minor = iminor(inode); struct pp_struct *pp; + cycle_kernel_lock(); if (minor >= PARPORT_MAX) return -ENXIO; @@ -751,8 +752,9 @@ static const struct file_operations pp_fops = { static void pp_attach(struct parport *port) { - device_create(ppdev_class, port->dev, MKDEV(PP_MAJOR, port->number), - "parport%d", port->number); + device_create_drvdata(ppdev_class, port->dev, + MKDEV(PP_MAJOR, port->number), + NULL, "parport%d", port->number); } static void pp_detach(struct parport *port)