Merge branches 'arm', 'at91', 'ep93xx', 'iop', 'ks8695', 'misc', 'mxc', 'ns9x', ...
authorRussell King <rmk@dyn-67.arm.linux.org.uk>
Sat, 19 Apr 2008 16:17:25 +0000 (17:17 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 19 Apr 2008 16:17:25 +0000 (17:17 +0100)
1  2  3  4  5  6  7  8  9  10  11  12  13 
arch/arm/Kconfig
arch/arm/Makefile
arch/arm/kernel/entry-armv.S
arch/arm/mm/Kconfig

diff --combined arch/arm/Kconfig
@@@@@@@@@@@@@@ -255,6 -255,6 -255,7 -255,6 -255,6 -255,6 -255,6 -255,6 -255,6 -255,6 -255,6 -255,6 -255,6 +255,7 @@@@@@@@@@@@@@ config ARCH_EP93X
                select ARM_AMBA
                select ARM_VIC
                select GENERIC_GPIO
++ ++++++++++   select HAVE_GPIO_LIB
                help
                  This enables support for the Cirrus EP93xx series of CPUs.
             
                help
                  Support for Freescale MXC/iMX-based family of processors
             
-------- ----config ARCH_ORION
++++++++ ++++config ARCH_ORION5X
                bool "Marvell Orion"
                depends on MMU
                select PCI
                select GENERIC_GPIO
                select GENERIC_TIME
                select GENERIC_CLOCKEVENTS
++++++++ ++++   select PLAT_ORION
                help
-------- ----     Support for Marvell Orion System on Chip family.
++++++++ ++++     Support for the following Marvell Orion 5x series SoCs:
++++++++ ++++     Orion-1 (5181), Orion-NAS (5182), Orion-2 (5281.)
             
             config ARCH_PNX4008
                bool "Philips Nexperia PNX4008 Mobile"
                bool "SA1100-based"
                select ISA
                select ARCH_DISCONTIGMEM_ENABLE
++++++++++++    select ARCH_SPARSEMEM_ENABLE
++++++++++++    select ARCH_SELECT_MEMORY_MODEL
                select ARCH_MTD_XIP
                select GENERIC_GPIO
                select GENERIC_TIME
++++++++++ ++   select GENERIC_CLOCKEVENTS
++++++++++ ++   select TICK_ONESHOT
                select HAVE_IDE
++++++++++ ++   select HAVE_GPIO_LIB
                help
                  Support for StrongARM 11x0 based boards.
             
@@@@@@@@@@@@@@ -516,7 -516,7 -517,7 -516,7 -516,7 -516,7 -516,7 -516,7 -518,7 -516,7 -519,7 -516,7 -518,7 +524,7 @@@@@@@@@@@@@@ source "arch/arm/mach-omap1/Kconfig
             
             source "arch/arm/mach-omap2/Kconfig"
             
-------- ----source "arch/arm/mach-orion/Kconfig"
++++++++ ++++source "arch/arm/mach-orion5x/Kconfig"
             
             source "arch/arm/plat-s3c24xx/Kconfig"
             source "arch/arm/plat-s3c/Kconfig"
@@@@@@@@@@@@@@ -563,6 -563,6 -564,6 -563,6 -563,6 -563,6 -563,6 -563,6 -565,9 -563,6 -566,6 -563,6 -565,6 +571,9 @@@@@@@@@@@@@@ config ARCH_ACOR
             config PLAT_IOP
                bool
             
++++++++ ++++config PLAT_ORION
++++++++ ++++   bool
++++++++ ++++
             source arch/arm/mm/Kconfig
             
             config IWMMXT
@@@@@@@@@@@@@@ -650,7 -650,7 -651,7 -650,7 -650,7 -650,7 -650,7 -650,7 -655,7 -650,7 -653,7 -650,7 -652,7 +661,7 @@@@@@@@@@@@@@ source "kernel/time/Kconfig
             
             config SMP
                bool "Symmetric Multi-Processing (EXPERIMENTAL)"
 ------------   depends on EXPERIMENTAL && REALVIEW_EB_ARM11MP
 ++++++++++++   depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP)
                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
