]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 28 Oct 2010 23:16:39 +0000 (16:16 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 28 Oct 2010 23:16:39 +0000 (16:16 -0700)
* 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (38 commits)
  kbuild: convert `arch/tile' to the kconfig mainmenu upgrade
  README: cite nconfig
  Revert "kconfig: Temporarily disable dependency warnings"
  kconfig: Use PATH_MAX instead of 128 for path buffer sizes.
  kconfig: Fix realloc usage()
  kconfig: Propagate const
  kconfig: Don't go out from read config loop when you read new symbol
  kconfig: fix menuconfig on debian lenny
  kbuild: migrate all arch to the kconfig mainmenu upgrade
  kconfig: expand file names
  kconfig: use the file's name of sourced file
  kconfig: constify file name
  kconfig: don't emit warning upon rootmenu's prompt redefinition
  kconfig: replace KERNELVERSION usage by the mainmenu's prompt
  kconfig: delay gconf window initialization
  kconfig: expand by default the rootmenu's prompt
  kconfig: add a symbol string expansion helper
  kconfig: regen parser
  kconfig: implement the `mainmenu' directive
  kconfig: allow PACKAGE to be defined on the compiler's command-line
  ...

Fix up trivial conflict in arch/mn10300/Kconfig

19 files changed:
1  2 
arch/alpha/Kconfig
arch/arm/Kconfig
arch/avr32/Kconfig
arch/blackfin/Kconfig
arch/frv/Kconfig
arch/ia64/Kconfig
arch/m32r/Kconfig
arch/m68k/Kconfig
arch/m68knommu/Kconfig
arch/microblaze/Kconfig
arch/mips/Kconfig
arch/mn10300/Kconfig
arch/parisc/Kconfig
arch/powerpc/Kconfig
arch/s390/Kconfig
arch/sh/Kconfig
arch/sparc/Kconfig
arch/tile/Kconfig
arch/x86/Kconfig

diff --combined arch/alpha/Kconfig
index 28f93a6c0fde9169b451abc1837d7661bd95152b,f706a88c8436bc76d4a7032acac21e6697fad39f..943fe6930f77e59b96be6cf174382db8a21a1b94
@@@ -1,7 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
  config ALPHA
        bool
        default y
@@@ -9,7 -5,6 +5,7 @@@
        select HAVE_IDE
        select HAVE_OPROFILE
        select HAVE_SYSCALL_WRAPPERS
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select HAVE_DMA_ATTRS
        help
@@@ -55,9 -50,6 +51,9 @@@ config ZONE_DM
        bool
        default y
  
 +config ARCH_DMA_ADDR_T_64BIT
 +      def_bool y
 +
  config NEED_DMA_MAP_STATE
         def_bool y
  
diff --combined arch/arm/Kconfig
index bf7273f3dc64efa359ece26eed3a7e19192e7bf2,26ad598ebc6a6bf7674086594c87ccbbf9e58f3f..b527bf5701c9126e4bca98abb56dc8b3ac0bea74
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux Kernel Configuration"
  config ARM
        bool
        default y
        select HAVE_KPROBES if (!XIP_KERNEL)
        select HAVE_KRETPROBES if (HAVE_KPROBES)
        select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
 +      select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL)
 +      select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL)
        select HAVE_GENERIC_DMA_COHERENT
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_LZO
        select HAVE_KERNEL_LZMA
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
        select HAVE_REGS_AND_STACK_ACCESS_API
 +      select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V7))
        help
          The ARM series is a line of low-power-consumption RISC chip designs
          licensed by ARM Ltd and targeted at embedded applications and
@@@ -149,9 -138,6 +142,9 @@@ config ARCH_HAS_CPUFRE
          and that the relevant menu configurations are displayed for
          it.
  
 +config ARCH_HAS_CPU_IDLE_WAIT
 +       def_bool y
 +
  config GENERIC_HWEIGHT
        bool
        default y
@@@ -278,6 -264,7 +271,6 @@@ config ARCH_AT9
        bool "Atmel AT91"
        select ARCH_REQUIRE_GPIOLIB
        select HAVE_CLK
 -      select ARCH_USES_GETTIMEOFFSET
        help
          This enables support for systems based on the Atmel AT91RM9200,
          AT91SAM9 and AT91CAP9 processors.
@@@ -517,7 -504,6 +510,7 @@@ config ARCH_MM
        select GENERIC_CLOCKEVENTS
        select TICK_ONESHOT
        select PLAT_PXA
 +      select SPARSE_IRQ
        help
          Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.
  
@@@ -573,7 -559,6 +566,7 @@@ config ARCH_TEGR
        select HAVE_CLK
        select COMMON_CLKDEV
        select ARCH_HAS_BARRIERS if CACHE_L2X0
 +      select ARCH_HAS_CPUFREQ
        help
          This enables support for NVIDIA Tegra based systems (Tegra APX,
          Tegra 6xx and Tegra 2 series).
@@@ -596,7 -581,6 +589,7 @@@ config ARCH_PX
        select GENERIC_CLOCKEVENTS
        select TICK_ONESHOT
        select PLAT_PXA
 +      select SPARSE_IRQ
        help
          Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
  
@@@ -688,8 -672,8 +681,8 @@@ config ARCH_S3C64X
        help
          Samsung S3C64XX series based systems
  
 -config ARCH_S5P6440
 -      bool "Samsung S5P6440"
 +config ARCH_S5P64X0
 +      bool "Samsung S5P6440 S5P6450"
        select CPU_V6
        select GENERIC_GPIO
        select HAVE_CLK
        select HAVE_S3C2410_I2C
        select HAVE_S3C_RTC
        help
 -        Samsung S5P6440 CPU based systems
 +        Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
 +        SMDK6450.
  
  config ARCH_S5P6442
        bool "Samsung S5P6442"
@@@ -758,15 -741,6 +751,15 @@@ config ARCH_SHAR
          Support for the StrongARM based Digital DNARD machine, also known
          as "Shark" (<http://www.shark-linux.de/shark.html>).
  
 +config ARCH_TCC_926
 +      bool "Telechips TCC ARM926-based systems"
 +      select CPU_ARM926T
 +      select HAVE_CLK
 +      select COMMON_CLKDEV
 +      select GENERIC_CLOCKEVENTS
 +      help
 +        Support for Telechips TCC ARM926-based systems.
 +
  config ARCH_LH7A40X
        bool "Sharp LH7A40X"
        select CPU_ARM922T
@@@ -832,7 -806,7 +825,7 @@@ config ARCH_OMA
        select GENERIC_CLOCKEVENTS
        select ARCH_HAS_HOLES_MEMORYMODEL
        help
 -        Support for TI's OMAP platform (OMAP1 and OMAP2).
 +        Support for TI's OMAP platform (OMAP1/2/3/4).
  
  config PLAT_SPEAR
        bool "ST SPEAr"
@@@ -935,8 -909,6 +928,8 @@@ source "arch/arm/plat-s5p/Kconfig
  
  source "arch/arm/plat-spear/Kconfig"
  
 +source "arch/arm/plat-tcc/Kconfig"
 +
  if ARCH_S3C2410
  source "arch/arm/mach-s3c2400/Kconfig"
  source "arch/arm/mach-s3c2410/Kconfig"
@@@ -950,7 -922,7 +943,7 @@@ if ARCH_S3C64X
  source "arch/arm/mach-s3c64xx/Kconfig"
  endif
  
 -source "arch/arm/mach-s5p6440/Kconfig"
 +source "arch/arm/mach-s5p64x0/Kconfig"
  
  source "arch/arm/mach-s5p6442/Kconfig"
  
@@@ -1024,7 -996,7 +1017,7 @@@ endi
  
  config ARM_ERRATA_411920
        bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
 -      depends on CPU_V6 && !SMP
 +      depends on CPU_V6
        help
          Invalidation of the Instruction Cache operation can
          fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
@@@ -1072,32 -1044,6 +1065,32 @@@ config ARM_ERRATA_46007
          ACTLR register. Note that setting specific bits in the ACTLR register
          may not be available in non-secure mode.
  
 +config ARM_ERRATA_742230
 +      bool "ARM errata: DMB operation may be faulty"
 +      depends on CPU_V7 && SMP
 +      help
 +        This option enables the workaround for the 742230 Cortex-A9
 +        (r1p0..r2p2) erratum. Under rare circumstances, a DMB instruction
 +        between two write operations may not ensure the correct visibility
 +        ordering of the two writes. This workaround sets a specific bit in
 +        the diagnostic register of the Cortex-A9 which causes the DMB
 +        instruction to behave as a DSB, ensuring the correct behaviour of
 +        the two writes.
 +
 +config ARM_ERRATA_742231
 +      bool "ARM errata: Incorrect hazard handling in the SCU may lead to data corruption"
 +      depends on CPU_V7 && SMP
 +      help
 +        This option enables the workaround for the 742231 Cortex-A9
 +        (r2p0..r2p2) erratum. Under certain conditions, specific to the
 +        Cortex-A9 MPCore micro-architecture, two CPUs working in SMP mode,
 +        accessing some data located in the same cache line, may get corrupted
 +        data due to bad handling of the address hazard when the line gets
 +        replaced from one of the CPUs at the same time as another CPU is
 +        accessing it. This workaround sets specific bits in the diagnostic
 +        register of the Cortex-A9 which reduces the linefill issuing
 +        capabilities of the processor.
 +
  config PL310_ERRATA_588369
        bool "Clean & Invalidate maintenance operations do not invalidate clean lines"
        depends on CACHE_L2X0 && ARCH_OMAP4
@@@ -1123,20 -1069,6 +1116,20 @@@ config ARM_ERRATA_72078
          invalidated are not, resulting in an incoherency in the system page
          tables. The workaround changes the TLB flushing routines to invalidate
          entries regardless of the ASID.
 +
 +config ARM_ERRATA_743622
 +      bool "ARM errata: Faulty hazard checking in the Store Buffer may lead to data corruption"
 +      depends on CPU_V7
 +      help
 +        This option enables the workaround for the 743622 Cortex-A9
 +        (r2p0..r2p2) erratum. Under very rare conditions, a faulty
 +        optimisation in the Cortex-A9 Store Buffer may lead to data
 +        corruption. This workaround sets a specific bit in the diagnostic
 +        register of the Cortex-A9 which disables the Store Buffer
 +        optimisation, preventing the defect from occurring. This has no
 +        visible impact on the overall performance or power consumption of the
 +        processor.
 +
  endmenu
  
  source "arch/arm/common/Kconfig"
@@@ -1203,13 -1135,13 +1196,13 @@@ source "kernel/time/Kconfig
  
  config SMP
        bool "Symmetric Multi-Processing (EXPERIMENTAL)"
 -      depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
 -               MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\
 -               ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4)
 +      depends on EXPERIMENTAL
        depends on GENERIC_CLOCKEVENTS
 +      depends on REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP || \
 +               MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\
 +               ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4
        select USE_GENERIC_SMP_HELPERS
 -      select HAVE_ARM_SCU if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 ||\
 -               ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4
 +      select HAVE_ARM_SCU
        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
  
          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>.
 +        <http://tldp.org/HOWTO/SMP-HOWTO.html>.
  
          If you don't know what to do here, say N.
  
 +config SMP_ON_UP
 +      bool "Allow booting SMP kernel on uniprocessor systems (EXPERIMENTAL)"
 +      depends on EXPERIMENTAL
 +      depends on SMP && !XIP && !THUMB2_KERNEL
 +      default y
 +      help
 +        SMP kernels contain instructions which fail on non-SMP processors.
 +        Enabling this option allows the kernel to modify itself to make
 +        these instructions safe.  Disabling it allows about 1K of space
 +        savings.
 +
 +        If you don't know what to do here, say Y.
 +
  config HAVE_ARM_SCU
        bool
        depends on SMP
