On Fri, Jun 05, 2020 at 03:14:59PM +0300, Sakari Ailus wrote: > Hi Dongchun, > > Thank you for the update. > > On Fri, Jun 05, 2020 at 06:54:12PM +0800, Dongchun Zhu wrote: > > Add a V4L2 sub-device driver for DW9768 voice coil motor, providing > > control to set the desired focus via IIC serial interface. > > > > Signed-off-by: Dongchun Zhu <dongchun.zhu@xxxxxxxxxxxx> > > --- > > MAINTAINERS | 1 + > > drivers/media/i2c/Kconfig | 13 ++ > > drivers/media/i2c/Makefile | 1 + > > drivers/media/i2c/dw9768.c | 566 +++++++++++++++++++++++++++++++++++++++++++++ > > 4 files changed, 581 insertions(+) > > create mode 100644 drivers/media/i2c/dw9768.c [snip] > > +static int dw9768_runtime_suspend(struct device *dev) > > +{ > > + struct i2c_client *client = to_i2c_client(dev); > > + struct v4l2_subdev *sd = i2c_get_clientdata(client); > > + struct dw9768 *dw9768 = sd_to_dw9768(sd); > > + > > + dw9768_release(dw9768); > > + regulator_bulk_disable(ARRAY_SIZE(dw9768_supply_names), > > + dw9768->supplies); > > + > > + return 0; > > +} > > + > > +static int dw9768_runtime_resume(struct device *dev) > > __maybe_unused for this and the suspend callback. > These are always used. If runtime PM is disabled, they are called explicitly in probe and remove. Best regards, Tomasz