]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge branch 'sfi' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux into...
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 9 Feb 2015 22:43:53 +0000 (23:43 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 9 Feb 2015 22:43:53 +0000 (23:43 +0100)
Pull SFI-based cpufreq driver for v3.20 from Len Brown.

* 'sfi' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
  cpufreq: Add SFI based cpufreq driver support
  SFI: fix compiler warnings

1  2 
arch/x86/include/uapi/asm/msr-index.h
drivers/cpufreq/Makefile

index c8aa65d56027eca717502898daa563b59ba7ca21,4f6dae67dd10587658bf43e4b0c4f806e02aad59..d11e1c57cfc59c9398249f99e611acdac59d4ef8
  #define MSR_CC6_DEMOTION_POLICY_CONFIG        0x00000668
  #define MSR_MC6_DEMOTION_POLICY_CONFIG        0x00000669
  
 +/* Hardware P state interface */
 +#define MSR_PPERF                     0x0000064e
 +#define MSR_PERF_LIMIT_REASONS                0x0000064f
 +#define MSR_PM_ENABLE                 0x00000770
 +#define MSR_HWP_CAPABILITIES          0x00000771
 +#define MSR_HWP_REQUEST_PKG           0x00000772
 +#define MSR_HWP_INTERRUPT             0x00000773
 +#define MSR_HWP_REQUEST               0x00000774
 +#define MSR_HWP_STATUS                        0x00000777
 +
 +/* CPUID.6.EAX */
 +#define HWP_BASE_BIT                  (1<<7)
 +#define HWP_NOTIFICATIONS_BIT         (1<<8)
 +#define HWP_ACTIVITY_WINDOW_BIT               (1<<9)
 +#define HWP_ENERGY_PERF_PREFERENCE_BIT        (1<<10)
 +#define HWP_PACKAGE_LEVEL_REQUEST_BIT (1<<11)
 +
 +/* IA32_HWP_CAPABILITIES */
 +#define HWP_HIGHEST_PERF(x)           (x & 0xff)
 +#define HWP_GUARANTEED_PERF(x)                ((x & (0xff << 8)) >>8)
 +#define HWP_MOSTEFFICIENT_PERF(x)     ((x & (0xff << 16)) >>16)
 +#define HWP_LOWEST_PERF(x)            ((x & (0xff << 24)) >>24)
 +
 +/* IA32_HWP_REQUEST */
 +#define HWP_MIN_PERF(x)               (x & 0xff)
 +#define HWP_MAX_PERF(x)               ((x & 0xff) << 8)
 +#define HWP_DESIRED_PERF(x)           ((x & 0xff) << 16)
 +#define HWP_ENERGY_PERF_PREFERENCE(x) ((x & 0xff) << 24)
 +#define HWP_ACTIVITY_WINDOW(x)                ((x & 0xff3) << 32)
 +#define HWP_PACKAGE_CONTROL(x)                ((x & 0x1) << 42)
 +
 +/* IA32_HWP_STATUS */
 +#define HWP_GUARANTEED_CHANGE(x)      (x & 0x1)
 +#define HWP_EXCURSION_TO_MINIMUM(x)   (x & 0x4)
 +
 +/* IA32_HWP_INTERRUPT */
 +#define HWP_CHANGE_TO_GUARANTEED_INT(x)       (x & 0x1)
 +#define HWP_EXCURSION_TO_MINIMUM_INT(x)       (x & 0x2)
 +
  #define MSR_AMD64_MC0_MASK            0xc0010044
  
  #define MSR_IA32_MCx_CTL(x)           (MSR_IA32_MC0_CTL + 4*(x))
  #define MSR_AMD64_IBSOP_REG_MASK      ((1UL<<MSR_AMD64_IBSOP_REG_COUNT)-1)
  #define MSR_AMD64_IBSCTL              0xc001103a
  #define MSR_AMD64_IBSBRTARGET         0xc001103b
 +#define MSR_AMD64_IBSOPDATA4          0xc001103d
  #define MSR_AMD64_IBS_REG_COUNT_MAX   8 /* includes MSR_AMD64_IBSBRTARGET */
  
  /* Fam 16h MSRs */
  
  #define MSR_IA32_PERF_STATUS          0x00000198
  #define MSR_IA32_PERF_CTL             0x00000199
+ #define INTEL_PERF_CTL_MASK           0xffff
  #define MSR_AMD_PSTATE_DEF_BASE               0xc0010064
  #define MSR_AMD_PERF_STATUS           0xc0010063
  #define MSR_AMD_PERF_CTL              0xc0010062
  
  #define MSR_IA32_TEMPERATURE_TARGET   0x000001a2
  
 +#define MSR_MISC_PWR_MGMT             0x000001aa
 +
  #define MSR_IA32_ENERGY_PERF_BIAS     0x000001b0
  #define ENERGY_PERF_BIAS_PERFORMANCE  0
  #define ENERGY_PERF_BIAS_NORMAL               6
diff --combined drivers/cpufreq/Makefile
index b3ca7b0b2c33aa1ae65b639da68a7c6d328a980b,2e50f55e14d3a3bb2303480677d3043087c2f9af..8b4220ac888b180ba6ef4b1cda06590c5e3ab59f
@@@ -41,6 -41,7 +41,7 @@@ obj-$(CONFIG_X86_P4_CLOCKMOD)         += p4-cl
  obj-$(CONFIG_X86_CPUFREQ_NFORCE2)     += cpufreq-nforce2.o
  obj-$(CONFIG_X86_INTEL_PSTATE)                += intel_pstate.o
  obj-$(CONFIG_X86_AMD_FREQ_SENSITIVITY)        += amd_freq_sensitivity.o
+ obj-$(CONFIG_X86_SFI_CPUFREQ)         += sfi-cpufreq.o
  
  ##################################################################################
  # ARM SoC drivers
@@@ -61,7 -62,8 +62,7 @@@ obj-$(CONFIG_ARM_IMX6Q_CPUFREQ)               += imx
  obj-$(CONFIG_ARM_INTEGRATOR)          += integrator-cpufreq.o
  obj-$(CONFIG_ARM_KIRKWOOD_CPUFREQ)    += kirkwood-cpufreq.o
  obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ)   += omap-cpufreq.o
 -obj-$(CONFIG_PXA25x)                  += pxa2xx-cpufreq.o
 -obj-$(CONFIG_PXA27x)                  += pxa2xx-cpufreq.o
 +obj-$(CONFIG_ARM_PXA2xx_CPUFREQ)      += pxa2xx-cpufreq.o
  obj-$(CONFIG_PXA3xx)                  += pxa3xx-cpufreq.o
  obj-$(CONFIG_ARM_S3C24XX_CPUFREQ)     += s3c24xx-cpufreq.o
  obj-$(CONFIG_ARM_S3C24XX_CPUFREQ_DEBUGFS) += s3c24xx-cpufreq-debugfs.o
@@@ -97,7 -99,6 +98,7 @@@ obj-$(CONFIG_CRIS_MACH_ARTPEC3)               += cri
  obj-$(CONFIG_ETRAXFS)                 += cris-etraxfs-cpufreq.o
  obj-$(CONFIG_IA64_ACPI_CPUFREQ)               += ia64-acpi-cpufreq.o
  obj-$(CONFIG_LOONGSON2_CPUFREQ)               += loongson2_cpufreq.o
 +obj-$(CONFIG_LOONGSON1_CPUFREQ)               += ls1x-cpufreq.o
  obj-$(CONFIG_SH_CPU_FREQ)             += sh-cpufreq.o
  obj-$(CONFIG_SPARC_US2E_CPUFREQ)      += sparc-us2e-cpufreq.o
  obj-$(CONFIG_SPARC_US3_CPUFREQ)               += sparc-us3-cpufreq.o