Re: [PATCH 2/2] arm64: dts: rockchip: add eMMC's power domain support for rk3399
From: Doug Anderson
Date: Thu Sep 01 2016 - 17:51:05 EST
Hi,
On Thu, Sep 1, 2016 at 6:45 AM, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
> I was reading the discussion regarding this change and browsing the DT
> documentation around this... Can you guys explain what really goes on
> here, please.
>
> To me, it seems like you are managing one device's resources in one
> separate genpd. One genpd per device. Is that correct?
>
> Perhaps each device actually has its own PM domain and thus it makes
> sense to assign one genpd per device?
I'm not as familiar with genpd as I should be, so hopefully this makes sense.
...in hardware there is a "pd_emmc" that is the power domain for just
eMMC. That will be referenced hooked up via device tree, like:
power-domains = <&power RK3399_PD_EMMC>;
I believe that means that power will automatically be removed whenever
the device is runtime suspended or suspended.
If w're not supporting "autosuspend" and nobody is tweaking anything
manually, then it's possible (I think) that runtime suspend happens at
exactly the same time as suspend. ...but my point was that it was
cleaner to actually do it any restoring in the "runtime resume" hooks
to match what genpd does. This matches what you say: use runtime PM.
...but it also sounds like it might not be terribly important to
restore these values since they're a bit silly to begin with. If
that's true then I guess we don't need to do anything special here.
Did that all make sense (it's entirely possible it didn't since
somehow my brain still hasn't absorbed all runtime PM and genpd
concepts)
-Doug