]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/mips/Kconfig
MIPS: replace $(CPU) with Kconfig symbols
[karo-tx-uboot.git] / arch / mips / Kconfig
1 menu "MIPS architecture"
2         depends on MIPS
3
4 config SYS_ARCH
5         default "mips"
6
7 config SYS_CPU
8         default "mips32" if CPU_MIPS32_R1 || CPU_MIPS32_R2
9         default "mips64" if CPU_MIPS64_R1 || CPU_MIPS64_R2
10
11 config USE_PRIVATE_LIBGCC
12         default y
13
14 choice
15         prompt "Target select"
16
17 config TARGET_QEMU_MIPS
18         bool "Support qemu-mips"
19         select SUPPORTS_BIG_ENDIAN
20         select SUPPORTS_LITTLE_ENDIAN
21         select SUPPORTS_CPU_MIPS32_R1
22         select SUPPORTS_CPU_MIPS32_R2
23         select SUPPORTS_CPU_MIPS64_R1
24         select SUPPORTS_CPU_MIPS64_R2
25
26 config TARGET_MALTA
27         bool "Support malta"
28         select SUPPORTS_BIG_ENDIAN
29         select SUPPORTS_LITTLE_ENDIAN
30         select SUPPORTS_CPU_MIPS32_R1
31         select SUPPORTS_CPU_MIPS32_R2
32
33 config TARGET_VCT
34         bool "Support vct"
35         select SUPPORTS_BIG_ENDIAN
36         select SUPPORTS_CPU_MIPS32_R1
37         select SUPPORTS_CPU_MIPS32_R2
38
39 config TARGET_DBAU1X00
40         bool "Support dbau1x00"
41         select SUPPORTS_BIG_ENDIAN
42         select SUPPORTS_LITTLE_ENDIAN
43         select SUPPORTS_CPU_MIPS32_R1
44         select SUPPORTS_CPU_MIPS32_R2
45
46 config TARGET_PB1X00
47         bool "Support pb1x00"
48         select SUPPORTS_LITTLE_ENDIAN
49         select SUPPORTS_CPU_MIPS32_R1
50         select SUPPORTS_CPU_MIPS32_R2
51
52
53 endchoice
54
55 source "board/dbau1x00/Kconfig"
56 source "board/imgtec/malta/Kconfig"
57 source "board/micronas/vct/Kconfig"
58 source "board/pb1x00/Kconfig"
59 source "board/qemu-mips/Kconfig"
60
61 if MIPS
62
63 choice
64         prompt "Endianness selection"
65         help
66           Some MIPS boards can be configured for either little or big endian
67           byte order. These modes require different U-Boot images. In general there
68           is one preferred byteorder for a particular system but some systems are
69           just as commonly used in the one or the other endianness.
70
71 config SYS_BIG_ENDIAN
72         bool "Big endian"
73         depends on SUPPORTS_BIG_ENDIAN
74
75 config SYS_LITTLE_ENDIAN
76         bool "Little endian"
77         depends on SUPPORTS_LITTLE_ENDIAN
78
79 endchoice
80
81 choice
82         prompt "CPU selection"
83         default CPU_MIPS32_R2
84
85 config CPU_MIPS32_R1
86         bool "MIPS32 Release 1"
87         depends on SUPPORTS_CPU_MIPS32_R1
88         select 32BIT
89         help
90           Choose this option to build an U-Boot for release 1 or later of the
91           MIPS32 architecture.
92
93 config CPU_MIPS32_R2
94         bool "MIPS32 Release 2"
95         depends on SUPPORTS_CPU_MIPS32_R2
96         select 32BIT
97         help
98           Choose this option to build an U-Boot for release 2 or later of the
99           MIPS32 architecture.
100
101 config CPU_MIPS64_R1
102         bool "MIPS64 Release 1"
103         depends on SUPPORTS_CPU_MIPS64_R1
104         select 64BIT
105         help
106           Choose this option to build a kernel for release 1 or later of the
107           MIPS64 architecture.
108
109 config CPU_MIPS64_R2
110         bool "MIPS64 Release 2"
111         depends on SUPPORTS_CPU_MIPS64_R2
112         select 64BIT
113         help
114           Choose this option to build a kernel for release 2 or later of the
115           MIPS64 architecture.
116
117 endchoice
118
119 menu "OS boot interface"
120
121 config MIPS_BOOT_CMDLINE_LEGACY
122         bool "Hand over legacy command line to Linux kernel"
123         default y
124         help
125           Enable this option if you want U-Boot to hand over the Yamon-style
126           command line to the kernel. All bootargs will be prepared as argc/argv
127           compatible list. The argument count (argc) is stored in register $a0.
128           The address of the argument list (argv) is stored in register $a1.
129
130 config MIPS_BOOT_ENV_LEGACY
131         bool "Hand over legacy environment to Linux kernel"
132         default y
133         help
134           Enable this option if you want U-Boot to hand over the Yamon-style
135           environment to the kernel. Information like memory size, initrd
136           address and size will be prepared as zero-terminated key/value list.
137           The address of the enviroment is stored in register $a2.
138
139 config MIPS_BOOT_FDT
140         bool "Hand over a flattened device tree to Linux kernel (INCOMPLETE)"
141         default n
142         help
143           Enable this option if you want U-Boot to hand over a flattened
144           device tree to the kernel.
145
146           Note: the final hand over to the kernel is not yet implemented. After
147                 the community agreed on the MIPS boot interface for device trees,
148                 the corresponding code will be added.
149
150 endmenu
151
152 config SUPPORTS_BIG_ENDIAN
153         bool
154
155 config SUPPORTS_LITTLE_ENDIAN
156         bool
157
158 config SUPPORTS_CPU_MIPS32_R1
159         bool
160
161 config SUPPORTS_CPU_MIPS32_R2
162         bool
163
164 config SUPPORTS_CPU_MIPS64_R1
165         bool
166
167 config SUPPORTS_CPU_MIPS64_R2
168         bool
169
170 config CPU_MIPS32
171         bool
172         default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
173
174 config CPU_MIPS64
175         bool
176         default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
177
178 config 32BIT
179         bool
180
181 config 64BIT
182         bool
183
184 endif
185
186 endmenu