Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 Oct 2014 00:23:55 +0000 (02:23 +0200)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 Oct 2014 00:23:55 +0000 (02:23 +0200)
Pull x86 platform updates from Ingo Molnar:
 "The main changes in this tree are:

   - fix and update Intel Quark [Galileo] SoC platform support

   - update IOSF chipset side band interface and make it available via
     debugfs

   - enable HPETs on Soekris net6501 and other e6xx based systems"

* 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86: Add cpu_detect_cache_sizes to init_intel() add Quark legacy_cache()
  x86: Quark: Comment setup_arch() to document TLB/PGE bug
  x86/intel/quark: Switch off CR4.PGE so TLB flush uses CR3 instead
  x86/platform/intel/iosf: Add debugfs config option for IOSF
  x86/platform/intel/iosf: Add better description of IOSF driver in config
  x86/platform/intel/iosf: Add Braswell PCI ID
  x86/platform/pmc_atom: Fix warning when CONFIG_DEBUG_FS=n
  x86: HPET force enable for e6xx based systems
  x86/iosf: Add debugfs support
  x86/iosf: Add Kconfig prompt for IOSF_MBI selection

1  2 
arch/x86/Kconfig
include/linux/pci_ids.h

diff --combined arch/x86/Kconfig
index 3eb8a41509b3d8ab531da89df39b20389793b23a,6354964ff9497aa9742c0d1f010532bfa224832d..f2327e88e07cc64236636a9f5973af898be947f1
@@@ -23,13 -23,13 +23,13 @@@ config X8
        def_bool y
        select ARCH_MIGHT_HAVE_ACPI_PDC if ACPI
        select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
 +      select ARCH_HAS_FAST_MULTIPLIER
        select ARCH_MIGHT_HAVE_PC_PARPORT
        select ARCH_MIGHT_HAVE_PC_SERIO
        select HAVE_AOUT if X86_32
        select HAVE_UNSTABLE_SCHED_CLOCK
        select ARCH_SUPPORTS_NUMA_BALANCING if X86_64
        select ARCH_SUPPORTS_INT128 if X86_64
 -      select ARCH_WANTS_PROT_NUMA_PROT_NONE
        select HAVE_IDE
        select HAVE_OPROFILE
        select HAVE_PCSPKR_PLATFORM
        select HAVE_ACPI_APEI if ACPI
        select HAVE_ACPI_APEI_NMI if ACPI
        select ACPI_LEGACY_TABLES_LOOKUP if ACPI
 +      select X86_FEATURE_NAMES if PROC_FS
  
  config INSTRUCTION_DECODER
        def_bool y
@@@ -314,17 -313,6 +314,17 @@@ config SM
  
          If you don't know what to do here, say N.
  
 +config X86_FEATURE_NAMES
 +      bool "Processor feature human-readable names" if EMBEDDED
 +      default y
 +      ---help---
 +        This option compiles in a table of x86 feature bits and corresponding
 +        names.  This is required to support /proc/cpuinfo and a few kernel
 +        messages.  You can disable this to save space, at the expense of
 +        making those few kernel messages show numeric feature bits instead.
 +
 +        If in doubt, say Y.
 +
  config X86_X2APIC
        bool "Support x2apic"
        depends on X86_LOCAL_APIC && X86_64 && IRQ_REMAP
@@@ -491,6 -479,36 +491,36 @@@ config X86_INTEL_LPS
          things like clock tree (common clock framework) and pincontrol
          which are needed by the LPSS peripheral drivers.
  
+ config IOSF_MBI
+       tristate "Intel SoC IOSF Sideband support for SoC platforms"
+       depends on PCI
+       ---help---
+         This option enables sideband register access support for Intel SoC
+         platforms. On these platforms the IOSF sideband is used in lieu of
+         MSR's for some register accesses, mostly but not limited to thermal
+         and power. Drivers may query the availability of this device to
+         determine if they need the sideband in order to work on these
+         platforms. The sideband is available on the following SoC products.
+         This list is not meant to be exclusive.
+          - BayTrail
+          - Braswell
+          - Quark
+         You should say Y if you are running a kernel on one of these SoC's.
+ config IOSF_MBI_DEBUG
+       bool "Enable IOSF sideband access through debugfs"
+       depends on IOSF_MBI && DEBUG_FS
+       ---help---
+         Select this option to expose the IOSF sideband access registers (MCR,
+         MDR, MCRX) through debugfs to write and read register information from
+         different units on the SoC. This is most useful for obtaining device
+         state information for debug and analysis. As this is a general access
+         mechanism, users of this option would have specific knowledge of the
+         device they want to access.
+         If you don't require the option or are in doubt, say N.
  config X86_RDC321X
        bool "RDC R-321x SoC"
        depends on X86_32
