Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 4 Feb 2008 23:29:53 +0000 (15:29 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 4 Feb 2008 23:29:53 +0000 (15:29 -0800)
* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (44 commits)
  [ARM] 4822/1: RealView: Change the REALVIEW_MPCORE configuration option
  [ARM] 4821/1: RealView: Remove the platform dependencies from localtimer.c
  [ARM] 4820/1: RealView: Select the timer IRQ at run-time
  [ARM] 4819/1: RealView: Fix entry-macro.S to work with multiple platforms
  [ARM] 4818/1: RealView: Add core-tile detection
  [ARM] 4817/1: RealView: Move the AMBA resource definitions to realview_eb.c
  [ARM] 4816/1: RealView: Move the platform-specific definitions into board-eb.h
  [ARM] 4815/1: RealView: Add clockevents suport for the local timers
  [ARM] 4814/1: RealView: Add broadcasting clockevents support for ARM11MPCore
  [ARM] 4813/1: Add SMP helper functions for clockevents support
  [ARM] 4812/1: RealView: clockevents support for the RealView platforms
  [ARM] 4811/1: RealView: clocksource support for the RealView platforms
  [ARM] 4736/1: Export atags to userspace and allow kexec to use customised atags
  [ARM] 4798/1: pcm027: fix missing header file
  [ARM] 4803/1: pxa: fix building issue of poodle.c caused by patch 4737/1
  [ARM] 4801/1: pxa: fix building issues of missing pxa2xx-regs.h
  [ARM] pxa: introduce sysdev for pxa3xx static memory controller
  [ARM] pxa: add preliminary suspend/resume code for pxa3xx
  [ARM] pxa: introduce sysdev for GPIO register saving/restoring
  [ARM] pxa: introduce sysdev for IRQ register saving/restoring
  ...

1  2 
arch/arm/Kconfig
include/asm-arm/arch-ixp4xx/ixp4xx-regs.h

diff --combined arch/arm/Kconfig
index 471637002e8b3f867ceda2816890ac9e55214a28,9d8b7f9bca1df42fc7961d5b6d36ea3308668501..64d19eff3faaacdf56eb0f6b6882518cf72d2bbb
@@@ -10,8 -10,6 +10,8 @@@ config AR
        default y
        select RTC_LIB
        select SYS_SUPPORTS_APM_EMULATION
 +      select HAVE_OPROFILE
 +      select HAVE_KPROBES if (!XIP_KERNEL)
        help
          The ARM series is a line of low-power-consumption RISC chip designs
          licensed by ARM Ltd and targeted at embedded applications and
@@@ -35,6 -33,11 +35,11 @@@ config GENERIC_CLOCKEVENT
        bool
        default n
  
+ config GENERIC_CLOCKEVENTS_BROADCAST
+       bool
+       depends on GENERIC_CLOCKEVENTS
+       default y if SMP && !LOCAL_TIMERS
  config MMU
        bool
        default y
@@@ -137,23 -140,6 +142,23 @@@ config FI
  config ARCH_MTD_XIP
        bool
  
 +if OPROFILE
 +
 +config OPROFILE_ARMV6
 +      def_bool y
 +      depends on CPU_V6 && !SMP
 +      select OPROFILE_ARM11_CORE
 +
 +config OPROFILE_MPCORE
 +      def_bool y
 +      depends on CPU_V6 && SMP
 +      select OPROFILE_ARM11_CORE
 +
 +config OPROFILE_ARM11_CORE
 +      bool
 +
 +endif
 +
  config VECTORS_BASE
        hex
        default 0xffff0000 if MMU || CPU_HIGH_VECTOR
@@@ -187,6 -173,8 +192,8 @@@ config ARCH_REALVIE
        bool "ARM Ltd. RealView family"
        select ARM_AMBA
        select ICST307
+       select GENERIC_TIME
+       select GENERIC_CLOCKEVENTS
        help
          This enables support for ARM Ltd RealView boards.
  
@@@ -623,7 -611,7 +630,7 @@@ source "kernel/time/Kconfig
  
  config SMP
        bool "Symmetric Multi-Processing (EXPERIMENTAL)"
-       depends on EXPERIMENTAL && REALVIEW_MPCORE
+       depends on EXPERIMENTAL && REALVIEW_EB_ARM11MP
        help
          This enables support for systems with more than one CPU. If you have
          a system with only one CPU, like most personal computers, say N. If
          processor machines. On a single processor machine, the kernel will
          run faster if you say N here.
  
 -        See also the <file:Documentation/smp.txt>,
 -        <file:Documentation/i386/IO-APIC.txt>,
 +        See also <file:Documentation/i386/IO-APIC.txt>,
          <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
          <http://www.linuxdoc.org/docs.html#howto>.
  
@@@ -656,7 -645,7 +663,7 @@@ config HOTPLUG_CP
  
  config LOCAL_TIMERS
        bool "Use local timer interrupts"
-       depends on SMP && REALVIEW_MPCORE
+       depends on SMP && REALVIEW_EB_ARM11MP
        default y
        help
          Enable support for local timers on SMP platforms, rather then the
@@@ -912,6 -901,13 +919,13 @@@ config KEXE
          initially work for you.  It may help to enable device hotplugging
          support.
  
+ config ATAGS_PROC
+       bool "Export atags in procfs"
+       default n
+       help
+         Should the atags used to boot the kernel be exported in an "atags"
+         file in procfs. Useful with kexec.
  endmenu
  
  if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX || ARCH_PXA)
