public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: slash.tmp@free•fr (Mason)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH v3] thermal: tango: add resume support
Date: Mon, 25 Jul 2016 10:18:22 +0200	[thread overview]
Message-ID: <5795CB4E.4000909@free.fr> (raw)
In-Reply-To: <m2wpkd1gfg.fsf@baylibre.com>

On 23/07/2016 00:00, Kevin Hilman wrote:

> Mason wrote:
> 
>> +#ifdef CONFIG_PM_SLEEP
>> +static int tango_thermal_resume(struct device *dev)
>> +{
>> +	tango_thermal_init(dev_get_drvdata(dev));
>> +	return 0;
>> +}
>> +
>> +static SIMPLE_DEV_PM_OPS(tango_thermal_pm, NULL, tango_thermal_resume);
>> +#endif
> 
> #else
> #define tango_thermal_resume NULL
> #endif
> 
> And then move the SIMPLE_DEV_PM_OPS here...

Moving the SIMPLE_DEV_PM_OPS macro outside the CONFIG_PM_SLEEP guard
would unconditionally define a struct dev_pm_ops, which just wastes
space when CONFIG_PM_SLEEP is undefined (if I'm not mistaken).

That's why I put SIMPLE_DEV_PM_OPS inside the CONFIG_PM_SLEEP guard.

>> +
>>  static const struct of_device_id tango_sensor_ids[] = {
>>  	{
>>  		.compatible = "sigma,smp8758-thermal",
>> @@ -99,6 +115,9 @@ static struct platform_driver tango_thermal_driver = {
>>  	.driver	= {
>>  		.name		= "tango-thermal",
>>  		.of_match_table	= tango_sensor_ids,
>> +#ifdef CONFIG_PM_SLEEP
>> +		.pm		= &tango_thermal_pm,
>> +#endif
> 
> ... which allows you to get rid of the ugly ifdef here.
> (c.f. CodingStyle, Chapter 20,)

The previous solution (v2) avoided duplicating the ifdef block,
but Arnd and Thierry objected to the code. Later, they agreed
that it should work; but if they didn't catch the code's intent
at a glance, maybe there is a problem with it anyway.

What do you think?

I copied the DEV_PM_OPS "trick" from drivers/thermal/ti-soc-thermal/ti-bandgap.c
(which was done by Eduardo, a thermal maintainer, so maybe he
prefers that solution after all? commit 8feaf0ce1a043)

Regards.

  reply	other threads:[~2016-07-25  8:18 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-28 11:37 [RESEND PATCH v2] thermal: tango: add resume support Mason
2016-07-18  9:33 ` Thierry Reding
2016-07-18 10:09   ` Arnd Bergmann
2016-07-18 10:13     ` Thierry Reding
2016-07-18 11:10       ` Arnd Bergmann
2016-07-18 11:28         ` Thierry Reding
2016-07-18 12:21 ` [PATCH v3] " Mason
2016-07-20 10:50   ` Thierry Reding
2016-07-22 22:00   ` Kevin Hilman
2016-07-25  8:18     ` Mason [this message]
2016-07-25  8:52       ` Arnd Bergmann
2016-07-25  9:48         ` Mason
2016-07-26 12:13           ` Arnd Bergmann
2016-08-19 11:29             ` Zhang Rui
2016-08-22 21:00               ` Arnd Bergmann
2016-08-24  8:25                 ` Zhang Rui
2016-08-24  8:32                   ` Arnd Bergmann
2016-08-24 15:12                     ` Mason
2016-09-02 13:17 ` [PATCH v4] " Marc Gonzalez
2016-09-02 20:54   ` Kevin Hilman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5795CB4E.4000909@free.fr \
    --to=slash.tmp@free$(echo .)fr \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox