lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ceba6a89-6945-58c5-62e4-7d842cfa2312@rock-chips.com>
Date:   Mon, 29 Aug 2016 11:25:19 +0800
From:   Shawn Lin <shawn.lin@...k-chips.com>
To:     Elaine Zhang <zhangqing@...k-chips.com>, robh+dt@...nel.org,
        heiko@...ech.de
Cc:     Ziyuan Xu <xzy.xu@...k-chips.com>, ulf.hansson@...aro.org,
        shawn.lin@...k-chips.com, Mark Rutland <mark.rutland@....com>,
        devicetree@...r.kernel.org,
        Catalin Marinas <catalin.marinas@....com>,
        Xing Zheng <zhengxing@...k-chips.com>,
        Masahiro Yamada <yamada.masahiro@...ionext.com>,
        Frank Wang <frank.wang@...k-chips.com>,
        Brian Norris <briannorris@...omium.org>,
        Will Deacon <will.deacon@....com>,
        linux-kernel@...r.kernel.org,
        Douglas Anderson <dianders@...omium.org>,
        linux-rockchip@...ts.infradead.org,
        Jianqun Xu <jay.xu@...k-chips.com>,
        David Wu <david.wu@...k-chips.com>,
        Shunqian Zheng <zhengsq@...k-chips.com>,
        linux-arm-kernel@...ts.infradead.org,
        Caesar Wang <wxt@...k-chips.com>
Subject: Re: [PATCH 2/2] arm64: dts: rockchip: add eMMC's power domain support
 for rk3399

On 2016/8/29 10:50, Elaine Zhang wrote:
>
>
> On 08/27/2016 11:05 PM, Shawn Lin wrote:
>> On 2016/8/27 21:41, Ziyuan Xu wrote:
>>> Control power domain for eMMC via genpd to reduce power consumption.
>>>
>>> Signed-off-by: Elaine Zhang <zhangqing@...k-chips.com>
>>> Signed-off-by: Ziyuan Xu <xzy.xu@...k-chips.com>
>>>
>>
>> It looks nice to me. But this should be merged after applying that[0]
>> as your patch will break bind/unbind test for sdhci-of-arasan on rk3399
>> without it[0]. Moreover, Elaine should make sure that upstreamed
>> rockchip power domain stuff would not off pd for emmc, *otherwise*, I
>> should update my patch to make sure we update clkmul every time when
>> doing suspend 2 resume..
>>
>>
> Forgot to say:
> If use pd, Although there is no call to power odd the pd_emmc,
> it will be power off when the system doing suspend 2 resume.
> (Because the system call
> __device_suspend_noirq->pm_genpd_suspend_noirq->rockchip_pd_power_off)

Thanks for explaining this. I checked the code a bit and actually I
don't need to updata clkmul since it was recorded, although it is still
reset to 0x10 reading from syscon. So for that, we can now pick it
up without waiting for my sdhci-of-arasan's update.

Reviewed-by: Shawn Lin <shawn.lin@...k-chips.com>



>
> And it's important to note:
> If the pd has been power off, some grf regs will be back to the default
> value.(which grf regs in this pd)
> So if the pd support power off , this grf regs need to save and restore
> or reinit.
> For example:
> pd_emmc
>     aclk_emmc_grf
>
> If the pd is always on,and this pd have wakeup func.
> The device need to add device_init_wakeup() to make the pd always on
> when the system doing suspend 2 resume.
>
>>
>> [0]: https://patchwork.kernel.org/patch/9300971/
>>
>>> ---
>>>
>>>  arch/arm64/boot/dts/rockchip/rk3399.dtsi | 11 +++++++++++
>>>  1 file changed, 11 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
>>> b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
>>> index 32aebc8..71733d4 100644
>>> --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
>>> +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
>>> @@ -239,6 +239,7 @@
>>>          #clock-cells = <0>;
>>>          phys = <&emmc_phy>;
>>>          phy-names = "phy_arasan";
>>> +        power-domains = <&power RK3399_PD_EMMC>;
>>>          status = "disabled";
>>>      };
>>>
>>> @@ -611,6 +612,11 @@
>>>          status = "disabled";
>>>      };
>>>
>>> +    qos_emmc: qos@...58000 {
>>> +        compatible = "syscon";
>>> +        reg = <0x0 0xffa58000 0x0 0x20>;
>>> +    };
>>> +
>>>      qos_hdcp: qos@...90000 {
>>>          compatible = "syscon";
>>>          reg = <0x0 0xffa90000 0x0 0x20>;
>>> @@ -739,6 +745,11 @@
>>>              };
>>>
>>>              /* These power domains are grouped by VD_LOGIC */
>>> +            pd_emmc@...399_PD_EMMC {
>>> +                reg = <RK3399_PD_EMMC>;
>>> +                clocks = <&cru ACLK_EMMC>;
>>> +                pm_qos = <&qos_emmc>;
>>> +            };
>>>              pd_vio@...399_PD_VIO {
>>>                  reg = <RK3399_PD_VIO>;
>>>                  #address-cells = <1>;
>>>
>>
>>
>
>
>


-- 
Best Regards
Shawn Lin

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