@@@@@@@@@@@@@@ -683,7 -683,7 -684,7 -683,7 -683,7 -683,7 -683,7 -683,7 -688,7 -683,7 -686,7 -683,7 -685,7 +694,7 @@@@@@@@@@@@@@ config HOTPLUG_CP
             
             config LOCAL_TIMERS
                bool "Use local timer interrupts"
 ------------   depends on SMP && REALVIEW_EB_ARM11MP
 ++++++++++++   depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP)
                default y
                help
                  Enable support for local timers on SMP platforms, rather then the
@@@@@@@@@@@@@@ -774,6 -774,6 -775,6 -774,6 -774,6 -774,6 -774,6 -774,6 -779,6 -774,6 -777,6 -774,6 -776,12 +785,12 @@@@@@@@@@@@@@ config ARCH_DISCONTIGMEM_ENABL
                  or have huge holes in the physical address space for other reasons.
                  See <file:Documentation/vm/numa> for more.
             
++++++++++++ config ARCH_SPARSEMEM_ENABLE
++++++++++++    bool
++++++++++++ 
++++++++++++ config ARCH_SELECT_MEMORY_MODEL
++++++++++++    bool
++++++++++++ 
             config NODES_SHIFT
                int
                default "4" if ARCH_LH7A40X
diff --combined arch/arm/Makefile
              machine-$(CONFIG_ARCH_PNX4008)       := pnx4008
              machine-$(CONFIG_ARCH_NETX)          := netx
              machine-$(CONFIG_ARCH_NS9XXX)        := ns9xxx
------- ----- textofs-$(CONFIG_ARCH_NS9XXX)        := 0x00108000
              machine-$(CONFIG_ARCH_DAVINCI)       := davinci
              machine-$(CONFIG_ARCH_KS8695)     := ks8695
               incdir-$(CONFIG_ARCH_MXC)           := mxc
              machine-$(CONFIG_ARCH_MX3)           := mx3
-------- ---- machine-$(CONFIG_ARCH_ORION)         := orion
++++++++ ++++ machine-$(CONFIG_ARCH_ORION5X)       := orion5x
              machine-$(CONFIG_ARCH_MSM7X00A)   := msm
             
             ifeq ($(CONFIG_ARCH_EBSA110),y)
@@@@@@@@@@@@@@ -185,6 -185,6 -185,6 -185,6 -185,6 -185,6 -185,6 -184,6 -185,7 -185,6 -185,6 -185,6 -185,6 +184,7 @@@@@@@@@@@@@@ core-$(CONFIG_VFP)              += arch/arm/vfp
             
             # If we have a common platform directory, then include it in the build.
             core-$(CONFIG_PLAT_IOP)            += arch/arm/plat-iop/
