Re: [PATCH v3 1/2] i2c: Add driver for Cadence I2C controller

From: Wolfram Sang
Date: Thu Apr 03 2014 - 03:10:37 EST



Please don't quote large parts of the message f you are not referring to
it.

> > +#ifdef CONFIG_PM_SLEEP
> > +/**
> > + * cdns_i2c_suspend - Suspend method for the driver
> > + * @_dev: Address of the platform_device structure
> > + * Return: 0 always
> > + *
> > + * Put the driver into low power mode.
> > + */
> > +static int cdns_i2c_suspend(struct device *_dev)
> > +{
> > + struct platform_device *pdev = container_of(_dev,
> > + struct platform_device, dev);
> > + struct cdns_i2c *xi2c = platform_get_drvdata(pdev);
> > +
> > + clk_disable(xi2c->clk);
> > + xi2c->suspended = 1;
> > +
> > + return 0;
> > +}
> > +
> > +/**
> > + * cdns_i2c_resume - Resume from suspend
> > + * @_dev: Address of the platform_device structure
> > + * Return: 0 on success and error value on error
> > + *
> > + * Resume operation after suspend.
> > + */
> > +static int cdns_i2c_resume(struct device *_dev)
> > +{
> > + struct platform_device *pdev = container_of(_dev,
> > + struct platform_device, dev);
> > + struct cdns_i2c *xi2c = platform_get_drvdata(pdev);
> > + int ret;
> > +
> > + ret = clk_enable(xi2c->clk);
> > + if (ret) {
> > + dev_err(_dev, "Cannot enable clock.\n");
> > + return ret;
> > + }
> > +
> > + xi2c->suspended = 0;
> > +
> > + return 0;
> > +}
> > +#endif
>
> Can you also please remove this #ifdef and use __maybe_used
> instead? Better not to have any ifdef in the code.

Is this a new pattern? For PM_SLEEP, #ifdef seems to be quite common.

Attachment: signature.asc
Description: Digital signature