xref: /openbmc/u-boot/arch/mips/Kconfig (revision fd0135e3c54c391b6143f85440e30d576a9a83fe)
1dd84058dSMasahiro Yamadamenu "MIPS architecture"
2dd84058dSMasahiro Yamada	depends on MIPS
3dd84058dSMasahiro Yamada
4dd84058dSMasahiro Yamadaconfig SYS_ARCH
5dd84058dSMasahiro Yamada	default "mips"
6dd84058dSMasahiro Yamada
7b9863b6dSDaniel Schwierzeckconfig SYS_CPU
820286cdfSPaul Burton	default "mips32" if CPU_MIPS32
920286cdfSPaul Burton	default "mips64" if CPU_MIPS64
10b9863b6dSDaniel Schwierzeck
11dd84058dSMasahiro Yamadachoice
12dd84058dSMasahiro Yamada	prompt "Target select"
13a26cd049SJoe Hershberger	optional
14dd84058dSMasahiro Yamada
15dd84058dSMasahiro Yamadaconfig TARGET_QEMU_MIPS
16dd84058dSMasahiro Yamada	bool "Support qemu-mips"
175ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
180e1dc345SDaniel Schwierzeck	select SUPPORTS_BIG_ENDIAN
1902611cbbSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS32_R1
2002611cbbSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS32_R2
21aa45f75eSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS64_R1
22aa45f75eSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS64_R2
235ed063d1SMichal Simek	select SUPPORTS_LITTLE_ENDIAN
24dd84058dSMasahiro Yamada
25dd84058dSMasahiro Yamadaconfig TARGET_MALTA
26dd84058dSMasahiro Yamada	bool "Support malta"
276242aa13SPaul Burton	select DM
286242aa13SPaul Burton	select DM_SERIAL
2905e34255SPaul Burton	select DYNAMIC_IO_PORT_BASE
30566ce04dSPaul Burton	select MIPS_CM
31d1c3d8bdSDaniel Schwierzeck	select MIPS_INSERT_BOOT_CONFIG
325ed063d1SMichal Simek	select MIPS_L1_CACHE_SHIFT_6
33566ce04dSPaul Burton	select MIPS_L2_CACHE
346242aa13SPaul Burton	select OF_CONTROL
356242aa13SPaul Burton	select OF_ISA_BUS
365ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
370e1dc345SDaniel Schwierzeck	select SUPPORTS_BIG_ENDIAN
3802611cbbSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS32_R1
3902611cbbSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS32_R2
4040ba13c9SPaul Burton	select SUPPORTS_CPU_MIPS32_R6
410f832b9cSPaul Burton	select SUPPORTS_CPU_MIPS64_R1
420f832b9cSPaul Burton	select SUPPORTS_CPU_MIPS64_R2
430f832b9cSPaul Burton	select SUPPORTS_CPU_MIPS64_R6
445ed063d1SMichal Simek	select SUPPORTS_LITTLE_ENDIAN
459d638eeaSDaniel Schwierzeck	select SWAP_IO_SPACE
4608a00cbaSMichal Simek	imply CMD_DM
47dd84058dSMasahiro Yamada
48dd84058dSMasahiro Yamadaconfig TARGET_VCT
49dd84058dSMasahiro Yamada	bool "Support vct"
505ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
510e1dc345SDaniel Schwierzeck	select SUPPORTS_BIG_ENDIAN
5202611cbbSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS32_R1
5302611cbbSDaniel Schwierzeck	select SUPPORTS_CPU_MIPS32_R2
54dd7c7200SPaul Burton	select SYS_MIPS_CACHE_INIT_RAM_LOAD
55dd84058dSMasahiro Yamada
561d3d0f1fSWills Wangconfig ARCH_ATH79
571d3d0f1fSWills Wang	bool "Support QCA/Atheros ath79"
581d3d0f1fSWills Wang	select DM
595ed063d1SMichal Simek	select OF_CONTROL
6008a00cbaSMichal Simek	imply CMD_DM
611d3d0f1fSWills Wang
62dd1033e4SGregory CLEMENTconfig ARCH_MSCC
63dd1033e4SGregory CLEMENT	bool "Support MSCC VCore-III"
64dd1033e4SGregory CLEMENT	select OF_CONTROL
65dd1033e4SGregory CLEMENT	select DM
66dd1033e4SGregory CLEMENT
67ee422142SÁlvaro Fernández Rojasconfig ARCH_BMIPS
68ee422142SÁlvaro Fernández Rojas	bool "Support BMIPS SoCs"
69ee422142SÁlvaro Fernández Rojas	select CLK
70ee422142SÁlvaro Fernández Rojas	select CPU
715ed063d1SMichal Simek	select DM
725ed063d1SMichal Simek	select OF_CONTROL
73ee422142SÁlvaro Fernández Rojas	select RAM
74ee422142SÁlvaro Fernández Rojas	select SYSRESET
7508a00cbaSMichal Simek	imply CMD_DM
76ee422142SÁlvaro Fernández Rojas
774c835a60SStefan Roeseconfig ARCH_MT7620
784c835a60SStefan Roese	bool "Support MT7620/7688 SoCs"
794c835a60SStefan Roese	imply CMD_DM
804c835a60SStefan Roese	select DISPLAY_CPUINFO
814c835a60SStefan Roese	select DM
82b4a6a1bbSStefan Roese	imply DM_ETH
83b4a6a1bbSStefan Roese	imply DM_GPIO
844c835a60SStefan Roese	select DM_SERIAL
854c835a60SStefan Roese	imply DM_SPI
864c835a60SStefan Roese	imply DM_SPI_FLASH
87a5f50e01SStefan Roese	select ARCH_MISC_INIT
884c835a60SStefan Roese	select MIPS_TUNE_24KC
894c835a60SStefan Roese	select OF_CONTROL
904c835a60SStefan Roese	select ROM_EXCEPTION_VECTORS
914c835a60SStefan Roese	select SUPPORTS_CPU_MIPS32_R1
924c835a60SStefan Roese	select SUPPORTS_CPU_MIPS32_R2
934c835a60SStefan Roese	select SUPPORTS_LITTLE_ENDIAN
9441f6e6ebSStefan Roese	select SYSRESET
954c835a60SStefan Roese
96*cd71b1d5SPaul Burtonconfig ARCH_JZ47XX
97*cd71b1d5SPaul Burton	bool "Support Ingenic JZ47xx"
98*cd71b1d5SPaul Burton	select SUPPORT_SPL
99*cd71b1d5SPaul Burton	select OF_CONTROL
100*cd71b1d5SPaul Burton	select DM
101*cd71b1d5SPaul Burton
10232c1a6eeSPurna Chandra Mandalconfig MACH_PIC32
10332c1a6eeSPurna Chandra Mandal	bool "Support Microchip PIC32"
10432c1a6eeSPurna Chandra Mandal	select DM
1055ed063d1SMichal Simek	select OF_CONTROL
10608a00cbaSMichal Simek	imply CMD_DM
10732c1a6eeSPurna Chandra Mandal
108ad8783cbSPaul Burtonconfig TARGET_BOSTON
109ad8783cbSPaul Burton	bool "Support Boston"
110ad8783cbSPaul Burton	select DM
111ad8783cbSPaul Burton	select DM_SERIAL
112ad8783cbSPaul Burton	select MIPS_CM
113ad8783cbSPaul Burton	select MIPS_L1_CACHE_SHIFT_6
114ad8783cbSPaul Burton	select MIPS_L2_CACHE
115d2b12a57SPaul Burton	select OF_BOARD_SETUP
1165ed063d1SMichal Simek	select OF_CONTROL
1175ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
118ad8783cbSPaul Burton	select SUPPORTS_BIG_ENDIAN
119ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS32_R1
120ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS32_R2
121ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS32_R6
122ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS64_R1
123ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS64_R2
124ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS64_R6
1255ed063d1SMichal Simek	select SUPPORTS_LITTLE_ENDIAN
12608a00cbaSMichal Simek	imply CMD_DM
127ad8783cbSPaul Burton
128ebf2b9e3SZubair Lutfullah Kakakhelconfig TARGET_XILFPGA
129ebf2b9e3SZubair Lutfullah Kakakhel	bool "Support Imagination Xilfpga"
130ebf2b9e3SZubair Lutfullah Kakakhel	select DM
131ebf2b9e3SZubair Lutfullah Kakakhel	select DM_ETH
1325ed063d1SMichal Simek	select DM_GPIO
1335ed063d1SMichal Simek	select DM_SERIAL
1345ed063d1SMichal Simek	select MIPS_L1_CACHE_SHIFT_4
1355ed063d1SMichal Simek	select OF_CONTROL
1365ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
137ebf2b9e3SZubair Lutfullah Kakakhel	select SUPPORTS_CPU_MIPS32_R1
138ebf2b9e3SZubair Lutfullah Kakakhel	select SUPPORTS_CPU_MIPS32_R2
1395ed063d1SMichal Simek	select SUPPORTS_LITTLE_ENDIAN
14008a00cbaSMichal Simek	imply CMD_DM
141ebf2b9e3SZubair Lutfullah Kakakhel	help
142ebf2b9e3SZubair Lutfullah Kakakhel	  This supports IMGTEC MIPSfpga platform
143ebf2b9e3SZubair Lutfullah Kakakhel
144dd84058dSMasahiro Yamadaendchoice
145dd84058dSMasahiro Yamada
146ad8783cbSPaul Burtonsource "board/imgtec/boston/Kconfig"
147dd84058dSMasahiro Yamadasource "board/imgtec/malta/Kconfig"
148ebf2b9e3SZubair Lutfullah Kakakhelsource "board/imgtec/xilfpga/Kconfig"
149dd84058dSMasahiro Yamadasource "board/micronas/vct/Kconfig"
150dd84058dSMasahiro Yamadasource "board/qemu-mips/Kconfig"
1511d3d0f1fSWills Wangsource "arch/mips/mach-ath79/Kconfig"
152dd1033e4SGregory CLEMENTsource "arch/mips/mach-mscc/Kconfig"
153ee422142SÁlvaro Fernández Rojassource "arch/mips/mach-bmips/Kconfig"
154*cd71b1d5SPaul Burtonsource "arch/mips/mach-jz47xx/Kconfig"
15532c1a6eeSPurna Chandra Mandalsource "arch/mips/mach-pic32/Kconfig"
1564c835a60SStefan Roesesource "arch/mips/mach-mt7620/Kconfig"
157dd84058dSMasahiro Yamada
1580e1dc345SDaniel Schwierzeckif MIPS
1590e1dc345SDaniel Schwierzeck
1600e1dc345SDaniel Schwierzeckchoice
1610e1dc345SDaniel Schwierzeck	prompt "Endianness selection"
1620e1dc345SDaniel Schwierzeck	help
1630e1dc345SDaniel Schwierzeck	  Some MIPS boards can be configured for either little or big endian
1640e1dc345SDaniel Schwierzeck	  byte order. These modes require different U-Boot images. In general there
1650e1dc345SDaniel Schwierzeck	  is one preferred byteorder for a particular system but some systems are
1660e1dc345SDaniel Schwierzeck	  just as commonly used in the one or the other endianness.
1670e1dc345SDaniel Schwierzeck
1680e1dc345SDaniel Schwierzeckconfig SYS_BIG_ENDIAN
1690e1dc345SDaniel Schwierzeck	bool "Big endian"
1700e1dc345SDaniel Schwierzeck	depends on SUPPORTS_BIG_ENDIAN
1710e1dc345SDaniel Schwierzeck
1720e1dc345SDaniel Schwierzeckconfig SYS_LITTLE_ENDIAN
1730e1dc345SDaniel Schwierzeck	bool "Little endian"
1740e1dc345SDaniel Schwierzeck	depends on SUPPORTS_LITTLE_ENDIAN
1750e1dc345SDaniel Schwierzeck
1760e1dc345SDaniel Schwierzeckendchoice
1770e1dc345SDaniel Schwierzeck
17802611cbbSDaniel Schwierzeckchoice
17902611cbbSDaniel Schwierzeck	prompt "CPU selection"
18002611cbbSDaniel Schwierzeck	default CPU_MIPS32_R2
18102611cbbSDaniel Schwierzeck
18202611cbbSDaniel Schwierzeckconfig CPU_MIPS32_R1
18302611cbbSDaniel Schwierzeck	bool "MIPS32 Release 1"
18402611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS32_R1
18502611cbbSDaniel Schwierzeck	select 32BIT
18602611cbbSDaniel Schwierzeck	help
187c52ebea1SPaul Burton	  Choose this option to build an U-Boot for release 1 through 5 of the
18802611cbbSDaniel Schwierzeck	  MIPS32 architecture.
18902611cbbSDaniel Schwierzeck
19002611cbbSDaniel Schwierzeckconfig CPU_MIPS32_R2
19102611cbbSDaniel Schwierzeck	bool "MIPS32 Release 2"
19202611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS32_R2
19302611cbbSDaniel Schwierzeck	select 32BIT
19402611cbbSDaniel Schwierzeck	help
195c52ebea1SPaul Burton	  Choose this option to build an U-Boot for release 2 through 5 of the
196c52ebea1SPaul Burton	  MIPS32 architecture.
197c52ebea1SPaul Burton
198c52ebea1SPaul Burtonconfig CPU_MIPS32_R6
199c52ebea1SPaul Burton	bool "MIPS32 Release 6"
200c52ebea1SPaul Burton	depends on SUPPORTS_CPU_MIPS32_R6
201c52ebea1SPaul Burton	select 32BIT
202c52ebea1SPaul Burton	help
203c52ebea1SPaul Burton	  Choose this option to build an U-Boot for release 6 or later of the
20402611cbbSDaniel Schwierzeck	  MIPS32 architecture.
20502611cbbSDaniel Schwierzeck
20602611cbbSDaniel Schwierzeckconfig CPU_MIPS64_R1
20702611cbbSDaniel Schwierzeck	bool "MIPS64 Release 1"
20802611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS64_R1
20902611cbbSDaniel Schwierzeck	select 64BIT
21002611cbbSDaniel Schwierzeck	help
211c52ebea1SPaul Burton	  Choose this option to build a kernel for release 1 through 5 of the
21202611cbbSDaniel Schwierzeck	  MIPS64 architecture.
21302611cbbSDaniel Schwierzeck
21402611cbbSDaniel Schwierzeckconfig CPU_MIPS64_R2
21502611cbbSDaniel Schwierzeck	bool "MIPS64 Release 2"
21602611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS64_R2
21702611cbbSDaniel Schwierzeck	select 64BIT
21802611cbbSDaniel Schwierzeck	help
219c52ebea1SPaul Burton	  Choose this option to build a kernel for release 2 through 5 of the
220c52ebea1SPaul Burton	  MIPS64 architecture.
221c52ebea1SPaul Burton
222c52ebea1SPaul Burtonconfig CPU_MIPS64_R6
223c52ebea1SPaul Burton	bool "MIPS64 Release 6"
224c52ebea1SPaul Burton	depends on SUPPORTS_CPU_MIPS64_R6
225c52ebea1SPaul Burton	select 64BIT
226c52ebea1SPaul Burton	help
227c52ebea1SPaul Burton	  Choose this option to build a kernel for release 6 or later of the
22802611cbbSDaniel Schwierzeck	  MIPS64 architecture.
22902611cbbSDaniel Schwierzeck
23002611cbbSDaniel Schwierzeckendchoice
23102611cbbSDaniel Schwierzeck
232af3971f8SDaniel Schwierzeckmenu "General setup"
233af3971f8SDaniel Schwierzeck
234af3971f8SDaniel Schwierzeckconfig ROM_EXCEPTION_VECTORS
235af3971f8SDaniel Schwierzeck	bool "Build U-Boot image with exception vectors"
236af3971f8SDaniel Schwierzeck	help
237af3971f8SDaniel Schwierzeck	  Enable this to include exception vectors in the U-Boot image. This is
238af3971f8SDaniel Schwierzeck	  required if the U-Boot entry point is equal to the address of the
239af3971f8SDaniel Schwierzeck	  CPU reset exception vector (e.g. U-Boot as ROM loader in Qemu,
240af3971f8SDaniel Schwierzeck	  U-Boot booted from parallel NOR flash).
241af3971f8SDaniel Schwierzeck	  Disable this, if the U-Boot image is booted from DRAM (e.g. by SPL).
242af3971f8SDaniel Schwierzeck	  In that case the image size will be reduced by 0x500 bytes.
243af3971f8SDaniel Schwierzeck
244939a255aSPaul Burtonconfig MIPS_CM_BASE
245939a255aSPaul Burton	hex "MIPS CM GCR Base Address"
246939a255aSPaul Burton	depends on MIPS_CM
247ed048e7cSPaul Burton	default 0x16100000 if TARGET_BOSTON
248939a255aSPaul Burton	default 0x1fbf8000
249939a255aSPaul Burton	help
250939a255aSPaul Burton	  The physical base address at which to map the MIPS Coherence Manager
251939a255aSPaul Burton	  Global Configuration Registers (GCRs). This should be set such that
252939a255aSPaul Burton	  the GCRs occupy a region of the physical address space which is
253939a255aSPaul Burton	  otherwise unused, or at minimum that software doesn't need to access.
254939a255aSPaul Burton
2555ef337a0SDaniel Schwierzeckconfig MIPS_CACHE_INDEX_BASE
2565ef337a0SDaniel Schwierzeck	hex "Index base address for cache initialisation"
2575ef337a0SDaniel Schwierzeck	default 0x80000000 if CPU_MIPS32
2585ef337a0SDaniel Schwierzeck	default 0xffffffff80000000 if CPU_MIPS64
2595ef337a0SDaniel Schwierzeck	help
2605ef337a0SDaniel Schwierzeck	  This is the base address for a memory block, which is used for
2615ef337a0SDaniel Schwierzeck	  initialising the cache lines. This is also the base address of a memory
2625ef337a0SDaniel Schwierzeck	  block which is used for loading and filling cache lines when
2635ef337a0SDaniel Schwierzeck	  SYS_MIPS_CACHE_INIT_RAM_LOAD is selected.
2645ef337a0SDaniel Schwierzeck	  Normally this is CKSEG0. If the MIPS system needs to move this block
2655ef337a0SDaniel Schwierzeck	  to some SRAM or ScratchPad RAM, adapt this option accordingly.
2665ef337a0SDaniel Schwierzeck
26796301464SDaniel Schwierzeckconfig MIPS_RELOCATION_TABLE_SIZE
26896301464SDaniel Schwierzeck	hex "Relocation table size"
26996301464SDaniel Schwierzeck	range 0x100 0x10000
27096301464SDaniel Schwierzeck	default "0x8000"
27196301464SDaniel Schwierzeck	---help---
27296301464SDaniel Schwierzeck	  A table of relocation data will be appended to the U-Boot binary
27396301464SDaniel Schwierzeck	  and parsed in relocate_code() to fix up all offsets in the relocated
27496301464SDaniel Schwierzeck	  U-Boot.
27596301464SDaniel Schwierzeck
27696301464SDaniel Schwierzeck	  This option allows the amount of space reserved for the table to be
27796301464SDaniel Schwierzeck	  adjusted in a range from 256 up to 64k. The default is 32k and should
27896301464SDaniel Schwierzeck	  be ok in most cases. Reduce this value to shrink the size of U-Boot
27996301464SDaniel Schwierzeck	  binary.
28096301464SDaniel Schwierzeck
28196301464SDaniel Schwierzeck	  The build will fail and a valid size suggested if this is too small.
28296301464SDaniel Schwierzeck
28396301464SDaniel Schwierzeck	  If unsure, leave at the default value.
28496301464SDaniel Schwierzeck
285af3971f8SDaniel Schwierzeckendmenu
286af3971f8SDaniel Schwierzeck
28725fc664fSDaniel Schwierzeckmenu "OS boot interface"
28825fc664fSDaniel Schwierzeck
28925fc664fSDaniel Schwierzeckconfig MIPS_BOOT_CMDLINE_LEGACY
29025fc664fSDaniel Schwierzeck	bool "Hand over legacy command line to Linux kernel"
29125fc664fSDaniel Schwierzeck	default y
29225fc664fSDaniel Schwierzeck	help
29325fc664fSDaniel Schwierzeck	  Enable this option if you want U-Boot to hand over the Yamon-style
29425fc664fSDaniel Schwierzeck	  command line to the kernel. All bootargs will be prepared as argc/argv
29525fc664fSDaniel Schwierzeck	  compatible list. The argument count (argc) is stored in register $a0.
29625fc664fSDaniel Schwierzeck	  The address of the argument list (argv) is stored in register $a1.
29725fc664fSDaniel Schwierzeck
298ca65e585SDaniel Schwierzeckconfig MIPS_BOOT_ENV_LEGACY
299ca65e585SDaniel Schwierzeck	bool "Hand over legacy environment to Linux kernel"
300ca65e585SDaniel Schwierzeck	default y
301ca65e585SDaniel Schwierzeck	help
302ca65e585SDaniel Schwierzeck	  Enable this option if you want U-Boot to hand over the Yamon-style
303ca65e585SDaniel Schwierzeck	  environment to the kernel. Information like memory size, initrd
304ca65e585SDaniel Schwierzeck	  address and size will be prepared as zero-terminated key/value list.
3051cc0a9f4SRobert P. J. Day	  The address of the environment is stored in register $a2.
306ca65e585SDaniel Schwierzeck
3075002d8ccSDaniel Schwierzeckconfig MIPS_BOOT_FDT
30890b1c9faSDaniel Schwierzeck	bool "Hand over a flattened device tree to Linux kernel"
3095002d8ccSDaniel Schwierzeck	default n
3105002d8ccSDaniel Schwierzeck	help
3115002d8ccSDaniel Schwierzeck	  Enable this option if you want U-Boot to hand over a flattened
31290b1c9faSDaniel Schwierzeck	  device tree to the kernel. According to UHI register $a0 will be set
31390b1c9faSDaniel Schwierzeck	  to -2 and the FDT address is stored in $a1.
3145002d8ccSDaniel Schwierzeck
31525fc664fSDaniel Schwierzeckendmenu
31625fc664fSDaniel Schwierzeck
3170e1dc345SDaniel Schwierzeckconfig SUPPORTS_BIG_ENDIAN
3180e1dc345SDaniel Schwierzeck	bool
3190e1dc345SDaniel Schwierzeck
3200e1dc345SDaniel Schwierzeckconfig SUPPORTS_LITTLE_ENDIAN
3210e1dc345SDaniel Schwierzeck	bool
3220e1dc345SDaniel Schwierzeck
32302611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS32_R1
32402611cbbSDaniel Schwierzeck	bool
32502611cbbSDaniel Schwierzeck
32602611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS32_R2
32702611cbbSDaniel Schwierzeck	bool
32802611cbbSDaniel Schwierzeck
329c52ebea1SPaul Burtonconfig SUPPORTS_CPU_MIPS32_R6
330c52ebea1SPaul Burton	bool
331c52ebea1SPaul Burton
33202611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS64_R1
33302611cbbSDaniel Schwierzeck	bool
33402611cbbSDaniel Schwierzeck
33502611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS64_R2
33602611cbbSDaniel Schwierzeck	bool
33702611cbbSDaniel Schwierzeck
338c52ebea1SPaul Burtonconfig SUPPORTS_CPU_MIPS64_R6
339c52ebea1SPaul Burton	bool
340c52ebea1SPaul Burton
341c57dafb5SDaniel Schwierzeckconfig CPU_MIPS32
342c57dafb5SDaniel Schwierzeck	bool
343c52ebea1SPaul Burton	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R6
344c57dafb5SDaniel Schwierzeck
345c57dafb5SDaniel Schwierzeckconfig CPU_MIPS64
346c57dafb5SDaniel Schwierzeck	bool
347c52ebea1SPaul Burton	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
348c57dafb5SDaniel Schwierzeck
3490315a289SDaniel Schwierzeckconfig MIPS_TUNE_4KC
3500315a289SDaniel Schwierzeck	bool
3510315a289SDaniel Schwierzeck
3520315a289SDaniel Schwierzeckconfig MIPS_TUNE_14KC
3530315a289SDaniel Schwierzeck	bool
3540315a289SDaniel Schwierzeck
3550315a289SDaniel Schwierzeckconfig MIPS_TUNE_24KC
3560315a289SDaniel Schwierzeck	bool
3570315a289SDaniel Schwierzeck
3585f9cc363SDaniel Schwierzeckconfig MIPS_TUNE_34KC
3595f9cc363SDaniel Schwierzeck	bool
3605f9cc363SDaniel Schwierzeck
3610a0a958bSMarek Vasutconfig MIPS_TUNE_74KC
3620a0a958bSMarek Vasut	bool
3630a0a958bSMarek Vasut
36402611cbbSDaniel Schwierzeckconfig 32BIT
36502611cbbSDaniel Schwierzeck	bool
36602611cbbSDaniel Schwierzeck
36702611cbbSDaniel Schwierzeckconfig 64BIT
36802611cbbSDaniel Schwierzeck	bool
36902611cbbSDaniel Schwierzeck
3709d638eeaSDaniel Schwierzeckconfig SWAP_IO_SPACE
3719d638eeaSDaniel Schwierzeck	bool
3729d638eeaSDaniel Schwierzeck
373dd7c7200SPaul Burtonconfig SYS_MIPS_CACHE_INIT_RAM_LOAD
374dd7c7200SPaul Burton	bool
375dd7c7200SPaul Burton
376924ad866SDaniel Schwierzeckconfig MIPS_INIT_STACK_IN_SRAM
377924ad866SDaniel Schwierzeck	bool
378924ad866SDaniel Schwierzeck	default n
379924ad866SDaniel Schwierzeck	help
380924ad866SDaniel Schwierzeck	  Select this if the initial stack frame could be setup in SRAM.
381924ad866SDaniel Schwierzeck	  Normally the initial stack frame is set up in DRAM which is often
382924ad866SDaniel Schwierzeck	  only available after lowlevel_init. With this option the initial
383924ad866SDaniel Schwierzeck	  stack frame and the early C environment is set up before
384924ad866SDaniel Schwierzeck	  lowlevel_init. Thus lowlevel_init does not need to be implemented
385924ad866SDaniel Schwierzeck	  in assembler.
386924ad866SDaniel Schwierzeck
387ace3be4fSPaul Burtonconfig SYS_DCACHE_SIZE
388ace3be4fSPaul Burton	int
389ace3be4fSPaul Burton	default 0
390ace3be4fSPaul Burton	help
391ace3be4fSPaul Burton	  The total size of the L1 Dcache, if known at compile time.
392ace3be4fSPaul Burton
39337228621SPaul Burtonconfig SYS_DCACHE_LINE_SIZE
3944b7b0a0fSPaul Burton	int
39537228621SPaul Burton	default 0
39637228621SPaul Burton	help
39737228621SPaul Burton	  The size of L1 Dcache lines, if known at compile time.
39837228621SPaul Burton
399ace3be4fSPaul Burtonconfig SYS_ICACHE_SIZE
400ace3be4fSPaul Burton	int
401ace3be4fSPaul Burton	default 0
402ace3be4fSPaul Burton	help
403ace3be4fSPaul Burton	  The total size of the L1 ICache, if known at compile time.
404ace3be4fSPaul Burton
40537228621SPaul Burtonconfig SYS_ICACHE_LINE_SIZE
406ace3be4fSPaul Burton	int
407ace3be4fSPaul Burton	default 0
408ace3be4fSPaul Burton	help
40937228621SPaul Burton	  The size of L1 Icache lines, if known at compile time.
410ace3be4fSPaul Burton
411ace3be4fSPaul Burtonconfig SYS_CACHE_SIZE_AUTO
412ace3be4fSPaul Burton	def_bool y if SYS_DCACHE_SIZE = 0 && SYS_ICACHE_SIZE = 0 && \
41337228621SPaul Burton		SYS_DCACHE_LINE_SIZE = 0 && SYS_ICACHE_LINE_SIZE = 0
414ace3be4fSPaul Burton	help
415ace3be4fSPaul Burton	  Select this (or let it be auto-selected by not defining any cache
416ace3be4fSPaul Burton	  sizes) in order to allow U-Boot to automatically detect the sizes
417ace3be4fSPaul Burton	  of caches at runtime. This has a small cost in code size & runtime
418ace3be4fSPaul Burton	  so if you know the cache configuration for your system at compile
419ace3be4fSPaul Burton	  time it would be beneficial to configure it.
420ace3be4fSPaul Burton
421f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_4
422f53830e7SDaniel Schwierzeck	bool
423f53830e7SDaniel Schwierzeck
424f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_5
425f53830e7SDaniel Schwierzeck	bool
426f53830e7SDaniel Schwierzeck
427f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_6
428f53830e7SDaniel Schwierzeck	bool
429f53830e7SDaniel Schwierzeck
430f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_7
431f53830e7SDaniel Schwierzeck	bool
432f53830e7SDaniel Schwierzeck
433f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT
434f53830e7SDaniel Schwierzeck	int
435f53830e7SDaniel Schwierzeck	default "7" if MIPS_L1_CACHE_SHIFT_7
436f53830e7SDaniel Schwierzeck	default "6" if MIPS_L1_CACHE_SHIFT_6
437f53830e7SDaniel Schwierzeck	default "5" if MIPS_L1_CACHE_SHIFT_5
438f53830e7SDaniel Schwierzeck	default "4" if MIPS_L1_CACHE_SHIFT_4
439f53830e7SDaniel Schwierzeck	default "5"
440f53830e7SDaniel Schwierzeck
4414baa0ab6SPaul Burtonconfig MIPS_L2_CACHE
4424baa0ab6SPaul Burton	bool
4434baa0ab6SPaul Burton	help
4444baa0ab6SPaul Burton	  Select this if your system includes an L2 cache and you want U-Boot
4454baa0ab6SPaul Burton	  to initialise & maintain it.
4464baa0ab6SPaul Burton
44705e34255SPaul Burtonconfig DYNAMIC_IO_PORT_BASE
44805e34255SPaul Burton	bool
44905e34255SPaul Burton
450b2b135d9SPaul Burtonconfig MIPS_CM
451b2b135d9SPaul Burton	bool
452b2b135d9SPaul Burton	help
453b2b135d9SPaul Burton	  Select this if your system contains a MIPS Coherence Manager and you
454b2b135d9SPaul Burton	  wish U-Boot to configure it or make use of it to retrieve system
455b2b135d9SPaul Burton	  information such as cache configuration.
456b2b135d9SPaul Burton
457d1c3d8bdSDaniel Schwierzeckconfig MIPS_INSERT_BOOT_CONFIG
458d1c3d8bdSDaniel Schwierzeck	bool
459d1c3d8bdSDaniel Schwierzeck	default n
460d1c3d8bdSDaniel Schwierzeck	help
461d1c3d8bdSDaniel Schwierzeck	  Enable this to insert some board-specific boot configuration in
462d1c3d8bdSDaniel Schwierzeck	  the U-Boot binary at offset 0x10.
463d1c3d8bdSDaniel Schwierzeck
464d1c3d8bdSDaniel Schwierzeckconfig MIPS_BOOT_CONFIG_WORD0
465d1c3d8bdSDaniel Schwierzeck	hex
466d1c3d8bdSDaniel Schwierzeck	depends on MIPS_INSERT_BOOT_CONFIG
467d1c3d8bdSDaniel Schwierzeck	default 0x420 if TARGET_MALTA
468d1c3d8bdSDaniel Schwierzeck	default 0x0
469d1c3d8bdSDaniel Schwierzeck	help
470d1c3d8bdSDaniel Schwierzeck	  Value which is inserted as boot config word 0.
471d1c3d8bdSDaniel Schwierzeck
472d1c3d8bdSDaniel Schwierzeckconfig MIPS_BOOT_CONFIG_WORD1
473d1c3d8bdSDaniel Schwierzeck	hex
474d1c3d8bdSDaniel Schwierzeck	depends on MIPS_INSERT_BOOT_CONFIG
475d1c3d8bdSDaniel Schwierzeck	default 0x0
476d1c3d8bdSDaniel Schwierzeck	help
477d1c3d8bdSDaniel Schwierzeck	  Value which is inserted as boot config word 1.
478d1c3d8bdSDaniel Schwierzeck
4790e1dc345SDaniel Schwierzeckendif
4800e1dc345SDaniel Schwierzeck
481dd84058dSMasahiro Yamadaendmenu
482