@@@ -1597,6 -1615,9 +1627,6 @@@ source kernel/Kconfig.h
  
  config KEXEC
        bool "kexec system call"
 -      select BUILD_BIN2C
 -      select CRYPTO
 -      select CRYPTO_SHA256
        ---help---
          kexec is a system call that implements the ability to shutdown your
          current kernel, and to start another kernel.  It is like a reboot
          interface is strongly in flux, so no good recommendation can be
          made.
  
 +config KEXEC_FILE
 +      bool "kexec file based system call"
 +      select BUILD_BIN2C
 +      depends on KEXEC
 +      depends on X86_64
 +      depends on CRYPTO=y
 +      depends on CRYPTO_SHA256=y
 +      ---help---
 +        This is new version of kexec system call. This system call is
 +        file based and takes file descriptors as system call argument
 +        for kernel and initramfs as opposed to list of segments as
 +        accepted by previous system call.
 +
  config KEXEC_VERIFY_SIG
        bool "Verify kernel signature during kexec_file_load() syscall"
 -      depends on KEXEC
 +      depends on KEXEC_FILE
        ---help---
          This option makes kernel signature verification mandatory for
          kexec_file_load() syscall. If kernel is signature can not be
@@@ -2454,11 -2462,6 +2484,6 @@@ config X86_DMA_REMA
        bool
        depends on STA2X11
  
- config IOSF_MBI
-       tristate
-       default m
-       depends on PCI
  config PMC_ATOM
        def_bool y
          depends on PCI
diff --combined include/linux/pci_ids.h
index 0aa51b45159736988851e61d2d3c2e6cfa70b87b,aa0d39073e9c0475f0362ba05c4ab3ac761af0be..24f97bf74266f423fd52994e959eb7d9694eecc4
  #define PCI_VENDOR_ID_MORETON         0x15aa
  #define PCI_DEVICE_ID_RASTEL_2PORT    0x2000
  
 +#define PCI_VENDOR_ID_VMWARE          0x15ad
 +
  #define PCI_VENDOR_ID_ZOLTRIX         0x15b0
  #define PCI_DEVICE_ID_ZOLTRIX_2BD0    0x2bd0
  
  #define PCI_DEVICE_ID_INTEL_EESSC     0x0008
  #define PCI_DEVICE_ID_INTEL_SNB_IMC   0x0100
  #define PCI_DEVICE_ID_INTEL_IVB_IMC   0x0154
 +#define PCI_DEVICE_ID_INTEL_IVB_E3_IMC        0x0150
  #define PCI_DEVICE_ID_INTEL_HSW_IMC   0x0c00
  #define PCI_DEVICE_ID_INTEL_PXHD_0    0x0320
  #define PCI_DEVICE_ID_INTEL_PXHD_1    0x0321
  #define PCI_DEVICE_ID_INTEL_UNC_R2PCIE        0x3c43
  #define PCI_DEVICE_ID_INTEL_UNC_R3QPI0        0x3c44
  #define PCI_DEVICE_ID_INTEL_UNC_R3QPI1        0x3c45
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_RAS   0x3c71  /* 15.1 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR0  0x3c72  /* 16.2 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR1  0x3c73  /* 16.3 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR2  0x3c76  /* 16.6 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR3  0x3c77  /* 16.7 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_HA0   0x3ca0  /* 14.0 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TA    0x3ca8  /* 15.0 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD0  0x3caa  /* 15.2 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD1  0x3cab  /* 15.3 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD2  0x3cac  /* 15.4 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD3  0x3cad  /* 15.5 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_DDRIO 0x3cb8  /* 17.0 */
  #define PCI_DEVICE_ID_INTEL_JAKETOWN_UBOX     0x3ce0
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_SAD0      0x3cf4  /* 12.6 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_BR                0x3cf5  /* 13.6 */
 +#define PCI_DEVICE_ID_INTEL_SBRIDGE_SAD1      0x3cf6  /* 12.7 */
  #define PCI_DEVICE_ID_INTEL_IOAT_SNB  0x402f
  #define PCI_DEVICE_ID_INTEL_5100_16   0x65f0
  #define PCI_DEVICE_ID_INTEL_5100_19   0x65f3
  #define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601
  #define PCI_DEVICE_ID_INTEL_SCH_LPC   0x8119
  #define PCI_DEVICE_ID_INTEL_SCH_IDE   0x811a
+ #define PCI_DEVICE_ID_INTEL_E6XX_CU   0x8183
  #define PCI_DEVICE_ID_INTEL_ITC_LPC   0x8186
  #define PCI_DEVICE_ID_INTEL_82454GX   0x84c4
  #define PCI_DEVICE_ID_INTEL_82450GX   0x84c5