Messages in this thread | | | From | <> | Date | Wed, 16 Nov 2011 16:56:25 +0100 | Subject | Re: [PATCH v2] input: add driver support for Sharp gp2ap002a00f proximity sensor |
| |
> > > > +#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?
Please, see PATCH v3 for the answer to your question.
-Oskar
| |