@@@ -1290,9 -1209,12 +1283,9 @@@ config HOTPLUG_CP
  
  config LOCAL_TIMERS
        bool "Use local timer interrupts"
 -      depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \
 -              REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \
 -              ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4)
 +      depends on SMP
        default y
 -      select HAVE_ARM_TWD if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 || \
 -              ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS
 +      select HAVE_ARM_TWD
        help
          Enable support for local timers on SMP platforms, rather then the
          legacy IPI broadcast method.  Local timers allows the system
@@@ -1303,7 -1225,7 +1296,7 @@@ source kernel/Kconfig.preemp
  
  config HZ
        int
 -      default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || \
 +      default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P64X0 || \
                ARCH_S5P6442 || ARCH_S5PV210 || ARCH_S5PV310
        default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
        default AT91_TIMER_HZ if ARCH_AT91
@@@ -1509,20 -1431,6 +1502,20 @@@ config UACCESS_WITH_MEMCP
          However, if the CPU data cache is using a write-allocate mode,
          this option is unlikely to provide any performance gain.
  
 +config SECCOMP
 +      bool
 +      prompt "Enable seccomp to safely compute untrusted bytecode"
 +      ---help---
 +        This kernel feature is useful for number crunching applications
 +        that may need to compute untrusted bytecode during their
 +        execution. By using pipes or other transports made available to
 +        the process as file descriptors supporting the read/write
 +        syscalls, it's possible to isolate those applications in
 +        their own address space using seccomp. Once seccomp is
 +        enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
 +        and the task is only allowed to execute a few safe syscalls
 +        defined by each seccomp mode.
 +
  config CC_STACKPROTECTOR
        bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
        help
@@@ -1661,6 -1569,95 +1654,6 @@@ config AUTO_ZRELADD
          0xf8000000. This assumes the zImage being placed in the first 128MB
          from start of memory.
  
 -config ZRELADDR
 -      hex "Physical address of the decompressed kernel image"
 -      depends on !AUTO_ZRELADDR
 -      default 0x00008000 if ARCH_BCMRING ||\
 -              ARCH_CNS3XXX ||\
 -              ARCH_DOVE ||\
 -              ARCH_EBSA110 ||\
 -              ARCH_FOOTBRIDGE ||\
 -              ARCH_INTEGRATOR ||\
 -              ARCH_IOP13XX ||\
 -              ARCH_IOP33X ||\
 -              ARCH_IXP2000 ||\
 -              ARCH_IXP23XX ||\
 -              ARCH_IXP4XX ||\
 -              ARCH_KIRKWOOD ||\
 -              ARCH_KS8695 ||\
 -              ARCH_LOKI ||\
 -              ARCH_MMP ||\
 -              ARCH_MV78XX0 ||\
 -              ARCH_NOMADIK ||\
 -              ARCH_NUC93X ||\
 -              ARCH_NS9XXX ||\
 -              ARCH_ORION5X ||\
 -              ARCH_SPEAR3XX ||\
 -              ARCH_SPEAR6XX ||\
 -              ARCH_U8500 ||\
 -              ARCH_VERSATILE ||\
 -              ARCH_W90X900
 -      default 0x08008000 if ARCH_MX1 ||\
 -              ARCH_SHARK
 -      default 0x10008000 if ARCH_MSM ||\
 -              ARCH_OMAP1 ||\
 -              ARCH_RPC
 -      default 0x20008000 if ARCH_S5P6440 ||\
 -              ARCH_S5P6442 ||\
 -              ARCH_S5PC100 ||\
 -              ARCH_S5PV210
 -      default 0x30008000 if ARCH_S3C2410 ||\
 -              ARCH_S3C2400 ||\
 -              ARCH_S3C2412 ||\
 -              ARCH_S3C2416 ||\
 -              ARCH_S3C2440 ||\
 -              ARCH_S3C2443
 -      default 0x40008000 if ARCH_STMP378X ||\
 -              ARCH_STMP37XX ||\
 -              ARCH_SH7372 ||\
 -              ARCH_SH7377
 -      default 0x50008000 if ARCH_S3C64XX ||\
 -              ARCH_SH7367
 -      default 0x60008000 if ARCH_VEXPRESS
 -      default 0x80008000 if ARCH_MX25 ||\
 -              ARCH_MX3 ||\
 -              ARCH_NETX ||\
 -              ARCH_OMAP2PLUS ||\
 -              ARCH_PNX4008
 -      default 0x90008000 if ARCH_MX5 ||\
 -              ARCH_MX91231
 -      default 0xa0008000 if ARCH_IOP32X ||\
 -              ARCH_PXA ||\
 -              MACH_MX27
 -      default 0xc0008000 if ARCH_LH7A40X ||\
 -              MACH_MX21
 -      default 0xf0008000 if ARCH_AAEC2000 ||\
 -              ARCH_L7200
 -      default 0xc0028000 if ARCH_CLPS711X
 -      default 0x70008000 if ARCH_AT91 && (ARCH_AT91CAP9 || ARCH_AT91SAM9G45)
 -      default 0x20008000 if ARCH_AT91 && !(ARCH_AT91CAP9 || ARCH_AT91SAM9G45)
 -      default 0xc0008000 if ARCH_DAVINCI && ARCH_DAVINCI_DA8XX
 -      default 0x80008000 if ARCH_DAVINCI && !ARCH_DAVINCI_DA8XX
 -      default 0x00008000 if ARCH_EP93XX && EP93XX_SDCE3_SYNC_PHYS_OFFSET
 -      default 0xc0008000 if ARCH_EP93XX && EP93XX_SDCE0_PHYS_OFFSET
 -      default 0xd0008000 if ARCH_EP93XX && EP93XX_SDCE1_PHYS_OFFSET
 -      default 0xe0008000 if ARCH_EP93XX && EP93XX_SDCE2_PHYS_OFFSET
 -      default 0xf0008000 if ARCH_EP93XX && EP93XX_SDCE3_ASYNC_PHYS_OFFSET
 -      default 0x00008000 if ARCH_GEMINI && GEMINI_MEM_SWAP
 -      default 0x10008000 if ARCH_GEMINI && !GEMINI_MEM_SWAP
 -      default 0x70008000 if ARCH_REALVIEW && REALVIEW_HIGH_PHYS_OFFSET
 -      default 0x00008000 if ARCH_REALVIEW && !REALVIEW_HIGH_PHYS_OFFSET
 -      default 0xc0208000 if ARCH_SA1100 && SA1111
 -      default 0xc0008000 if ARCH_SA1100 && !SA1111
 -      default 0x30108000 if ARCH_S3C2410 && PM_H1940
 -      default 0x28E08000 if ARCH_U300 && MACH_U300_SINGLE_RAM
 -      default 0x48008000 if ARCH_U300 && !MACH_U300_SINGLE_RAM
 -      help
 -        ZRELADDR is the physical address where the decompressed kernel
 -        image will be placed. ZRELADDR has to be specified when the
 -        assumption of AUTO_ZRELADDR is not valid, or when ZBOOT_ROM is
 -        selected.
 -
  endmenu
  
  menu "CPU Power Management"
