blob: ef7892975a72998cf36f56699e6de40046566d7f [file] [log] [blame]
Masahiro Yamadad3ae6782014-07-30 14:08:14 +09001menu "MIPS architecture"
2 depends on MIPS
3
4config SYS_ARCH
Masahiro Yamadad3ae6782014-07-30 14:08:14 +09005 default "mips"
6
Daniel Schwierzeck99e7af22014-10-26 14:14:07 +01007config SYS_CPU
8 default "mips32" if CPU_MIPS32_R1 || CPU_MIPS32_R2
9 default "mips64" if CPU_MIPS64_R1 || CPU_MIPS64_R2
10
Masahiro Yamadaee2e54f2014-10-24 01:30:46 +090011config USE_PRIVATE_LIBGCC
12 default y
13
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090014choice
15 prompt "Target select"
16
17config TARGET_QEMU_MIPS
18 bool "Support qemu-mips"
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +010019 select SUPPORTS_BIG_ENDIAN
20 select SUPPORTS_LITTLE_ENDIAN
Daniel Schwierzeck256034d2014-10-26 14:14:07 +010021 select SUPPORTS_CPU_MIPS32_R1
22 select SUPPORTS_CPU_MIPS32_R2
Daniel Schwierzeck94384d12014-10-26 14:14:07 +010023 select SUPPORTS_CPU_MIPS64_R1
24 select SUPPORTS_CPU_MIPS64_R2
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090025
26config TARGET_MALTA
27 bool "Support malta"
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +010028 select SUPPORTS_BIG_ENDIAN
29 select SUPPORTS_LITTLE_ENDIAN
Daniel Schwierzeck256034d2014-10-26 14:14:07 +010030 select SUPPORTS_CPU_MIPS32_R1
31 select SUPPORTS_CPU_MIPS32_R2
Daniel Schwierzeck7dca6862015-01-18 22:00:18 +010032 select SWAP_IO_SPACE
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090033
34config TARGET_VCT
35 bool "Support vct"
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +010036 select SUPPORTS_BIG_ENDIAN
Daniel Schwierzeck256034d2014-10-26 14:14:07 +010037 select SUPPORTS_CPU_MIPS32_R1
38 select SUPPORTS_CPU_MIPS32_R2
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090039
40config TARGET_DBAU1X00
41 bool "Support dbau1x00"
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +010042 select SUPPORTS_BIG_ENDIAN
43 select SUPPORTS_LITTLE_ENDIAN
Daniel Schwierzeck256034d2014-10-26 14:14:07 +010044 select SUPPORTS_CPU_MIPS32_R1
45 select SUPPORTS_CPU_MIPS32_R2
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090046
47config TARGET_PB1X00
48 bool "Support pb1x00"
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +010049 select SUPPORTS_LITTLE_ENDIAN
Daniel Schwierzeck256034d2014-10-26 14:14:07 +010050 select SUPPORTS_CPU_MIPS32_R1
51 select SUPPORTS_CPU_MIPS32_R2
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090052
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090053
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
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +010062if 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
Daniel Schwierzeck256034d2014-10-26 14:14:07 +010082choice
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
Daniel Schwierzeckf9749fa2015-01-14 21:44:13 +0100120menu "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
Daniel Schwierzeckc07dc602015-01-14 21:44:13 +0100131config 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
Daniel Schwierzeck8d7ff4d2015-01-14 21:44:13 +0100140config 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
Daniel Schwierzeckf9749fa2015-01-14 21:44:13 +0100151endmenu
152
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +0100153config SUPPORTS_BIG_ENDIAN
154 bool
155
156config SUPPORTS_LITTLE_ENDIAN
157 bool
158
Daniel Schwierzeck256034d2014-10-26 14:14:07 +0100159config 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
Daniel Schwierzeckdfbad0f2015-01-18 21:59:35 +0100171config 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
Daniel Schwierzeck256034d2014-10-26 14:14:07 +0100179config 32BIT
180 bool
181
182config 64BIT
183 bool
184
Daniel Schwierzeck7dca6862015-01-18 22:00:18 +0100185config SWAP_IO_SPACE
186 bool
187
Daniel Schwierzecka4c242b2014-10-26 14:14:07 +0100188endif
189
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900190endmenu