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