diff --combined arch/avr32/Kconfig
index f0dc5b8075a7b2da6c23d3d305ca6bc6e028729f,1b5d36a58500c9e34562e0b9e1cfee5eacac6dca..313b13073c540f7a5b22363dd71038ea1245da58
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux Kernel Configuration"
  config AVR32
        def_bool y
        # With EMBEDDED=n, we get lots of stuff automatically selected
@@@ -90,7 -83,6 +83,7 @@@ config PLATFORM_AT32A
        select ARCH_REQUIRE_GPIOLIB
        select GENERIC_ALLOCATOR
        select HAVE_FB_ATMEL
 +      select HAVE_NET_MACB
  
  #
  # CPU types
@@@ -146,7 -138,7 +139,7 @@@ config BOARD_HAMMERHEA
          will cover even the most exceptional need of memory bandwidth. Together with the onboard
          video decoder the board is ready for video processing.
  
 -        For more information see: http://www.miromico.com/hammerhead
 +        For more information see: http://www.miromico.ch/index.php/hammerhead.html 
  
  config BOARD_FAVR_32
        bool "Favr-32 LCD-board"
diff --combined arch/blackfin/Kconfig
index d9a1cb7ec30a136456e480c2d54e620cc4cec590,45f51869ef074e9f60db0ad5a5a762f68fb6590a..0a221d48152dd6f116cb8938770d5fd0e5639968
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Blackfin Kernel Configuration"
  config SYMBOL_PREFIX
        string
        default "_"
@@@ -300,7 -293,7 +293,7 @@@ config BF_REV_0_
  
  config BF_REV_0_2
        bool "0.2"
 -      depends on (BF52x || BF537 || BF536 || BF534 || (BF54x && !BF54xM))
 +      depends on (BF51x || BF52x || BF537 || BF536 || BF534 || (BF54x && !BF54xM))
  
  config BF_REV_0_3
        bool "0.3"
@@@ -356,7 -349,7 +349,7 @@@ config MEM_MT48LC8M32B2B5_
  
  config MEM_MT48LC32M16A2TG_75
        bool
 -      depends on (BFIN527_EZKIT || BFIN527_EZKIT_V2 || BFIN532_IP0X || BLACKSTAMP)
 +      depends on (BFIN527_EZKIT || BFIN527_EZKIT_V2 || BFIN532_IP0X || BLACKSTAMP || BFIN527_AD7160EVAL)
        default y
  
  config MEM_MT48H32M16LFCJ_75
@@@ -426,7 -419,6 +419,7 @@@ config CLKIN_H
        default "25000000" # most people use this
        default "27000000" if BFIN533_EZKIT
        default "30000000" if BFIN561_EZKIT
 +      default "24000000" if BFIN527_AD7160EVAL
        help
          The frequency of CLKIN crystal oscillator on the board in Hz.
          Warning: This value should match the crystal on the board. Otherwise,
@@@ -464,7 -456,6 +457,7 @@@ config VCO_MUL
        default "20" if (BFIN537_BLUETECHNIX_CM_E || BFIN537_BLUETECHNIX_CM_U || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
        default "20" if BFIN561_EZKIT
        default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN518F_EZBRD)
 +      default "25" if BFIN527_AD7160EVAL
        help
          This controls the frequency of the on-chip PLL. This can be between 1 and 64.
          PLL Frequency = (Crystal Frequency) * (this setting)
@@@ -928,12 -919,6 +921,12 @@@ config ROMKERNE
  
  endchoice
  
 +# Common code uses "ROMKERNEL" or "XIP_KERNEL", so define both
 +config XIP_KERNEL
 +      bool
 +      default y
 +      depends on ROMKERNEL
 +
  source "mm/Kconfig"
  
  config BFIN_GPTIMERS
diff --combined arch/frv/Kconfig
index 0f2417df63230fb90114d96e7cb5f583d48fab34,a57951f6c348bab19f80548fe0cf50ea775120f1..f6bcb039cd6d623526f8736c2cd69ad2fce93c3e
@@@ -1,13 -1,8 +1,9 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
  config FRV
        bool
        default y
        select HAVE_IDE
        select HAVE_ARCH_TRACEHOOK
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
  
  config ZONE_DMA
@@@ -61,8 -56,6 +57,6 @@@ config H
        int
        default 1000
  
- mainmenu "Fujitsu FR-V Kernel Configuration"
  source "init/Kconfig"
  
  source "kernel/Kconfig.freezer"
diff --combined arch/ia64/Kconfig
index 7c82fa1fc911fe44c7beef2d36af4a0240ce35ab,464ba6678b87de4b6e61a693db304a6ccb8d6978..e0f5b6d7f849b0d8b290e62185408c41735be849
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "IA-64 Linux Kernel Configuration"
  source "init/Kconfig"
  
  source "kernel/Kconfig.freezer"
@@@ -53,9 -46,6 +46,9 @@@ config MM
        bool
        default y
  
 +config ARCH_DMA_ADDR_T_64BIT
 +      def_bool y
 +
  config NEED_DMA_MAP_STATE
        def_bool y
  
@@@ -65,9 -55,6 +58,9 @@@ config NEED_SG_DMA_LENGT
  config SWIOTLB
         bool
  
 +config STACKTRACE_SUPPORT
 +      def_bool y
 +
  config GENERIC_LOCKBREAK
        def_bool n
  
@@@ -689,10 -676,8 +682,10 @@@ source "lib/Kconfig
  # Use the generic interrupt handling code in kernel/irq/:
  #
  config GENERIC_HARDIRQS
 -      bool
 -      default y
 +      def_bool y
 +
 +config GENERIC_HARDIRQS_NO__DO_IRQ
 +      def_bool y
  
  config GENERIC_IRQ_PROBE
        bool
diff --combined arch/m32r/Kconfig
index 3867fd21f33327d971257e84f931856f33fa2260,3ffb886f23483505e0fbc3ac5b32d18884554785..5c291d65196be77c43e305d6d4d840dea1392612
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux/M32R Kernel Configuration"
  config M32R
        bool
        default y
@@@ -315,7 -308,7 +308,7 @@@ config SM
          Management" code will be disabled if you say Y here.
  
          See also the SMP-HOWTO available at
 -        <http://www.linuxdoc.org/docs.html#howto>.
 +        <http://tldp.org/HOWTO/SMP-HOWTO.html>.
  
          If you don't know what to do here, say N.
  
diff --combined arch/m68k/Kconfig
index 77bb0d6baa6284171f2a25580fb83e2e05dc6c2b,723f8f512e315f1bf9cd87a3cc74349f26584883..bc9271b85759b51397a97825110184f7491cb286
@@@ -1,7 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
  config M68K
        bool
        default y
@@@ -62,8 -58,6 +58,6 @@@ config H
  config ARCH_USES_GETTIMEOFFSET
        def_bool y
  
- mainmenu "Linux/68k Kernel Configuration"
  source "init/Kconfig"
  
  source "kernel/Kconfig.freezer"
@@@ -434,7 -428,7 +428,7 @@@ config PROC_HARDWAR
  
  config ISA
        bool
 -      depends on Q40 || AMIGA_PCMCIA || GG2
 +      depends on Q40 || AMIGA_PCMCIA
        default y
        help
          Find out whether you have ISA slots on your motherboard.  ISA is the
  
  config GENERIC_ISA_DMA
        bool
 -      depends on Q40 || AMIGA_PCMCIA || GG2
 +      depends on Q40 || AMIGA_PCMCIA
        default y
  
  config ZONE_DMA
diff --combined arch/m68knommu/Kconfig
index 9287150e5fb0604419aca81ee1a34e82fb75882e,8c062dfccb08ed0cf73b0a49fa15f3811702bcf9..fa9f746cf4ae6c1fda0621bad167f9baba17c970
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "uClinux/68k (w/o MMU) Kernel Configuration"
  config M68K
        bool
        default y
