From patchwork Tue Jul 1 16:32:36 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Viresh Kumar X-Patchwork-Id: 4460671 Return-Path: X-Original-To: patchwork-linux-arm-msm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 7FF39BEEAA for ; Tue, 1 Jul 2014 16:38:19 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id A57E62015A for ; Tue, 1 Jul 2014 16:38:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 05505203EB for ; Tue, 1 Jul 2014 16:38:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758470AbaGAQei (ORCPT ); Tue, 1 Jul 2014 12:34:38 -0400 Received: from mail-pa0-f46.google.com ([209.85.220.46]:54264 "EHLO mail-pa0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758459AbaGAQef (ORCPT ); Tue, 1 Jul 2014 12:34:35 -0400 Received: by mail-pa0-f46.google.com with SMTP id eu11so10850923pac.19 for ; Tue, 01 Jul 2014 09:34:35 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:in-reply-to:references; bh=Z05qVkfSqewWqayX8r5Z0MRfKh877bnKiCrijubx1/I=; b=dW554Wyl1DKvAiNsGffUJ2V1CUTGbpTIilq6QDE0zurTVA6iMqZeK2UQPFs6kFx3/b AloXSOzbCDtO6JFIGvtIbqBGbFtfT/UIGnZNnncEGnXye+M5DL9fyxjAfuhNUyZ8ag98 sDJ7iaXmja6L1C5vICUtR+T4CKfHc1JrD9yWHvxsZouUEsBogPEUXamcV1in2NpKO0KW R6gXF1fgMrWqw/uzq0/id7IiSVfZxX6uYbbtpCuJIX4f5MOkHUudtokqnEMrYC4ytG6W j3Gp18LcQvIFepGzLmlMGbAzRQPxtZeDnGe/v4RRhPjN30O4YrVsA70nR5JigvN7+ckz lddg== X-Gm-Message-State: ALoCoQkBuOhX4wkq2d0LaITB2onFGeu0S/HeRH4ik4HkPNJDgx/wr9U7FERMqPunySTWFJxuUfyZ X-Received: by 10.68.222.196 with SMTP id qo4mr62849821pbc.14.1404232475134; Tue, 01 Jul 2014 09:34:35 -0700 (PDT) Received: from localhost ([122.166.172.22]) by mx.google.com with ESMTPSA id fv2sm33451184pbd.11.2014.07.01.09.34.28 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 01 Jul 2014 09:34:34 -0700 (PDT) From: Viresh Kumar To: rjw@rjwysocki.net, shawn.guo@linaro.org Cc: linaro-kernel@lists.linaro.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, arvind.chauhan@arm.com, sboyd@codeaurora.org, linux-arm-msm@vger.kernel.org, spk.linux@gmail.com, thomas.ab@samsung.com, nm@ti.com, t.figa@samsung.com, Viresh Kumar Subject: [PATCH 07/14] cpufreq: cpu0: OPPs can be populated at runtime Date: Tue, 1 Jul 2014 22:02:36 +0530 Message-Id: <1ba7771e910084cd0820c19ca5994fe1b3d6451d.1404231535.git.viresh.kumar@linaro.org> X-Mailer: git-send-email 2.0.0.rc2 In-Reply-To: References: In-Reply-To: References: Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham 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 OPPs can be populated statically, via DT, or added at run time with dev_pm_opp_add(). While this driver handles the first case correctly, it would fail to populate OPPs added at runtime. Because call to of_init_opp_table() would fail as there are no OPPs in DT and probe will return early. To fix this, remove error checking and call dev_pm_opp_init_cpufreq_table() unconditionally. Suggested-by: Stephen Boyd Signed-off-by: Viresh Kumar Acked-by: Santosh Shilimkar --- drivers/cpufreq/cpufreq-cpu0.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/cpufreq/cpufreq-cpu0.c b/drivers/cpufreq/cpufreq-cpu0.c index b5b8e1c..f47f703 100644 --- a/drivers/cpufreq/cpufreq-cpu0.c +++ b/drivers/cpufreq/cpufreq-cpu0.c @@ -164,11 +164,8 @@ static int cpu0_cpufreq_probe(struct platform_device *pdev) goto out_put_reg; } - ret = of_init_opp_table(cpu_dev); - if (ret) { - pr_err("failed to init OPP table: %d\n", ret); - goto out_put_clk; - } + /* OPPs might be populated at runtime, don't check for error here */ + of_init_opp_table(cpu_dev); ret = dev_pm_opp_init_cpufreq_table(cpu_dev, &freq_table); if (ret) {