]> git.sur5r.net Git - u-boot/blob - arch/mips/Kconfig
MIPS: bootm: refactor preparation of Linux kernel environment
[u-boot] / 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 endmenu
140
141 config SUPPORTS_BIG_ENDIAN
142         bool
143
144 config SUPPORTS_LITTLE_ENDIAN
145         bool
146
147 config SUPPORTS_CPU_MIPS32_R1
148         bool
149
150 config SUPPORTS_CPU_MIPS32_R2
151         bool
152
153 config SUPPORTS_CPU_MIPS64_R1
154         bool
155
156 config SUPPORTS_CPU_MIPS64_R2
157         bool
158
159 config 32BIT
160         bool
161
162 config 64BIT
163         bool
164
165 endif
166
167 endmenu