Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 1 | menu "MIPS architecture" |
| 2 | depends on MIPS |
| 3 | |
| 4 | config SYS_ARCH |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 5 | default "mips" |
| 6 | |
Daniel Schwierzeck | 99e7af2 | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 7 | config SYS_CPU |
Paul Burton | 3246437 | 2016-05-16 10:52:11 +0100 | [diff] [blame] | 8 | default "mips32" if CPU_MIPS32 |
| 9 | default "mips64" if CPU_MIPS64 |
Daniel Schwierzeck | 99e7af2 | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 10 | |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 11 | choice |
| 12 | prompt "Target select" |
Joe Hershberger | f069960 | 2015-05-12 14:46:23 -0500 | [diff] [blame] | 13 | optional |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 14 | |
| 15 | config TARGET_QEMU_MIPS |
| 16 | bool "Support qemu-mips" |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 17 | select ROM_EXCEPTION_VECTORS |
Daniel Schwierzeck | a4c242b | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 18 | select SUPPORTS_BIG_ENDIAN |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 19 | select SUPPORTS_CPU_MIPS32_R1 |
| 20 | select SUPPORTS_CPU_MIPS32_R2 |
Daniel Schwierzeck | 94384d1 | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 21 | select SUPPORTS_CPU_MIPS64_R1 |
| 22 | select SUPPORTS_CPU_MIPS64_R2 |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 23 | select SUPPORTS_LITTLE_ENDIAN |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 24 | |
| 25 | config TARGET_MALTA |
| 26 | bool "Support malta" |
Paul Burton | a31a3df | 2016-05-17 07:43:28 +0100 | [diff] [blame] | 27 | select DM |
| 28 | select DM_SERIAL |
Paul Burton | 8d6600b | 2016-01-29 13:54:52 +0000 | [diff] [blame] | 29 | select DYNAMIC_IO_PORT_BASE |
Paul Burton | 59a4c8b | 2016-09-21 11:18:56 +0100 | [diff] [blame] | 30 | select MIPS_CM |
Daniel Schwierzeck | 2cc9a77 | 2018-09-07 19:18:44 +0200 | [diff] [blame] | 31 | select MIPS_INSERT_BOOT_CONFIG |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 32 | select MIPS_L1_CACHE_SHIFT_6 |
Paul Burton | 59a4c8b | 2016-09-21 11:18:56 +0100 | [diff] [blame] | 33 | select MIPS_L2_CACHE |
Paul Burton | a31a3df | 2016-05-17 07:43:28 +0100 | [diff] [blame] | 34 | select OF_CONTROL |
| 35 | select OF_ISA_BUS |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 36 | select ROM_EXCEPTION_VECTORS |
Daniel Schwierzeck | a4c242b | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 37 | select SUPPORTS_BIG_ENDIAN |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 38 | select SUPPORTS_CPU_MIPS32_R1 |
| 39 | select SUPPORTS_CPU_MIPS32_R2 |
Paul Burton | 1c10e0d | 2016-05-16 10:52:14 +0100 | [diff] [blame] | 40 | select SUPPORTS_CPU_MIPS32_R6 |
Paul Burton | 825cfbd | 2016-05-26 14:49:36 +0100 | [diff] [blame] | 41 | select SUPPORTS_CPU_MIPS64_R1 |
| 42 | select SUPPORTS_CPU_MIPS64_R2 |
| 43 | select SUPPORTS_CPU_MIPS64_R6 |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 44 | select SUPPORTS_LITTLE_ENDIAN |
Daniel Schwierzeck | 7dca686 | 2015-01-18 22:00:18 +0100 | [diff] [blame] | 45 | select SWAP_IO_SPACE |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 46 | imply CMD_DM |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 47 | |
| 48 | config TARGET_VCT |
| 49 | bool "Support vct" |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 50 | select ROM_EXCEPTION_VECTORS |
Daniel Schwierzeck | a4c242b | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 51 | select SUPPORTS_BIG_ENDIAN |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 52 | select SUPPORTS_CPU_MIPS32_R1 |
| 53 | select SUPPORTS_CPU_MIPS32_R2 |
Paul Burton | 6832bdc | 2015-01-29 01:28:02 +0000 | [diff] [blame] | 54 | select SYS_MIPS_CACHE_INIT_RAM_LOAD |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 55 | |
Wills Wang | 833a1a8 | 2016-03-16 16:59:52 +0800 | [diff] [blame] | 56 | config ARCH_ATH79 |
| 57 | bool "Support QCA/Atheros ath79" |
Wills Wang | 833a1a8 | 2016-03-16 16:59:52 +0800 | [diff] [blame] | 58 | select DM |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 59 | select OF_CONTROL |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 60 | imply CMD_DM |
Wills Wang | 833a1a8 | 2016-03-16 16:59:52 +0800 | [diff] [blame] | 61 | |
Gregory CLEMENT | af05ee5 | 2018-12-14 16:16:47 +0100 | [diff] [blame] | 62 | config ARCH_MSCC |
| 63 | bool "Support MSCC VCore-III" |
| 64 | select OF_CONTROL |
| 65 | select DM |
| 66 | |
Álvaro Fernández Rojas | 98a97a8 | 2017-04-25 00:39:20 +0200 | [diff] [blame] | 67 | config ARCH_BMIPS |
| 68 | bool "Support BMIPS SoCs" |
Álvaro Fernández Rojas | 98a97a8 | 2017-04-25 00:39:20 +0200 | [diff] [blame] | 69 | select CLK |
| 70 | select CPU |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 71 | select DM |
| 72 | select OF_CONTROL |
Álvaro Fernández Rojas | 98a97a8 | 2017-04-25 00:39:20 +0200 | [diff] [blame] | 73 | select RAM |
| 74 | select SYSRESET |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 75 | imply CMD_DM |
Álvaro Fernández Rojas | 98a97a8 | 2017-04-25 00:39:20 +0200 | [diff] [blame] | 76 | |
developer | 89f051b | 2019-04-30 11:13:58 +0800 | [diff] [blame] | 77 | config ARCH_MTMIPS |
| 78 | bool "Support MediaTek MIPS platforms" |
developer | 591826e | 2019-09-25 17:45:43 +0800 | [diff] [blame] | 79 | select CLK |
Stefan Roese | 65da15e | 2018-09-05 15:12:35 +0200 | [diff] [blame] | 80 | imply CMD_DM |
| 81 | select DISPLAY_CPUINFO |
| 82 | select DM |
Stefan Roese | 8bbb6bf | 2018-10-09 08:59:09 +0200 | [diff] [blame] | 83 | imply DM_ETH |
| 84 | imply DM_GPIO |
developer | 591826e | 2019-09-25 17:45:43 +0800 | [diff] [blame] | 85 | select DM_RESET |
Stefan Roese | 65da15e | 2018-09-05 15:12:35 +0200 | [diff] [blame] | 86 | select DM_SERIAL |
developer | 591826e | 2019-09-25 17:45:43 +0800 | [diff] [blame] | 87 | select PINCTRL |
| 88 | select PINMUX |
| 89 | select PINCONF |
| 90 | select RESET_MTMIPS |
Stefan Roese | 65da15e | 2018-09-05 15:12:35 +0200 | [diff] [blame] | 91 | imply DM_SPI |
| 92 | imply DM_SPI_FLASH |
Stefan Roese | 17679e4 | 2019-05-28 08:11:37 +0200 | [diff] [blame] | 93 | select LAST_STAGE_INIT |
Stefan Roese | 65da15e | 2018-09-05 15:12:35 +0200 | [diff] [blame] | 94 | select MIPS_TUNE_24KC |
| 95 | select OF_CONTROL |
| 96 | select ROM_EXCEPTION_VECTORS |
| 97 | select SUPPORTS_CPU_MIPS32_R1 |
| 98 | select SUPPORTS_CPU_MIPS32_R2 |
| 99 | select SUPPORTS_LITTLE_ENDIAN |
Stefan Roese | 845e0fd | 2018-08-16 15:27:32 +0200 | [diff] [blame] | 100 | select SYSRESET |
Stefan Roese | 65da15e | 2018-09-05 15:12:35 +0200 | [diff] [blame] | 101 | |
Paul Burton | 96c6847 | 2018-12-16 19:25:22 -0300 | [diff] [blame] | 102 | config ARCH_JZ47XX |
| 103 | bool "Support Ingenic JZ47xx" |
| 104 | select SUPPORT_SPL |
| 105 | select OF_CONTROL |
| 106 | select DM |
| 107 | |
Purna Chandra Mandal | 825b321 | 2016-01-28 15:30:10 +0530 | [diff] [blame] | 108 | config MACH_PIC32 |
| 109 | bool "Support Microchip PIC32" |
Purna Chandra Mandal | 825b321 | 2016-01-28 15:30:10 +0530 | [diff] [blame] | 110 | select DM |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 111 | select OF_CONTROL |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 112 | imply CMD_DM |
Purna Chandra Mandal | 825b321 | 2016-01-28 15:30:10 +0530 | [diff] [blame] | 113 | |
Paul Burton | f5de32a | 2016-09-08 07:47:39 +0100 | [diff] [blame] | 114 | config TARGET_BOSTON |
| 115 | bool "Support Boston" |
| 116 | select DM |
| 117 | select DM_SERIAL |
Paul Burton | f5de32a | 2016-09-08 07:47:39 +0100 | [diff] [blame] | 118 | select MIPS_CM |
| 119 | select MIPS_L1_CACHE_SHIFT_6 |
| 120 | select MIPS_L2_CACHE |
Paul Burton | a315bcd | 2017-04-30 21:22:42 +0200 | [diff] [blame] | 121 | select OF_BOARD_SETUP |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 122 | select OF_CONTROL |
| 123 | select ROM_EXCEPTION_VECTORS |
Paul Burton | f5de32a | 2016-09-08 07:47:39 +0100 | [diff] [blame] | 124 | select SUPPORTS_BIG_ENDIAN |
Paul Burton | f5de32a | 2016-09-08 07:47:39 +0100 | [diff] [blame] | 125 | select SUPPORTS_CPU_MIPS32_R1 |
| 126 | select SUPPORTS_CPU_MIPS32_R2 |
| 127 | select SUPPORTS_CPU_MIPS32_R6 |
| 128 | select SUPPORTS_CPU_MIPS64_R1 |
| 129 | select SUPPORTS_CPU_MIPS64_R2 |
| 130 | select SUPPORTS_CPU_MIPS64_R6 |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 131 | select SUPPORTS_LITTLE_ENDIAN |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 132 | imply CMD_DM |
Paul Burton | f5de32a | 2016-09-08 07:47:39 +0100 | [diff] [blame] | 133 | |
Zubair Lutfullah Kakakhel | 1d153b3 | 2016-07-29 15:11:20 +0100 | [diff] [blame] | 134 | config TARGET_XILFPGA |
| 135 | bool "Support Imagination Xilfpga" |
Zubair Lutfullah Kakakhel | 1d153b3 | 2016-07-29 15:11:20 +0100 | [diff] [blame] | 136 | select DM |
Zubair Lutfullah Kakakhel | 1d153b3 | 2016-07-29 15:11:20 +0100 | [diff] [blame] | 137 | select DM_ETH |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 138 | select DM_GPIO |
| 139 | select DM_SERIAL |
Zubair Lutfullah Kakakhel | 1d153b3 | 2016-07-29 15:11:20 +0100 | [diff] [blame] | 140 | select MIPS_L1_CACHE_SHIFT_4 |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 141 | select OF_CONTROL |
Daniel Schwierzeck | 754cd05 | 2016-02-14 18:52:57 +0100 | [diff] [blame] | 142 | select ROM_EXCEPTION_VECTORS |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 143 | select SUPPORTS_CPU_MIPS32_R1 |
| 144 | select SUPPORTS_CPU_MIPS32_R2 |
| 145 | select SUPPORTS_LITTLE_ENDIAN |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 146 | imply CMD_DM |
Zubair Lutfullah Kakakhel | 1d153b3 | 2016-07-29 15:11:20 +0100 | [diff] [blame] | 147 | help |
| 148 | This supports IMGTEC MIPSfpga platform |
| 149 | |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 150 | endchoice |
| 151 | |
Paul Burton | f5de32a | 2016-09-08 07:47:39 +0100 | [diff] [blame] | 152 | source "board/imgtec/boston/Kconfig" |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 153 | source "board/imgtec/malta/Kconfig" |
Zubair Lutfullah Kakakhel | 1d153b3 | 2016-07-29 15:11:20 +0100 | [diff] [blame] | 154 | source "board/imgtec/xilfpga/Kconfig" |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 155 | source "board/micronas/vct/Kconfig" |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 156 | source "board/qemu-mips/Kconfig" |
Wills Wang | 833a1a8 | 2016-03-16 16:59:52 +0800 | [diff] [blame] | 157 | source "arch/mips/mach-ath79/Kconfig" |
Gregory CLEMENT | af05ee5 | 2018-12-14 16:16:47 +0100 | [diff] [blame] | 158 | source "arch/mips/mach-mscc/Kconfig" |
Álvaro Fernández Rojas | 98a97a8 | 2017-04-25 00:39:20 +0200 | [diff] [blame] | 159 | source "arch/mips/mach-bmips/Kconfig" |
Paul Burton | 96c6847 | 2018-12-16 19:25:22 -0300 | [diff] [blame] | 160 | source "arch/mips/mach-jz47xx/Kconfig" |
Purna Chandra Mandal | 825b321 | 2016-01-28 15:30:10 +0530 | [diff] [blame] | 161 | source "arch/mips/mach-pic32/Kconfig" |
developer | 89f051b | 2019-04-30 11:13:58 +0800 | [diff] [blame] | 162 | source "arch/mips/mach-mtmips/Kconfig" |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 163 | |
Daniel Schwierzeck | a4c242b | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 164 | if MIPS |
| 165 | |
| 166 | choice |
| 167 | prompt "Endianness selection" |
| 168 | help |
| 169 | Some MIPS boards can be configured for either little or big endian |
| 170 | byte order. These modes require different U-Boot images. In general there |
| 171 | is one preferred byteorder for a particular system but some systems are |
| 172 | just as commonly used in the one or the other endianness. |
| 173 | |
| 174 | config SYS_BIG_ENDIAN |
| 175 | bool "Big endian" |
| 176 | depends on SUPPORTS_BIG_ENDIAN |
| 177 | |
| 178 | config SYS_LITTLE_ENDIAN |
| 179 | bool "Little endian" |
| 180 | depends on SUPPORTS_LITTLE_ENDIAN |
| 181 | |
| 182 | endchoice |
| 183 | |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 184 | choice |
| 185 | prompt "CPU selection" |
| 186 | default CPU_MIPS32_R2 |
| 187 | |
| 188 | config CPU_MIPS32_R1 |
| 189 | bool "MIPS32 Release 1" |
| 190 | depends on SUPPORTS_CPU_MIPS32_R1 |
| 191 | select 32BIT |
| 192 | help |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 193 | Choose this option to build an U-Boot for release 1 through 5 of the |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 194 | MIPS32 architecture. |
| 195 | |
| 196 | config CPU_MIPS32_R2 |
| 197 | bool "MIPS32 Release 2" |
| 198 | depends on SUPPORTS_CPU_MIPS32_R2 |
| 199 | select 32BIT |
| 200 | help |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 201 | Choose this option to build an U-Boot for release 2 through 5 of the |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 202 | MIPS32 architecture. |
| 203 | |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 204 | config CPU_MIPS32_R6 |
| 205 | bool "MIPS32 Release 6" |
| 206 | depends on SUPPORTS_CPU_MIPS32_R6 |
| 207 | select 32BIT |
| 208 | help |
| 209 | Choose this option to build an U-Boot for release 6 or later of the |
| 210 | MIPS32 architecture. |
| 211 | |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 212 | config CPU_MIPS64_R1 |
| 213 | bool "MIPS64 Release 1" |
| 214 | depends on SUPPORTS_CPU_MIPS64_R1 |
| 215 | select 64BIT |
| 216 | help |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 217 | Choose this option to build a kernel for release 1 through 5 of the |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 218 | MIPS64 architecture. |
| 219 | |
| 220 | config CPU_MIPS64_R2 |
| 221 | bool "MIPS64 Release 2" |
| 222 | depends on SUPPORTS_CPU_MIPS64_R2 |
| 223 | select 64BIT |
| 224 | help |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 225 | Choose this option to build a kernel for release 2 through 5 of the |
| 226 | MIPS64 architecture. |
| 227 | |
| 228 | config CPU_MIPS64_R6 |
| 229 | bool "MIPS64 Release 6" |
| 230 | depends on SUPPORTS_CPU_MIPS64_R6 |
| 231 | select 64BIT |
| 232 | help |
| 233 | Choose this option to build a kernel for release 6 or later of the |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 234 | MIPS64 architecture. |
| 235 | |
| 236 | endchoice |
| 237 | |
Daniel Schwierzeck | 754cd05 | 2016-02-14 18:52:57 +0100 | [diff] [blame] | 238 | menu "General setup" |
| 239 | |
| 240 | config ROM_EXCEPTION_VECTORS |
| 241 | bool "Build U-Boot image with exception vectors" |
| 242 | help |
| 243 | Enable this to include exception vectors in the U-Boot image. This is |
| 244 | required if the U-Boot entry point is equal to the address of the |
| 245 | CPU reset exception vector (e.g. U-Boot as ROM loader in Qemu, |
| 246 | U-Boot booted from parallel NOR flash). |
| 247 | Disable this, if the U-Boot image is booted from DRAM (e.g. by SPL). |
| 248 | In that case the image size will be reduced by 0x500 bytes. |
| 249 | |
Paul Burton | 3d6864a | 2017-05-12 13:26:11 +0200 | [diff] [blame] | 250 | config MIPS_CM_BASE |
| 251 | hex "MIPS CM GCR Base Address" |
| 252 | depends on MIPS_CM |
Paul Burton | a6ac965 | 2017-04-30 21:22:41 +0200 | [diff] [blame] | 253 | default 0x16100000 if TARGET_BOSTON |
Paul Burton | 3d6864a | 2017-05-12 13:26:11 +0200 | [diff] [blame] | 254 | default 0x1fbf8000 |
| 255 | help |
| 256 | The physical base address at which to map the MIPS Coherence Manager |
| 257 | Global Configuration Registers (GCRs). This should be set such that |
| 258 | the GCRs occupy a region of the physical address space which is |
| 259 | otherwise unused, or at minimum that software doesn't need to access. |
| 260 | |
Daniel Schwierzeck | e3b432d | 2018-09-07 19:02:05 +0200 | [diff] [blame] | 261 | config MIPS_CACHE_INDEX_BASE |
| 262 | hex "Index base address for cache initialisation" |
| 263 | default 0x80000000 if CPU_MIPS32 |
| 264 | default 0xffffffff80000000 if CPU_MIPS64 |
| 265 | help |
| 266 | This is the base address for a memory block, which is used for |
| 267 | initialising the cache lines. This is also the base address of a memory |
| 268 | block which is used for loading and filling cache lines when |
| 269 | SYS_MIPS_CACHE_INIT_RAM_LOAD is selected. |
| 270 | Normally this is CKSEG0. If the MIPS system needs to move this block |
| 271 | to some SRAM or ScratchPad RAM, adapt this option accordingly. |
| 272 | |
Daniel Schwierzeck | 8013286 | 2018-11-01 02:02:21 +0100 | [diff] [blame] | 273 | config MIPS_RELOCATION_TABLE_SIZE |
| 274 | hex "Relocation table size" |
| 275 | range 0x100 0x10000 |
| 276 | default "0x8000" |
| 277 | ---help--- |
| 278 | A table of relocation data will be appended to the U-Boot binary |
| 279 | and parsed in relocate_code() to fix up all offsets in the relocated |
| 280 | U-Boot. |
| 281 | |
| 282 | This option allows the amount of space reserved for the table to be |
| 283 | adjusted in a range from 256 up to 64k. The default is 32k and should |
| 284 | be ok in most cases. Reduce this value to shrink the size of U-Boot |
| 285 | binary. |
| 286 | |
| 287 | The build will fail and a valid size suggested if this is too small. |
| 288 | |
| 289 | If unsure, leave at the default value. |
| 290 | |
Daniel Schwierzeck | 754cd05 | 2016-02-14 18:52:57 +0100 | [diff] [blame] | 291 | endmenu |
| 292 | |
Daniel Schwierzeck | f9749fa | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 293 | menu "OS boot interface" |
| 294 | |
| 295 | config MIPS_BOOT_CMDLINE_LEGACY |
| 296 | bool "Hand over legacy command line to Linux kernel" |
| 297 | default y |
| 298 | help |
| 299 | Enable this option if you want U-Boot to hand over the Yamon-style |
| 300 | command line to the kernel. All bootargs will be prepared as argc/argv |
| 301 | compatible list. The argument count (argc) is stored in register $a0. |
| 302 | The address of the argument list (argv) is stored in register $a1. |
| 303 | |
Daniel Schwierzeck | c07dc60 | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 304 | config MIPS_BOOT_ENV_LEGACY |
| 305 | bool "Hand over legacy environment to Linux kernel" |
| 306 | default y |
| 307 | help |
| 308 | Enable this option if you want U-Boot to hand over the Yamon-style |
| 309 | environment to the kernel. Information like memory size, initrd |
| 310 | address and size will be prepared as zero-terminated key/value list. |
Robert P. J. Day | 8c60f92 | 2016-05-04 04:47:31 -0400 | [diff] [blame] | 311 | The address of the environment is stored in register $a2. |
Daniel Schwierzeck | c07dc60 | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 312 | |
Daniel Schwierzeck | 8d7ff4d | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 313 | config MIPS_BOOT_FDT |
Daniel Schwierzeck | d1b29d2 | 2015-02-22 16:58:30 +0100 | [diff] [blame] | 314 | bool "Hand over a flattened device tree to Linux kernel" |
Daniel Schwierzeck | 8d7ff4d | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 315 | default n |
| 316 | help |
| 317 | Enable this option if you want U-Boot to hand over a flattened |
Daniel Schwierzeck | d1b29d2 | 2015-02-22 16:58:30 +0100 | [diff] [blame] | 318 | device tree to the kernel. According to UHI register $a0 will be set |
| 319 | to -2 and the FDT address is stored in $a1. |
Daniel Schwierzeck | 8d7ff4d | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 320 | |
Daniel Schwierzeck | f9749fa | 2015-01-14 21:44:13 +0100 | [diff] [blame] | 321 | endmenu |
| 322 | |
Daniel Schwierzeck | a4c242b | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 323 | config SUPPORTS_BIG_ENDIAN |
| 324 | bool |
| 325 | |
| 326 | config SUPPORTS_LITTLE_ENDIAN |
| 327 | bool |
| 328 | |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 329 | config SUPPORTS_CPU_MIPS32_R1 |
| 330 | bool |
| 331 | |
| 332 | config SUPPORTS_CPU_MIPS32_R2 |
| 333 | bool |
| 334 | |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 335 | config SUPPORTS_CPU_MIPS32_R6 |
| 336 | bool |
| 337 | |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 338 | config SUPPORTS_CPU_MIPS64_R1 |
| 339 | bool |
| 340 | |
| 341 | config SUPPORTS_CPU_MIPS64_R2 |
| 342 | bool |
| 343 | |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 344 | config SUPPORTS_CPU_MIPS64_R6 |
| 345 | bool |
| 346 | |
Daniel Schwierzeck | dfbad0f | 2015-01-18 21:59:35 +0100 | [diff] [blame] | 347 | config CPU_MIPS32 |
| 348 | bool |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 349 | default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R6 |
Daniel Schwierzeck | dfbad0f | 2015-01-18 21:59:35 +0100 | [diff] [blame] | 350 | |
| 351 | config CPU_MIPS64 |
| 352 | bool |
Paul Burton | 55e29dd | 2016-05-16 10:52:12 +0100 | [diff] [blame] | 353 | default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6 |
Daniel Schwierzeck | dfbad0f | 2015-01-18 21:59:35 +0100 | [diff] [blame] | 354 | |
Daniel Schwierzeck | aadd332 | 2015-12-26 19:55:37 +0100 | [diff] [blame] | 355 | config MIPS_TUNE_4KC |
| 356 | bool |
| 357 | |
| 358 | config MIPS_TUNE_14KC |
| 359 | bool |
| 360 | |
| 361 | config MIPS_TUNE_24KC |
| 362 | bool |
| 363 | |
Daniel Schwierzeck | c7661d5 | 2016-05-27 15:39:39 +0200 | [diff] [blame] | 364 | config MIPS_TUNE_34KC |
| 365 | bool |
| 366 | |
Marek Vasut | a9c6e8b | 2016-05-06 20:10:33 +0200 | [diff] [blame] | 367 | config MIPS_TUNE_74KC |
| 368 | bool |
| 369 | |
Daniel Schwierzeck | 256034d | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 370 | config 32BIT |
| 371 | bool |
| 372 | |
| 373 | config 64BIT |
| 374 | bool |
| 375 | |
Daniel Schwierzeck | 7dca686 | 2015-01-18 22:00:18 +0100 | [diff] [blame] | 376 | config SWAP_IO_SPACE |
| 377 | bool |
| 378 | |
Paul Burton | 6832bdc | 2015-01-29 01:28:02 +0000 | [diff] [blame] | 379 | config SYS_MIPS_CACHE_INIT_RAM_LOAD |
| 380 | bool |
| 381 | |
Daniel Schwierzeck | 41dc35e | 2016-06-04 16:13:21 +0200 | [diff] [blame] | 382 | config MIPS_INIT_STACK_IN_SRAM |
| 383 | bool |
| 384 | default n |
| 385 | help |
| 386 | Select this if the initial stack frame could be setup in SRAM. |
| 387 | Normally the initial stack frame is set up in DRAM which is often |
| 388 | only available after lowlevel_init. With this option the initial |
| 389 | stack frame and the early C environment is set up before |
| 390 | lowlevel_init. Thus lowlevel_init does not need to be implemented |
| 391 | in assembler. |
| 392 | |
Paul Burton | 5e51142 | 2016-05-27 14:28:04 +0100 | [diff] [blame] | 393 | config SYS_DCACHE_SIZE |
| 394 | int |
| 395 | default 0 |
| 396 | help |
| 397 | The total size of the L1 Dcache, if known at compile time. |
| 398 | |
Paul Burton | 62f1352 | 2016-05-27 14:28:05 +0100 | [diff] [blame] | 399 | config SYS_DCACHE_LINE_SIZE |
Paul Burton | 79e49fd | 2016-06-09 13:09:52 +0100 | [diff] [blame] | 400 | int |
Paul Burton | 62f1352 | 2016-05-27 14:28:05 +0100 | [diff] [blame] | 401 | default 0 |
| 402 | help |
| 403 | The size of L1 Dcache lines, if known at compile time. |
| 404 | |
Paul Burton | 5e51142 | 2016-05-27 14:28:04 +0100 | [diff] [blame] | 405 | config SYS_ICACHE_SIZE |
| 406 | int |
| 407 | default 0 |
| 408 | help |
| 409 | The total size of the L1 ICache, if known at compile time. |
| 410 | |
Paul Burton | 62f1352 | 2016-05-27 14:28:05 +0100 | [diff] [blame] | 411 | config SYS_ICACHE_LINE_SIZE |
Paul Burton | 5e51142 | 2016-05-27 14:28:04 +0100 | [diff] [blame] | 412 | int |
| 413 | default 0 |
| 414 | help |
Paul Burton | 62f1352 | 2016-05-27 14:28:05 +0100 | [diff] [blame] | 415 | The size of L1 Icache lines, if known at compile time. |
Paul Burton | 5e51142 | 2016-05-27 14:28:04 +0100 | [diff] [blame] | 416 | |
Ramon Fried | 7e07e49 | 2019-06-10 21:05:26 +0300 | [diff] [blame] | 417 | config SYS_SCACHE_LINE_SIZE |
| 418 | int |
| 419 | default 0 |
| 420 | help |
| 421 | The size of L2 cache lines, if known at compile time. |
| 422 | |
| 423 | |
Paul Burton | 5e51142 | 2016-05-27 14:28:04 +0100 | [diff] [blame] | 424 | config SYS_CACHE_SIZE_AUTO |
| 425 | def_bool y if SYS_DCACHE_SIZE = 0 && SYS_ICACHE_SIZE = 0 && \ |
Ramon Fried | 7e07e49 | 2019-06-10 21:05:26 +0300 | [diff] [blame] | 426 | SYS_DCACHE_LINE_SIZE = 0 && SYS_ICACHE_LINE_SIZE = 0 && \ |
| 427 | SYS_SCACHE_LINE_SIZE = 0 |
Paul Burton | 5e51142 | 2016-05-27 14:28:04 +0100 | [diff] [blame] | 428 | help |
| 429 | Select this (or let it be auto-selected by not defining any cache |
| 430 | sizes) in order to allow U-Boot to automatically detect the sizes |
| 431 | of caches at runtime. This has a small cost in code size & runtime |
| 432 | so if you know the cache configuration for your system at compile |
| 433 | time it would be beneficial to configure it. |
| 434 | |
Daniel Schwierzeck | 02ca55e | 2016-01-09 17:32:50 +0100 | [diff] [blame] | 435 | config MIPS_L1_CACHE_SHIFT_4 |
| 436 | bool |
| 437 | |
| 438 | config MIPS_L1_CACHE_SHIFT_5 |
| 439 | bool |
| 440 | |
| 441 | config MIPS_L1_CACHE_SHIFT_6 |
| 442 | bool |
| 443 | |
| 444 | config MIPS_L1_CACHE_SHIFT_7 |
| 445 | bool |
| 446 | |
| 447 | config MIPS_L1_CACHE_SHIFT |
| 448 | int |
| 449 | default "7" if MIPS_L1_CACHE_SHIFT_7 |
| 450 | default "6" if MIPS_L1_CACHE_SHIFT_6 |
| 451 | default "5" if MIPS_L1_CACHE_SHIFT_5 |
| 452 | default "4" if MIPS_L1_CACHE_SHIFT_4 |
| 453 | default "5" |
| 454 | |
Paul Burton | 8156078 | 2016-09-21 11:18:54 +0100 | [diff] [blame] | 455 | config MIPS_L2_CACHE |
| 456 | bool |
| 457 | help |
| 458 | Select this if your system includes an L2 cache and you want U-Boot |
| 459 | to initialise & maintain it. |
| 460 | |
Paul Burton | 8d6600b | 2016-01-29 13:54:52 +0000 | [diff] [blame] | 461 | config DYNAMIC_IO_PORT_BASE |
| 462 | bool |
| 463 | |
Paul Burton | 79ac174 | 2016-09-21 11:18:53 +0100 | [diff] [blame] | 464 | config MIPS_CM |
| 465 | bool |
| 466 | help |
| 467 | Select this if your system contains a MIPS Coherence Manager and you |
| 468 | wish U-Boot to configure it or make use of it to retrieve system |
| 469 | information such as cache configuration. |
| 470 | |
Daniel Schwierzeck | 2cc9a77 | 2018-09-07 19:18:44 +0200 | [diff] [blame] | 471 | config MIPS_INSERT_BOOT_CONFIG |
| 472 | bool |
| 473 | default n |
| 474 | help |
| 475 | Enable this to insert some board-specific boot configuration in |
| 476 | the U-Boot binary at offset 0x10. |
| 477 | |
| 478 | config MIPS_BOOT_CONFIG_WORD0 |
| 479 | hex |
| 480 | depends on MIPS_INSERT_BOOT_CONFIG |
| 481 | default 0x420 if TARGET_MALTA |
| 482 | default 0x0 |
| 483 | help |
| 484 | Value which is inserted as boot config word 0. |
| 485 | |
| 486 | config MIPS_BOOT_CONFIG_WORD1 |
| 487 | hex |
| 488 | depends on MIPS_INSERT_BOOT_CONFIG |
| 489 | default 0x0 |
| 490 | help |
| 491 | Value which is inserted as boot config word 1. |
| 492 | |
Daniel Schwierzeck | a4c242b | 2014-10-26 14:14:07 +0100 | [diff] [blame] | 493 | endif |
| 494 | |
Masahiro Yamada | d3ae678 | 2014-07-30 14:08:14 +0900 | [diff] [blame] | 495 | endmenu |