@@@ -59,10 -52,6 +52,10 @@@ config GENERIC_HARDIRQ
        bool
        default y
  
 +config GENERIC_HARDIRQS_NO__DO_IRQ
 +      bool
 +      default y
 +
  config GENERIC_CALIBRATE_DELAY
        bool
        default y
@@@ -175,11 -164,6 +168,11 @@@ config M540
        help
          Motorola ColdFire 5407 processor support.
  
 +config M548x
 +      bool "MCF548x"
 +      help
 +        Freescale ColdFire 5480/5481/5482/5483/5484/5485 processor support.
 +
  endchoice
  
  config M527x
  
  config COLDFIRE
        bool
 -      depends on (M5206 || M5206e || M520x || M523x || M5249 || M527x || M5272 || M528x || M5307 || M532x || M5407)
 +      depends on (M5206 || M5206e || M520x || M523x || M5249 || M527x || M5272 || M528x || M5307 || M532x || M5407 || M548x)
        select GENERIC_GPIO
        select ARCH_REQUIRE_GPIOLIB
        default y
diff --combined arch/microblaze/Kconfig
index dad40fc2bef80d1ca73bff62e5b60a6dc1af1dc8,44b4b76d7eca42b6f4c034e947d4ff461dee5da7..387d5ffdfd3aea4e9807349edb1a6d6852cbb221
@@@ -1,8 -1,3 +1,3 @@@
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- mainmenu "Linux/Microblaze Kernel Configuration"
  config MICROBLAZE
        def_bool y
        select HAVE_MEMBLOCK
@@@ -121,23 -116,6 +116,23 @@@ config CMDLINE_FORC
          Set this to have arguments from the default kernel command string
          override those passed by the boot loader.
  
 +config SECCOMP
 +      bool "Enable seccomp to safely compute untrusted bytecode"
 +      depends on PROC_FS
 +      default y
 +      help
 +        This kernel feature is useful for number crunching applications
 +        that may need to compute untrusted bytecode during their
 +        execution. By using pipes or other transports made available to
 +        the process as file descriptors supporting the read/write
 +        syscalls, it's possible to isolate those applications in
 +        their own address space using seccomp. Once seccomp is
 +        enabled via /proc/<pid>/seccomp, it cannot be disabled
 +        and the task is only allowed to execute a few safe syscalls
 +        defined by each seccomp mode.
 +
 +        If unsure, say Y. Only embedded should say N here.
 +
  endmenu
  
  menu "Advanced setup"
diff --combined arch/mips/Kconfig
index 46cae2b163e4a1e6286584e28496f59d7e41d844,9f617417c0a39f266630fc11506c829cf5f6b723..cf8d0945530c4b77f42cde9421c79591efc980f1
@@@ -13,10 -13,7 +13,8 @@@ config MIP
        select HAVE_KPROBES
        select HAVE_KRETPROBES
        select RTC_LIB if !MACH_LOONGSON
 +      select GENERIC_ATOMIC64 if !64BIT
  
- mainmenu "Linux/MIPS Kernel Configuration"
  menu "Machine selection"
  
  config ZONE_DMA
@@@ -881,15 -878,11 +879,15 @@@ config NO_IOPOR
  config GENERIC_ISA_DMA
        bool
        select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
 +      select ISA_DMA_API
  
  config GENERIC_ISA_DMA_SUPPORT_BROKEN
        bool
        select GENERIC_ISA_DMA
  
 +config ISA_DMA_API
 +      bool
 +
  config GENERIC_GPIO
        bool
  
@@@ -1651,16 -1644,8 +1649,16 @@@ config MIPS_MT_SM
        select SYS_SUPPORTS_SMP
        select SMP_UP
        help
 -        This is a kernel model which is also known a VSMP or lately
 -        has been marketesed into SMVP.
 +        This is a kernel model which is known a VSMP but lately has been
 +        marketesed into SMVP.
 +        Virtual SMP uses the processor's VPEs  to implement virtual
 +        processors. In currently available configuration of the 34K processor
 +        this allows for a dual processor. Both processors will share the same
 +        primary caches; each will obtain the half of the TLB for it's own
 +        exclusive use. For a layman this model can be described as similar to
 +        what Intel calls Hyperthreading.
 +
 +        For further information see http://www.linux-mips.org/wiki/34K#VSMP
  
  config MIPS_MT_SMTC
        bool "SMTC: Use all TCs on all VPEs for SMP"
        help
          This is a kernel model which is known a SMTC or lately has been
          marketesed into SMVP.
 +        is presenting the available TC's of the core as processors to Linux.
 +        On currently available 34K processors this means a Linux system will
 +        see up to 5 processors. The implementation of the SMTC kernel differs
 +        significantly from VSMP and cannot efficiently coexist in the same
 +        kernel binary so the choice between VSMP and SMTC is a compile time
 +        decision.
 +
 +        For further information see http://www.linux-mips.org/wiki/34K#SMTC
  
  endchoice
  
@@@ -2128,13 -2105,6 +2126,13 @@@ config SECCOM
  
          If unsure, say Y. Only embedded should say N here.
  
 +config USE_OF
 +      bool "Flattened Device Tree support"
 +      select OF
 +      select OF_FLATTREE
 +      help
 +        Include support for flattened device tree machine descriptions.
 +
  endmenu
  
  config LOCKDEP_SUPPORT
@@@ -2203,14 -2173,10 +2201,14 @@@ config T
        bool "TURBOchannel support"
        depends on MACH_DECSTATION
        help
 -        TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
 -        processors.  Documentation on writing device drivers for TurboChannel
 -        is available at:
 -        <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
 +        TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
 +        processors.  TURBOchannel programming specifications are available
 +        at:
 +        <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/>
 +        and:
 +        <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/>
 +        Linux driver support status is documented at:
 +        <http://www.linux-mips.org/wiki/DECstation>
  
  #config ACCESSBUS
  #     bool "Access.Bus support"
diff --combined arch/mn10300/Kconfig
index 365766a3d536025ad0692643edbad8ffb6fee0d5,ba8bd665ba4b5ad5893d4bc1f6c69fad66d0e943..41ba38513c8943f1ad1441cb818ba22411b100ae
@@@ -1,27 -1,10 +1,20 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux Kernel Configuration"
  config MN10300
        def_bool y
        select HAVE_OPROFILE
 -      select HAVE_ARCH_TRACEHOOK
  
 -config AM33
 -      def_bool y
 +config AM33_2
 +      def_bool n
 +
 +config AM33_3
 +      def_bool n
 +
 +config AM34_2
 +      def_bool n
 +      select MN10300_HAS_ATOMIC_OPS_UNIT
 +      select MN10300_HAS_CACHE_SNOOP
 +
 +config ERRATUM_NEED_TO_RELOAD_MMUCTR
 +      def_bool y if AM33_3 || AM34_2
  
  config MMU
        def_bool y
@@@ -48,7 -31,7 +41,7 @@@ config GENERIC_CALIBRATE_DELA
        def_bool y
  
  config GENERIC_CMOS_UPDATE
 -        def_bool y
 +        def_bool n
  
  config GENERIC_FIND_NEXT_BIT
        def_bool y
  config GENERIC_HWEIGHT
        def_bool y
  
 +config GENERIC_TIME
 +      def_bool y
 +
 +config GENERIC_CLOCKEVENTS
 +      def_bool y
 +
 +config GENERIC_CLOCKEVENTS_BUILD
 +      def_bool y
 +      depends on GENERIC_CLOCKEVENTS
 +
 +config GENERIC_CLOCKEVENTS_BROADCAST
 +      bool
 +
 +config CEVT_MN10300
 +       def_bool y
 +       depends on GENERIC_CLOCKEVENTS
 +
 +config CSRC_MN10300
 +       def_bool y
 +       depends on GENERIC_TIME
 +
  config GENERIC_BUG
        def_bool y
  
@@@ -93,14 -55,16 +86,12 @@@ config GENERIC_HARDIRQ
  config HOTPLUG_CPU
        def_bool n
  
- mainmenu "Panasonic MN10300/AM33 Kernel Configuration"
 -config HZ
 -      int
 -      default 1000
--
  source "init/Kconfig"
  
  source "kernel/Kconfig.freezer"
  
  
 -menu "Matsushita MN10300 system setup"
 +menu "Panasonic MN10300 system setup"
  
  choice
        prompt "Unit type"
