blob: 2f4c0c8778d44268499a032f224b8a8e1b06cd2f [file] [log] [blame]
Peter Korsgaardf9da98c2012-12-13 23:20:48 +01001# arm cpu features
2config BR2_ARM_CPU_HAS_NEON
3 bool
4
5# for some cores, NEON support is optional
6config BR2_ARM_CPU_MAYBE_HAS_NEON
7 bool
8
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +00009choice
10 prompt "Target Architecture Variant"
11 depends on BR2_arm || BR2_armeb
Gustavo Zacarias94744212013-04-04 07:29:45 +000012 default BR2_arm926t
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000013 help
14 Specific CPU variant to use
15
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000016config BR2_arm7tdmi
17 bool "arm7tdmi"
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000018config BR2_arm720t
19 bool "arm720t"
20config BR2_arm920t
21 bool "arm920t"
22config BR2_arm922t
23 bool "arm922t"
24config BR2_arm926t
25 bool "arm926t"
26config BR2_arm10t
27 bool "arm10t"
Benoît Thébaudeau88cf3bb2013-02-01 09:33:24 +000028config BR2_arm1136jf_s_r0
29 bool "arm1136jf_s rev0"
30config BR2_arm1136jf_s_r1
31 bool "arm1136jf_s rev1"
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000032config BR2_arm1176jz_s
33 bool "arm1176jz-s"
34config BR2_arm1176jzf_s
35 bool "arm1176jzf-s"
Gustavo Zacarias10d042a2012-12-09 11:54:03 +000036config BR2_cortex_a5
37 bool "cortex-A5"
Peter Korsgaardf9da98c2012-12-13 23:20:48 +010038 select BR2_ARM_CPU_MAYBE_HAS_NEON
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000039config BR2_cortex_a8
40 bool "cortex-A8"
Peter Korsgaardf9da98c2012-12-13 23:20:48 +010041 select BR2_ARM_CPU_HAS_NEON
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000042config BR2_cortex_a9
43 bool "cortex-A9"
Peter Korsgaardf9da98c2012-12-13 23:20:48 +010044 select BR2_ARM_CPU_MAYBE_HAS_NEON
Gustavo Zacarias10d042a2012-12-09 11:54:03 +000045config BR2_cortex_a15
46 bool "cortex-A15"
Peter Korsgaardf9da98c2012-12-13 23:20:48 +010047 select BR2_ARM_CPU_HAS_NEON
Gustavo Zacarias94744212013-04-04 07:29:45 +000048config BR2_fa526
49 bool "fa526/626"
Gustavo Zacarias8f434ff2013-04-29 08:54:24 +000050config BR2_pj4
51 bool "pj4"
Gustavo Zacarias94744212013-04-04 07:29:45 +000052config BR2_strongarm
53 bool "strongarm sa110/sa1100"
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000054config BR2_xscale
55 bool "xscale"
56config BR2_iwmmxt
57 bool "iwmmxt"
58endchoice
59
Benoît Thébaudeau88cf3bb2013-02-01 09:33:24 +000060config BR2_arm1136jf_s
61 bool
62 default BR2_arm1136jf_s_r0 || BR2_arm1136jf_s_r1
63
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000064choice
65 prompt "Target ABI"
66 depends on BR2_arm || BR2_armeb
Arnout Vandecappelle (Essensium/Mind)c4cfa852013-02-06 13:51:24 +000067 depends on BR2_DEPRECATED
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000068 default BR2_ARM_EABI
69 help
70 Application Binary Interface to use
71
72 Note:
73 Using OABI is discouraged.
74
Yann E. MORIN58c25002013-02-07 09:04:48 +000075config BR2_ARM_EABI_CHOICE
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000076 bool "EABI"
77config BR2_ARM_OABI
78 bool "OABI"
79 depends on !BR2_GCC_VERSION_4_7_X
80endchoice
81
Arnout Vandecappelle (Essensium/Mind)c4cfa852013-02-06 13:51:24 +000082config BR2_ARM_EABI
Yann E. MORIN58c25002013-02-07 09:04:48 +000083 def_bool y
84 depends on !BR2_ARM_OABI
Arnout Vandecappelle (Essensium/Mind)c4cfa852013-02-06 13:51:24 +000085
Peter Korsgaardf9da98c2012-12-13 23:20:48 +010086config BR2_ARM_ENABLE_NEON
87 bool "Enable NEON SIMD extension support"
88 depends on BR2_ARM_CPU_MAYBE_HAS_NEON
89 select BR2_ARM_CPU_HAS_NEON
90 help
91 For some CPU cores, the NEON SIMD extension is optional.
92 Select this option if you are certain your particular
93 implementation has NEON support and you want to use it.
94
Thomas Petazzoni44c04a22012-11-15 03:53:48 +000095config BR2_ARCH
96 default "arm" if BR2_arm
97 default "armeb" if BR2_armeb
98
99config BR2_ENDIAN
100 default "LITTLE" if BR2_arm
101 default "BIG" if BR2_armeb
102
103config BR2_GCC_TARGET_TUNE
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000104 default "arm7tdmi" if BR2_arm7tdmi
105 default "arm7tdmi" if BR2_arm720t
106 default "arm7tdmi" if BR2_arm740t
107 default "arm920" if BR2_arm920
108 default "arm920t" if BR2_arm920t
109 default "arm922t" if BR2_arm922t
110 default "arm926ej-s" if BR2_arm926t
111 default "arm1136j-s" if BR2_arm1136j_s
112 default "arm1136jf-s" if BR2_arm1136jf_s
113 default "arm1176jz-s" if BR2_arm1176jz_s
114 default "arm1176jzf-s" if BR2_arm1176jzf_s
Gustavo Zacarias10d042a2012-12-09 11:54:03 +0000115 default "cortex-a5" if BR2_cortex_a5
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000116 default "cortex-a8" if BR2_cortex_a8
117 default "cortex-a9" if BR2_cortex_a9
Gustavo Zacarias10d042a2012-12-09 11:54:03 +0000118 default "cortex-a15" if BR2_cortex_a15
Gustavo Zacarias94744212013-04-04 07:29:45 +0000119 default "fa526" if BR2_fa526
Gustavo Zacarias8f434ff2013-04-29 08:54:24 +0000120 default "marvell-pj4" if BR2_pj4
Gustavo Zacarias94744212013-04-04 07:29:45 +0000121 default "strongarm" if BR2_strongarm
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000122 default "xscale" if BR2_xscale
123 default "iwmmxt" if BR2_iwmmxt
Thomas Petazzoni44c04a22012-11-15 03:53:48 +0000124
125config BR2_GCC_TARGET_ARCH
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000126 default "armv4t" if BR2_arm7tdmi
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000127 default "armv4t" if BR2_arm720t
128 default "armv4t" if BR2_arm920t
129 default "armv4t" if BR2_arm922t
130 default "armv5te" if BR2_arm926t
131 default "armv5t" if BR2_arm10t
Benoît Thébaudeau88cf3bb2013-02-01 09:33:24 +0000132 default "armv6j" if BR2_arm1136jf_s_r0
133 default "armv6k" if BR2_arm1136jf_s_r1
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000134 default "armv6zk" if BR2_arm1176jz_s
135 default "armv6zk" if BR2_arm1176jzf_s
Gustavo Zacarias10d042a2012-12-09 11:54:03 +0000136 default "armv7-a" if BR2_cortex_a5
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000137 default "armv7-a" if BR2_cortex_a8
138 default "armv7-a" if BR2_cortex_a9
Gustavo Zacarias10d042a2012-12-09 11:54:03 +0000139 default "armv7-a" if BR2_cortex_a15
Gustavo Zacarias94744212013-04-04 07:29:45 +0000140 default "armv4" if BR2_fa526
Gustavo Zacarias8f434ff2013-04-29 08:54:24 +0000141 default "armv7-a" if BR2_pj4
Gustavo Zacarias94744212013-04-04 07:29:45 +0000142 default "armv4" if BR2_strongarm
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000143 default "armv5te" if BR2_xscale
144 default "iwmmxt" if BR2_iwmmxt
Thomas Petazzoni44c04a22012-11-15 03:53:48 +0000145
146config BR2_GCC_TARGET_ABI
Thomas Petazzoni171075e2012-11-15 03:53:53 +0000147 default "apcs-gnu" if BR2_ARM_OABI
148 default "aapcs-linux" if BR2_ARM_EABI