Received: by 2002:a4a:311b:0:0:0:0:0 with SMTP id k27-v6csp4237914ooa; Tue, 14 Aug 2018 03:15:47 -0700 (PDT) X-Google-Smtp-Source: AA+uWPxwoQxNQCihJ/CnOtSBIuZOXJKsyxdKC8fRZT7IZmyDatdMP2ADa5tUTjrR+1PlgeQcIq4T X-Received: by 2002:a17:902:6a83:: with SMTP id n3-v6mr19815044plk.246.1534241747695; Tue, 14 Aug 2018 03:15:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1534241747; cv=none; d=google.com; s=arc-20160816; b=T26bTCy8qwjIfH2Wo/P4WYGDwdkQNVvw3phUISw4KknGWDRn7UgSAVchxV3UAEkUaV CtkXWFNCUHA/uaOo6+XPkw+wMUetHi/9sj01DTHx/FXh8zXBj4+Mka7gPaGlw21mBn4W XGpJTPzhHE7QJ/6mhzN/qqqWWvgIt9DsDZtgqaL4TRRSwhkmlut4UE6jMOzMBQurkEEn 3hMQ/Ar6fAVX2W4ab+ckjoWXAwrHw/alDauKko+A944YPJYpUM8C0EcK53U+Zr5mX5ko oOLLh0tMFMsBNBIPQn6dBuDu8lGLtQUWsZZEbAqzkTzPrtr1RARP0epyjgeWqYQHFp/4 QRmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=8sNNixamjh2D6IVuQW0Pj4ttRURZC0c+cHKPwnX3BuU=; b=bZkR7mnh1aebmB87jrOl8/FMPjqUCUSsasgG/Fr5SzqVuWHB7h4QaY67eq7lOM7+hC yTskJkx4agxQ3zsYBiEwo7eowSk45u9BzX0RhWlzoe/sTuD69BibO9J+lGVOiEFGdH81 6WKG4Kd8qisj/EojcWDm6VHQDghZmInqDtqiSQsOQ/vIwzqEH/EuT9Rt+85FgoQSAFEs vMI+gJ0I8Fli72XouW6M0puZZ/7Ekxw3Br85YbqRS1O8wtanRszHeQsaJPqGRm7nOrva Hg4KLFNoZ/OESk5U0UGw9T5C+4vfMxsODViG6qbzEYdkQWQfbss4TEGzlxpnOrR1avxo AazQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p2-v6si18466239pli.289.2018.08.14.03.15.30; Tue, 14 Aug 2018 03:15:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732162AbeHNNBK (ORCPT + 99 others); Tue, 14 Aug 2018 09:01:10 -0400 Received: from cloudserver094114.home.pl ([79.96.170.134]:60298 "EHLO cloudserver094114.home.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732055AbeHNNBJ (ORCPT ); Tue, 14 Aug 2018 09:01:09 -0400 Received: from 79.184.254.66.ipv4.supernova.orange.pl (79.184.254.66) (HELO aspire.rjw.lan) by serwer1319399.home.pl (79.96.170.134) with SMTP (IdeaSmtpServer 0.83) id 1903da7fc614f69d; Tue, 14 Aug 2018 12:14:38 +0200 From: "Rafael J. Wysocki" To: Pu Wen Cc: tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com, x86@kernel.org, thomas.lendacky@amd.com, bp@alien8.de, pbonzini@redhat.com, viresh.kumar@linaro.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-pm@vger.kernel.org Subject: Re: [PATCH v3 15/17] driver/cpufreq: enable Hygon support to cpufreq driver Date: Tue, 14 Aug 2018 12:12:29 +0200 Message-ID: <4011042.yx3xh8JzSX@aspire.rjw.lan> In-Reply-To: <36b1edf4bd9e203f8e14fa5b90a5a197fdf13898.1533989493.git.puwen@hygon.cn> References: <36b1edf4bd9e203f8e14fa5b90a5a197fdf13898.1533989493.git.puwen@hygon.cn> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Saturday, August 11, 2018 3:29:52 PM CEST Pu Wen wrote: > Enable ACPI cpufreq driver support for Hygon by adding family ID check > along with AMD. > > As Hygon platforms have SMBus device(PCI device ID 0x790b), enable Hygon > support to function amd_freq_sensitivity_init(). > > Signed-off-by: Pu Wen > --- > drivers/cpufreq/acpi-cpufreq.c | 5 +++++ > drivers/cpufreq/amd_freq_sensitivity.c | 9 +++++++-- > 2 files changed, 12 insertions(+), 2 deletions(-) > > diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c > index b61f4ec..d62fd37 100644 > --- a/drivers/cpufreq/acpi-cpufreq.c > +++ b/drivers/cpufreq/acpi-cpufreq.c > @@ -61,6 +61,7 @@ enum { > > #define INTEL_MSR_RANGE (0xffff) > #define AMD_MSR_RANGE (0x7) > +#define HYGON_MSR_RANGE (0x7) > > #define MSR_K7_HWCR_CPB_DIS (1ULL << 25) > > @@ -95,6 +96,7 @@ static bool boost_state(unsigned int cpu) > rdmsr_on_cpu(cpu, MSR_IA32_MISC_ENABLE, &lo, &hi); > msr = lo | ((u64)hi << 32); > return !(msr & MSR_IA32_MISC_ENABLE_TURBO_DISABLE); > + case X86_VENDOR_HYGON: > case X86_VENDOR_AMD: > rdmsr_on_cpu(cpu, MSR_K7_HWCR, &lo, &hi); > msr = lo | ((u64)hi << 32); > @@ -113,6 +115,7 @@ static int boost_set_msr(bool enable) > msr_addr = MSR_IA32_MISC_ENABLE; > msr_mask = MSR_IA32_MISC_ENABLE_TURBO_DISABLE; > break; > + case X86_VENDOR_HYGON: > case X86_VENDOR_AMD: > msr_addr = MSR_K7_HWCR; > msr_mask = MSR_K7_HWCR_CPB_DIS; > @@ -225,6 +228,8 @@ static unsigned extract_msr(struct cpufreq_policy *policy, u32 msr) > > if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD) > msr &= AMD_MSR_RANGE; > + else if (boot_cpu_data.x86_vendor == X86_VENDOR_HYGON) > + msr &= HYGON_MSR_RANGE; > else > msr &= INTEL_MSR_RANGE; > > diff --git a/drivers/cpufreq/amd_freq_sensitivity.c b/drivers/cpufreq/amd_freq_sensitivity.c > index be926d9..4ac7c3c 100644 > --- a/drivers/cpufreq/amd_freq_sensitivity.c > +++ b/drivers/cpufreq/amd_freq_sensitivity.c > @@ -111,11 +111,16 @@ static int __init amd_freq_sensitivity_init(void) > { > u64 val; > struct pci_dev *pcidev; > + unsigned int pci_vendor; > > - if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD) > + if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD) > + pci_vendor = PCI_VENDOR_ID_AMD; > + else if (boot_cpu_data.x86_vendor == X86_VENDOR_HYGON) > + pci_vendor = PCI_VENDOR_ID_HYGON; > + else > return -ENODEV; > > - pcidev = pci_get_device(PCI_VENDOR_ID_AMD, > + pcidev = pci_get_device(pci_vendor, > PCI_DEVICE_ID_AMD_KERNCZ_SMBUS, NULL); > > if (!pcidev) { > Acked-by: Rafael J. Wysocki