6 config BR2_KERNEL_64_USERLAND_32
12 config BR2_ARCH_HAS_MMU_MANDATORY
15 config BR2_ARCH_HAS_MMU_OPTIONAL
19 prompt "Target Architecture"
22 Select the target architecture family to build for.
25 bool "ARC (little endian)"
26 select BR2_ARCH_HAS_MMU_MANDATORY
28 Synopsys' DesignWare ARC Processor Cores are a family of
29 32-bit CPUs that can be used from deeply embedded to high
30 performance host applications. Little endian.
33 bool "ARC (big endian)"
34 select BR2_ARCH_HAS_MMU_MANDATORY
36 Synopsys' DesignWare ARC Processor Cores are a family of
37 32-bit CPUs that can be used from deeply embedded to high
38 performance host applications. Big endian.
41 bool "ARM (little endian)"
42 # MMU support is set by the subarchitecture file, arch/Config.in.arm
44 ARM is a 32-bit reduced instruction set computer (RISC)
45 instruction set architecture (ISA) developed by ARM Holdings.
48 http://en.wikipedia.org/wiki/ARM
51 bool "ARM (big endian)"
52 # MMU support is set by the subarchitecture file, arch/Config.in.arm
54 ARM is a 32-bit reduced instruction set computer (RISC)
55 instruction set architecture (ISA) developed by ARM Holdings.
58 http://en.wikipedia.org/wiki/ARM
61 bool "AArch64 (little endian)"
63 select BR2_ARCH_HAS_MMU_MANDATORY
65 Aarch64 is a 64-bit architecture developed by ARM Holdings.
66 http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
67 http://en.wikipedia.org/wiki/ARM
70 bool "AArch64 (big endian)"
72 select BR2_ARCH_HAS_MMU_MANDATORY
74 Aarch64 is a 64-bit architecture developed by ARM Holdings.
75 http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
76 http://en.wikipedia.org/wiki/ARM
80 select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
81 select BR2_ARCH_HAS_MMU_MANDATORY
83 csky is processor IP from china.
85 http://www.github.com/c-sky
89 select BR2_ARCH_HAS_MMU_MANDATORY
91 Intel i386 architecture compatible microprocessor
92 http://en.wikipedia.org/wiki/I386
96 # MMU support is set by the subarchitecture file, arch/Config.in.m68k
98 Motorola 68000 family microprocessor
99 http://en.wikipedia.org/wiki/M68k
101 config BR2_microblazeel
102 bool "Microblaze AXI (little endian)"
103 select BR2_ARCH_HAS_MMU_MANDATORY
105 Soft processor core designed for Xilinx FPGAs from Xilinx. AXI
106 bus based architecture (little endian)
107 http://www.xilinx.com
108 http://en.wikipedia.org/wiki/Microblaze
110 config BR2_microblazebe
111 bool "Microblaze non-AXI (big endian)"
112 select BR2_ARCH_HAS_MMU_MANDATORY
114 Soft processor core designed for Xilinx FPGAs from Xilinx. PLB
115 bus based architecture (non-AXI, big endian)
116 http://www.xilinx.com
117 http://en.wikipedia.org/wiki/Microblaze
120 bool "MIPS (big endian)"
121 select BR2_ARCH_HAS_MMU_MANDATORY
123 MIPS is a RISC microprocessor from MIPS Technologies. Big
126 http://en.wikipedia.org/wiki/MIPS_Technologies
129 bool "MIPS (little endian)"
130 select BR2_ARCH_HAS_MMU_MANDATORY
132 MIPS is a RISC microprocessor from MIPS Technologies. Little
135 http://en.wikipedia.org/wiki/MIPS_Technologies
138 bool "MIPS64 (big endian)"
139 select BR2_ARCH_IS_64
140 select BR2_ARCH_HAS_MMU_MANDATORY
142 MIPS is a RISC microprocessor from MIPS Technologies. Big
145 http://en.wikipedia.org/wiki/MIPS_Technologies
148 bool "MIPS64 (little endian)"
149 select BR2_ARCH_IS_64
150 select BR2_ARCH_HAS_MMU_MANDATORY
152 MIPS is a RISC microprocessor from MIPS Technologies. Little
155 http://en.wikipedia.org/wiki/MIPS_Technologies
159 select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
160 select BR2_ARCH_HAS_MMU_MANDATORY
162 nds32 is a 32-bit architecture developed by Andes Technology.
163 https://en.wikipedia.org/wiki/Andes_Technology
167 select BR2_ARCH_HAS_MMU_MANDATORY
169 Nios II is a soft core processor from Altera Corporation.
170 http://www.altera.com/
171 http://en.wikipedia.org/wiki/Nios_II
175 select BR2_ARCH_HAS_MMU_MANDATORY
177 OpenRISC is a free and open processor for embedded system.
182 select BR2_ARCH_HAS_MMU_MANDATORY
184 PowerPC is a RISC architecture created by Apple-IBM-Motorola
185 alliance. Big endian.
186 http://www.power.org/
187 http://en.wikipedia.org/wiki/Powerpc
190 bool "PowerPC64 (big endian)"
191 select BR2_ARCH_IS_64
192 select BR2_ARCH_HAS_MMU_MANDATORY
194 PowerPC is a RISC architecture created by Apple-IBM-Motorola
195 alliance. Big endian.
196 http://www.power.org/
197 http://en.wikipedia.org/wiki/Powerpc
199 config BR2_powerpc64le
200 bool "PowerPC64 (little endian)"
201 select BR2_ARCH_IS_64
202 select BR2_ARCH_HAS_MMU_MANDATORY
204 PowerPC is a RISC architecture created by Apple-IBM-Motorola
205 alliance. Little endian.
206 http://www.power.org/
207 http://en.wikipedia.org/wiki/Powerpc
211 select BR2_ARCH_HAS_MMU_MANDATORY
212 select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
214 RISC-V is an open, free Instruction Set Architecture created
215 by the UC Berkeley Architecture Research group and supported
216 and promoted by RISC-V Foundation.
218 https://en.wikipedia.org/wiki/RISC-V
222 select BR2_ARCH_HAS_MMU_OPTIONAL
224 SuperH (or SH) is a 32-bit reduced instruction set computer
225 (RISC) instruction set architecture (ISA) developed by
227 http://www.hitachi.com/
228 http://en.wikipedia.org/wiki/SuperH
232 select BR2_ARCH_HAS_MMU_MANDATORY
234 SPARC (from Scalable Processor Architecture) is a RISC
235 instruction set architecture (ISA) developed by Sun
237 http://www.oracle.com/sun
238 http://en.wikipedia.org/wiki/Sparc
242 select BR2_ARCH_IS_64
243 select BR2_ARCH_HAS_MMU_MANDATORY
245 SPARC (from Scalable Processor Architecture) is a RISC
246 instruction set architecture (ISA) developed by Sun
248 http://www.oracle.com/sun
249 http://en.wikipedia.org/wiki/Sparc
253 select BR2_ARCH_IS_64
254 select BR2_ARCH_HAS_MMU_MANDATORY
256 x86-64 is an extension of the x86 instruction set (Intel i386
257 architecture compatible microprocessor).
258 http://en.wikipedia.org/wiki/X86_64
262 # MMU support is set by the subarchitecture file, arch/Config.in.xtensa
264 Xtensa is a Tensilica processor IP architecture.
265 http://en.wikipedia.org/wiki/Xtensa
266 http://www.tensilica.com/
270 # For some architectures or specific cores, our internal toolchain
271 # backend is not suitable (like, missing support in upstream gcc, or
272 # no ChipCo fork exists...)
273 config BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
276 config BR2_ARCH_HAS_TOOLCHAIN_BUILDROOT
278 default y if !BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
280 # The following symbols are selected by the individual
281 # Config.in.$ARCH files
282 config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
285 config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
287 select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
289 config BR2_ARCH_NEEDS_GCC_AT_LEAST_5
291 select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
293 config BR2_ARCH_NEEDS_GCC_AT_LEAST_6
295 select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
297 config BR2_ARCH_NEEDS_GCC_AT_LEAST_7
299 select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
301 config BR2_ARCH_NEEDS_GCC_AT_LEAST_8
303 select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
305 # The following string values are defined by the individual
306 # Config.in.$ARCH files
313 config BR2_GCC_TARGET_ARCH
316 config BR2_GCC_TARGET_ABI
319 config BR2_GCC_TARGET_NAN
322 config BR2_GCC_TARGET_FP32_MODE
325 config BR2_GCC_TARGET_CPU
328 # The value of this option will be passed as --with-fpu=<value> when
329 # building gcc (internal backend) or -mfpu=<value> in the toolchain
330 # wrapper (external toolchain)
331 config BR2_GCC_TARGET_FPU
334 # The value of this option will be passed as --with-float=<value> when
335 # building gcc (internal backend) or -mfloat-abi=<value> in the toolchain
336 # wrapper (external toolchain)
337 config BR2_GCC_TARGET_FLOAT_ABI
340 # The value of this option will be passed as --with-mode=<value> when
341 # building gcc (internal backend) or -m<value> in the toolchain
342 # wrapper (external toolchain)
343 config BR2_GCC_TARGET_MODE
346 # Must be selected by binary formats that support shared libraries.
347 config BR2_BINFMT_SUPPORTS_SHARED
350 # Must match the name of the architecture from readelf point of view,
351 # i.e the "Machine:" field of readelf output. See get_machine_name()
352 # in binutils/readelf.c for the list of possible values.
353 config BR2_READELF_ARCH_NAME
356 # Set up target binary format
358 prompt "Target Binary Format"
359 default BR2_BINFMT_ELF if BR2_USE_MMU
360 default BR2_BINFMT_FLAT
362 config BR2_BINFMT_ELF
364 depends on BR2_USE_MMU
365 select BR2_BINFMT_SUPPORTS_SHARED
367 ELF (Executable and Linkable Format) is a format for libraries
368 and executables used across different architectures and
371 config BR2_BINFMT_FLAT
373 depends on !BR2_USE_MMU
375 FLAT binary is a relatively simple and lightweight executable
376 format based on the original a.out format. It is widely used
377 in environment where no MMU is available.
381 # Set up flat binary type
383 prompt "FLAT Binary type"
384 default BR2_BINFMT_FLAT_ONE
385 depends on BR2_BINFMT_FLAT
387 config BR2_BINFMT_FLAT_ONE
388 bool "One memory region"
390 All segments are linked into one memory region.
392 config BR2_BINFMT_FLAT_SHARED
395 # Even though this really generates shared binaries, there is no libdl
396 # and dlopen() cannot be used. So packages that require shared
397 # libraries cannot be built. Therefore, we don't select
398 # BR2_BINFMT_SUPPORTS_SHARED and therefore force BR2_STATIC_LIBS.
399 # Although this adds -static to the compilation, that's not a problem
400 # because the -mid-shared-library option overrides it.
402 Allow to load and link indiviual FLAT binaries at run time.
406 if BR2_arcle || BR2_arceb
407 source "arch/Config.in.arc"
410 if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be
411 source "arch/Config.in.arm"
415 source "arch/Config.in.csky"
419 source "arch/Config.in.m68k"
422 if BR2_microblazeel || BR2_microblazebe
423 source "arch/Config.in.microblaze"
426 if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
427 source "arch/Config.in.mips"
431 source "arch/Config.in.nds32"
435 source "arch/Config.in.nios2"
439 source "arch/Config.in.or1k"
442 if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
443 source "arch/Config.in.powerpc"
447 source "arch/Config.in.riscv"
451 source "arch/Config.in.sh"
454 if BR2_sparc || BR2_sparc64
455 source "arch/Config.in.sparc"
458 if BR2_i386 || BR2_x86_64
459 source "arch/Config.in.x86"
463 source "arch/Config.in.xtensa"
466 endmenu # Target options