@@@ -1146,6 -1142,8 +1160,6 @@@ endmen
  
  source "fs/Kconfig"
  
 -source "arch/arm/Kconfig.instrumentation"
 -
  source "arch/arm/Kconfig.debug"
  
  source "security/Kconfig"
index 1205c28a2078229b739f5983d833a91b082dbbda,c704fe8cf42f6abdcc63d1e25bb195dbc29b0663..68aca8554f5ad5556ddae23be4143563bb8e4d33
   *
   */
  
- #ifndef __ASM_ARCH_HARDWARE_H__
- #error "Do not include this directly, instead #include <asm/hardware.h>"
- #endif
  #ifndef _ASM_ARM_IXP4XX_H_
  #define _ASM_ARM_IXP4XX_H_
  
  #define UICR1_IM14    (1 << 6)        /* Interrupt mask ep 14 */
  #define UICR1_IM15    (1 << 7)        /* Interrupt mask ep 15 */
  
 -#define USIR0_IR0     (1 << 0)        /* Interrup request ep 0 */
 -#define USIR0_IR1     (1 << 1)        /* Interrup request ep 1 */
 -#define USIR0_IR2     (1 << 2)        /* Interrup request ep 2 */
 -#define USIR0_IR3     (1 << 3)        /* Interrup request ep 3 */
 -#define USIR0_IR4     (1 << 4)        /* Interrup request ep 4 */
 -#define USIR0_IR5     (1 << 5)        /* Interrup request ep 5 */
 -#define USIR0_IR6     (1 << 6)        /* Interrup request ep 6 */
 -#define USIR0_IR7     (1 << 7)        /* Interrup request ep 7 */
 -
 -#define USIR1_IR8     (1 << 0)        /* Interrup request ep 8 */
 -#define USIR1_IR9     (1 << 1)        /* Interrup request ep 9 */
 -#define USIR1_IR10    (1 << 2)        /* Interrup request ep 10 */
 -#define USIR1_IR11    (1 << 3)        /* Interrup request ep 11 */
 -#define USIR1_IR12    (1 << 4)        /* Interrup request ep 12 */
 -#define USIR1_IR13    (1 << 5)        /* Interrup request ep 13 */
 -#define USIR1_IR14    (1 << 6)        /* Interrup request ep 14 */
 -#define USIR1_IR15    (1 << 7)        /* Interrup request ep 15 */
 +#define USIR0_IR0     (1 << 0)        /* Interrupt request ep 0 */
 +#define USIR0_IR1     (1 << 1)        /* Interrupt request ep 1 */
 +#define USIR0_IR2     (1 << 2)        /* Interrupt request ep 2 */
 +#define USIR0_IR3     (1 << 3)        /* Interrupt request ep 3 */
 +#define USIR0_IR4     (1 << 4)        /* Interrupt request ep 4 */
 +#define USIR0_IR5     (1 << 5)        /* Interrupt request ep 5 */
 +#define USIR0_IR6     (1 << 6)        /* Interrupt request ep 6 */
 +#define USIR0_IR7     (1 << 7)        /* Interrupt request ep 7 */
 +
 +#define USIR1_IR8     (1 << 0)        /* Interrupt request ep 8 */
 +#define USIR1_IR9     (1 << 1)        /* Interrupt request ep 9 */
 +#define USIR1_IR10    (1 << 2)        /* Interrupt request ep 10 */
 +#define USIR1_IR11    (1 << 3)        /* Interrupt request ep 11 */
 +#define USIR1_IR12    (1 << 4)        /* Interrupt request ep 12 */
 +#define USIR1_IR13    (1 << 5)        /* Interrupt request ep 13 */
 +#define USIR1_IR14    (1 << 6)        /* Interrupt request ep 14 */
 +#define USIR1_IR15    (1 << 7)        /* Interrupt request ep 15 */
  
  #define DCMD_LENGTH   0x01fff         /* length mask (max = 8K - 1) */
  
