Re: Corrected drivermodel for i8042.c

From: Dmitry Torokhov
Date: Sun Nov 16 2003 - 15:21:53 EST


On Sunday 16 November 2003 08:11 am, Pavel Machek wrote:

>
> +static int i8042_resume_port(struct serio *port)
> +{
> + struct serio_dev *dev = port->dev;
> + if (dev) {
> + dev->disconnect(port);
> + dev->connect(port, dev);
> + }
> +}

You want to do that event if there was nothing attached to the port
as a mouse might get plugged in while the box is suspended. I think
serio_rescan() is more appropriate (it will do a disconnect if needed
for you).

Overall there is a problem with disconnect/connect method as it will
cause a new input device created for the same hardware if old input
device is held open by some process. If ever serio_reconnect patches
will make in the tree then serio_reconnect() can be used instead of
serio_rescan() as it will try to keep the same input device.

Dmitry
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/