summaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
blob: 1793055ae0b7f2a9c76705c5d5adf91ebf6694b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#
#
#
config X86
	bool
	select HAS_KALLSYMS
	select GENERIC_FIND_NEXT_BIT
	default y

config ARCH_TEXT_BASE
	hex
	default 0x00007c00 if MACH_X86_GENERIC
	default 0x0 if MACH_EFI_GENERIC

config BOARD_LINKER_SCRIPT
	bool
	default n

config GENERIC_LINKER_SCRIPT
	bool
	default y
	depends on !BOARD_LINKER_SCRIPT

menu "ARCH specific settings"

config 64BIT
	def_bool y if X86_EFI
	help
	  Say yes to build a 64-bit binary - formerly known as x86_64
	  Say no to build a 32-bit binary - formerly known as i386.

	  32-bit support currently does not compile and is not tested
	  due to the lack of hardware.

config X86_32
	def_bool y
	depends on !64BIT

config X86_64
	def_bool y
	depends on 64BIT

endmenu

config X86_BOOTLOADER
	bool
	select X86_32
	select HAS_MODULES
	select HAVE_CONFIGURABLE_MEMORY_LAYOUT
	select HAVE_CONFIGURABLE_TEXT_BASE

choice
	prompt "Select your board"

config MACH_X86_GENERIC
	bool "Generic x86"
	select X86_BOOTLOADER
	depends on !X86_EFI 
	help
	  Say Y here if you want barebox to be your BIOS based bootloader

config MACH_EFI_GENERIC
	bool "Generic EFI"
	depends on X86_EFI 
	select HAS_DEBUG_LL
	help
	  Say Y here if you want barebox to be your EFI based bootloader

endchoice

choice
	prompt "Bring up type"

	config X86_EFI
		bool "EFI"
		select EFI_BOOTUP
		select EFI_GUID
		select EFI_DEVICEPATH
		select PRINTF_UUID
		select CLOCKSOURCE_EFI_X86

	config X86_BIOS_BRINGUP
		bool "16 bit BIOS"
		help
		  Barebox will act as a BIOS based bootloader. This includes
		  some 16 bit real mode code and some restrictions everyone knows
		  from BIOS based systems.

	config X86_NATIVE_BRINGUP
		bool "native"
		help
		  Barebox will act as a native bootloader. This includes all the
		  required initialization needed to bring up a piece of hardware.
		  Note: Not implemented yet

endchoice

source "arch/x86/boot/Kconfig"
source "arch/x86/mach-i386/Kconfig"