• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ARM Architecture
2
3#
4# ARM has 32-bit(Aarch32) and 64-bit(Aarch64) implementations
5#
6config ARCH_ARM_AARCH32
7    bool
8    select ARCH_ARM
9    help
10      32-bit ARM architecture implementations, Except the M-profile.
11      It is not limited to ARMv7-A but also ARMv7-R, ARMv8-A 32-bit and etc.
12
13#
14# Architecture Versions
15#
16config ARCH_ARM_V7A
17    bool
18
19config ARCH_ARM_VER
20    string
21    default "armv7-a" if ARCH_ARM_V7A
22
23#
24# VFP Hardware
25#
26config ARCH_FPU_VFP_V3
27    bool
28    help
29      An optional extension to the Arm, Thumb, and ThumbEE instruction sets in the ARMv7-A and ARMv7-R profiles.
30      VFPv3U is a variant of VFPv3 that supports the trapping of floating-point exceptions to support code.
31
32config ARCH_FPU_VFP_V4
33    bool
34    help
35      An optional extension to the Arm, Thumb, and ThumbEE instruction sets in the ARMv7-A and ARMv7-R profiles.
36      VFPv4U is a variant of VFPv4 that supports the trapping of floating-point exceptions to support code.
37      VFPv4 and VFPv4U add both the Half-precision Extension and the fused multiply-add instructions to the features of VFPv3.
38
39config ARCH_FPU_VFP_D16
40    bool
41    depends on ARCH_ARM_AARCH32
42    help
43      VPU implemented with 16 doubleword registers (16 x 64-bit).
44
45config ARCH_FPU_VFP_D32
46    bool
47    depends on ARCH_ARM_AARCH32
48    help
49      VPU implemented with 32 doubleword registers (32 x 64-bit).
50
51config ARCH_FPU_VFP_NEON
52    bool
53    help
54      Advanced SIMD extension (NEON) support.
55
56config ARCH_FPU
57    string
58    default "vfpv3"       if ARCH_FPU_VFP_V3 && ARCH_FPU_VFP_D32
59    default "vfpv3-d16"   if ARCH_FPU_VFP_V3 && ARCH_FPU_VFP_D16
60    default "neon-vfpv4"  if ARCH_FPU_VFP_V4 && ARCH_FPU_VFP_D32 && ARCH_FPU_VFP_NEON
61    default "vfpv4"       if ARCH_FPU_VFP_V4 && ARCH_FPU_VFP_D32
62    default "vfpv4-d16"   if ARCH_FPU_VFP_V4 && ARCH_FPU_VFP_D16
63
64#
65# Supported Processor Cores
66#
67config ARCH_CORTEX_A7
68    bool
69    select ARCH_ARM_V7A
70    select ARCH_ARM_AARCH32
71    select ARCH_FPU_VFP_V4
72    select ARCH_FPU_VFP_D32
73    select ARCH_FPU_VFP_NEON
74
75config ARCH_CPU
76    string
77    default "cortex-a7" if ARCH_CORTEX_A7
78
79#
80# Supported GIC version
81#
82
83choice
84    prompt "GIC version"
85    default ARCH_GIC_V2
86    help
87      Interrupt Controller.
88
89config ARCH_GIC_V2
90    bool "GIC Version 2"
91    help
92      This GIC(General Interrupt Controller) version 2 driver is compatatble with
93      GIC version 1 and version 2.
94
95config ARCH_GIC_V3
96    bool "GIC Version 3"
97    depends on ARCH_ARM_V8A || ARCH_ARM_V8R
98    help
99      General Interrupt Controller version 3.
100
101endchoice
102
103
104