linux/arch/arm/include/asm/glue-proc.h
<<
>>
Prefs
   1/*
   2 *  arch/arm/include/asm/glue-proc.h
   3 *
   4 *  Copyright (C) 1997-1999 Russell King
   5 *  Copyright (C) 2000 Deep Blue Solutions Ltd
   6 *
   7 * This program is free software; you can redistribute it and/or modify
   8 * it under the terms of the GNU General Public License version 2 as
   9 * published by the Free Software Foundation.
  10 */
  11#ifndef ASM_GLUE_PROC_H
  12#define ASM_GLUE_PROC_H
  13
  14#include <asm/glue.h>
  15
  16/*
  17 * Work out if we need multiple CPU support
  18 */
  19#undef MULTI_CPU
  20#undef CPU_NAME
  21
  22/*
  23 * CPU_NAME - the prefix for CPU related functions
  24 */
  25
  26#ifdef CONFIG_CPU_ARM7TDMI
  27# ifdef CPU_NAME
  28#  undef  MULTI_CPU
  29#  define MULTI_CPU
  30# else
  31#  define CPU_NAME cpu_arm7tdmi
  32# endif
  33#endif
  34
  35#ifdef CONFIG_CPU_ARM720T
  36# ifdef CPU_NAME
  37#  undef  MULTI_CPU
  38#  define MULTI_CPU
  39# else
  40#  define CPU_NAME cpu_arm720
  41# endif
  42#endif
  43
  44#ifdef CONFIG_CPU_ARM740T
  45# ifdef CPU_NAME
  46#  undef  MULTI_CPU
  47#  define MULTI_CPU
  48# else
  49#  define CPU_NAME cpu_arm740
  50# endif
  51#endif
  52
  53#ifdef CONFIG_CPU_ARM9TDMI
  54# ifdef CPU_NAME
  55#  undef  MULTI_CPU
  56#  define MULTI_CPU
  57# else
  58#  define CPU_NAME cpu_arm9tdmi
  59# endif
  60#endif
  61
  62#ifdef CONFIG_CPU_ARM920T
  63# ifdef CPU_NAME
  64#  undef  MULTI_CPU
  65#  define MULTI_CPU
  66# else
  67#  define CPU_NAME cpu_arm920
  68# endif
  69#endif
  70
  71#ifdef CONFIG_CPU_ARM922T
  72# ifdef CPU_NAME
  73#  undef  MULTI_CPU
  74#  define MULTI_CPU
  75# else
  76#  define CPU_NAME cpu_arm922
  77# endif
  78#endif
  79
  80#ifdef CONFIG_CPU_FA526
  81# ifdef CPU_NAME
  82#  undef  MULTI_CPU
  83#  define MULTI_CPU
  84# else
  85#  define CPU_NAME cpu_fa526
  86# endif
  87#endif
  88
  89#ifdef CONFIG_CPU_ARM925T
  90# ifdef CPU_NAME
  91#  undef  MULTI_CPU
  92#  define MULTI_CPU
  93# else
  94#  define CPU_NAME cpu_arm925
  95# endif
  96#endif
  97
  98#ifdef CONFIG_CPU_ARM926T
  99# ifdef CPU_NAME
 100#  undef  MULTI_CPU
 101#  define MULTI_CPU
 102# else
 103#  define CPU_NAME cpu_arm926
 104# endif
 105#endif
 106
 107#ifdef CONFIG_CPU_ARM940T
 108# ifdef CPU_NAME
 109#  undef  MULTI_CPU
 110#  define MULTI_CPU
 111# else
 112#  define CPU_NAME cpu_arm940
 113# endif
 114#endif
 115
 116#ifdef CONFIG_CPU_ARM946E
 117# ifdef CPU_NAME
 118#  undef  MULTI_CPU
 119#  define MULTI_CPU
 120# else
 121#  define CPU_NAME cpu_arm946
 122# endif
 123#endif
 124
 125#ifdef CONFIG_CPU_SA110
 126# ifdef CPU_NAME
 127#  undef  MULTI_CPU
 128#  define MULTI_CPU
 129# else
 130#  define CPU_NAME cpu_sa110
 131# endif
 132#endif
 133
 134#ifdef CONFIG_CPU_SA1100
 135# ifdef CPU_NAME
 136#  undef  MULTI_CPU
 137#  define MULTI_CPU
 138# else
 139#  define CPU_NAME cpu_sa1100
 140# endif
 141#endif
 142
 143#ifdef CONFIG_CPU_ARM1020
 144# ifdef CPU_NAME
 145#  undef  MULTI_CPU
 146#  define MULTI_CPU
 147# else
 148#  define CPU_NAME cpu_arm1020
 149# endif
 150#endif
 151
 152#ifdef CONFIG_CPU_ARM1020E
 153# ifdef CPU_NAME
 154#  undef  MULTI_CPU
 155#  define MULTI_CPU
 156# else
 157#  define CPU_NAME cpu_arm1020e
 158# endif
 159#endif
 160
 161#ifdef CONFIG_CPU_ARM1022
 162# ifdef CPU_NAME
 163#  undef  MULTI_CPU
 164#  define MULTI_CPU
 165# else
 166#  define CPU_NAME cpu_arm1022
 167# endif
 168#endif
 169
 170#ifdef CONFIG_CPU_ARM1026
 171# ifdef CPU_NAME
 172#  undef  MULTI_CPU
 173#  define MULTI_CPU
 174# else
 175#  define CPU_NAME cpu_arm1026
 176# endif
 177#endif
 178
 179#ifdef CONFIG_CPU_XSCALE
 180# ifdef CPU_NAME
 181#  undef  MULTI_CPU
 182#  define MULTI_CPU
 183# else
 184#  define CPU_NAME cpu_xscale
 185# endif
 186#endif
 187
 188#ifdef CONFIG_CPU_XSC3
 189# ifdef CPU_NAME
 190#  undef  MULTI_CPU
 191#  define MULTI_CPU
 192# else
 193#  define CPU_NAME cpu_xsc3
 194# endif
 195#endif
 196
 197#ifdef CONFIG_CPU_MOHAWK
 198# ifdef CPU_NAME
 199#  undef  MULTI_CPU
 200#  define MULTI_CPU
 201# else
 202#  define CPU_NAME cpu_mohawk
 203# endif
 204#endif
 205
 206#ifdef CONFIG_CPU_FEROCEON
 207# ifdef CPU_NAME
 208#  undef  MULTI_CPU
 209#  define MULTI_CPU
 210# else
 211#  define CPU_NAME cpu_feroceon
 212# endif
 213#endif
 214
 215#if defined(CONFIG_CPU_V6) || defined(CONFIG_CPU_V6K)
 216# ifdef CPU_NAME
 217#  undef  MULTI_CPU
 218#  define MULTI_CPU
 219# else
 220#  define CPU_NAME cpu_v6
 221# endif
 222#endif
 223
 224#ifdef CONFIG_CPU_V7M
 225# ifdef CPU_NAME
 226#  undef  MULTI_CPU
 227#  define MULTI_CPU
 228# else
 229#  define CPU_NAME cpu_v7m
 230# endif
 231#endif
 232
 233#ifdef CONFIG_CPU_PJ4B
 234# ifdef CPU_NAME
 235#  undef  MULTI_CPU
 236#  define MULTI_CPU
 237# else
 238#  define CPU_NAME cpu_pj4b
 239# endif
 240#endif
 241
 242#ifdef CONFIG_CPU_V7
 243/*
 244 * Cortex-A9 needs a different suspend/resume function, so we need
 245 * multiple CPU support for ARMv7 anyway.
 246 */
 247#  undef  MULTI_CPU
 248#  define MULTI_CPU
 249#endif
 250
 251#ifndef MULTI_CPU
 252#define cpu_proc_init                   __glue(CPU_NAME,_proc_init)
 253#define cpu_proc_fin                    __glue(CPU_NAME,_proc_fin)
 254#define cpu_reset                       __glue(CPU_NAME,_reset)
 255#define cpu_do_idle                     __glue(CPU_NAME,_do_idle)
 256#define cpu_dcache_clean_area           __glue(CPU_NAME,_dcache_clean_area)
 257#define cpu_do_switch_mm                __glue(CPU_NAME,_switch_mm)
 258#define cpu_set_pte_ext                 __glue(CPU_NAME,_set_pte_ext)
 259#define cpu_suspend_size                __glue(CPU_NAME,_suspend_size)
 260#define cpu_do_suspend                  __glue(CPU_NAME,_do_suspend)
 261#define cpu_do_resume                   __glue(CPU_NAME,_do_resume)
 262#endif
 263
 264#endif
 265