++++++++ ++++core-$(CONFIG_PLAT_ORION)          += arch/arm/plat-orion/
             core-$(CONFIG_ARCH_OMAP)   += arch/arm/plat-omap/
             core-$(CONFIG_PLAT_S3C24XX)                += arch/arm/plat-s3c24xx/
             core-$(CONFIG_ARCH_MXC)            += arch/arm/plat-mxc/
                @ The abort handler must return the aborted address in r0, and
                @ the fault status register in r1.  r9 must be preserved.
                @
 ------------#ifdef MULTI_ABORT
 ++++++++++++#ifdef MULTI_DABORT
                ldr     r4, .LCprocfns
                mov     lr, pc
 ------------   ldr     pc, [r4]
 ++++++++++++   ldr     pc, [r4, #PROCESSOR_DABT_FUNC]
             #else
 ------------   bl      CPU_ABORT_HANDLER
 ++++++++++++   bl      CPU_DABORT_HANDLER
             #endif
             
                @
             
                irq_handler
             #ifdef CONFIG_PREEMPT
+++++ +++++++   str     r8, [tsk, #TI_PREEMPT]          @ restore preempt count
                ldr     r0, [tsk, #TI_FLAGS]            @ get flags
+++++ +++++++   teq     r8, #0                          @ if preempt count != 0
+++++ +++++++   movne   r0, #0                          @ force flags to 0
                tst     r0, #_TIF_NEED_RESCHED
                blne    svc_preempt
----- -------preempt_return:
----- -------   ldr     r0, [tsk, #TI_PREEMPT]          @ read preempt value
----- -------   str     r8, [tsk, #TI_PREEMPT]          @ restore preempt count
----- -------   teq     r0, r7
----- -------   strne   r0, [r0, -r0]                   @ bug()
             #endif
                ldr     r0, [sp, #S_PSR]                @ irqs are already disabled
                msr     spsr_cxsf, r0
             
             #ifdef CONFIG_PREEMPT
             svc_preempt:
----- -------   teq     r8, #0                          @ was preempt count = 0
----- -------   ldreq   r6, .LCirq_stat
----- -------   movne   pc, lr                          @ no
----- -------   ldr     r0, [r6, #4]                    @ local_irq_count
----- -------   ldr     r1, [r6, #8]                    @ local_bh_count
----- -------   adds    r0, r0, r1
----- -------   movne   pc, lr
----- -------   mov     r7, #0                          @ preempt_schedule_irq
----- -------   str     r7, [tsk, #TI_PREEMPT]          @ expects preempt_count == 0
+++++ +++++++   mov     r8, lr
             1: bl      preempt_schedule_irq            @ irq en/disable is done inside
                ldr     r0, [tsk, #TI_FLAGS]            @ get new tasks TI_FLAGS
                tst     r0, #_TIF_NEED_RESCHED
----- -------   beq     preempt_return                  @ go again
+++++ +++++++   moveq   pc, r8                          @ go again
                b       1b
             #endif
             
                mrs     r9, cpsr
                tst     r3, #PSR_I_BIT
                biceq   r9, r9, #PSR_I_BIT
 ------------   msr     cpsr_c, r9
             
                @
                @ set args, then call main handler
                @  r0 - address of faulting instruction
                @  r1 - pointer to registers on stack
                @
 ------------   mov     r0, r2                          @ address (pc)
 ++++++++++++#ifdef MULTI_PABORT
 ++++++++++++   mov     r0, r2                  @ pass address of aborted instruction.
 ++++++++++++   ldr     r4, .LCprocfns
 ++++++++++++   mov     lr, pc
 ++++++++++++   ldr     pc, [r4, #PROCESSOR_PABT_FUNC]
 ++++++++++++#else
 ++++++++++++   CPU_PABORT_HANDLER(r0, r2)
 ++++++++++++#endif
 ++++++++++++   msr     cpsr_c, r9                      @ Maybe enable interrupts
                mov     r1, sp                          @ regs
                bl      do_PrefetchAbort                @ call abort handler
             
                .align  5
             .LCcralign:
                .word   cr_alignment
 ------------#ifdef MULTI_ABORT
 ++++++++++++#ifdef MULTI_DABORT
             .LCprocfns:
                .word   processor
             #endif
             .LCfp:
                .word   fp_enter
----- -------#ifdef CONFIG_PREEMPT
----- -------.LCirq_stat:
----- -------   .word   irq_stat
----- -------#endif
             
             /*
              * User mode handlers
                @ The abort handler must return the aborted address in r0, and
                @ the fault status register in r1.
                @
 ------------#ifdef MULTI_ABORT
 ++++++++++++#ifdef MULTI_DABORT
                ldr     r4, .LCprocfns
                mov     lr, pc
 ------------   ldr     pc, [r4]
 ++++++++++++   ldr     pc, [r4, #PROCESSOR_DABT_FUNC]
             #else
 ------------   bl      CPU_ABORT_HANDLER
 ++++++++++++   bl      CPU_DABORT_HANDLER
             #endif
             
                @
             __und_usr:
                usr_entry
             
 ------------   tst     r3, #PSR_T_BIT                  @ Thumb mode?
 ------------   bne     __und_usr_unknown               @ ignore FP
 ------------   sub     r4, r2, #4
 ------------
                @
                @ fall through to the emulation code, which returns using r9 if
                @ it has emulated the instruction, or the more conventional lr
                @
                adr     r9, ret_from_exception
                adr     lr, __und_usr_unknown
 ------------1: ldrt    r0, [r4]
 ++++++++++++   tst     r3, #PSR_T_BIT                  @ Thumb mode?
 ++++++++++++   subeq   r4, r2, #4                      @ ARM instr at LR - 4
 ++++++++++++   subne   r4, r2, #2                      @ Thumb instr at LR - 2
 ++++++++++++1: ldreqt  r0, [r4]
 ++++++++++++   beq     call_fpe
 ++++++++++++   @ Thumb instruction
 ++++++++++++#if __LINUX_ARM_ARCH__ >= 7
 ++++++++++++2: ldrht   r5, [r4], #2
 ++++++++++++   and     r0, r5, #0xf800                 @ mask bits 111x x... .... ....
 ++++++++++++   cmp     r0, #0xe800                     @ 32bit instruction if xx != 0
 ++++++++++++   blo     __und_usr_unknown
 ++++++++++++3: ldrht   r0, [r4]
 ++++++++++++   add     r2, r2, #2                      @ r2 is PC + 2, make it PC + 4
 ++++++++++++   orr     r0, r0, r5, lsl #16
 ++++++++++++#else
 ++++++++++++   b       __und_usr_unknown
 ++++++++++++#endif
 ++++++++++++
                @
                @ fallthrough to call_fpe
                @
              * The out of line fixup for the ldrt above.
              */
                .section .fixup, "ax"
 ------------2: mov     pc, r9
 ++++++++++++4: mov     pc, r9
                .previous
                .section __ex_table,"a"
 ------------   .long   1b, 2b
 ++++++++++++   .long   1b, 4b
 ++++++++++++#if __LINUX_ARM_ARCH__ >= 7
 ++++++++++++   .long   2b, 4b
 ++++++++++++   .long   3b, 4b
 ++++++++++++#endif
                .previous
             
             /*
              *  r10 = this threads thread_info structure.
              *  lr  = unrecognised instruction return address
              */
 ++++++++++++   @
 ++++++++++++   @ Fall-through from Thumb-2 __und_usr
 ++++++++++++   @
 ++++++++++++#ifdef CONFIG_NEON
 ++++++++++++   adr     r6, .LCneon_thumb_opcodes
 ++++++++++++   b       2f
 ++++++++++++#endif
             call_fpe:
             #ifdef CONFIG_NEON
 ------------   adr     r6, .LCneon_opcodes
 ++++++++++++   adr     r6, .LCneon_arm_opcodes
             2:
                ldr     r7, [r6], #4                    @ mask value
                cmp     r7, #0                          @ end mask?
             1:
             #endif
                tst     r0, #0x08000000                 @ only CDP/CPRT/LDC/STC have bit 27
 ++++++++++++   tstne   r0, #0x04000000                 @ bit 26 set on both ARM and Thumb-2
             #if defined(CONFIG_CPU_ARM610) || defined(CONFIG_CPU_ARM710)
                and     r8, r0, #0x0f000000             @ mask out op-code bits
                teqne   r8, #0x0f000000                 @ SWI (ARM6/7 bug)?
             #ifdef CONFIG_NEON
                .align  6
             
 ------------.LCneon_opcodes:
 ++++++++++++.LCneon_arm_opcodes:
                .word   0xfe000000                      @ mask
                .word   0xf2000000                      @ opcode
             
                .word   0xff100000                      @ mask
                .word   0xf4000000                      @ opcode
             
 ++++++++++++   .word   0x00000000                      @ mask
 ++++++++++++   .word   0x00000000                      @ opcode
 ++++++++++++
 ++++++++++++.LCneon_thumb_opcodes:
 ++++++++++++   .word   0xef000000                      @ mask
 ++++++++++++   .word   0xef000000                      @ opcode
 ++++++++++++
 ++++++++++++   .word   0xff100000                      @ mask
 ++++++++++++   .word   0xf9000000                      @ opcode
 ++++++++++++
                .word   0x00000000                      @ mask
                .word   0x00000000                      @ opcode
             #endif
@@@@@@@@@@@@@@ -661,15 -619,8 -619,8 -619,8 -619,8 -605,8 -619,8 -619,8 -619,8 -619,8 -619,8 -619,8 -619,8 +647,15 @@@@@@@@@@@@@@ __und_usr_unknown
             __pabt_usr:
                usr_entry
             
 ++++++++++++#ifdef MULTI_PABORT
 ++++++++++++   mov     r0, r2                  @ pass address of aborted instruction.
 ++++++++++++   ldr     r4, .LCprocfns
 ++++++++++++   mov     lr, pc
 ++++++++++++   ldr     pc, [r4, #PROCESSOR_PABT_FUNC]
 ++++++++++++#else
 ++++++++++++   CPU_PABORT_HANDLER(r0, r2)
 ++++++++++++#endif
                enable_irq                              @ Enable interrupts
 ------------   mov     r0, r2                          @ address (pc)
                mov     r1, sp                          @ regs
                bl      do_PrefetchAbort                @ call abort handler
                /* fall through */
diff --combined arch/arm/mm/Kconfig
@@@@@@@@@@@@@@ -18,7 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 -18,6 +18,7 @@@@@@@@@@@@@@ config CPU_ARM61
                select CPU_CP15_MMU
                select CPU_COPY_V3 if MMU
                select CPU_TLB_V3 if MMU
 ++++++++++++   select CPU_PABRT_NOIFAR
                help
                  The ARM610 is the successor to the ARM3 processor
                  and was produced by VLSI Technology Inc.
@@@@@@@@@@@@@@ -50,7 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 -49,6 +50,7 @@@@@@@@@@@@@@ config CPU_ARM71
                select CPU_CP15_MMU
                select CPU_COPY_V3 if MMU
                select CPU_TLB_V3 if MMU
 ++++++++++++   select CPU_PABRT_NOIFAR
                help
                  A 32-bit RISC microprocessor based on the ARM7 processor core
                  designed by Advanced RISC Machines Ltd. The ARM710 is the
@@@@@@@@@@@@@@ -66,7 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 -64,6 +66,7 @@@@@@@@@@@@@@ config CPU_ARM720
                default y if ARCH_CLPS711X || ARCH_L7200 || ARCH_CDB89712 || ARCH_H720X
                select CPU_32v4T
                select CPU_ABRT_LV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -116,7 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 -113,6 +116,7 @@@@@@@@@@@@@@ config CPU_ARM920
                default y if CPU_S3C2410 || CPU_S3C2440 || CPU_S3C2442 || ARCH_AT91RM9200
                select CPU_32v4T
                select CPU_ABRT_EV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WT
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -139,7 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 -135,6 +139,7 @@@@@@@@@@@@@@ config CPU_ARM922
                default y if ARCH_LH7A40X || ARCH_KS8695
                select CPU_32v4T
                select CPU_ABRT_EV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WT
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -160,7 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 -155,6 +160,7 @@@@@@@@@@@@@@ config CPU_ARM925
                default y if ARCH_OMAP15XX
                select CPU_32v4T
                select CPU_ABRT_EV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WT
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -181,7 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 -175,6 +181,7 @@@@@@@@@@@@@@ config CPU_ARM926
                default y if ARCH_VERSATILE_PB || MACH_VERSATILE_AB || ARCH_OMAP730 || ARCH_OMAP16XX || ARCH_PNX4008 || ARCH_NETX || CPU_S3C2412 || ARCH_AT91SAM9260 || ARCH_AT91SAM9261 || ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || ARCH_AT91CAP9 || ARCH_NS9XXX || ARCH_DAVINCI
                select CPU_32v5
                select CPU_ABRT_EV5TJ
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
                select CPU_COPY_V4WB if MMU
@@@@@@@@@@@@@@ -233,7 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 -226,6 +233,7 @@@@@@@@@@@@@@ config CPU_ARM102
                depends on ARCH_INTEGRATOR
                select CPU_32v5
                select CPU_ABRT_EV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WT
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -252,7 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 -244,6 +252,7 @@@@@@@@@@@@@@ config CPU_ARM1020
                depends on ARCH_INTEGRATOR
                select CPU_32v5
                select CPU_ABRT_EV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WT
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -266,7 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 -257,6 +266,7 @@@@@@@@@@@@@@ config CPU_ARM102
                depends on ARCH_INTEGRATOR
                select CPU_32v5
                select CPU_ABRT_EV4T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
                select CPU_COPY_V4WB if MMU # can probably do better
@@@@@@@@@@@@@@ -285,7 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 -275,6 +285,7 @@@@@@@@@@@@@@ config CPU_ARM102
                depends on ARCH_INTEGRATOR
                select CPU_32v5
                select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
                select CPU_COPY_V4WB if MMU # can probably do better
@@@@@@@@@@@@@@ -304,7 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 -293,6 +304,7 @@@@@@@@@@@@@@ config CPU_SA11
                select CPU_32v3 if ARCH_RPC
                select CPU_32v4 if !ARCH_RPC
                select CPU_ABRT_EV4
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WB
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -326,7 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 -314,6 +326,7 @@@@@@@@@@@@@@ config CPU_SA110
                default y
                select CPU_32v4
                select CPU_ABRT_EV4
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V4WB
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -339,7 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 -326,6 +339,7 @@@@@@@@@@@@@@ config CPU_XSCAL
                default y
                select CPU_32v5
                select CPU_ABRT_EV5T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
                select CPU_TLB_V4WBI if MMU
             # Feroceon
             config CPU_FEROCEON
                bool
-------- ----   depends on ARCH_ORION
++++++++ ++++   depends on ARCH_ORION5X
                default y
                select CPU_32v5
                select CPU_ABRT_EV5T
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_VIVT
                select CPU_CP15_MMU
                select CPU_COPY_V4WB if MMU
@@@@@@@@@@@@@@ -381,12 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 -366,11 +381,12 @@@@@@@@@@@@@@ config CPU_FEROCEON_OLD_I
             # ARMv6
             config CPU_V6
                bool "Support ARM V6 processor"
 ------------   depends on ARCH_INTEGRATOR || MACH_REALVIEW_EB || ARCH_OMAP2 || ARCH_MX3 || ARCH_MSM7X00A
 ++++++++++++   depends on ARCH_INTEGRATOR || MACH_REALVIEW_EB || ARCH_OMAP2 || ARCH_MX3 || ARCH_MSM7X00A || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176
                default y if ARCH_MX3
                default y if ARCH_MSM7X00A
                select CPU_32v6
                select CPU_ABRT_EV6
 ++++++++++++   select CPU_PABRT_NOIFAR
                select CPU_CACHE_V6
                select CPU_CACHE_VIPT
                select CPU_CP15_MMU
             # ARMv7
             config CPU_V7
                bool "Support ARM V7 processor"
 ------------   depends on ARCH_INTEGRATOR
 ++++++++++++   depends on ARCH_INTEGRATOR || MACH_REALVIEW_EB
                select CPU_32v6K
                select CPU_32v7
                select CPU_ABRT_EV7
 ++++++++++++   select CPU_PABRT_IFAR
                select CPU_CACHE_V7
                select CPU_CACHE_VIPT
                select CPU_CP15_MMU
@@@@@@@@@@@@@@ -475,12 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 -458,6 +475,12 @@@@@@@@@@@@@@ config CPU_ABRT_EV
             config CPU_ABRT_EV7
                bool
             
 ++++++++++++config CPU_PABRT_IFAR
 ++++++++++++   bool
 ++++++++++++
 ++++++++++++config CPU_PABRT_NOIFAR
 ++++++++++++   bool
 ++++++++++++
             # The cache model
             config CPU_CACHE_V3
                bool
@@@@@@@@@@@@@@ -595,13 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 -572,6 +595,13 @@@@@@@@@@@@@@ config ARM_THUM
             
                  If you don't know what this all is, saying Y is a safe choice.
             
 ++++++++++++config ARM_THUMBEE
 ++++++++++++   bool "Enable ThumbEE CPU extension"
 ++++++++++++   depends on CPU_V7
 ++++++++++++   help
 ++++++++++++     Say Y here if you have a CPU with the ThumbEE extension and code to
 ++++++++++++     make use of it. Say N for code that can run on CPUs without ThumbEE.
 ++++++++++++
             config CPU_BIG_ENDIAN
                bool "Build big-endian kernel"
                depends on ARCH_SUPPORTS_BIG_ENDIAN
@@@@@@@@@@@@@@ -701,9 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 -671,5 +701,9 @@@@@@@@@@@@@@ config OUTER_CACH
                default n
             
             config CACHE_L2X0
 ------------   bool
 ++++++++++++   bool "Enable the L2x0 outer cache controller"
 ++++++++++++   depends on REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176
 ++++++++++++   default y
                select OUTER_CACHE
 ++++++++++++   help
 ++++++++++++     This option enables the L2x0 PrimeCell.