参照元†
- コンフィグに対応した CPU の名前を定義する。
- 複数のコンフィグが有効になっている場合は、
複数 CPU 対応コードを生成しようとしていると判断され、
MULTI_CPU が #define され有効になる。
- MULTI_CPU が定義されているときの CPU_NAME は、
一番優先度の高い CPU 名が定義される。
- 優先度は「参考」の章にある表を参照のこと。
上が優先度高、下が優先度低である。
- 各コンフィグと対応する CPU_NAME の定義は下記の通り。
CONFIG | CPU_NAME |
CONFIG_CPU_ARM610 | cpu_arm6 |
CONFIG_CPU_ARM7TDMI | cpu_arm7tdmi |
CONFIG_CPU_ARM710 | cpu_arm7 |
CONFIG_CPU_ARM720T | cpu_arm720 |
CONFIG_CPU_ARM740T | cpu_arm740 |
CONFIG_CPU_ARM9TDMI | cpu_arm9tdmi |
CONFIG_CPU_ARM920T | cpu_arm920 |
CONFIG_CPU_ARM922T | cpu_arm922 |
CONFIG_CPU_FA526 | cpu_fa526 |
CONFIG_CPU_ARM925T | cpu_arm925 |
CONFIG_CPU_ARM926T | cpu_arm926 |
CONFIG_CPU_ARM940T | cpu_arm940 |
CONFIG_CPU_ARM946E | cpu_arm946 |
CONFIG_CPU_SA110 | cpu_sa110 |
CONFIG_CPU_SA1100 | cpu_sa1100 |
CONFIG_CPU_ARM1020 | cpu_arm1020 |
CONFIG_CPU_ARM1020E | cpu_arm1020e |
CONFIG_CPU_ARM1022 | cpu_arm1022 |
CONFIG_CPU_ARM1026 | cpu_arm1026 |
CONFIG_CPU_XSCALE | cpu_xscale |
CONFIG_CPU_XSC3 | cpu_xsc3 |
CONFIG_CPU_MOHAWK | cpu_mohawk |
CONFIG_CPU_FEROCEON | cpu_feroceon |
CONFIG_CPU_V6 | cpu_v6 |
CONFIG_CPU_V7 | cpu_v7 |
#ifdef CONFIG_CPU_ARM610
# ifdef CPU_NAME
- 既に別の CONFIG が CPU_NAME を定義している、
つまり 2つ以上の CONFIG が有効になっている場合。
# undef MULTI_CPU
# define MULTI_CPU
- 二重定義エラーにならないように一旦 #undef し、
MULTI_CPU を定義(=複数 CPU 対応)する。
# else
# define CPU_NAME cpu_arm6
- まだいずれの CONFIG も有効になっていない場合は CPU_NAME を定義する。
こちらに来るのは下記のどちらかの場合である。
- 単一の CONFIG しか定義されていない場合。
- 複数の CONFIG が定義されている中で、一番優先度の高い CONFIG である場合。
# endif
#endif
- 以下、同じ形式の #ifdef CONFIG_xxxx 〜 #endif が、
CONFIG の数だけ続くだけなので省略する。
コメント†