xref: /OK3568_Linux_fs/buildroot/arch/Config.in.x86 (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# i386/x86_64 cpu features
2*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_MMX
3*4882a593Smuzhiyun	bool
4*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_3DNOW
5*4882a593Smuzhiyun	bool
6*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_SSE
7*4882a593Smuzhiyun	bool
8*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_SSE2
9*4882a593Smuzhiyun	bool
10*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_SSE3
11*4882a593Smuzhiyun	bool
12*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_SSSE3
13*4882a593Smuzhiyun	bool
14*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_SSE4
15*4882a593Smuzhiyun	bool
16*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_SSE42
17*4882a593Smuzhiyun	bool
18*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_AVX
19*4882a593Smuzhiyun	bool
20*4882a593Smuzhiyunconfig BR2_X86_CPU_HAS_AVX2
21*4882a593Smuzhiyun	bool
22*4882a593Smuzhiyun
23*4882a593Smuzhiyunchoice
24*4882a593Smuzhiyun	prompt "Target Architecture Variant"
25*4882a593Smuzhiyun	default BR2_x86_i586 if BR2_i386
26*4882a593Smuzhiyun	depends on BR2_i386 || BR2_x86_64
27*4882a593Smuzhiyun	help
28*4882a593Smuzhiyun	  Specific CPU variant to use
29*4882a593Smuzhiyun
30*4882a593Smuzhiyunconfig BR2_x86_i486
31*4882a593Smuzhiyun	bool "i486"
32*4882a593Smuzhiyun	depends on !BR2_x86_64
33*4882a593Smuzhiyunconfig BR2_x86_i586
34*4882a593Smuzhiyun	bool "i586"
35*4882a593Smuzhiyun	depends on !BR2_x86_64
36*4882a593Smuzhiyunconfig BR2_x86_x1000
37*4882a593Smuzhiyun	bool "x1000"
38*4882a593Smuzhiyun	depends on !BR2_x86_64
39*4882a593Smuzhiyun	help
40*4882a593Smuzhiyun	  The Intel X1000 is a Pentium class microprocessor in the
41*4882a593Smuzhiyun	  Quark (sub-Atom) Product Line. The X1000 has a bug on the
42*4882a593Smuzhiyun	  lock prefix requiring that prefix must be stripped at build
43*4882a593Smuzhiyun	  time.
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun	  See https://en.wikipedia.org/wiki/Intel_Quark
46*4882a593Smuzhiyun
47*4882a593Smuzhiyunconfig BR2_x86_i686
48*4882a593Smuzhiyun	bool "i686"
49*4882a593Smuzhiyun	depends on !BR2_x86_64
50*4882a593Smuzhiyunconfig BR2_x86_pentiumpro
51*4882a593Smuzhiyun	bool "pentium pro"
52*4882a593Smuzhiyun	depends on !BR2_x86_64
53*4882a593Smuzhiyunconfig BR2_x86_pentium_mmx
54*4882a593Smuzhiyun	bool "pentium MMX"
55*4882a593Smuzhiyun	depends on !BR2_x86_64
56*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
57*4882a593Smuzhiyunconfig BR2_x86_pentium_m
58*4882a593Smuzhiyun	bool "pentium mobile"
59*4882a593Smuzhiyun	depends on !BR2_x86_64
60*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
61*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
62*4882a593Smuzhiyunconfig BR2_x86_pentium2
63*4882a593Smuzhiyun	bool "pentium2"
64*4882a593Smuzhiyun	depends on !BR2_x86_64
65*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
66*4882a593Smuzhiyunconfig BR2_x86_pentium3
67*4882a593Smuzhiyun	bool "pentium3"
68*4882a593Smuzhiyun	depends on !BR2_x86_64
69*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
70*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
71*4882a593Smuzhiyunconfig BR2_x86_pentium4
72*4882a593Smuzhiyun	bool "pentium4"
73*4882a593Smuzhiyun	depends on !BR2_x86_64
74*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
75*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
76*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
77*4882a593Smuzhiyunconfig BR2_x86_prescott
78*4882a593Smuzhiyun	bool "prescott"
79*4882a593Smuzhiyun	depends on !BR2_x86_64
80*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
81*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
82*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
83*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
84*4882a593Smuzhiyunconfig BR2_x86_nocona
85*4882a593Smuzhiyun	bool "nocona"
86*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
87*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
88*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
89*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
90*4882a593Smuzhiyunconfig BR2_x86_core2
91*4882a593Smuzhiyun	bool "core2"
92*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
93*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
94*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
95*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
96*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
97*4882a593Smuzhiyunconfig BR2_x86_corei7
98*4882a593Smuzhiyun	bool "corei7"
99*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
100*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
101*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
102*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
103*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
104*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
105*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
106*4882a593Smuzhiyunconfig BR2_x86_westmere
107*4882a593Smuzhiyun	bool "westmere"
108*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
109*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
110*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
111*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
112*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
113*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
114*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
115*4882a593Smuzhiyunconfig BR2_x86_corei7_avx
116*4882a593Smuzhiyun	bool "corei7-avx"
117*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
118*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
119*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
120*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
121*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
122*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
123*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
124*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_AVX
125*4882a593Smuzhiyunconfig BR2_x86_core_avx2
126*4882a593Smuzhiyun	bool "core-avx2"
127*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
128*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
129*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
130*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
131*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
132*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
133*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
134*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_AVX
135*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_AVX2
136*4882a593Smuzhiyunconfig BR2_x86_atom
137*4882a593Smuzhiyun	bool "atom"
138*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
139*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
140*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
141*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
142*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
143*4882a593Smuzhiyunconfig BR2_x86_silvermont
144*4882a593Smuzhiyun	bool "silvermont"
145*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
146*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
147*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
148*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
149*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
150*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
151*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
152*4882a593Smuzhiyunconfig BR2_x86_k6
153*4882a593Smuzhiyun	bool "k6"
154*4882a593Smuzhiyun	depends on !BR2_x86_64
155*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
156*4882a593Smuzhiyunconfig BR2_x86_k6_2
157*4882a593Smuzhiyun	bool "k6-2"
158*4882a593Smuzhiyun	depends on !BR2_x86_64
159*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
160*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_3DNOW
161*4882a593Smuzhiyunconfig BR2_x86_athlon
162*4882a593Smuzhiyun	bool "athlon"
163*4882a593Smuzhiyun	depends on !BR2_x86_64
164*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
165*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_3DNOW
166*4882a593Smuzhiyunconfig BR2_x86_athlon_4
167*4882a593Smuzhiyun	bool "athlon-4"
168*4882a593Smuzhiyun	depends on !BR2_x86_64
169*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
170*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
171*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_3DNOW
172*4882a593Smuzhiyunconfig BR2_x86_opteron
173*4882a593Smuzhiyun	bool "opteron"
174*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
175*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
176*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
177*4882a593Smuzhiyunconfig BR2_x86_opteron_sse3
178*4882a593Smuzhiyun	bool "opteron w/ SSE3"
179*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
180*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
181*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
182*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
183*4882a593Smuzhiyunconfig BR2_x86_barcelona
184*4882a593Smuzhiyun	bool "barcelona"
185*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
186*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
187*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
188*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
189*4882a593Smuzhiyunconfig BR2_x86_jaguar
190*4882a593Smuzhiyun	bool "jaguar"
191*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
192*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
193*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
194*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
195*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
196*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
197*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
198*4882a593Smuzhiyunconfig BR2_x86_steamroller
199*4882a593Smuzhiyun	bool "steamroller"
200*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
201*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
202*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE2
203*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE3
204*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSSE3
205*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE4
206*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE42
207*4882a593Smuzhiyunconfig BR2_x86_geode
208*4882a593Smuzhiyun	bool "geode"
209*4882a593Smuzhiyun	# Don't include MMX support because there several variant of geode
210*4882a593Smuzhiyun	# processor, some with MMX support, some without.
211*4882a593Smuzhiyun	# See: http://en.wikipedia.org/wiki/Geode_%28processor%29
212*4882a593Smuzhiyun	depends on !BR2_x86_64
213*4882a593Smuzhiyunconfig BR2_x86_c3
214*4882a593Smuzhiyun	bool "Via/Cyrix C3 (Samuel/Ezra cores)"
215*4882a593Smuzhiyun	depends on !BR2_x86_64
216*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
217*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_3DNOW
218*4882a593Smuzhiyunconfig BR2_x86_c32
219*4882a593Smuzhiyun	bool "Via C3-2 (Nehemiah cores)"
220*4882a593Smuzhiyun	depends on !BR2_x86_64
221*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
222*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_SSE
223*4882a593Smuzhiyunconfig BR2_x86_winchip_c6
224*4882a593Smuzhiyun	bool "IDT Winchip C6"
225*4882a593Smuzhiyun	depends on !BR2_x86_64
226*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
227*4882a593Smuzhiyunconfig BR2_x86_winchip2
228*4882a593Smuzhiyun	bool "IDT Winchip 2"
229*4882a593Smuzhiyun	depends on !BR2_x86_64
230*4882a593Smuzhiyun	select BR2_X86_CPU_HAS_MMX
231*4882a593Smuzhiyunendchoice
232*4882a593Smuzhiyun
233*4882a593Smuzhiyunconfig BR2_ARCH
234*4882a593Smuzhiyun	default "i486"		if BR2_x86_i486
235*4882a593Smuzhiyun	default "i586"		if BR2_x86_i586
236*4882a593Smuzhiyun	default "i586"		if BR2_x86_x1000
237*4882a593Smuzhiyun	default "i586"		if BR2_x86_pentium_mmx
238*4882a593Smuzhiyun	default "i586"		if BR2_x86_geode
239*4882a593Smuzhiyun	default "i586"		if BR2_x86_c3
240*4882a593Smuzhiyun	default "i686"		if BR2_x86_c32
241*4882a593Smuzhiyun	default "i586"		if BR2_x86_winchip_c6
242*4882a593Smuzhiyun	default "i586"		if BR2_x86_winchip2
243*4882a593Smuzhiyun	default "i686"		if BR2_x86_i686
244*4882a593Smuzhiyun	default "i686"		if BR2_x86_pentium2
245*4882a593Smuzhiyun	default "i686"		if BR2_x86_pentium3
246*4882a593Smuzhiyun	default "i686"		if BR2_x86_pentium4
247*4882a593Smuzhiyun	default "i686"		if BR2_x86_pentium_m
248*4882a593Smuzhiyun	default "i686"		if BR2_x86_pentiumpro
249*4882a593Smuzhiyun	default "i686"		if BR2_x86_prescott
250*4882a593Smuzhiyun	default "i686"		if BR2_x86_nocona && BR2_i386
251*4882a593Smuzhiyun	default "i686"		if BR2_x86_core2 && BR2_i386
252*4882a593Smuzhiyun	default "i686"		if BR2_x86_corei7 && BR2_i386
253*4882a593Smuzhiyun	default "i686"		if BR2_x86_westmere && BR2_i386
254*4882a593Smuzhiyun	default "i686"		if BR2_x86_corei7_avx && BR2_i386
255*4882a593Smuzhiyun	default "i686"		if BR2_x86_core_avx2 && BR2_i386
256*4882a593Smuzhiyun	default "i686"		if BR2_x86_atom && BR2_i386
257*4882a593Smuzhiyun	default "i686"		if BR2_x86_silvermont && BR2_i386
258*4882a593Smuzhiyun	default "i686"		if BR2_x86_opteron && BR2_i386
259*4882a593Smuzhiyun	default "i686"		if BR2_x86_opteron_sse3 && BR2_i386
260*4882a593Smuzhiyun	default "i686"		if BR2_x86_barcelona && BR2_i386
261*4882a593Smuzhiyun	default "i686"		if BR2_x86_jaguar && BR2_i386
262*4882a593Smuzhiyun	default "i686"		if BR2_x86_steamroller && BR2_i386
263*4882a593Smuzhiyun	default "i686"		if BR2_x86_k6
264*4882a593Smuzhiyun	default "i686"		if BR2_x86_k6_2
265*4882a593Smuzhiyun	default "i686"		if BR2_x86_athlon
266*4882a593Smuzhiyun	default "i686"		if BR2_x86_athlon_4
267*4882a593Smuzhiyun	default "x86_64"	if BR2_x86_64
268*4882a593Smuzhiyun
269*4882a593Smuzhiyunconfig BR2_NORMALIZED_ARCH
270*4882a593Smuzhiyun	default "i386"		if !BR2_x86_64
271*4882a593Smuzhiyun	default "x86_64"	if BR2_x86_64
272*4882a593Smuzhiyun
273*4882a593Smuzhiyunconfig BR2_ENDIAN
274*4882a593Smuzhiyun	default "LITTLE"
275*4882a593Smuzhiyun
276*4882a593Smuzhiyunconfig BR2_GCC_TARGET_ARCH
277*4882a593Smuzhiyun	default "i486"		if BR2_x86_i486
278*4882a593Smuzhiyun	default "i586"		if BR2_x86_i586
279*4882a593Smuzhiyun	default "i586"		if BR2_x86_x1000
280*4882a593Smuzhiyun	default "pentium-mmx"	if BR2_x86_pentium_mmx
281*4882a593Smuzhiyun	default "i686"		if BR2_x86_i686
282*4882a593Smuzhiyun	default "pentiumpro"	if BR2_x86_pentiumpro
283*4882a593Smuzhiyun	default "pentium-m"	if BR2_x86_pentium_m
284*4882a593Smuzhiyun	default "pentium2"	if BR2_x86_pentium2
285*4882a593Smuzhiyun	default "pentium3"	if BR2_x86_pentium3
286*4882a593Smuzhiyun	default "pentium4"	if BR2_x86_pentium4
287*4882a593Smuzhiyun	default "prescott"	if BR2_x86_prescott
288*4882a593Smuzhiyun	default "nocona"	if BR2_x86_nocona
289*4882a593Smuzhiyun	default "core2"		if BR2_x86_core2
290*4882a593Smuzhiyun	default "corei7"	if BR2_x86_corei7
291*4882a593Smuzhiyun	default "corei7-avx"	if BR2_x86_corei7_avx
292*4882a593Smuzhiyun	default "core-avx2"	if BR2_x86_core_avx2
293*4882a593Smuzhiyun	default "atom"		if BR2_x86_atom
294*4882a593Smuzhiyun	default "westmere"	if BR2_x86_westmere
295*4882a593Smuzhiyun	default "silvermont"	if BR2_x86_silvermont
296*4882a593Smuzhiyun	default "k8"		if BR2_x86_opteron
297*4882a593Smuzhiyun	default "k8-sse3"	if BR2_x86_opteron_sse3
298*4882a593Smuzhiyun	default "barcelona"	if BR2_x86_barcelona
299*4882a593Smuzhiyun	default "btver2"	if BR2_x86_jaguar
300*4882a593Smuzhiyun	default "bdver3"	if BR2_x86_steamroller
301*4882a593Smuzhiyun	default "k6"		if BR2_x86_k6
302*4882a593Smuzhiyun	default "k6-2"		if BR2_x86_k6_2
303*4882a593Smuzhiyun	default "athlon"	if BR2_x86_athlon
304*4882a593Smuzhiyun	default "athlon-4"	if BR2_x86_athlon_4
305*4882a593Smuzhiyun	default "winchip-c6"	if BR2_x86_winchip_c6
306*4882a593Smuzhiyun	default "winchip2"	if BR2_x86_winchip2
307*4882a593Smuzhiyun	default "c3"		if BR2_x86_c3
308*4882a593Smuzhiyun	default "c3-2"		if BR2_x86_c32
309*4882a593Smuzhiyun	default "geode"		if BR2_x86_geode
310*4882a593Smuzhiyun
311*4882a593Smuzhiyunconfig BR2_READELF_ARCH_NAME
312*4882a593Smuzhiyun	default "Intel 80386"			if BR2_i386
313*4882a593Smuzhiyun	default "Advanced Micro Devices X86-64" if BR2_x86_64
314*4882a593Smuzhiyun
315*4882a593Smuzhiyun# vim: ft=kconfig
316*4882a593Smuzhiyun# -*- mode:kconfig; -*-
317