From patchwork Tue May 12 14:59:42 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joe Konno X-Patchwork-Id: 6388931 X-Patchwork-Delegate: rjw@sisk.pl Return-Path: X-Original-To: patchwork-linux-pm@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 31E24BEEE1 for ; Tue, 12 May 2015 15:01:06 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 4DDF920412 for ; Tue, 12 May 2015 15:01:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B091F2038A for ; Tue, 12 May 2015 15:00:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933152AbbELPA6 (ORCPT ); Tue, 12 May 2015 11:00:58 -0400 Received: from mga02.intel.com ([134.134.136.20]:36305 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932998AbbELPA6 (ORCPT ); Tue, 12 May 2015 11:00:58 -0400 Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga101.jf.intel.com with ESMTP; 12 May 2015 08:00:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,415,1427785200"; d="scan'208";a="693710253" Received: from jbkonno-beef.jf.intel.com ([10.7.197.52]) by orsmga001.jf.intel.com with ESMTP; 12 May 2015 08:00:31 -0700 From: Joe Konno To: rjw@rjwysocki.net Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, viresh.kumar@linaro.org, kristen@linux.intel.com Subject: [PATCH] intel_pstate: set BYT MSR with wrmsrl_on_cpu() Date: Tue, 12 May 2015 07:59:42 -0700 Message-Id: <1431442782-12061-1-git-send-email-joe.konno@linux.intel.com> X-Mailer: git-send-email 2.4.0 In-Reply-To: <1431017979-28349-1-git-send-email-joe.konno@linux.intel.com> References: <1431017979-28349-1-git-send-email-joe.konno@linux.intel.com> Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@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=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 From: Joe Konno Commit 007bea098b86 (intel_pstate: Add setting voltage value for baytrail P states.) introduced byt_set_pstate() with the assumption that it would always be run by the CPU whose MSR is to be written by it. It turns out, however, that is not always the case in practice, so modify byt_set_pstate() to enforce the MSR write done by it to always happen on the right CPU. v2: better commit message, remove For: tag Fixes: 007bea098b86 ("intel_pstate: Add setting voltage value for baytrail P states.") Signed-off-by: Joe Konno --- drivers/cpufreq/intel_pstate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c index 6414661ac1c4..c45d274a75c8 100644 --- a/drivers/cpufreq/intel_pstate.c +++ b/drivers/cpufreq/intel_pstate.c @@ -535,7 +535,7 @@ static void byt_set_pstate(struct cpudata *cpudata, int pstate) val |= vid; - wrmsrl(MSR_IA32_PERF_CTL, val); + wrmsrl_on_cpu(cpudata->cpu, MSR_IA32_PERF_CTL, val); } #define BYT_BCLK_FREQS 5