Merge branch 'v6v7' into devel
authorRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 16 Mar 2011 23:35:26 +0000 (23:35 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 16 Mar 2011 23:35:26 +0000 (23:35 +0000)
Conflicts:
arch/arm/include/asm/cacheflush.h
arch/arm/include/asm/proc-fns.h
arch/arm/mm/Kconfig

1  2 
arch/arm/Kconfig
arch/arm/Makefile
arch/arm/boot/compressed/head.S
arch/arm/include/asm/cacheflush.h
arch/arm/include/asm/glue-cache.h
arch/arm/include/asm/glue-proc.h
arch/arm/mm/Kconfig

Simple merge
Simple merge
Simple merge
Simple merge
index 0591d35001e502ec67356f5ede963359a52f6457,0000000000000000000000000000000000000000..c7afbc552c7fcaef4aceb8750382ff9ef9a40359
mode 100644,000000..100644
--- /dev/null
@@@ -1,146 -1,0 +1,146 @@@
- #if defined(CONFIG_CPU_V6)
 +/*
 + *  arch/arm/include/asm/glue-cache.h
 + *
 + *  Copyright (C) 1999-2002 Russell King
 + *
 + * This program is free software; you can redistribute it and/or modify
 + * it under the terms of the GNU General Public License version 2 as
 + * published by the Free Software Foundation.
 + */
 +#ifndef ASM_GLUE_CACHE_H
 +#define ASM_GLUE_CACHE_H
 +
 +#include <asm/glue.h>
 +
 +/*
 + *    Cache Model
 + *    ===========
 + */
 +#undef _CACHE
 +#undef MULTI_CACHE
 +
 +#if defined(CONFIG_CPU_CACHE_V3)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE v3
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_CACHE_V4)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE v4
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_ARM920T) || defined(CONFIG_CPU_ARM922T) || \
 +    defined(CONFIG_CPU_ARM925T) || defined(CONFIG_CPU_ARM1020) || \
 +    defined(CONFIG_CPU_ARM1026)
 +# define MULTI_CACHE 1
 +#endif
 +
 +#if defined(CONFIG_CPU_FA526)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE fa
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_ARM926T)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE arm926
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_ARM940T)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE arm940
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_ARM946E)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE arm946
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_CACHE_V4WB)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE v4wb
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_XSCALE)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE xscale
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_XSC3)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE xsc3
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_MOHAWK)
 +# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +# else
 +#  define _CACHE mohawk
 +# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_FEROCEON)
 +# define MULTI_CACHE 1
 +#endif
 +
++#if defined(CONFIG_CPU_V6) || defined(CONFIG_CPU_V6K)
 +//# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +//# else
 +//#  define _CACHE v6
 +//# endif
 +#endif
 +
 +#if defined(CONFIG_CPU_V7)
 +//# ifdef _CACHE
 +#  define MULTI_CACHE 1
 +//# else
 +//#  define _CACHE v7
 +//# endif
 +#endif
 +
 +#if !defined(_CACHE) && !defined(MULTI_CACHE)
 +#error Unknown cache maintainence model
 +#endif
 +
 +#ifndef MULTI_CACHE
 +#define __cpuc_flush_icache_all               __glue(_CACHE,_flush_icache_all)
 +#define __cpuc_flush_kern_all         __glue(_CACHE,_flush_kern_cache_all)
 +#define __cpuc_flush_user_all         __glue(_CACHE,_flush_user_cache_all)
 +#define __cpuc_flush_user_range               __glue(_CACHE,_flush_user_cache_range)
 +#define __cpuc_coherent_kern_range    __glue(_CACHE,_coherent_kern_range)
 +#define __cpuc_coherent_user_range    __glue(_CACHE,_coherent_user_range)
 +#define __cpuc_flush_dcache_area      __glue(_CACHE,_flush_kern_dcache_area)
 +
 +#define dmac_map_area                 __glue(_CACHE,_dma_map_area)
 +#define dmac_unmap_area                       __glue(_CACHE,_dma_unmap_area)
 +#define dmac_flush_range              __glue(_CACHE,_dma_flush_range)
 +#endif
 +
 +#endif
