Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934301AbbHKMDV (ORCPT ); Tue, 11 Aug 2015 08:03:21 -0400 Received: from mail-wi0-f179.google.com ([209.85.212.179]:38136 "EHLO mail-wi0-f179.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934266AbbHKMDS (ORCPT ); Tue, 11 Aug 2015 08:03:18 -0400 Date: Tue, 11 Aug 2015 13:03:12 +0100 From: Lee Jones To: Geert Uytterhoeven Cc: Maxime Coquelin , Michael Turquette , "linux-kernel@vger.kernel.org" , linux-clk@vger.kernel.org, Stephen Boyd , Maxime Ripard , Sascha Hauer Subject: Re: [PATCH RFC RFT 3/3] clk: introduce CLK_ENABLE_HAND_OFF flag Message-ID: <20150811120312.GF18282@x1> References: <1438974570-20812-1-git-send-email-mturquette@baylibre.com> <1438974570-20812-4-git-send-email-mturquette@baylibre.com> <20150810144811.GN3249@x1> <20150810185516.2416.32293@quantum> <20150811084329.GA13374@x1> <55C9C82F.6060401@st.com> <55C9DE57.2090105@st.com> <55C9DF7B.4040308@st.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1994 Lines: 49 On Tue, 11 Aug 2015, Geert Uytterhoeven wrote: > Hi Maxime, > > On Tue, Aug 11, 2015 at 1:41 PM, Maxime Coquelin wrote: > > On 08/11/2015 01:36 PM, Maxime Coquelin wrote: > >> On 08/11/2015 12:11 PM, Geert Uytterhoeven wrote: > >>> On Tue, Aug 11, 2015 at 12:02 PM, Maxime Coquelin > >>> wrote: > >>>> How can we pass CLK_ENABLE_HAND_OFF flag to a specific clock on STi > >>>> platform? > >>> > >>> Add the flag to the relevant clocks in the C code, e.g. in > >>> clk_register_flexgen(): > >>> > >>> if (!strcmp(name, "clk-icn-cpu")) > >>> init.flags |= CLK_ENABLE_HAND_OFF; > > > > The main problem I see with this proposal is that clk_register_flexgen() is > > called for several SoCs (STiH407/410/418...). > > Each of these SoCs have this clock, but maybe STiH407 will need the flag, > > but not STiH410 and STiH418. > > So I think the best place to set this information is in DT, where the > > differentiation is made between the SoCs. > > If (of_machine_is_compatible("st,stih410")) ... This is getting very messy. Ideally we'd like to keep platform code out of device drivers. Critical clock description belongs in DT for our use-case. We can write code to extract the information from there and set the flag is Mike's solution is deemed appropriate. With regards to your "Software Policy Vs Hardware Description" comment; we already have 10's of "Software Policy" bindings which do not describe hardware in the purest sense; frequency specifications, line/voltage levels, GPIO configuration, the list goes on. -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/