From: Alexander Graf <agraf@suse.de>
To: Michael Ellerman <mpe@ellerman.id.au>
Cc: Arnd Bergmann <arnd@arndb.de>, Geoff Levand <geoff@infradead.org>,
Alistair Popple <alistair@popple.id.au>,
Scott Wood <scottwood@freescale.com>,
Anatolij Gustschin <agust@denx.de>,
linuxppc-dev@lists.ozlabs.org, Guenter Roeck <linux@roeck-us.net>
Subject: Re: [PATCH 00/20] powerpc: Convert power off logic to pm_power_off
Date: Tue, 07 Oct 2014 13:35:07 +0200 [thread overview]
Message-ID: <5433CFEB.9040104@suse.de> (raw)
In-Reply-To: <1412663147.10747.1.camel@concordia>
On 07.10.14 08:25, Michael Ellerman wrote:
> On Mon, 2014-10-06 at 12:00 +0200, Alexander Graf wrote:
>>
>> On 03.10.14 06:42, Michael Ellerman wrote:
>>> On Wed, 2014-10-01 at 15:27 +0200, Alexander Graf wrote:
>>>> The generic Linux framework to power off the machine is a function pointer
>>>> called pm_power_off. The trick about this pointer is that device drivers can
>>>> potentially implement it rather than board files.
>>>>
>>>> Today on PowerPC we set pm_power_off to invoke our generic full machine power
>>>> off logic which then calls ppc_md.power_off to invoke machine specific power
>>>> off.
>>>>
>>>> To fix this up, let's get rid of the ppc_md.power_off logic and just always use
>>>> pm_power_off as was intended. Then individual drivers such as the GPIO power off
>>>> driver can implement power off logic via that function pointer.
>>>
>>> This looks OK to me with one caveat.
>>>
>>> In several of the patches you're replacing a static initialisation with a
>>> runtime one, and you're doing the runtime initialisation in xxx_setup_arch().
>>> That's reasonably late, so I'd prefer you did it in xxx_probe().
>>
>> Heh, I had it in xxx_probe() originally and then realized that
>>
>> a) the power off function is basically a driver. Driver initialization
>> happens in xxx_setup_arch() and
>>
>> b) the maple target already does overwrite its power_off callback in
>> xxx_setup_arch and
>>
>> c) on all targets xxx_probe() is very slim and doesn't do much
>>
>> but I'll happily change it back to put the bits in xxx_probe() instead.
>
> Thanks.
>
> That way you shouldn't be changing behaviour.
>
> It may still be the case that some power off routines don't actually work until
> later, but that's an existing problem. Some power off routines *do* work before
> setup_arch(), so they will continue to work.
Ok, works for me :). Just wanted to make sure you're aware of the
reasoning why I didn't do it in probe().
> Also, how does your series interact with Guenter's that removes pm_power_off ?
> It seems at the moment they are unaware of each other.
Guenters patches convert users of pm_power_off to his new scheme. We're
not even at that stage at all yet in the powerpc tree. Converting
everything to pm_power_off is basically a first step. His patch set
maintains pm_power_off, so there shouldn't be nasty conflicts.
Once we converted from ppc_md tables to actual code, we can just run a
simple coccinelle patch to convert from pm_power_off to his new scheme
later.
Alex
next prev parent reply other threads:[~2014-10-07 11:35 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-01 13:27 [PATCH 00/20] powerpc: Convert power off logic to pm_power_off Alexander Graf
2014-10-01 13:27 ` [PATCH 01/20] powerpc: Support override of pm_power_off Alexander Graf
2014-10-01 13:27 ` [PATCH 02/20] powerpc/xmon: Support either ppc_md.power_off or pm_power_off Alexander Graf
2014-10-01 13:27 ` [PATCH 03/20] powerpc/47x: Use pm_power_off rather than ppc_md.power_off Alexander Graf
2014-10-05 0:39 ` Segher Boessenkool
2014-10-06 10:02 ` Alexander Graf
2014-10-01 13:27 ` [PATCH 04/20] powerpc/52xx/efika: " Alexander Graf
2014-10-01 13:27 ` [PATCH 05/20] powerpc/mpc8349emitx: " Alexander Graf
2014-10-01 13:27 ` [PATCH 06/20] powerpc/corenet: " Alexander Graf
2014-10-01 13:27 ` [PATCH 07/20] powerpc/85xx/sgy_cts1000: " Alexander Graf
2014-10-01 13:27 ` [PATCH 08/20] powerpc/celleb: " Alexander Graf
2014-10-01 13:27 ` [PATCH 09/20] powerpc/cell/qpace: " Alexander Graf
2014-10-01 13:27 ` [PATCH 10/20] powerpc/cell: " Alexander Graf
2014-10-01 13:27 ` [PATCH 11/20] powerpc/chrp: " Alexander Graf
2014-10-01 13:27 ` [PATCH 12/20] powerpc/6xx/gamecube: " Alexander Graf
2014-10-01 13:27 ` [PATCH 13/20] powerpc/6xx/linkstation: " Alexander Graf
2014-10-01 13:28 ` [PATCH 14/20] powerpc/6xx/wii: " Alexander Graf
2014-10-01 13:28 ` [PATCH 15/20] powerpc/maple: " Alexander Graf
2014-10-01 13:28 ` [PATCH 16/20] powerpc/powermac: " Alexander Graf
2014-10-01 13:28 ` [PATCH 17/20] powerpc/powernv: " Alexander Graf
2014-10-01 13:28 ` [PATCH 18/20] powerpc/ps3: " Alexander Graf
2014-10-01 13:28 ` [PATCH 19/20] powerpc/pseries: " Alexander Graf
2014-10-01 13:28 ` [PATCH 20/20] powerpc: Remove ppc_md.power_off Alexander Graf
2014-10-01 14:33 ` [PATCH 00/20] powerpc: Convert power off logic to pm_power_off Geert Uytterhoeven
2014-10-01 14:47 ` Alexander Graf
2014-10-01 14:57 ` Geert Uytterhoeven
2014-10-01 15:54 ` Guenter Roeck
2014-10-01 21:25 ` Alexander Graf
2014-10-02 2:36 ` Guenter Roeck
2014-10-01 22:39 ` Scott Wood
2014-10-01 23:21 ` Alexander Graf
2014-10-01 23:28 ` Scott Wood
2014-10-01 23:44 ` Alexander Graf
2014-10-02 2:51 ` Guenter Roeck
2014-10-03 4:42 ` Michael Ellerman
2014-10-06 10:00 ` Alexander Graf
2014-10-07 6:25 ` Michael Ellerman
2014-10-07 11:35 ` Alexander Graf [this message]
2014-10-07 17:00 ` Guenter Roeck
2014-10-07 17:47 ` Alexander Graf
2014-10-07 19:03 ` Guenter Roeck
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=5433CFEB.9040104@suse.de \
--to=agraf@suse.de \
--cc=agust@denx.de \
--cc=alistair@popple.id.au \
--cc=arnd@arndb.de \
--cc=geoff@infradead.org \
--cc=linux@roeck-us.net \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mpe@ellerman.id.au \
--cc=scottwood@freescale.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.