Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934545Ab3DGXtb (ORCPT ); Sun, 7 Apr 2013 19:49:31 -0400 Received: from mail-ee0-f45.google.com ([74.125.83.45]:39556 "EHLO mail-ee0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934500Ab3DGXt3 (ORCPT ); Sun, 7 Apr 2013 19:49:29 -0400 Message-ID: <51620604.4070204@gmail.com> Date: Mon, 08 Apr 2013 01:49:24 +0200 From: Sebastian Hesselbarth User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130116 Icedove/10.0.12 MIME-Version: 1.0 To: Guenter Roeck CC: Grant Likely , Rob Herring , Rob Landley , Mike Turquette , Stephen Warren , Thierry Reding , Dom Cobley , Linus Walleij , Arnd Bergmann , Andrew Morton , Pawel Moll , Mark Brown , Russell King - ARM Linux , Rabeeh Khoury , Daniel Mack , Jean-Francois Moine , Lars-Peter Clausen , devicetree-discuss@lists.ozlabs.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [v5] clk: add si5351 i2c common clock driver References: <1365139415-17815-1-git-send-email-sebastian.hesselbarth@gmail.com> <20130407225046.GA16326@roeck-us.net> In-Reply-To: <20130407225046.GA16326@roeck-us.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1851 Lines: 48 On 04/08/2013 12:50 AM, Guenter Roeck wrote: > On Fri, Apr 05, 2013 at 05:23:35AM -0000, Sebastian Hesselbarth wrote: >> This patch adds a common clock driver for Silicon Labs Si5351a/b/c >> i2c programmable clock generators. Currently, the driver supports >> DT kernels only and VXCO feature of si5351b is not implemented. DT >> bindings selectively allow to overwrite stored Si5351 configuration >> which is very helpful for clock generators with empty eeprom >> configuration. Corresponding device tree binding documentation is >> also added. >> >> Signed-off-by: Sebastian Hesselbarth >> Tested-by: Daniel Mack >> > [ ... ] > >> +static inline void _si5351_msynth_set_pll_master( >> + struct si5351_driver_data *drvdata, unsigned char num, int is_master) >> +{ >> + unsigned long flags; >> + >> + if (num> 8 || >> + (drvdata->variant == SI5351_VARIANT_A3&& num> 3)) >> + return; >> + >> + flags = __clk_get_flags(drvdata->msynth[num].hw.clk); >> + if (is_master) >> + flags |= CLK_SET_RATE_PARENT; >> + else >> + flags&= ~CLK_SET_RATE_PARENT; >> + __clk_set_flags(drvdata->msynth[num].hw.clk, flags); >> +} >> + > Unless I am missing something, neither __clk_get_flags() nor the new > __clk_set_flags is exported. > > Did you try to build and load the driver as module ? Well, good catch. I didn't try to build v5 as a module, but I guess it will fail. But I consider this as something that has to be addressed in clk framework itself, not in this patch. There will be other clk-providers built as module in the future for sure. Sebastian -- 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/