Re: [PATCH v2] input: add driver support for Sharp gp2ap002a00fproximity sensor

From: Dmitry Torokhov
Date: Wed Nov 16 2011 - 11:51:00 EST


On Thu, Nov 17, 2011 at 12:39:12AM +0900, anish kumar wrote:
> On Tue, 2011-11-15 at 08:34 +0100, oskar.andero@xxxxxxxxxxxxxxxx wrote:
> > > > +#ifdef CONFIG_PM_SLEEP
> > > > +static int gp2a_suspend(struct device *dev)
> > > > +{
> > > > + struct i2c_client *client = to_i2c_client(dev);
> > > > + struct gp2a_data *dt = i2c_get_clientdata(client);
> > > > + int error;
> > > > +
> > > > + if (device_may_wakeup(&client->dev)) {
> > > > + enable_irq_wake(client->irq);
> > > > + } else {
> > >
> > > This needs locking WRT open/close. Please acquire dt->device->mutex and
> > > only disable if dt->device->users != 0. Similar shoudl be done for
> > > resume.
> >
> > I see what you mean. I will fix it.
> Is my understanding correct?You are going to disable the device
> only when there are users of the driver and not disable the device
> otherwise.As anyway if there are no users the driver would have been
> already disabled right?

Right, if there are no usrs device should already be in low power mode
and we do not need anything to do here. Additionally, if device has no
users we do not wantt o power it on in esume() as this will only cause
us to waste power.

Thanks.

--
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/