From: Eric Anholt <eric@anholt.net>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Sudip Mukherjee <sudipm.mukherjee@gmail.com>,
Pavel Machek <pavel@ucw.cz>, Len Brown <len.brown@intel.com>,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org
Subject: Re: [PATCH] PM / sleep: define inline functions
Date: Thu, 17 Dec 2015 11:12:38 -0800 [thread overview]
Message-ID: <8760zwx521.fsf@eliezer.anholt.net> (raw)
In-Reply-To: <6732607.IpmkEPKP2k@vostro.rjw.lan>
[-- Attachment #1: Type: text/plain, Size: 2492 bytes --]
"Rafael J. Wysocki" <rjw@rjwysocki.net> writes:
> On Wednesday, December 16, 2015 04:41:37 PM Eric Anholt wrote:
>>
>> --=-=-=
>> Content-Type: text/plain
>>
>> Sudip Mukherjee <sudipm.mukherjee@gmail.com> writes:
>>
>> > If CONFIG_PM_SLEEP is not defined then the functions are defined as
>> > NULL. And as a result we are getting build failure with
>> > alpha allmodconfig with the error:
>> >
>> > drivers/gpu/drm/vc4/vc4_v3d.c: In function 'vc4_v3d_set_power':
>> > include/linux/stddef.h:7:14: error: called object is not a function or function pointer
>> > #define NULL ((void *)0)
>> > ^
>> > include/linux/pm.h:776:30: note: in expansion of macro 'NULL'
>> > #define pm_generic_poweroff NULL
>> > ^
>> > drivers/gpu/drm/vc4/vc4_v3d.c:157:10: note: in expansion of macro 'pm_generic_poweroff'
>> > return pm_generic_poweroff(&vc4->v3d->pdev->dev);
>> > ^
>> > include/linux/stddef.h:7:14: error: called object is not a function or function pointer
>> > #define NULL ((void *)0)
>> > ^
>> > include/linux/pm.h:764:28: note: in expansion of macro 'NULL'
>> > #define pm_generic_resume NULL
>> > ^
>> > drivers/gpu/drm/vc4/vc4_v3d.c:159:10: note: in expansion of macro 'pm_generic_resume'
>> > return pm_generic_resume(&vc4->v3d->pdev->dev);
>> > ^
>> >
>> > Fixes: d5b1a78a772f ("drm/vc4: Add support for drawing 3D frames.")
>> > Cc: Eric Anholt <eric@anholt.net>
>> > Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
>>
>> I'm happy with this solution, and would also be willing to just depend
>> on the config option as well. Whatever people prefer.
>
> These functions are intended to be used as PM callbacks rather than to be
> called directly from code that doesn't depend on PM_SLEEP, so I'd prefer
> all code calling them directly to depend on the config option.
Actually, I should have probably checked what the right way to do this
is.
I'm using these functions for reset when the device gets wedged. Before
swapping to using a generic power domain, I was just sending the command
through the firmware driver to turn the GPU off and back on. The genpd
wraps my firmware driver's interface, so what is the best way to force
my domain (I assert I'm the only consumer of it) off and back on again?
If this is the best interface, then I do need to just depend on
CONFIG_PM_SLEEP in Kconfig.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]
prev parent reply other threads:[~2015-12-17 19:12 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-16 11:41 [PATCH] PM / sleep: define inline functions Sudip Mukherjee
2015-12-17 0:41 ` Eric Anholt
2015-12-17 1:43 ` Rafael J. Wysocki
2015-12-17 7:55 ` Sudip Mukherjee
2015-12-17 19:12 ` Eric Anholt [this message]
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=8760zwx521.fsf@eliezer.anholt.net \
--to=eric@anholt.net \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=pavel@ucw.cz \
--cc=rjw@rjwysocki.net \
--cc=sudipm.mukherjee@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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