From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v3 06/11] x86/intel_pstate: the main boby of the intel_pstate driver Date: Thu, 11 Jun 2015 10:00:45 -0400 Message-ID: <5579948D.5060105@citrix.com> References: <1434011265-17256-1-git-send-email-wei.w.wang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1434011265-17256-1-git-send-email-wei.w.wang@intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Wei Wang , xen-devel@lists.xen.org, jbeulich@suse.com Cc: andrew.cooper3@citrix.com List-Id: xen-devel@lists.xenproject.org Hi Wei, On 11/06/2015 04:27, Wei Wang wrote: > diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h > index d10e4c7..71bb45c 100644 > --- a/xen/include/acpi/cpufreq/cpufreq.h > +++ b/xen/include/acpi/cpufreq/cpufreq.h > @@ -34,6 +34,12 @@ struct acpi_cpufreq_data { > > extern struct acpi_cpufreq_data *cpufreq_drv_data[NR_CPUS]; > > +/* > + * Maximum transition latency is in nanoseconds - if it's unknown, > + * CPUFREQ_ETERNAL shall be used. > + */ > +#define CPUFREQ_ETERNAL (-1) > + > struct cpufreq_cpuinfo { > unsigned int max_freq; > unsigned int second_max_freq; /* P1 if Turbo Mode is on */ > @@ -77,6 +83,8 @@ struct cpufreq_policy { > }; > DECLARE_PER_CPU(struct cpufreq_policy *, cpufreq_cpu_policy); > > +extern int intel_pstate_init(void); > + As said on a previous version [1], intel_pstate_init is x86 specific. Although xen/include/acpi contains common headers. Please move everything x86 specific in asm-x86. > extern int __cpufreq_set_policy(struct cpufreq_policy *data, > struct cpufreq_policy *policy); > > @@ -101,6 +109,12 @@ struct cpufreq_freqs { > * CPUFREQ GOVERNORS * > *********************************************************************/ > > +/* The four internal governors used in intel_pstate */ > +#define CPUFREQ_POLICY_POWERSAVE (1) > +#define CPUFREQ_POLICY_PERFORMANCE (2) > +#define CPUFREQ_POLICY_USERSPACE (3) > +#define CPUFREQ_POLICY_ONDEMAND (4) > + From the comment, this looks like x86 specific. Maybe even intel_pstate? > #define CPUFREQ_GOV_START 1 > #define CPUFREQ_GOV_STOP 2 > #define CPUFREQ_GOV_LIMITS 3 > diff --git a/xen/include/asm-x86/cpufeature.h b/xen/include/asm-x86/cpufeature.h > index 7963a3a..efc9711 100644 > --- a/xen/include/asm-x86/cpufeature.h > +++ b/xen/include/asm-x86/cpufeature.h > @@ -69,6 +69,7 @@ > #define X86_FEATURE_XTOPOLOGY (3*32+13) /* cpu topology enum extensions */ > #define X86_FEATURE_CPUID_FAULTING (3*32+14) /* cpuid faulting */ > #define X86_FEATURE_CLFLUSH_MONITOR (3*32+15) /* clflush reqd with monitor */ > +#define X86_FEATURE_APERFMPERF (3*32+28) /* APERFMPERF */ > > /* Intel-defined CPU features, CPUID level 0x00000001 (ecx), word 4 */ > #define X86_FEATURE_XMM3 (4*32+ 0) /* Streaming SIMD Extensions-3 */ Regards, [1] http://lists.xen.org/archives/html/xen-devel/2015-04/msg02904.html -- Julien Grall