index 6469521d092f028610aacd8ea1bba8f90c6cf3dc,0000000000000000000000000000000000000000..e2be7f1426687f10c89a3f8e31d2b2c63943de62
mode 100644,000000..100644
--- /dev/null
@@@ -1,264 -1,0 +1,264 @@@
- #ifdef CONFIG_CPU_V6
 +/*
 + *  arch/arm/include/asm/glue-proc.h
 + *
 + *  Copyright (C) 1997-1999 Russell King
 + *  Copyright (C) 2000 Deep Blue Solutions Ltd
 + *
 + * This program is free software; you can redistribute it and/or modify
 + * it under the terms of the GNU General Public License version 2 as
 + * published by the Free Software Foundation.
 + */
 +#ifndef ASM_GLUE_PROC_H
 +#define ASM_GLUE_PROC_H
 +
 +#include <asm/glue.h>
 +
 +/*
 + * Work out if we need multiple CPU support
 + */
 +#undef MULTI_CPU
 +#undef CPU_NAME
 +
 +/*
 + * CPU_NAME - the prefix for CPU related functions
 + */
 +
 +#ifdef CONFIG_CPU_ARM610
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm6
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM7TDMI
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm7tdmi
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM710
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm7
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM720T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm720
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM740T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm740
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM9TDMI
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm9tdmi
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM920T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm920
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM922T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm922
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_FA526
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_fa526
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM925T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm925
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM926T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm926
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM940T
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm940
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM946E
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm946
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_SA110
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_sa110
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_SA1100
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_sa1100
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM1020
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm1020
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM1020E
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm1020e
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM1022
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm1022
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_ARM1026
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_arm1026
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_XSCALE
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_xscale
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_XSC3
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_xsc3
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_MOHAWK
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_mohawk
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_FEROCEON
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_feroceon
 +# endif
 +#endif
 +
++#if defined(CONFIG_CPU_V6) || defined(CONFIG_CPU_V6K)
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_v6
 +# endif
 +#endif
 +
 +#ifdef CONFIG_CPU_V7
 +# ifdef CPU_NAME
 +#  undef  MULTI_CPU
 +#  define MULTI_CPU
 +# else
 +#  define CPU_NAME cpu_v7
 +# endif
 +#endif
 +
 +#ifndef MULTI_CPU
 +#define cpu_proc_init                 __glue(CPU_NAME,_proc_init)
 +#define cpu_proc_fin                  __glue(CPU_NAME,_proc_fin)
 +#define cpu_reset                     __glue(CPU_NAME,_reset)
 +#define cpu_do_idle                   __glue(CPU_NAME,_do_idle)
 +#define cpu_dcache_clean_area         __glue(CPU_NAME,_dcache_clean_area)
 +#define cpu_do_switch_mm              __glue(CPU_NAME,_switch_mm)
 +#define cpu_set_pte_ext                       __glue(CPU_NAME,_set_pte_ext)
 +#define cpu_suspend_size              __glue(CPU_NAME,_suspend_size)
 +#define cpu_do_suspend                        __glue(CPU_NAME,_do_suspend)
 +#define cpu_do_resume                 __glue(CPU_NAME,_do_resume)
 +#endif
 +
 +#endif
index 05b26a03c20956bc9425c11d16c5ed4f0b705b27,808b8329b135fd5dd95744e8023981a86f33b672..89266382b5363d5a3025136e3a1e4c2df502c378
@@@ -644,7 -652,7 +652,7 @@@ config ARM_THUMBE
  
  config SWP_EMULATE
        bool "Emulate SWP/SWPB instructions"
-       depends on !CPU_USE_DOMAINS && CPU_V7 && !CPU_V6
 -      depends on CPU_V7
++      depends on !CPU_USE_DOMAINS && CPU_V7
        select HAVE_PROC_CPU if PROC_FS
        default y if SMP
        help