From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pierre-Louis Bossart Subject: Re: [alsa-devel] [PATCH v6 1/3] clk: x86: Add Atom PMC platform clocks Date: Mon, 19 Dec 2016 10:11:49 -0600 Message-ID: <7f3d03dc-24fe-ec3f-4a3b-926c28f0ac86@linux.intel.com> References: <1481306510-7471-1-git-send-email-irina.tirdea@intel.com> <1481306510-7471-2-git-send-email-irina.tirdea@intel.com> <20161213232524.GQ5423@codeaurora.org> <32235fb3-0d54-211d-28f4-4655e4bc7812@linux.intel.com> <20161217013337.GW5423@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-clk-owner@vger.kernel.org To: Andy Shevchenko , Stephen Boyd Cc: ALSA Development Mailing List , linux-clk@vger.kernel.org, Irina Tirdea , Pierre-Louis Bossart , Michael Turquette , "x86@kernel.org" , "Rafael J. Wysocki" , "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" , Ingo Molnar , Mark Brown , "H. Peter Anvin" , Darren Hart , Takashi Iwai , platform-driver-x86@vger.kernel.org, Thomas Gleixner , Len Brown List-Id: linux-acpi@vger.kernel.org On 12/17/16 7:57 AM, Andy Shevchenko wrote: > On Sat, Dec 17, 2016 at 3:33 AM, Stephen Boyd wrote: >> On 12/15, Pierre-Louis Bossart wrote: > >>> Clients use devm_clk_get() with a "pmc_plt_clk_" >>> argument. >> >> This is the problem. Clients should be calling clk_get() like: >> >> clk_get(dev, "signal name in datasheet") >> >> where the first argument is the device and the second argument is >> some string that is meaningful to the device, not the system as a >> whole. The way clkdev is intended is so that the dev argument's >> dev_name() is combined with the con_id that matches some signale >> name in the datasheet. This way when the same IP is put into some >> other chip, the globally unique name doesn't need to change, just >> the device name that's registered with the lookup. Obviously this >> breaks down quite badly when dev_name() isn't stable. Is that >> happening here? > > PMC Atom is a PCI device and thus each platform would have different > dev_name(). Do you want to list all in each consumer if consumer wants > to work on all of them or I missed something? > > So, the question is how clock getting will look like to work on > currently both CherryTrail and BayTrail. The name pmc_plt_clk_ follows the data sheet specification, where this convention is suggested: PLT_CLK[2:0] - Camera PLT_CLK[3] - Audio Codec PLT_CLK[4] - PLT_CLK[5] - COMMs These clocks are not internal but are made available to external components through dedicated physical pins on the package, this external visibility limits the scope for confusions, variations. I have not seen any skews where these clocks and pins were changed at all.