From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: jeffy <jeffy.chen@rock-chips.com>
Cc: Mark Brown <broonie@kernel.org>,
Brian Norris <briannorris@chromium.org>,
Doug Anderson <dianders@chromium.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Heiko Stuebner <heiko@sntech.de>,
linux-spi <linux-spi@vger.kernel.org>,
"open list:ARM/Rockchip SoC..."
<linux-rockchip@lists.infradead.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [RESEND PATCH 1/2] spi: rockchip: Convert to late and early system PM callbacks
Date: Fri, 13 Oct 2017 11:30:06 -0700 [thread overview]
Message-ID: <20171013183006.k6pzcr5tcwsxxtmp@dtor-ws> (raw)
In-Reply-To: <59E103B0.8060705@rock-chips.com>
On Sat, Oct 14, 2017 at 02:19:28AM +0800, jeffy wrote:
> Hi guys,
>
> it looks like the suspend sequence depends on the dt node sequence, and we
> are putting display-subsystem dt node above spi dt node, so it would be
> earlier in the device list, then got suspended later than spi device.
Would it not get a deferral when trying to get resource reference, which
would cause it bumped down to the end of dpm list?
>
> the pwm backlight and cros_ec_spi pwm are very interesting, not only about
> suspend dependency... if we unbind cros_ec_spi pwm, the pwm backlight would
> still hold a reference to it, and crash the kernel later.
That would be a bug in PWM/cors_ec and it should keep the PWM object
until last reference drops and simply error out on all requests.
>
> On 10/14/2017 12:42 AM, Mark Brown wrote:
> > On Fri, Oct 13, 2017 at 08:51:21AM -0700, Brian Norris wrote:
> >
> > > Yes, this does seem odd to me too. This looks like an arms race hack
> > > that should be avoided unless we know a legit root cause. Also,
> > > "probe order implies suspend order" doesn't quite work for async suspend
> > > anyway, so we'd probably want to express the dependency properly
> > > anyway.
> >
> > Yeah, it's the same stuff as we get with initcall ordering. This sort
> > of thing does happen with things like PMICs which tend to have hardware
> > that the system wants to manipulate in the IRQs off part of suspend.
> > Ideally the dependency annotation stuff would figure things out though
> > I'm not sure what the status of that is.
I'd say non-existent for resources such as regulators, pwms, clocks,
etc. I do not think many places call device_link_add()... I think adding
this to devm_* APIs might be easiest to get the ball going as they
naturally have consumer device and can easily figure out the supplier
side.
> >
> > > Any chance this is related? Seems like that might break the parent/child
> > > relationship for master/slave:
> >
> > > commit d7e2ee257038baeb03baef602500368a51ee9eef
> > > Author: Linus Walleij <linus.walleij@linaro.org>
> > > Date: Mon Apr 11 13:51:03 2016 +0200
> >
> > > spi: let SPI masters ignore their children for PM
> >
> > That's for runtime PM, I'd not expect it to affect system suspend.
> >
>
>
Thanks.
--
Dmitry
next prev parent reply other threads:[~2017-10-13 18:30 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-13 10:41 [RESEND PATCH 0/2] rockchip: kevin: Enable edp display Jeffy Chen
2017-10-13 10:41 ` [RESEND PATCH 1/2] spi: rockchip: Convert to late and early system PM callbacks Jeffy Chen
2017-10-13 15:32 ` Doug Anderson
2017-10-13 15:51 ` Brian Norris
2017-10-13 16:42 ` Mark Brown
2017-10-13 18:19 ` jeffy
2017-10-13 18:25 ` jeffy
2017-10-13 18:30 ` Dmitry Torokhov
2017-10-13 18:30 ` Dmitry Torokhov [this message]
2017-10-13 18:37 ` Mark Brown
2017-10-13 23:45 ` Dmitry Torokhov
2017-10-14 0:15 ` Rafael J. Wysocki
2017-10-14 8:59 ` Mark Brown
2017-10-13 18:44 ` jeffy
2017-10-13 19:01 ` jeffy
2017-10-13 10:41 ` [RESEND PATCH 2/2] arm64: dts: rockchip: Enable edp disaplay on kevin Jeffy Chen
2017-10-13 13:25 ` Heiko Stuebner
2017-10-13 13:42 ` Emil Renner Berthing
2017-10-13 15:15 ` Emil Renner Berthing
2017-10-13 18:12 ` jeffy
2017-10-13 15:34 ` [RESEND PATCH 0/2] rockchip: kevin: Enable edp display Doug Anderson
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=20171013183006.k6pzcr5tcwsxxtmp@dtor-ws \
--to=dmitry.torokhov@gmail.com \
--cc=briannorris@chromium.org \
--cc=broonie@kernel.org \
--cc=dianders@chromium.org \
--cc=heiko@sntech.de \
--cc=jeffy.chen@rock-chips.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-spi@vger.kernel.org \
/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
all inboxes | Powered by JetHome®