From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758899AbcHaDPd (ORCPT ); Tue, 30 Aug 2016 23:15:33 -0400 Received: from regular1.263xmail.com ([211.150.99.130]:59544 "EHLO regular1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757955AbcHaDPa (ORCPT ); Tue, 30 Aug 2016 23:15:30 -0400 X-263anti-spam: KSV:0; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 0 X-RL-SENDER: xzy.xu@rock-chips.com X-FST-TO: linux-rockchip@lists.infradead.org X-SENDER-IP: 103.29.142.67 X-LOGIN-NAME: xzy.xu@rock-chips.com X-UNIQUE-TAG: X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Subject: Re: [PATCH v2 4/4] clk: rockchip: remove CLK_IGNORE_UNUSED flag for aclk_emmc_grf on rk3399 To: Shawn Lin , Heiko Stuebner , Rob Herring , Ulf Hansson References: <1472607448-4462-1-git-send-email-shawn.lin@rock-chips.com> <1472607448-4462-5-git-send-email-shawn.lin@rock-chips.com> Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, Douglas Anderson , Adrian Hunter , linux-rockchip@lists.infradead.org From: Ziyuan Xu Message-ID: <7520496e-890c-1f60-6c44-c71ed7c97ad9@rock-chips.com> Date: Wed, 31 Aug 2016 11:15:18 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <1472607448-4462-5-git-send-email-shawn.lin@rock-chips.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2016年08月31日 09:37, Shawn Lin wrote: > aclk_emmc_grf is used for accessing corecfg_* of emmc stuff within > GRF block. We don't need to add CLK_IGNORE_UNUSED for it now as the > emmc driver will enable/disable it explicitly when needed. > > Signed-off-by: Shawn Lin This patchset test result: localhost driver # cat /sys/kernel/debug/clk/clk_summary | grep emmc gpll_aclk_emmc_src 1 1 594000000 0 0 aclk_emmc 3 5 198000000 0 0 aclk_emmcgrf 1 2 198000000 0 0 aclk_emmc_noc 1 1 198000000 0 0 aclk_emmccore 0 0 198000000 0 0 clk_emmc 1 2 148500000 0 0 emmc_cardclock 0 0 148500000 0 0 cpll_aclk_emmc_src 0 0 800000000 0 0 After unbind driver. localhost driver # cat /sys/kernel/debug/clk/clk_summary | grep emmc gpll_aclk_emmc_src 1 1 594000000 0 0 aclk_emmc 1 2 198000000 0 0 aclk_emmcgrf 0 0 198000000 0 0 aclk_emmc_noc 1 1 198000000 0 0 aclk_emmccore 0 0 198000000 0 0 clk_emmc 0 0 148500000 0 0 cpll_aclk_emmc_src 0 0 800000000 0 0 And aclk_emmcgrf(Bit 10, when high, enable clock) had gate. localhost driver # mem r 0xff760380 0x00000415 It works sane, so Tested-by: Ziyuan Xu > --- > > Changes in v2: None > > drivers/clk/rockchip/clk-rk3399.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/clk/rockchip/clk-rk3399.c b/drivers/clk/rockchip/clk-rk3399.c > index ede6c47..908f684 100644 > --- a/drivers/clk/rockchip/clk-rk3399.c > +++ b/drivers/clk/rockchip/clk-rk3399.c > @@ -934,7 +934,7 @@ static struct rockchip_clk_branch rk3399_clk_branches[] __initdata = { > RK3399_CLKGATE_CON(32), 8, GFLAGS), > GATE(ACLK_EMMC_NOC, "aclk_emmc_noc", "aclk_emmc", CLK_IGNORE_UNUSED, > RK3399_CLKGATE_CON(32), 9, GFLAGS), > - GATE(ACLK_EMMC_GRF, "aclk_emmcgrf", "aclk_emmc", CLK_IGNORE_UNUSED, > + GATE(ACLK_EMMC_GRF, "aclk_emmcgrf", "aclk_emmc", 0, > RK3399_CLKGATE_CON(32), 10, GFLAGS), > > /* perilp0 */