From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751961AbbD3Ctc (ORCPT ); Wed, 29 Apr 2015 22:49:32 -0400 Received: from mail-bl2on0101.outbound.protection.outlook.com ([65.55.169.101]:29990 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751262AbbD3Ct2 (ORCPT ); Wed, 29 Apr 2015 22:49:28 -0400 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none; Date: Thu, 30 Apr 2015 10:37:36 +0800 From: Dong Aisheng To: Dong Aisheng CC: , , , , , , , , , Subject: Re: [PATCH RFC v1 0/5] clk: support clocks which requires parent clock on during operation Message-ID: <20150430023734.GA12685@shlinux1.ap.freescale.net> References: <1429107999-24413-1-git-send-email-aisheng.dong@freescale.com> <20150422061240.GA25437@shlinux1.ap.freescale.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20150422061240.GA25437@shlinux1.ap.freescale.net> User-Agent: Mutt/1.5.20 (2009-06-14) X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:192.88.158.2;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(339900001)(189002)(51704005)(199003)(104016003)(106466001)(92566002)(46102003)(33656002)(5001960100002)(23726002)(83506001)(47776003)(105606002)(50986999)(50466002)(46406003)(77156002)(87936001)(62966003)(19580395003)(76176999)(4001350100001)(2950100001)(77096005)(85426001)(54356999)(97756001)(6806004)(107886002)(110136002)(217873001)(4001450100001)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:BN3PR0301MB1203;H:az84smr01.freescale.net;FPR:;SPF:Fail;MLV:sfv;MX:1;A:1;LANG:en; X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0301MB1203; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BN3PR0301MB1203;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0301MB1203; X-Forefront-PRVS: 056297E276 X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2015 02:49:20.9013 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0301MB1203 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Guys, On Wed, Apr 22, 2015 at 02:12:43PM +0800, Dong Aisheng wrote: > On Wed, Apr 15, 2015 at 10:26:34PM +0800, Dong Aisheng wrote: > > This patch series adds support in clock framework for clocks which operations > > requires its parent clock is on. > > > > Such clock type is initially met on Freescale i.MX7D platform that all clocks > > operations, including enable/disable, rate change and re-parent, requires its > > parent clock on. No sure if any other SoC has the similar clock type. > > > > Current clock core can not support such type of clock well. > > > > This patch introduce a new flag CLK_SET_PARENT_ON to handle this special case > > in clock core that enable its parent clock firstly for each operation and disable > > it later after operation complete. > > > > The most special case is for set_parent() operation which requires both parent, > > old one and new one, to be enabled at the same time during the operation. > > > > Patch 1~3 are minor cleanup & fixes. > > Patch 4 add CLK_SET_PARENT_ON flags in clock core to support such type clocks > > Patch 5 show the need of introducing clk_core_enable_lock and > > clk_core_disable_lock to easily use and reduce duplicated code. > > It can be merged into patch 4 if required. > > > > The patch series is based on for-next branch of Michael's git: > > git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git > > > > Dong Aisheng (5): > > clk: change clk_core name of __clk_set_parent_after > > clk: add missing lock when call clk_core_enable in clk_set_parent > > clk: remove unneeded __clk_enable and __clk_disable > > clk: core: add CLK_SET_PARENT_ON flags to support clocks require > > parent on > > clk: introduce clk_core_enable_lock and clk_core_disable_lock > > functions > > > > Gentle Ping. > Ping again.. Any comments about this patch series? Regards Dong Aisheng > Regards > Dong Aisheng > > > drivers/clk/clk.c | 112 ++++++++++++++++++++++++++++++++++--------- > > include/linux/clk-provider.h | 5 ++ > > 2 files changed, 94 insertions(+), 23 deletions(-) > > > > -- > > 1.9.1 > >