@@@ -115,10 -79,6 +106,10 @@@ config MN10300_UNIT_ASB230
  config MN10300_UNIT_ASB2305
        bool "ASB2305"
  
 +config MN10300_UNIT_ASB2364
 +      bool "ASB2364"
 +      select SMSC911X_ARCH_HOOKS if SMSC911X
 +
  endchoice
  
  choice
  config MN10300_PROC_MN103E010
        bool "MN103E010"
        depends on MN10300_UNIT_ASB2303 || MN10300_UNIT_ASB2305
 +      select AM33_2
 +      select MN10300_PROC_HAS_TTYSM0
 +      select MN10300_PROC_HAS_TTYSM1
 +      select MN10300_PROC_HAS_TTYSM2
 +
 +config MN10300_PROC_MN2WS0050
 +      bool "MN2WS0050"
 +      depends on MN10300_UNIT_ASB2364
 +      select AM34_2
        select MN10300_PROC_HAS_TTYSM0
        select MN10300_PROC_HAS_TTYSM1
        select MN10300_PROC_HAS_TTYSM2
  
  endchoice
  
 -choice
 -      prompt "Processor core support"
 -      default MN10300_CPU_AM33V2
 +config MN10300_HAS_ATOMIC_OPS_UNIT
 +      def_bool n
        help
 -        This option specifies the processor core for which the kernel will be
 -        compiled. It affects the instruction set used.
 -
 -config MN10300_CPU_AM33V2
 -      bool "AM33v2"
 -
 -endchoice
 +        This should be enabled if the processor has an atomic ops unit
 +        capable of doing LL/SC equivalent operations.
  
  config FPU
        bool "FPU present"
        default y
 -      depends on MN10300_PROC_MN103E010
 +      depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050
  
 -choice
 -      prompt "CPU Caching mode"
 -      default MN10300_CACHE_WBACK
 +config LAZY_SAVE_FPU
 +      bool "Save FPU state lazily"
 +      default y
 +      depends on FPU && !SMP
        help
 -        This option determines the caching mode for the kernel.
 -
 -        Write-Back caching mode involves the all reads and writes causing
 -        the affected cacheline to be read into the cache first before being
 -        operated upon. Memory is not then updated by a write until the cache
 -        is filled and a cacheline needs to be displaced from the cache to
 -        make room. Only at that point is it written back.
 -
 -        Write-Through caching only fetches cachelines from memory on a
 -        read. Writes always get written directly to memory. If the affected
 -        cacheline is also in cache, it will be updated too.
 -
 -        The final option is to turn of caching entirely.
 +        Enable this to be lazy in the saving of the FPU state to the owning
 +        task's thread struct.  This is useful if most tasks on the system
 +        don't use the FPU as only those tasks that use it will pass it
 +        between them, and the state needn't be saved for a task that isn't
 +        using it.
  
 -config MN10300_CACHE_WBACK
 -      bool "Write-Back"
 +        This can't be so easily used on SMP as the process that owns the FPU
 +        state on a CPU may be currently running on another CPU, so for the
 +        moment, it is disabled.
  
 -config MN10300_CACHE_WTHRU
 -      bool "Write-Through"
 +source "arch/mn10300/mm/Kconfig.cache"
  
 -config MN10300_CACHE_DISABLED
 -      bool "Disabled"
 -
 -endchoice
 +config MN10300_TLB_USE_PIDR
 +      def_bool y
  
  menu "Memory layout options"
  
@@@ -196,55 -162,24 +187,55 @@@ config KERNEL_TEXT_ADDRES
  
  config KERNEL_ZIMAGE_BASE_ADDRESS
        hex "Base address of compressed vmlinux image"
 -      default "0x90700000"
 +      default "0x50700000"
  
 +config BOOT_STACK_OFFSET
 +      hex
 +      default "0xF00" if SMP
 +      default "0xFF0" if !SMP
 +
 +config BOOT_STACK_SIZE
 +      hex
 +      depends on SMP
 +      default "0x100"
  endmenu
  
 -config PREEMPT
 -      bool "Preemptible Kernel"
 -      help
 -        This option reduces the latency of the kernel when reacting to
 -        real-time or interactive events by allowing a low priority process to
 -        be preempted even if it is in kernel mode executing a system call.
 -        This allows applications to run more reliably even when the system is
 -        under load.
 +config SMP
 +      bool "Symmetric multi-processing support"
 +      default y
 +      depends on MN10300_PROC_MN2WS0038 || MN10300_PROC_MN2WS0050
 +      ---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
 +        you have a system with more than one CPU, say Y.
 +
 +        If you say N here, the kernel will run on single and multiprocessor
 +        machines, but will use only one CPU of a multiprocessor machine. If
 +        you say Y here, the kernel will run on many, but not all,
 +        singleprocessor machines. On a singleprocessor machine, the kernel
 +        will run faster if you say N here.
  
 -        Say Y here if you are building a kernel for a desktop, embedded
 -        or real-time system.  Say N if you are unsure.
 +        See also <file:Documentation/i386/IO-APIC.txt>,
 +        <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
 +        <http://www.tldp.org/docs.html#howto>.
 +
 +        If you don't know what to do here, say N.
 +
 +config NR_CPUS
 +      int
 +      depends on SMP
 +      default "2"
 +
 +config USE_GENERIC_SMP_HELPERS
 +      bool
 +      depends on SMP
 +      default y
 +
 +source "kernel/Kconfig.preempt"
  
  config MN10300_CURRENT_IN_E2
        bool "Hold current task address in E2 register"
 +      depends on !SMP
        default y
        help
          This option removes the E2/R2 register from the set available to gcc
@@@ -266,15 -201,12 +257,15 @@@ config MN10300_USING_JTA
          suppresses the use of certain hardware debugging features, such as
          single-stepping, which are taken over completely by the JTAG unit.
  
 +source "kernel/Kconfig.hz"
 +source "kernel/time/Kconfig"
 +
  config MN10300_RTC
        bool "Using MN10300 RTC"
 -      depends on MN10300_PROC_MN103E010
 +      depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050
 +      select GENERIC_CMOS_UPDATE
        default n
        help
 -
          This option enables support for the RTC, thus enabling time to be
          tracked, even when system is powered down. This is available on-chip
          on the MN103E010.
@@@ -366,23 -298,14 +357,23 @@@ config MN10300_TTYSM
  
  choice
        prompt "Select the timer to supply the clock for SIF1"
 -      default MN10300_TTYSM0_TIMER9
 +      default MN10300_TTYSM1_TIMER12 \
 +              if !(AM33_2 || AM33_3)
 +      default MN10300_TTYSM1_TIMER9 \
 +              if AM33_2 || AM33_3
        depends on MN10300_TTYSM1
  
 +config MN10300_TTYSM1_TIMER12
 +      bool "Use timer 12 (16-bit)"
 +      depends on !(AM33_2 || AM33_3)
 +
  config MN10300_TTYSM1_TIMER9
        bool "Use timer 9 (16-bit)"
 +      depends on AM33_2 || AM33_3
  
  config MN10300_TTYSM1_TIMER3
        bool "Use timer 3 (8-bit)"
 +      depends on AM33_2 || AM33_3
  
  endchoice
  
