From: Santosh Shilimkar <santosh.shilimkar@ti.com> To: Viresh Kumar <viresh.kumar@linaro.org>, rjw@rjwysocki.net, shawn.guo@linaro.org Cc: nm@ti.com, linaro-kernel@lists.linaro.org, linux-pm@vger.kernel.org, linux-arm-msm@vger.kernel.org, t.figa@samsung.com, sboyd@codeaurora.org, linux-kernel@vger.kernel.org, thomas.ab@samsung.com, arvind.chauhan@arm.com, spk.linux@gmail.com, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Subject: Re: [PATCH 09/14] cpufreq: cpu0: Move per-cluster initialization code to ->init() Date: Wed, 9 Jul 2014 10:53:35 -0400 [thread overview] Message-ID: <53BD576F.2010408@ti.com> (raw) In-Reply-To: <b26946cc4573904cd1ef0212ad053a983b547c23.1404231535.git.viresh.kumar@linaro.org> On Tuesday 01 July 2014 12:32 PM, Viresh Kumar wrote: > Currently this driver only support platforms on which all CPUs share clock & > voltage lines and there is requirement to support platforms which have separate > clock & voltage lines for CPUs, like Qualcomm's Krait and ARM's big LITTLE. > > Each group of CPUs sharing clock/voltage lines are represented by 'struct > cpufreq_policy' in cpufreq framework. And core calls ->init() once for each > policy. > > Currently we do all initialization/allocation from probe() which wouldn't work > for above scenario. To make it work for these platforms, the first step is to > move all initialization/allocation to ->init() and add ->exit() to do the > reverse of it. > > Also, remove all global variables and allocate space for them at runtime. > > This patch creates 'struct private_data' for keeping all such information and > a pointer to that would be stored in policy->driver_data. > > The changed probe() routine now tries to see if regulator/clocks are available > or we need to defer probe. In case they are available, it registers cpufreq > driver. Otherwise, returns with -EPROBE_DEFER. > > We still *don't* support platforms with separate clock/voltage lines for CPUs. > This would be done in a separate patch. > I scanned this patch and subsequent patches from the series. Since you are modifying the interfaces and bindings, I just think its better if we can address the cases where separate clock lines will be used by CPUs. Surely don't want to increase your work neither want hold the progress of the series but if you look at the changes to the interfaces, they give you a feeling of incompleteness. > Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> > --- Would you able to give some idea about what will it take to address that one remainder case as well as part of this series. Regards, Santosh
WARNING: multiple messages have this Message-ID (diff)
From: Santosh Shilimkar <santosh.shilimkar@ti.com> To: Viresh Kumar <viresh.kumar@linaro.org>, <rjw@rjwysocki.net>, <shawn.guo@linaro.org> Cc: <nm@ti.com>, <linaro-kernel@lists.linaro.org>, <linux-pm@vger.kernel.org>, <linux-arm-msm@vger.kernel.org>, <t.figa@samsung.com>, <sboyd@codeaurora.org>, <linux-kernel@vger.kernel.org>, <thomas.ab@samsung.com>, <arvind.chauhan@arm.com>, <spk.linux@gmail.com>, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Subject: Re: [PATCH 09/14] cpufreq: cpu0: Move per-cluster initialization code to ->init() Date: Wed, 9 Jul 2014 10:53:35 -0400 [thread overview] Message-ID: <53BD576F.2010408@ti.com> (raw) In-Reply-To: <b26946cc4573904cd1ef0212ad053a983b547c23.1404231535.git.viresh.kumar@linaro.org> On Tuesday 01 July 2014 12:32 PM, Viresh Kumar wrote: > Currently this driver only support platforms on which all CPUs share clock & > voltage lines and there is requirement to support platforms which have separate > clock & voltage lines for CPUs, like Qualcomm's Krait and ARM's big LITTLE. > > Each group of CPUs sharing clock/voltage lines are represented by 'struct > cpufreq_policy' in cpufreq framework. And core calls ->init() once for each > policy. > > Currently we do all initialization/allocation from probe() which wouldn't work > for above scenario. To make it work for these platforms, the first step is to > move all initialization/allocation to ->init() and add ->exit() to do the > reverse of it. > > Also, remove all global variables and allocate space for them at runtime. > > This patch creates 'struct private_data' for keeping all such information and > a pointer to that would be stored in policy->driver_data. > > The changed probe() routine now tries to see if regulator/clocks are available > or we need to defer probe. In case they are available, it registers cpufreq > driver. Otherwise, returns with -EPROBE_DEFER. > > We still *don't* support platforms with separate clock/voltage lines for CPUs. > This would be done in a separate patch. > I scanned this patch and subsequent patches from the series. Since you are modifying the interfaces and bindings, I just think its better if we can address the cases where separate clock lines will be used by CPUs. Surely don't want to increase your work neither want hold the progress of the series but if you look at the changes to the interfaces, they give you a feeling of incompleteness. > Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> > --- Would you able to give some idea about what will it take to address that one remainder case as well as part of this series. Regards, Santosh
next prev parent reply other threads:[~2014-07-09 14:53 UTC|newest] Thread overview: 83+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-07-01 16:32 [PATCH 00/14] cpufreq: cpu0: Extend support beyond CPU0, V2 Viresh Kumar 2014-07-01 16:32 ` [PATCH 01/14] of: Create of_property_match() Viresh Kumar 2014-07-01 16:32 ` [PATCH 02/14] clk: Create of_clk_shared_by_cpus() Viresh Kumar 2014-07-01 18:00 ` Stephen Boyd 2014-07-02 1:57 ` Viresh Kumar 2014-07-09 14:38 ` Santosh Shilimkar 2014-07-09 14:38 ` Santosh Shilimkar 2014-07-09 15:20 ` Viresh Kumar [not found] ` <5f7164d789e87c62d722b575980c92dfd0504334.1404231535.git.viresh.kumar@linar o.org> 2014-07-28 14:01 ` Grant Likely 2014-07-28 14:01 ` Grant Likely 2014-07-01 16:32 ` [PATCH 03/14] cpufreq: Add support for per-policy driver data Viresh Kumar 2014-07-09 14:33 ` Santosh Shilimkar 2014-07-09 14:33 ` Santosh Shilimkar 2014-07-09 15:07 ` Viresh Kumar 2014-07-01 16:32 ` [PATCH 04/14] cpufreq: cpu0: Add Module Author Viresh Kumar 2014-07-09 14:42 ` Santosh Shilimkar 2014-07-09 14:42 ` Santosh Shilimkar 2014-07-09 15:08 ` Viresh Kumar 2014-07-09 15:24 ` Santosh Shilimkar 2014-07-01 16:32 ` [PATCH 05/14] cpufreq: cpu0: don't validate clock on clk_put() Viresh Kumar 2014-07-09 14:42 ` Santosh Shilimkar 2014-07-09 14:42 ` Santosh Shilimkar 2014-07-01 16:32 ` [PATCH 06/14] cpufreq: cpu0: defer probe if clock isn't registered yet Viresh Kumar 2014-07-02 5:53 ` Shawn Guo 2014-07-02 5:53 ` Shawn Guo 2014-07-02 5:55 ` Viresh Kumar 2014-07-02 11:32 ` Viresh Kumar 2014-07-03 0:38 ` Stephen Boyd 2014-07-03 2:19 ` Viresh Kumar 2014-07-09 14:43 ` Santosh Shilimkar 2014-07-09 14:43 ` Santosh Shilimkar 2014-07-01 16:32 ` [PATCH 07/14] cpufreq: cpu0: OPPs can be populated at runtime Viresh Kumar 2014-07-01 18:02 ` Stephen Boyd 2014-07-02 2:03 ` Viresh Kumar 2014-07-02 4:03 ` [PATCH V2 Resend " Viresh Kumar 2014-07-09 14:44 ` [PATCH " Santosh Shilimkar 2014-07-09 14:44 ` Santosh Shilimkar 2014-07-09 15:09 ` Viresh Kumar 2014-07-10 11:19 ` Viresh Kumar 2014-07-10 12:39 ` Nishanth Menon 2014-07-10 13:31 ` Santosh Shilimkar 2014-07-10 13:36 ` Viresh Kumar 2014-07-01 16:32 ` [PATCH 08/14] cpufreq: cpu0: use dev_{err|warn|dbg} instead of pr_{err|warn|debug} Viresh Kumar 2014-07-09 14:45 ` Santosh Shilimkar 2014-07-09 14:45 ` Santosh Shilimkar 2014-07-01 16:32 ` [PATCH 09/14] cpufreq: cpu0: Move per-cluster initialization code to ->init() Viresh Kumar 2014-07-03 0:43 ` Stephen Boyd 2014-07-03 2:11 ` Viresh Kumar 2014-07-09 14:53 ` Santosh Shilimkar [this message] 2014-07-09 14:53 ` Santosh Shilimkar 2014-07-09 15:17 ` Viresh Kumar 2014-07-09 15:26 ` Santosh Shilimkar 2014-07-09 15:27 ` Viresh Kumar 2014-07-09 15:29 ` Santosh Shilimkar 2014-07-09 15:33 ` Viresh Kumar 2014-07-01 16:32 ` [PATCH 10/14] cpufreq: cpu0: try regulators with name "cpu-supply" Viresh Kumar 2014-07-01 16:32 ` [PATCH 11/14] cpufreq: cpu0: Make allocate_resources() work for any CPU Viresh Kumar 2014-07-01 16:32 ` [PATCH 12/14] cpufreq: cpu0: Extend support beyond CPU0 Viresh Kumar 2014-07-02 4:03 ` [PATCH V2 Resend " Viresh Kumar 2014-07-01 16:32 ` [PATCH 13/14] cpufreq: cpu0: rename driver and internals to 'cpufreq_generic' Viresh Kumar 2014-07-01 16:32 ` [PATCH 14/14] cpufreq: generic: set platform_{driver|device} '.name' to 'cpufreq-generic' Viresh Kumar 2014-07-02 4:12 ` [PATCH 00/14] cpufreq: cpu0: Extend support beyond CPU0, V2 Viresh Kumar 2014-07-03 1:24 ` Stephen Boyd 2014-07-03 2:44 ` Viresh Kumar 2014-07-03 22:16 ` Mike Turquette 2014-07-04 4:21 ` Viresh Kumar 2014-07-08 4:50 ` Viresh Kumar 2014-07-09 17:41 ` Stephen Boyd 2014-07-16 16:01 ` Viresh Kumar 2014-07-16 17:28 ` Thomas Petazzoni 2014-07-16 21:17 ` Rafael J. Wysocki 2014-07-16 21:18 ` Rafael J. Wysocki 2014-07-17 0:28 ` Viresh Kumar 2014-07-17 7:35 ` Thomas Petazzoni 2014-07-17 7:41 ` Viresh Kumar 2014-07-18 1:02 ` Rafael J. Wysocki 2014-07-18 4:17 ` Viresh Kumar [not found] ` <CAKohpomKzK8pMJs1gv+uXxhd17HtCQyfjSnVYw9KpGz6FwbgDA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2014-07-24 10:48 ` Viresh Kumar 2014-07-24 10:48 ` Viresh Kumar 2014-07-25 14:29 ` Rob Herring [not found] ` <CAL_JsqKqCeU0zs+rS1vxsOeh=Kuw_-gaVHtGU76Lb6TchCTytw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2014-07-25 14:34 ` Viresh Kumar 2014-07-25 14:34 ` Viresh Kumar 2014-07-25 15:41 ` Thomas Petazzoni
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=53BD576F.2010408@ti.com \ --to=santosh.shilimkar@ti.com \ --cc=arvind.chauhan@arm.com \ --cc=linaro-kernel@lists.linaro.org \ --cc=linux-arm-msm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pm@vger.kernel.org \ --cc=lorenzo.pieralisi@arm.com \ --cc=nm@ti.com \ --cc=rjw@rjwysocki.net \ --cc=sboyd@codeaurora.org \ --cc=shawn.guo@linaro.org \ --cc=spk.linux@gmail.com \ --cc=t.figa@samsung.com \ --cc=thomas.ab@samsung.com \ --cc=viresh.kumar@linaro.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.