+ /* "fuse" bits of IXP_EXP_CFG2 */
+ #define IXP4XX_FEATURE_RCOMP          (1 << 0)
+ #define IXP4XX_FEATURE_USB_DEVICE     (1 << 1)
+ #define IXP4XX_FEATURE_HASH           (1 << 2)
+ #define IXP4XX_FEATURE_AES            (1 << 3)
+ #define IXP4XX_FEATURE_DES            (1 << 4)
+ #define IXP4XX_FEATURE_HDLC           (1 << 5)
+ #define IXP4XX_FEATURE_AAL            (1 << 6)
+ #define IXP4XX_FEATURE_HSS            (1 << 7)
+ #define IXP4XX_FEATURE_UTOPIA         (1 << 8)
+ #define IXP4XX_FEATURE_NPEB_ETH0      (1 << 9)
+ #define IXP4XX_FEATURE_NPEC_ETH               (1 << 10)
+ #define IXP4XX_FEATURE_RESET_NPEA     (1 << 11)
+ #define IXP4XX_FEATURE_RESET_NPEB     (1 << 12)
+ #define IXP4XX_FEATURE_RESET_NPEC     (1 << 13)
+ #define IXP4XX_FEATURE_PCI            (1 << 14)
+ #define IXP4XX_FEATURE_ECC_TIMESYNC   (1 << 15)
+ #define IXP4XX_FEATURE_UTOPIA_PHY_LIMIT       (3 << 16)
+ #define IXP4XX_FEATURE_USB_HOST               (1 << 18)
+ #define IXP4XX_FEATURE_NPEA_ETH               (1 << 19)
+ #define IXP4XX_FEATURE_NPEB_ETH_1_TO_3        (1 << 20)
+ #define IXP4XX_FEATURE_RSA            (1 << 21)
+ #define IXP4XX_FEATURE_XSCALE_MAX_FREQ        (3 << 22)
+ #define IXP4XX_FEATURE_RESERVED               (0xFF << 24)
+ #define IXP4XX_FEATURE_IXP46X_ONLY (IXP4XX_FEATURE_ECC_TIMESYNC |     \
+                                   IXP4XX_FEATURE_USB_HOST |           \
+                                   IXP4XX_FEATURE_NPEA_ETH |           \
+                                   IXP4XX_FEATURE_NPEB_ETH_1_TO_3 |    \
+                                   IXP4XX_FEATURE_RSA |                \
+                                   IXP4XX_FEATURE_XSCALE_MAX_FREQ)
  #endif