@@@ -397,107 -320,17 +388,107 @@@ config MN10300_TTYSM
  
  choice
        prompt "Select the timer to supply the clock for SIF2"
 -      default MN10300_TTYSM0_TIMER10
 +      default MN10300_TTYSM2_TIMER3 \
 +              if !(AM33_2 || AM33_3)
 +      default MN10300_TTYSM2_TIMER10 \
 +              if AM33_2 || AM33_3
        depends on MN10300_TTYSM2
  
 +config MN10300_TTYSM2_TIMER9
 +      bool "Use timer 9 (16-bit)"
 +      depends on !(AM33_2 || AM33_3)
 +
 +config MN10300_TTYSM2_TIMER1
 +      bool "Use timer 1 (8-bit)"
 +      depends on !(AM33_2 || AM33_3)
 +
 +config MN10300_TTYSM2_TIMER3
 +      bool "Use timer 3 (8-bit)"
 +      depends on !(AM33_2 || AM33_3)
 +
  config MN10300_TTYSM2_TIMER10
        bool "Use timer 10 (16-bit)"
 +      depends on AM33_2 || AM33_3
  
  endchoice
  
  config MN10300_TTYSM2_CTS
        bool "Enable the use of the CTS line /dev/ttySM2"
 -      depends on MN10300_TTYSM2
 +      depends on MN10300_TTYSM2 && AM33_2
 +
 +endmenu
 +
 +menu "Interrupt request priority options"
 +
 +comment "[!] NOTE: A lower number/level indicates a higher priority (0 is highest, 6 is lowest)"
 +
 +comment "____Non-maskable interrupt levels____"
 +comment "The following must be set to a higher priority than local_irq_disable() and on-chip serial"
 +
 +config GDBSTUB_IRQ_LEVEL
 +      int "GDBSTUB interrupt priority"
 +      depends on GDBSTUB
 +      range 0 1 if LINUX_CLI_LEVEL = 2
 +      range 0 2 if LINUX_CLI_LEVEL = 3
 +      range 0 3 if LINUX_CLI_LEVEL = 4
 +      range 0 4 if LINUX_CLI_LEVEL = 5
 +      range 0 5 if LINUX_CLI_LEVEL = 6
 +      default 0
 +
 +comment "The following must be set to a higher priority than local_irq_disable()"
 +
 +config MN10300_SERIAL_IRQ_LEVEL
 +      int "MN10300 on-chip serial interrupt priority"
 +      depends on MN10300_TTYSM
 +      range 1 1 if LINUX_CLI_LEVEL = 2
 +      range 1 2 if LINUX_CLI_LEVEL = 3
 +      range 1 3 if LINUX_CLI_LEVEL = 4
 +      range 1 4 if LINUX_CLI_LEVEL = 5
 +      range 1 5 if LINUX_CLI_LEVEL = 6
 +      default 1
 +
 +comment "-"
 +comment "____Maskable interrupt levels____"
 +
 +config LINUX_CLI_LEVEL
 +      int "The highest interrupt priority excluded by local_irq_disable() (2-6)"
 +      range 2 6
 +      default 2
 +      help
 +        local_irq_disable() doesn't actually disable maskable interrupts -
 +        what it does is restrict the levels of interrupt which are permitted
 +        (a lower level indicates a higher priority) by lowering the value in
 +        EPSW.IM from 7.  Any interrupt is permitted for which the level is
 +        lower than EPSW.IM.
 +
 +        Certain interrupts, such as GDBSTUB and virtual MN10300 on-chip
 +        serial DMA interrupts are allowed to interrupt normal disabled
 +        sections.
 +
 +comment "The following must be set to a equal to or lower priority than LINUX_CLI_LEVEL"
 +
 +config TIMER_IRQ_LEVEL
 +      int "Kernel timer interrupt priority"
 +      range LINUX_CLI_LEVEL 6
 +      default 4
 +
 +config PCI_IRQ_LEVEL
 +      int "PCI interrupt priority"
 +      depends on PCI
 +      range LINUX_CLI_LEVEL 6
 +      default 5
 +
 +config ETHERNET_IRQ_LEVEL
 +      int "Ethernet interrupt priority"
 +      depends on SMC91X || SMC911X || SMSC911X
 +      range LINUX_CLI_LEVEL 6
 +      default 6
 +
 +config EXT_SERIAL_IRQ_LEVEL
 +      int "External serial port interrupt priority"
 +      depends on SERIAL_8250
 +      range LINUX_CLI_LEVEL 6
 +      default 6
  
  endmenu
  
diff --combined arch/parisc/Kconfig
index abde955b1c21a596e544d3aeb955ecbcf06900e9,33c02143828f10867426de4640d5820463eaf276..0888675c98dd6f344ba4740bfb5622790698c3d1
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux/PA-RISC Kernel Configuration"
  config PARISC
        def_bool y
        select HAVE_IDE
