From patchwork Fri Aug 7 11:59:16 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartlomiej Zolnierkiewicz X-Patchwork-Id: 6968511 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 72814C05AC for ; Fri, 7 Aug 2015 12:00:40 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 2C46220622 for ; Fri, 7 Aug 2015 12:00:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 31DD020620 for ; Fri, 7 Aug 2015 12:00:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752558AbbHGMAX (ORCPT ); Fri, 7 Aug 2015 08:00:23 -0400 Received: from mailout1.samsung.com ([203.254.224.24]:35740 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752303AbbHGMAW (ORCPT ); Fri, 7 Aug 2015 08:00:22 -0400 Received: from epcpsbgm2new.samsung.com (epcpsbgm2 [203.254.230.27]) by mailout1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0NSP00NQLO005480@mailout1.samsung.com>; Fri, 07 Aug 2015 21:00:19 +0900 (KST) X-AuditID: cbfee61b-f79706d000001b96-65-55c49dd31930 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2new.samsung.com (EPCPMTA) with SMTP id 22.41.07062.3DD94C55; Fri, 7 Aug 2015 21:00:19 +0900 (KST) Received: from amdc1976.localnet ([106.120.53.102]) by mmp2.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0NSP00NS3O0H4200@mmp2.samsung.com>; Fri, 07 Aug 2015 21:00:18 +0900 (KST) From: Bartlomiej Zolnierkiewicz To: "Rafael J. Wysocki" Cc: Viresh Kumar , Thomas Abraham , Sylwester Nawrocki , Michael Turquette , Kukjin Kim , Kukjin Kim , Krzysztof Kozlowski , Tomasz Figa , Lukasz Majewski , Heiko Stuebner , Chanwoo Choi , Kevin Hilman , Javier Martinez Canillas , Tobias Jakobi , Anand Moon , linux-samsung-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Javier Martinez Canillas Subject: [PATCH v3] cpufreq-dt: make scaling_boost_freqs sysfs attr available when boost is enabled Date: Fri, 07 Aug 2015 13:59:16 +0200 Message-id: <2130756.euuUs9t9I5@amdc1976> User-Agent: KMail/4.13.3 (Linux/3.13.0-57-generic; KDE/4.13.3; x86_64; ; ) MIME-version: 1.0 Content-transfer-encoding: 7Bit Content-type: text/plain; charset=us-ascii X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrPIsWRmVeSWpSXmKPExsVy+t9jQd3Lc4+EGkz9ImBx/ctzVov/j16z Wlz7PYPN4s3bNUwWr18YWvQuuMpm0f/4NbPF18MrGC3ePNzMaLHp8TVWi48991gtLu+aw2bx ufcIo8WM8/uYLNZtvMVucfGUq8WZ05dYLQ6/aWe16FjGaNG2+gOrxapdfxgtNn71cBDzeH+j ld3j7+xWZo+ds+6ye2xa1cnmcefaHjaPzUvqPf4dY/fY0g8U3nK1ncWjb8sqRo/t1+Yxe3ze JBfAE8Vlk5Kak1mWWqRvl8CV8enLAuaCrcIVl3/+Zm5g3CbQxcjJISFgItFxq4MZwhaTuHBv PVsXIxeHkMAsRokHK16ygiSEBL4COZO9QWw2ASuJie2rGEFsEQFtibk9p5hBGpgFjrFJXPu9 iB0kISyQKnH49Wwwm0VAVWLRlFdgG3gFNCWWTPkK1iwq4CXx/VcDVFxQ4sfkeywgNrOAvMS+ /VNZIWwtifU7jzNNYOSbhaRsFpKyWUjKFjAyr2KUSC1ILihOSs81ykst1ytOzC0uzUvXS87P 3cQIjsZn0jsYD+9yP8QowMGoxMOb8O9wqBBrYllxZe4hRgkOZiUR3gmzj4QK8aYkVlalFuXH F5XmpBYfYpTmYFES59U32RQqJJCeWJKanZpakFoEk2Xi4JRqYKyLlzqs7cobfM7mxNozNVMV ZbZv2GakLqq0ea9Pf13FsrNFIk0lWo4fNDKP/dJb/vpN7bVgx/OrfM88fM19eOZSw+ojKlen 6AWfsCpddmbt6XOdOcXHanYuYul3Efqz4UDFQjEj70vzStz3Rcyfe+SMEHvs5oP6CTrH1mnV mvW/mPLjdE783SglluKMREMt5qLiRACOBL+cwgIAAA== Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Make scaling_boost_freqs sysfs attribute is available when cpufreq-dt driver is used and boost support is enabled. Cc: Thomas Abraham Cc: Javier Martinez Canillas Cc: Krzysztof Kozlowski Suggested-by: Viresh Kumar Acked-by: Viresh Kumar Signed-off-by: Bartlomiej Zolnierkiewicz --- v2: Removed leftover prototype. v3: added missing Acked-by Sorry for two resends, this is not my day.. Rafael, please apply for v4.3. drivers/cpufreq/cpufreq-dt.c | 9 ++++++++- include/linux/cpufreq.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c index b9259ab..c3583cd 100644 --- a/drivers/cpufreq/cpufreq-dt.c +++ b/drivers/cpufreq/cpufreq-dt.c @@ -36,6 +36,12 @@ struct private_data { unsigned int voltage_tolerance; /* in percentage */ }; +static struct freq_attr *cpufreq_dt_attr[] = { + &cpufreq_freq_attr_scaling_available_freqs, + NULL, /* Extra space for boost-attr if required */ + NULL, +}; + static int set_target(struct cpufreq_policy *policy, unsigned int index) { struct dev_pm_opp *opp; @@ -336,6 +342,7 @@ static int cpufreq_init(struct cpufreq_policy *policy) ret = cpufreq_enable_boost_support(); if (ret) goto out_free_cpufreq_table; + cpufreq_dt_attr[1] = &cpufreq_freq_attr_scaling_boost_freqs; } policy->cpuinfo.transition_latency = transition_latency; @@ -411,7 +418,7 @@ static struct cpufreq_driver dt_cpufreq_driver = { .exit = cpufreq_exit, .ready = cpufreq_ready, .name = "cpufreq-dt", - .attr = cpufreq_generic_attr, + .attr = cpufreq_dt_attr, }; static int dt_cpufreq_probe(struct platform_device *pdev) diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h index 95f0186..657542d 100644 --- a/include/linux/cpufreq.h +++ b/include/linux/cpufreq.h @@ -609,6 +609,7 @@ struct cpufreq_frequency_table *cpufreq_frequency_get_table(unsigned int cpu); /* the following are really really optional */ extern struct freq_attr cpufreq_freq_attr_scaling_available_freqs; +extern struct freq_attr cpufreq_freq_attr_scaling_boost_freqs; extern struct freq_attr *cpufreq_generic_attr[]; int cpufreq_table_validate_and_show(struct cpufreq_policy *policy, struct cpufreq_frequency_table *table);