@@@ -16,10 -9,8 +9,10 @@@
        select RTC_DRV_GENERIC
        select INIT_ALL_POSSIBLE
        select BUG
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select GENERIC_ATOMIC64 if !64BIT
 +      select GENERIC_HARDIRQS_NO__DO_IRQ
        help
          The PA-RISC microprocessor is designed by Hewlett-Packard and used
          in many of their workstations & servers (HP9000 700 and 800 series,
@@@ -86,9 -77,6 +79,9 @@@ config IRQ_PER_CP
        bool
        default y
  
 +config GENERIC_HARDIRQS_NO__DO_IRQ
 +      def_bool y
 +
  # unless you want to implement ACPI on PA-RISC ... ;-)
  config PM
        bool
diff --combined arch/powerpc/Kconfig
index 4b1e521d966f0facaf7d1b70be55ebaf83df3954,209557c9ef17f4faed1bc5da264117b98b251e63..c7e40b37aa65c3f9abe6a636273c442c0c708033
@@@ -1,9 -1,3 +1,3 @@@
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux/PowerPC Kernel Configuration"
  source "arch/powerpc/platforms/Kconfig.cputype"
  
  config PPC32
@@@ -138,7 -132,6 +132,7 @@@ config PP
        select HAVE_OPROFILE
        select HAVE_SYSCALL_WRAPPERS if PPC64
        select GENERIC_ATOMIC64 if PPC32
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select HAVE_REGS_AND_STACK_ACCESS_API
        select HAVE_HW_BREAKPOINT if PERF_EVENTS && PPC_BOOK3S_64
diff --combined arch/s390/Kconfig
index 068e55d1bba8ec9e5ce790f80fc25a73c48db624,147d3b5515a8f9e48d3f8df2d434c8b48487337f..fabb40bc4e196adcb578e86f6558e008c27f1199
@@@ -1,8 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
  config SCHED_MC
        def_bool y
        depends on SMP
@@@ -60,9 -55,6 +55,9 @@@ config NO_IOME
  config NO_DMA
        def_bool y
  
 +config ARCH_DMA_ADDR_T_64BIT
 +      def_bool 64BIT
 +
  config GENERIC_LOCKBREAK
        bool
        default y
@@@ -78,8 -70,6 +73,6 @@@ config VIRT_CPU_ACCOUNTIN
  config ARCH_SUPPORTS_DEBUG_PAGEALLOC
        def_bool y
  
- mainmenu "Linux Kernel Configuration"
  config S390
        def_bool y
        select USE_GENERIC_SMP_HELPERS if SMP
        select HAVE_KVM if 64BIT
        select HAVE_ARCH_TRACEHOOK
        select INIT_ALL_POSSIBLE
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_BZIP2
        select HAVE_KERNEL_LZMA
        select HAVE_KERNEL_LZO
 +      select HAVE_GET_USER_PAGES_FAST
        select ARCH_INLINE_SPIN_TRYLOCK
        select ARCH_INLINE_SPIN_TRYLOCK_BH
        select ARCH_INLINE_SPIN_LOCK
@@@ -203,13 -191,6 +196,13 @@@ config HOTPLUG_CP
          can be controlled through /sys/devices/system/cpu/cpu#.
          Say N if you want to disable CPU hotplug.
  
 +config SCHED_BOOK
 +      bool "Book scheduler support"
 +      depends on SMP
 +      help
 +        Book scheduler support improves the CPU scheduler's decision making
 +        when dealing with machines that have several books.
 +
  config MATHEMU
        bool "IEEE FPU emulation"
        depends on MARCH_G5
@@@ -290,14 -271,6 +283,14 @@@ config MARCH_Z1
          machines such as the z990, z890, z900, z800, z9-109, z9-ec
          and z9-bc.
  
 +config MARCH_Z196
 +      bool "IBM zEnterprise 196"
 +      help
 +        Select this to enable optimizations for IBM zEnterprise 196.
 +        The kernel will be slightly faster but will not work on older
 +        machines such as the z990, z890, z900, z800, z9-109, z9-ec,
 +        z9-bc, z10-ec and z10-bc.
 +
  endchoice
  
  config PACK_STACK
diff --combined arch/sh/Kconfig
index 792cf902743aa73dfc6b4666a2315ec92c1ec049,3689c049e151fd07b76f08097c9508ed6b49d7fc..5c075f562ebae912476974f20faee1bfaeec707d
@@@ -1,10 -1,3 +1,3 @@@
- #
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux/SuperH Kernel Configuration"
  config SUPERH
        def_bool y
        select EMBEDDED
@@@ -16,7 -9,6 +9,7 @@@
        select HAVE_ARCH_TRACEHOOK
        select HAVE_DMA_API_DEBUG
        select HAVE_DMA_ATTRS
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_LZMA
        select HAVE_KERNEL_LZO
        select HAVE_SYSCALL_TRACEPOINTS
 +      select HAVE_REGS_AND_STACK_ACCESS_API
 +      select HAVE_GENERIC_HARDIRQS
 +      select HAVE_SPARSE_IRQ
        select RTC_LIB
        select GENERIC_ATOMIC64
 +      select GENERIC_HARDIRQS_NO_DEPRECATED
        help
          The SuperH is a RISC processor targeted for use in embedded systems
          and consumer electronics; it was also used in the Sega Dreamcast
@@@ -50,9 -38,8 +43,9 @@@ config SUPERH3
        select HAVE_ARCH_KGDB
        select HAVE_HW_BREAKPOINT
        select HAVE_MIXED_BREAKPOINTS_REGS
 -      select PERF_EVENTS if HAVE_HW_BREAKPOINT
 +      select PERF_EVENTS
        select ARCH_HIBERNATION_POSSIBLE if MMU
 +      select SPARSE_IRQ
  
  config SUPERH64
        def_bool ARCH = "sh64"
@@@ -82,9 -69,19 +75,9 @@@ config GENERIC_FIND_NEXT_BI
  config GENERIC_HWEIGHT
        def_bool y
  
 -config GENERIC_HARDIRQS
 -      def_bool y
 -
 -config GENERIC_HARDIRQS_NO__DO_IRQ
 -      def_bool y
 -
  config IRQ_PER_CPU
        def_bool y
  
 -config SPARSE_IRQ
 -      def_bool y
 -      depends on SUPERH32
 -
  config GENERIC_GPIO
        def_bool n
  
@@@ -245,11 -242,6 +238,11 @@@ config ARCH_SHMOBIL
        select PM
        select PM_RUNTIME
  
 +config CPU_HAS_PMU
 +       depends on CPU_SH4 || CPU_SH4A
 +       default y
 +       bool
 +
  if SUPERH32
  
  choice
@@@ -466,7 -458,6 +459,7 @@@ config CPU_SUBTYPE_SHX
        select CPU_SH4A
        select CPU_SHX3
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
 +      select ARCH_REQUIRE_GPIOLIB
  
  # SH4AL-DSP Processor Support
  
@@@ -571,7 -562,7 +564,7 @@@ config SH_CLK_CP
  config SH_CLK_CPG_LEGACY
        depends on SH_CLK_CPG
        def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
 -                    !CPU_SUBTYPE_SH7786
 +                    !CPU_SHX3 && !CPU_SUBTYPE_SH7757
  
  config SH_CLK_MD
        int "CPU Mode Pin Setting"
@@@ -740,14 -731,6 +733,14 @@@ config GUSA_R
          LLSC, this should be more efficient than the other alternative of
          disabling interrupts around the atomic sequence.
  
 +config HW_PERF_EVENTS
 +      bool "Enable hardware performance counter support for perf events"
 +      depends on PERF_EVENTS && CPU_HAS_PMU
 +      default y
 +      help
 +        Enable hardware performance counter support for perf events. If
 +        disabled, perf events will use software events only.
 +
  source "drivers/sh/Kconfig"
  
  endmenu
diff --combined arch/sparc/Kconfig
index 8e7bafc5dd0eb412282c3c8f0ebfb1314e422cc0,093a6d35e064b1f0460e051e3aff410feb37aff7..a9aaed3c3d97b92be15c9fb024bba293a8970428
@@@ -1,9 -1,3 +1,3 @@@
- # For a description of the syntax of this configuration file,
- # see Documentation/kbuild/kconfig-language.txt.
- #
- mainmenu "Linux/SPARC Kernel Configuration"
  config 64BIT
        bool "64-bit kernel" if ARCH = "sparc"
        default ARCH = "sparc64"
@@@ -19,7 -13,6 +13,7 @@@ config SPAR
        bool
        default y
        select OF
 +      select OF_PROMTREE
        select HAVE_IDE
        select HAVE_OPROFILE
        select HAVE_ARCH_KGDB if !SMP || SPARC64
        select ARCH_WANT_OPTIONAL_GPIOLIB
        select RTC_CLASS
        select RTC_DRV_M48T59
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
        select HAVE_DMA_ATTRS
        select HAVE_DMA_API_DEBUG
 +      select HAVE_ARCH_JUMP_LABEL
  
  config SPARC32
        def_bool !64BIT
@@@ -56,7 -47,6 +50,7 @@@ config SPARC6
        select RTC_DRV_BQ4802
        select RTC_DRV_SUN4V
        select RTC_DRV_STARFIRE
 +      select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
  
diff --combined arch/tile/Kconfig
index 7e8c2844e093af2112862a206bc21a6995b63ad1,d0cc5b4b22a1f199dc0d1477515da368b55ab317..07ec8a865c1d3fc122232e5aa2273814640a9e5a
@@@ -58,9 -58,6 +58,9 @@@ config ARCH_SUPPORTS_OPTIMIZED_INLININ
  config ARCH_PHYS_ADDR_T_64BIT
        def_bool y
  
 +config ARCH_DMA_ADDR_T_64BIT
 +      def_bool y
 +
  config LOCKDEP_SUPPORT
        def_bool y
  
@@@ -99,7 -96,6 +99,7 @@@ config HVC_TIL
  
  config TILE
        def_bool y
 +      select HAVE_KVM if !TILEGX
        select GENERIC_FIND_FIRST_BIT
        select GENERIC_FIND_NEXT_BIT
        select USE_GENERIC_SMP_HELPERS
  #       config HUGETLB_PAGE_SIZE_VARIABLE
  
  
- mainmenu "Linux/TILE Kernel Configuration"
  # Please note: TILE-Gx support is not yet finalized; this is
  # the preliminary support.  TILE-Gx drivers are only provided
  # with the alpha or beta test versions for Tilera customers.
@@@ -240,9 -234,9 +238,9 @@@ choic
          If you are not absolutely sure what you are doing, leave this
          option alone!
  
 -      config VMSPLIT_375G
 +      config VMSPLIT_3_75G
                bool "3.75G/0.25G user/kernel split (no kernel networking)"
 -      config VMSPLIT_35G
 +      config VMSPLIT_3_5G
                bool "3.5G/0.5G user/kernel split"
        config VMSPLIT_3G
                bool "3G/1G user/kernel split"
@@@ -256,8 -250,8 +254,8 @@@ endchoic
  
  config PAGE_OFFSET
        hex
 -      default 0xF0000000 if VMSPLIT_375G
 -      default 0xE0000000 if VMSPLIT_35G
 +      default 0xF0000000 if VMSPLIT_3_75G
 +      default 0xE0000000 if VMSPLIT_3_5G
        default 0xB0000000 if VMSPLIT_3G_OPT
        default 0x80000000 if VMSPLIT_2G
        default 0x40000000 if VMSPLIT_1G
@@@ -318,15 -312,6 +316,15 @@@ config HARDWAL
        bool "Hardwall support to allow access to user dynamic network"
        default y
  
 +config KERNEL_PL
 +      int "Processor protection level for kernel"
 +      range 1 2
 +      default "1"
 +      ---help---
 +        This setting determines the processor protection level the
 +        kernel will be built to run at.  Generally you should use
 +        the default value here.
 +
  endmenu  # Tilera-specific configuration
  
  menu "Bus options"
@@@ -367,5 -352,3 +365,5 @@@ source "security/Kconfig
  source "crypto/Kconfig"
  
  source "lib/Kconfig"
 +
 +source "arch/tile/kvm/Kconfig"
diff --combined arch/x86/Kconfig
index 299fbc86f570ba2c39ff34b3711a6c0289b4cdd9,4742ddff464fb9e1285909e987ca1a47e04b7661..e0963f52bfdd9e72bd5705d872198fa7b0eebd5a
@@@ -1,6 -1,3 +1,3 @@@
- # x86 configuration
- mainmenu "Linux Kernel Configuration for x86"
  # Select 32 or 64 bit
  config 64BIT
        bool "64-bit kernel" if ARCH = "x86"
@@@ -25,17 -22,14 +22,17 @@@ config X8
        select HAVE_IDE
        select HAVE_OPROFILE
        select HAVE_PERF_EVENTS if (!M386 && !M486)
 +      select HAVE_IRQ_WORK
        select HAVE_IOREMAP_PROT
        select HAVE_KPROBES
 +      select HAVE_MEMBLOCK
        select ARCH_WANT_OPTIONAL_GPIOLIB
        select ARCH_WANT_FRAME_POINTERS
        select HAVE_DMA_ATTRS
        select HAVE_KRETPROBES
        select HAVE_OPTPROBES
        select HAVE_FTRACE_MCOUNT_RECORD
 +      select HAVE_C_RECORDMCOUNT
        select HAVE_DYNAMIC_FTRACE
        select HAVE_FUNCTION_TRACER
        select HAVE_FUNCTION_GRAPH_TRACER
        select ANON_INODES
        select HAVE_ARCH_KMEMCHECK
        select HAVE_USER_RETURN_NOTIFIER
 +      select HAVE_ARCH_JUMP_LABEL
 +      select HAVE_TEXT_POKE_SMP
 +      select HAVE_GENERIC_HARDIRQS
 +      select HAVE_SPARSE_IRQ
 +      select GENERIC_IRQ_PROBE
 +      select GENERIC_PENDING_IRQ if SMP
  
  config INSTRUCTION_DECODER
        def_bool (KPROBES || PERF_EVENTS)
@@@ -202,10 -190,27 +199,10 @@@ config ARCH_SUPPORTS_OPTIMIZED_INLININ
  config ARCH_SUPPORTS_DEBUG_PAGEALLOC
        def_bool y
  
 -config HAVE_EARLY_RES
 -      def_bool y
 -
  config HAVE_INTEL_TXT
        def_bool y
        depends on EXPERIMENTAL && DMAR && ACPI
  
 -# Use the generic interrupt handling code in kernel/irq/:
 -config GENERIC_HARDIRQS
 -      def_bool y
 -
 -config GENERIC_HARDIRQS_NO__DO_IRQ
 -       def_bool y
 -
 -config GENERIC_IRQ_PROBE
 -      def_bool y
 -
 -config GENERIC_PENDING_IRQ
 -      def_bool y
 -      depends on GENERIC_HARDIRQS && SMP
 -
  config USE_GENERIC_SMP_HELPERS
        def_bool y
        depends on SMP
@@@ -237,11 -242,6 +234,11 @@@ config ARCH_HWEIGHT_CFLAG
  
  config KTIME_SCALAR
        def_bool X86_32
 +
 +config ARCH_CPU_PROBE_RELEASE
 +      def_bool y
 +      depends on HOTPLUG_CPU
 +
  source "init/Kconfig"
  source "kernel/Kconfig.freezer"
  
@@@ -288,6 -288,23 +285,6 @@@ config X86_X2API
  
          If you don't know what to do here, say N.
  
 -config SPARSE_IRQ
 -      bool "Support sparse irq numbering"
 -      depends on PCI_MSI || HT_IRQ
 -      ---help---
 -        This enables support for sparse irqs. This is useful for distro
 -        kernels that want to define a high CONFIG_NR_CPUS value but still
 -        want to have low kernel memory footprint on smaller machines.
 -
 -        ( Sparse IRQs can also be beneficial on NUMA boxes, as they spread
 -          out the irq_desc[] array in a more NUMA-friendly way. )
 -
 -        If you don't know what to do here, say N.
 -
 -config NUMA_IRQ_DESC
 -      def_bool y
 -      depends on SPARSE_IRQ && NUMA
 -
  config X86_MPPARSE
        bool "Enable MPS table" if ACPI
        default y
@@@ -347,7 -364,6 +344,7 @@@ endi
  
  config X86_VSMP
        bool "ScaleMP vSMP"
 +      select PARAVIRT_GUEST
        select PARAVIRT
        depends on X86_64 && PCI
        depends on X86_EXTENDED_PLATFORM
@@@ -493,6 -509,25 +490,6 @@@ if PARAVIRT_GUES
  
  source "arch/x86/xen/Kconfig"
  
 -config VMI
 -      bool "VMI Guest support (DEPRECATED)"
 -      select PARAVIRT
 -      depends on X86_32
 -      ---help---
 -        VMI provides a paravirtualized interface to the VMware ESX server
 -        (it could be used by other hypervisors in theory too, but is not
 -        at the moment), by linking the kernel to a GPL-ed ROM module
 -        provided by the hypervisor.
 -
 -        As of September 2009, VMware has started a phased retirement
 -        of this feature from VMware's products. Please see
 -        feature-removal-schedule.txt for details.  If you are
 -        planning to enable this option, please note that you cannot
 -        live migrate a VMI enabled VM to a future VMware product,
 -        which doesn't support VMI. So if you expect your kernel to
 -        seamlessly migrate to newer VMware products, keep this
 -        disabled.
 -
  config KVM_CLOCK
        bool "KVM paravirtualized clock"
        select PARAVIRT
@@@ -547,7 -582,16 +544,7 @@@ config PARAVIRT_DEBU
          a paravirt_op is missing when it is called.
  
  config NO_BOOTMEM
 -      default y
 -      bool "Disable Bootmem code"
 -      ---help---
 -        Use early_res directly instead of bootmem before slab is ready.
 -              - allocator (buddy) [generic]
 -              - early allocator (bootmem) [generic]
 -              - very early allocator (reserve_early*()) [x86]
 -              - very very early allocator (early brk model) [x86]
 -        So reduce one layer between early allocator to final allocator
 -
 +      def_bool y
  
  config MEMTEST
        bool "Memtest"
@@@ -618,7 -662,7 +615,7 @@@ config GART_IOMM
        bool "GART IOMMU support" if EMBEDDED
        default y
        select SWIOTLB
 -      depends on X86_64 && PCI && K8_NB
 +      depends on X86_64 && PCI && AMD_NB
        ---help---
          Support for full DMA access of devices with 32bit memory access only
          on systems with more than 3GB. This is usually needed for USB,
@@@ -702,11 -746,11 +699,11 @@@ config IOMMU_AP
        def_bool (AMD_IOMMU || DMAR)
  
  config MAXSMP
 -      bool "Configure Maximum number of SMP Processors and NUMA Nodes"
 +      bool "Enable Maximum number of SMP Processors and NUMA Nodes"
        depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL
        select CPUMASK_OFFSTACK
        ---help---
 -        Configure maximum number of CPUS and NUMA Nodes for this architecture.
 +        Enable maximum number of CPUS and NUMA Nodes for this architecture.
          If unsure, say N.
  
  config NR_CPUS
@@@ -743,17 -787,6 +740,17 @@@ config SCHED_M
          making when dealing with multi-core CPU chips at a cost of slightly
          increased overhead in some places. If unsure say N here.
  
 +config IRQ_TIME_ACCOUNTING
 +      bool "Fine granularity task level IRQ time accounting"
 +      default n
 +      ---help---
 +        Select this option to enable fine granularity task irq time
 +        accounting. This is done by reading a timestamp on each
 +        transitions between softirq and hardirq state, so there can be a
 +        small performance impact.
 +
 +        If in doubt, say N here.
 +
  source "kernel/Kconfig.preempt"
  
  config X86_UP_APIC
@@@ -1107,9 -1140,6 +1104,9 @@@ config X86_PA
  config ARCH_PHYS_ADDR_T_64BIT
        def_bool X86_64 || X86_PAE
  
 +config ARCH_DMA_ADDR_T_64BIT
 +      def_bool X86_64 || HIGHMEM64G
 +
  config DIRECT_GBPAGES
        bool "Enable 1GB pages for kernel pagetables" if EMBEDDED
        default y
@@@ -1288,34 -1318,25 +1285,34 @@@ config X86_BOOTPARAM_MEMORY_CORRUPTION_
          Set whether the default state of memory_corruption_check is
          on or off.
  
 -config X86_RESERVE_LOW_64K
 -      bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen"
 -      default y
 +config X86_RESERVE_LOW
 +      int "Amount of low memory, in kilobytes, to reserve for the BIOS"
 +      default 64
 +      range 4 640
        ---help---
 -        Reserve the first 64K of physical RAM on BIOSes that are known
 -        to potentially corrupt that memory range. A numbers of BIOSes are
 -        known to utilize this area during suspend/resume, so it must not
 -        be used by the kernel.
 +        Specify the amount of low memory to reserve for the BIOS.
 +
 +        The first page contains BIOS data structures that the kernel
 +        must not use, so that page must always be reserved.
 +
 +        By default we reserve the first 64K of physical RAM, as a
 +        number of BIOSes are known to corrupt that memory range
 +        during events such as suspend/resume or monitor cable
 +        insertion, so it must not be used by the kernel.
  
 -        Set this to N if you are absolutely sure that you trust the BIOS
 -        to get all its memory reservations and usages right.
 +        You can set this to 4 if you are absolutely sure that you
 +        trust the BIOS to get all its memory reservations and usages
 +        right.  If you know your BIOS have problems beyond the
 +        default 64K area, you can set this to 640 to avoid using the
 +        entire low memory range.
  
 -        If you have doubts about the BIOS (e.g. suspend/resume does not
 -        work or there's kernel crashes after certain hardware hotplug
 -        events) and it's not AMI or Phoenix, then you might want to enable
 -        X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical
 -        corruption patterns.
 +        If you have doubts about the BIOS (e.g. suspend/resume does
 +        not work or there's kernel crashes after certain hardware
 +        hotplug events) then you might want to enable
 +        X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check
 +        typical corruption patterns.
  
 -        Say Y if unsure.
 +        Leave this to the default value of 64 if you are unsure.
  
  config MATH_EMULATION
        bool
@@@ -1871,7 -1892,7 +1868,7 @@@ config PCI_GODIREC
        bool "Direct"
  
  config PCI_GOOLPC
 -      bool "OLPC"
 +      bool "OLPC XO-1"
        depends on OLPC
  
  config PCI_GOANY
@@@ -2032,21 -2053,14 +2029,21 @@@ config SCx200HR_TIME
  config OLPC
        bool "One Laptop Per Child support"
        select GPIOLIB
 +      select OLPC_OPENFIRMWARE
        ---help---
          Add support for detecting the unique features of the OLPC
          XO hardware.
  
 +config OLPC_XO1
 +      tristate "OLPC XO-1 support"
 +      depends on OLPC && PCI
 +      ---help---
 +        Add support for non-essential features of the OLPC XO-1 laptop.
 +
  config OLPC_OPENFIRMWARE
        bool "Support for OLPC's Open Firmware"
        depends on !X86_64 && !X86_PAE
 -      default y if OLPC
 +      default n
        help
          This option adds support for the implementation of Open Firmware
          that is used on the OLPC XO-1 Children's Machine.
  
  endif # X86_32
  
 -config K8_NB
 +config AMD_NB
        def_bool y
        depends on CPU_SUP_AMD && PCI
  
@@@ -2103,10 -2117,6 +2100,10 @@@ config HAVE_ATOMIC_IOMA
        def_bool y
        depends on X86_32
  
 +config HAVE_TEXT_POKE_SMP
 +      bool
 +      select STOP_MACHINE if SMP
 +
  source "net/Kconfig"
  
  source "drivers/Kconfig"