xref: /openbmc/u-boot/arch/mips/Kconfig (revision 41f6e6eb644751678fb3c0b92b74e7f058c7cb89)
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
62ee422142SÁlvaro Fernández Rojasconfig ARCH_BMIPS
63ee422142SÁlvaro Fernández Rojas	bool "Support BMIPS SoCs"
64ee422142SÁlvaro Fernández Rojas	select CLK
65ee422142SÁlvaro Fernández Rojas	select CPU
665ed063d1SMichal Simek	select DM
675ed063d1SMichal Simek	select OF_CONTROL
68ee422142SÁlvaro Fernández Rojas	select RAM
69ee422142SÁlvaro Fernández Rojas	select SYSRESET
7008a00cbaSMichal Simek	imply CMD_DM
71ee422142SÁlvaro Fernández Rojas
724c835a60SStefan Roeseconfig ARCH_MT7620
734c835a60SStefan Roese	bool "Support MT7620/7688 SoCs"
744c835a60SStefan Roese	imply CMD_DM
754c835a60SStefan Roese	select DISPLAY_CPUINFO
764c835a60SStefan Roese	select DM
774c835a60SStefan Roese	select DM_SERIAL
784c835a60SStefan Roese	imply DM_SPI
794c835a60SStefan Roese	imply DM_SPI_FLASH
804c835a60SStefan Roese	select MIPS_TUNE_24KC
814c835a60SStefan Roese	select OF_CONTROL
824c835a60SStefan Roese	select ROM_EXCEPTION_VECTORS
834c835a60SStefan Roese	select SUPPORTS_CPU_MIPS32_R1
844c835a60SStefan Roese	select SUPPORTS_CPU_MIPS32_R2
854c835a60SStefan Roese	select SUPPORTS_LITTLE_ENDIAN
86*41f6e6ebSStefan Roese	select SYSRESET
874c835a60SStefan Roese
8832c1a6eeSPurna Chandra Mandalconfig MACH_PIC32
8932c1a6eeSPurna Chandra Mandal	bool "Support Microchip PIC32"
9032c1a6eeSPurna Chandra Mandal	select DM
915ed063d1SMichal Simek	select OF_CONTROL
9208a00cbaSMichal Simek	imply CMD_DM
9332c1a6eeSPurna Chandra Mandal
94ad8783cbSPaul Burtonconfig TARGET_BOSTON
95ad8783cbSPaul Burton	bool "Support Boston"
96ad8783cbSPaul Burton	select DM
97ad8783cbSPaul Burton	select DM_SERIAL
98ad8783cbSPaul Burton	select MIPS_CM
99ad8783cbSPaul Burton	select MIPS_L1_CACHE_SHIFT_6
100ad8783cbSPaul Burton	select MIPS_L2_CACHE
101d2b12a57SPaul Burton	select OF_BOARD_SETUP
1025ed063d1SMichal Simek	select OF_CONTROL
1035ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
104ad8783cbSPaul Burton	select SUPPORTS_BIG_ENDIAN
105ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS32_R1
106ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS32_R2
107ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS32_R6
108ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS64_R1
109ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS64_R2
110ad8783cbSPaul Burton	select SUPPORTS_CPU_MIPS64_R6
1115ed063d1SMichal Simek	select SUPPORTS_LITTLE_ENDIAN
11208a00cbaSMichal Simek	imply CMD_DM
113ad8783cbSPaul Burton
114ebf2b9e3SZubair Lutfullah Kakakhelconfig TARGET_XILFPGA
115ebf2b9e3SZubair Lutfullah Kakakhel	bool "Support Imagination Xilfpga"
116ebf2b9e3SZubair Lutfullah Kakakhel	select DM
117ebf2b9e3SZubair Lutfullah Kakakhel	select DM_ETH
1185ed063d1SMichal Simek	select DM_GPIO
1195ed063d1SMichal Simek	select DM_SERIAL
1205ed063d1SMichal Simek	select MIPS_L1_CACHE_SHIFT_4
1215ed063d1SMichal Simek	select OF_CONTROL
1225ed063d1SMichal Simek	select ROM_EXCEPTION_VECTORS
123ebf2b9e3SZubair Lutfullah Kakakhel	select SUPPORTS_CPU_MIPS32_R1
124ebf2b9e3SZubair Lutfullah Kakakhel	select SUPPORTS_CPU_MIPS32_R2
1255ed063d1SMichal Simek	select SUPPORTS_LITTLE_ENDIAN
12608a00cbaSMichal Simek	imply CMD_DM
127ebf2b9e3SZubair Lutfullah Kakakhel	help
128ebf2b9e3SZubair Lutfullah Kakakhel	  This supports IMGTEC MIPSfpga platform
129ebf2b9e3SZubair Lutfullah Kakakhel
130dd84058dSMasahiro Yamadaendchoice
131dd84058dSMasahiro Yamada
132ad8783cbSPaul Burtonsource "board/imgtec/boston/Kconfig"
133dd84058dSMasahiro Yamadasource "board/imgtec/malta/Kconfig"
134ebf2b9e3SZubair Lutfullah Kakakhelsource "board/imgtec/xilfpga/Kconfig"
135dd84058dSMasahiro Yamadasource "board/micronas/vct/Kconfig"
136dd84058dSMasahiro Yamadasource "board/qemu-mips/Kconfig"
1371d3d0f1fSWills Wangsource "arch/mips/mach-ath79/Kconfig"
138ee422142SÁlvaro Fernández Rojassource "arch/mips/mach-bmips/Kconfig"
13932c1a6eeSPurna Chandra Mandalsource "arch/mips/mach-pic32/Kconfig"
1404c835a60SStefan Roesesource "arch/mips/mach-mt7620/Kconfig"
141dd84058dSMasahiro Yamada
1420e1dc345SDaniel Schwierzeckif MIPS
1430e1dc345SDaniel Schwierzeck
1440e1dc345SDaniel Schwierzeckchoice
1450e1dc345SDaniel Schwierzeck	prompt "Endianness selection"
1460e1dc345SDaniel Schwierzeck	help
1470e1dc345SDaniel Schwierzeck	  Some MIPS boards can be configured for either little or big endian
1480e1dc345SDaniel Schwierzeck	  byte order. These modes require different U-Boot images. In general there
1490e1dc345SDaniel Schwierzeck	  is one preferred byteorder for a particular system but some systems are
1500e1dc345SDaniel Schwierzeck	  just as commonly used in the one or the other endianness.
1510e1dc345SDaniel Schwierzeck
1520e1dc345SDaniel Schwierzeckconfig SYS_BIG_ENDIAN
1530e1dc345SDaniel Schwierzeck	bool "Big endian"
1540e1dc345SDaniel Schwierzeck	depends on SUPPORTS_BIG_ENDIAN
1550e1dc345SDaniel Schwierzeck
1560e1dc345SDaniel Schwierzeckconfig SYS_LITTLE_ENDIAN
1570e1dc345SDaniel Schwierzeck	bool "Little endian"
1580e1dc345SDaniel Schwierzeck	depends on SUPPORTS_LITTLE_ENDIAN
1590e1dc345SDaniel Schwierzeck
1600e1dc345SDaniel Schwierzeckendchoice
1610e1dc345SDaniel Schwierzeck
16202611cbbSDaniel Schwierzeckchoice
16302611cbbSDaniel Schwierzeck	prompt "CPU selection"
16402611cbbSDaniel Schwierzeck	default CPU_MIPS32_R2
16502611cbbSDaniel Schwierzeck
16602611cbbSDaniel Schwierzeckconfig CPU_MIPS32_R1
16702611cbbSDaniel Schwierzeck	bool "MIPS32 Release 1"
16802611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS32_R1
16902611cbbSDaniel Schwierzeck	select 32BIT
17002611cbbSDaniel Schwierzeck	help
171c52ebea1SPaul Burton	  Choose this option to build an U-Boot for release 1 through 5 of the
17202611cbbSDaniel Schwierzeck	  MIPS32 architecture.
17302611cbbSDaniel Schwierzeck
17402611cbbSDaniel Schwierzeckconfig CPU_MIPS32_R2
17502611cbbSDaniel Schwierzeck	bool "MIPS32 Release 2"
17602611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS32_R2
17702611cbbSDaniel Schwierzeck	select 32BIT
17802611cbbSDaniel Schwierzeck	help
179c52ebea1SPaul Burton	  Choose this option to build an U-Boot for release 2 through 5 of the
180c52ebea1SPaul Burton	  MIPS32 architecture.
181c52ebea1SPaul Burton
182c52ebea1SPaul Burtonconfig CPU_MIPS32_R6
183c52ebea1SPaul Burton	bool "MIPS32 Release 6"
184c52ebea1SPaul Burton	depends on SUPPORTS_CPU_MIPS32_R6
185c52ebea1SPaul Burton	select 32BIT
186c52ebea1SPaul Burton	help
187c52ebea1SPaul Burton	  Choose this option to build an U-Boot for release 6 or later of the
18802611cbbSDaniel Schwierzeck	  MIPS32 architecture.
18902611cbbSDaniel Schwierzeck
19002611cbbSDaniel Schwierzeckconfig CPU_MIPS64_R1
19102611cbbSDaniel Schwierzeck	bool "MIPS64 Release 1"
19202611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS64_R1
19302611cbbSDaniel Schwierzeck	select 64BIT
19402611cbbSDaniel Schwierzeck	help
195c52ebea1SPaul Burton	  Choose this option to build a kernel for release 1 through 5 of the
19602611cbbSDaniel Schwierzeck	  MIPS64 architecture.
19702611cbbSDaniel Schwierzeck
19802611cbbSDaniel Schwierzeckconfig CPU_MIPS64_R2
19902611cbbSDaniel Schwierzeck	bool "MIPS64 Release 2"
20002611cbbSDaniel Schwierzeck	depends on SUPPORTS_CPU_MIPS64_R2
20102611cbbSDaniel Schwierzeck	select 64BIT
20202611cbbSDaniel Schwierzeck	help
203c52ebea1SPaul Burton	  Choose this option to build a kernel for release 2 through 5 of the
204c52ebea1SPaul Burton	  MIPS64 architecture.
205c52ebea1SPaul Burton
206c52ebea1SPaul Burtonconfig CPU_MIPS64_R6
207c52ebea1SPaul Burton	bool "MIPS64 Release 6"
208c52ebea1SPaul Burton	depends on SUPPORTS_CPU_MIPS64_R6
209c52ebea1SPaul Burton	select 64BIT
210c52ebea1SPaul Burton	help
211c52ebea1SPaul Burton	  Choose this option to build a kernel for release 6 or later of the
21202611cbbSDaniel Schwierzeck	  MIPS64 architecture.
21302611cbbSDaniel Schwierzeck
21402611cbbSDaniel Schwierzeckendchoice
21502611cbbSDaniel Schwierzeck
216af3971f8SDaniel Schwierzeckmenu "General setup"
217af3971f8SDaniel Schwierzeck
218af3971f8SDaniel Schwierzeckconfig ROM_EXCEPTION_VECTORS
219af3971f8SDaniel Schwierzeck	bool "Build U-Boot image with exception vectors"
220af3971f8SDaniel Schwierzeck	help
221af3971f8SDaniel Schwierzeck	  Enable this to include exception vectors in the U-Boot image. This is
222af3971f8SDaniel Schwierzeck	  required if the U-Boot entry point is equal to the address of the
223af3971f8SDaniel Schwierzeck	  CPU reset exception vector (e.g. U-Boot as ROM loader in Qemu,
224af3971f8SDaniel Schwierzeck	  U-Boot booted from parallel NOR flash).
225af3971f8SDaniel Schwierzeck	  Disable this, if the U-Boot image is booted from DRAM (e.g. by SPL).
226af3971f8SDaniel Schwierzeck	  In that case the image size will be reduced by 0x500 bytes.
227af3971f8SDaniel Schwierzeck
228939a255aSPaul Burtonconfig MIPS_CM_BASE
229939a255aSPaul Burton	hex "MIPS CM GCR Base Address"
230939a255aSPaul Burton	depends on MIPS_CM
231ed048e7cSPaul Burton	default 0x16100000 if TARGET_BOSTON
232939a255aSPaul Burton	default 0x1fbf8000
233939a255aSPaul Burton	help
234939a255aSPaul Burton	  The physical base address at which to map the MIPS Coherence Manager
235939a255aSPaul Burton	  Global Configuration Registers (GCRs). This should be set such that
236939a255aSPaul Burton	  the GCRs occupy a region of the physical address space which is
237939a255aSPaul Burton	  otherwise unused, or at minimum that software doesn't need to access.
238939a255aSPaul Burton
2395ef337a0SDaniel Schwierzeckconfig MIPS_CACHE_INDEX_BASE
2405ef337a0SDaniel Schwierzeck	hex "Index base address for cache initialisation"
2415ef337a0SDaniel Schwierzeck	default 0x80000000 if CPU_MIPS32
2425ef337a0SDaniel Schwierzeck	default 0xffffffff80000000 if CPU_MIPS64
2435ef337a0SDaniel Schwierzeck	help
2445ef337a0SDaniel Schwierzeck	  This is the base address for a memory block, which is used for
2455ef337a0SDaniel Schwierzeck	  initialising the cache lines. This is also the base address of a memory
2465ef337a0SDaniel Schwierzeck	  block which is used for loading and filling cache lines when
2475ef337a0SDaniel Schwierzeck	  SYS_MIPS_CACHE_INIT_RAM_LOAD is selected.
2485ef337a0SDaniel Schwierzeck	  Normally this is CKSEG0. If the MIPS system needs to move this block
2495ef337a0SDaniel Schwierzeck	  to some SRAM or ScratchPad RAM, adapt this option accordingly.
2505ef337a0SDaniel Schwierzeck
251af3971f8SDaniel Schwierzeckendmenu
252af3971f8SDaniel Schwierzeck
25325fc664fSDaniel Schwierzeckmenu "OS boot interface"
25425fc664fSDaniel Schwierzeck
25525fc664fSDaniel Schwierzeckconfig MIPS_BOOT_CMDLINE_LEGACY
25625fc664fSDaniel Schwierzeck	bool "Hand over legacy command line to Linux kernel"
25725fc664fSDaniel Schwierzeck	default y
25825fc664fSDaniel Schwierzeck	help
25925fc664fSDaniel Schwierzeck	  Enable this option if you want U-Boot to hand over the Yamon-style
26025fc664fSDaniel Schwierzeck	  command line to the kernel. All bootargs will be prepared as argc/argv
26125fc664fSDaniel Schwierzeck	  compatible list. The argument count (argc) is stored in register $a0.
26225fc664fSDaniel Schwierzeck	  The address of the argument list (argv) is stored in register $a1.
26325fc664fSDaniel Schwierzeck
264ca65e585SDaniel Schwierzeckconfig MIPS_BOOT_ENV_LEGACY
265ca65e585SDaniel Schwierzeck	bool "Hand over legacy environment to Linux kernel"
266ca65e585SDaniel Schwierzeck	default y
267ca65e585SDaniel Schwierzeck	help
268ca65e585SDaniel Schwierzeck	  Enable this option if you want U-Boot to hand over the Yamon-style
269ca65e585SDaniel Schwierzeck	  environment to the kernel. Information like memory size, initrd
270ca65e585SDaniel Schwierzeck	  address and size will be prepared as zero-terminated key/value list.
2711cc0a9f4SRobert P. J. Day	  The address of the environment is stored in register $a2.
272ca65e585SDaniel Schwierzeck
2735002d8ccSDaniel Schwierzeckconfig MIPS_BOOT_FDT
27490b1c9faSDaniel Schwierzeck	bool "Hand over a flattened device tree to Linux kernel"
2755002d8ccSDaniel Schwierzeck	default n
2765002d8ccSDaniel Schwierzeck	help
2775002d8ccSDaniel Schwierzeck	  Enable this option if you want U-Boot to hand over a flattened
27890b1c9faSDaniel Schwierzeck	  device tree to the kernel. According to UHI register $a0 will be set
27990b1c9faSDaniel Schwierzeck	  to -2 and the FDT address is stored in $a1.
2805002d8ccSDaniel Schwierzeck
28125fc664fSDaniel Schwierzeckendmenu
28225fc664fSDaniel Schwierzeck
2830e1dc345SDaniel Schwierzeckconfig SUPPORTS_BIG_ENDIAN
2840e1dc345SDaniel Schwierzeck	bool
2850e1dc345SDaniel Schwierzeck
2860e1dc345SDaniel Schwierzeckconfig SUPPORTS_LITTLE_ENDIAN
2870e1dc345SDaniel Schwierzeck	bool
2880e1dc345SDaniel Schwierzeck
28902611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS32_R1
29002611cbbSDaniel Schwierzeck	bool
29102611cbbSDaniel Schwierzeck
29202611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS32_R2
29302611cbbSDaniel Schwierzeck	bool
29402611cbbSDaniel Schwierzeck
295c52ebea1SPaul Burtonconfig SUPPORTS_CPU_MIPS32_R6
296c52ebea1SPaul Burton	bool
297c52ebea1SPaul Burton
29802611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS64_R1
29902611cbbSDaniel Schwierzeck	bool
30002611cbbSDaniel Schwierzeck
30102611cbbSDaniel Schwierzeckconfig SUPPORTS_CPU_MIPS64_R2
30202611cbbSDaniel Schwierzeck	bool
30302611cbbSDaniel Schwierzeck
304c52ebea1SPaul Burtonconfig SUPPORTS_CPU_MIPS64_R6
305c52ebea1SPaul Burton	bool
306c52ebea1SPaul Burton
307c57dafb5SDaniel Schwierzeckconfig CPU_MIPS32
308c57dafb5SDaniel Schwierzeck	bool
309c52ebea1SPaul Burton	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R6
310c57dafb5SDaniel Schwierzeck
311c57dafb5SDaniel Schwierzeckconfig CPU_MIPS64
312c57dafb5SDaniel Schwierzeck	bool
313c52ebea1SPaul Burton	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
314c57dafb5SDaniel Schwierzeck
3150315a289SDaniel Schwierzeckconfig MIPS_TUNE_4KC
3160315a289SDaniel Schwierzeck	bool
3170315a289SDaniel Schwierzeck
3180315a289SDaniel Schwierzeckconfig MIPS_TUNE_14KC
3190315a289SDaniel Schwierzeck	bool
3200315a289SDaniel Schwierzeck
3210315a289SDaniel Schwierzeckconfig MIPS_TUNE_24KC
3220315a289SDaniel Schwierzeck	bool
3230315a289SDaniel Schwierzeck
3245f9cc363SDaniel Schwierzeckconfig MIPS_TUNE_34KC
3255f9cc363SDaniel Schwierzeck	bool
3265f9cc363SDaniel Schwierzeck
3270a0a958bSMarek Vasutconfig MIPS_TUNE_74KC
3280a0a958bSMarek Vasut	bool
3290a0a958bSMarek Vasut
33002611cbbSDaniel Schwierzeckconfig 32BIT
33102611cbbSDaniel Schwierzeck	bool
33202611cbbSDaniel Schwierzeck
33302611cbbSDaniel Schwierzeckconfig 64BIT
33402611cbbSDaniel Schwierzeck	bool
33502611cbbSDaniel Schwierzeck
3369d638eeaSDaniel Schwierzeckconfig SWAP_IO_SPACE
3379d638eeaSDaniel Schwierzeck	bool
3389d638eeaSDaniel Schwierzeck
339dd7c7200SPaul Burtonconfig SYS_MIPS_CACHE_INIT_RAM_LOAD
340dd7c7200SPaul Burton	bool
341dd7c7200SPaul Burton
342924ad866SDaniel Schwierzeckconfig MIPS_INIT_STACK_IN_SRAM
343924ad866SDaniel Schwierzeck	bool
344924ad866SDaniel Schwierzeck	default n
345924ad866SDaniel Schwierzeck	help
346924ad866SDaniel Schwierzeck	  Select this if the initial stack frame could be setup in SRAM.
347924ad866SDaniel Schwierzeck	  Normally the initial stack frame is set up in DRAM which is often
348924ad866SDaniel Schwierzeck	  only available after lowlevel_init. With this option the initial
349924ad866SDaniel Schwierzeck	  stack frame and the early C environment is set up before
350924ad866SDaniel Schwierzeck	  lowlevel_init. Thus lowlevel_init does not need to be implemented
351924ad866SDaniel Schwierzeck	  in assembler.
352924ad866SDaniel Schwierzeck
353ace3be4fSPaul Burtonconfig SYS_DCACHE_SIZE
354ace3be4fSPaul Burton	int
355ace3be4fSPaul Burton	default 0
356ace3be4fSPaul Burton	help
357ace3be4fSPaul Burton	  The total size of the L1 Dcache, if known at compile time.
358ace3be4fSPaul Burton
35937228621SPaul Burtonconfig SYS_DCACHE_LINE_SIZE
3604b7b0a0fSPaul Burton	int
36137228621SPaul Burton	default 0
36237228621SPaul Burton	help
36337228621SPaul Burton	  The size of L1 Dcache lines, if known at compile time.
36437228621SPaul Burton
365ace3be4fSPaul Burtonconfig SYS_ICACHE_SIZE
366ace3be4fSPaul Burton	int
367ace3be4fSPaul Burton	default 0
368ace3be4fSPaul Burton	help
369ace3be4fSPaul Burton	  The total size of the L1 ICache, if known at compile time.
370ace3be4fSPaul Burton
37137228621SPaul Burtonconfig SYS_ICACHE_LINE_SIZE
372ace3be4fSPaul Burton	int
373ace3be4fSPaul Burton	default 0
374ace3be4fSPaul Burton	help
37537228621SPaul Burton	  The size of L1 Icache lines, if known at compile time.
376ace3be4fSPaul Burton
377ace3be4fSPaul Burtonconfig SYS_CACHE_SIZE_AUTO
378ace3be4fSPaul Burton	def_bool y if SYS_DCACHE_SIZE = 0 && SYS_ICACHE_SIZE = 0 && \
37937228621SPaul Burton		SYS_DCACHE_LINE_SIZE = 0 && SYS_ICACHE_LINE_SIZE = 0
380ace3be4fSPaul Burton	help
381ace3be4fSPaul Burton	  Select this (or let it be auto-selected by not defining any cache
382ace3be4fSPaul Burton	  sizes) in order to allow U-Boot to automatically detect the sizes
383ace3be4fSPaul Burton	  of caches at runtime. This has a small cost in code size & runtime
384ace3be4fSPaul Burton	  so if you know the cache configuration for your system at compile
385ace3be4fSPaul Burton	  time it would be beneficial to configure it.
386ace3be4fSPaul Burton
387f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_4
388f53830e7SDaniel Schwierzeck	bool
389f53830e7SDaniel Schwierzeck
390f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_5
391f53830e7SDaniel Schwierzeck	bool
392f53830e7SDaniel Schwierzeck
393f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_6
394f53830e7SDaniel Schwierzeck	bool
395f53830e7SDaniel Schwierzeck
396f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT_7
397f53830e7SDaniel Schwierzeck	bool
398f53830e7SDaniel Schwierzeck
399f53830e7SDaniel Schwierzeckconfig MIPS_L1_CACHE_SHIFT
400f53830e7SDaniel Schwierzeck	int
401f53830e7SDaniel Schwierzeck	default "7" if MIPS_L1_CACHE_SHIFT_7
402f53830e7SDaniel Schwierzeck	default "6" if MIPS_L1_CACHE_SHIFT_6
403f53830e7SDaniel Schwierzeck	default "5" if MIPS_L1_CACHE_SHIFT_5
404f53830e7SDaniel Schwierzeck	default "4" if MIPS_L1_CACHE_SHIFT_4
405f53830e7SDaniel Schwierzeck	default "5"
406f53830e7SDaniel Schwierzeck
4074baa0ab6SPaul Burtonconfig MIPS_L2_CACHE
4084baa0ab6SPaul Burton	bool
4094baa0ab6SPaul Burton	help
4104baa0ab6SPaul Burton	  Select this if your system includes an L2 cache and you want U-Boot
4114baa0ab6SPaul Burton	  to initialise & maintain it.
4124baa0ab6SPaul Burton
41305e34255SPaul Burtonconfig DYNAMIC_IO_PORT_BASE
41405e34255SPaul Burton	bool
41505e34255SPaul Burton
416b2b135d9SPaul Burtonconfig MIPS_CM
417b2b135d9SPaul Burton	bool
418b2b135d9SPaul Burton	help
419b2b135d9SPaul Burton	  Select this if your system contains a MIPS Coherence Manager and you
420b2b135d9SPaul Burton	  wish U-Boot to configure it or make use of it to retrieve system
421b2b135d9SPaul Burton	  information such as cache configuration.
422b2b135d9SPaul Burton
423d1c3d8bdSDaniel Schwierzeckconfig MIPS_INSERT_BOOT_CONFIG
424d1c3d8bdSDaniel Schwierzeck	bool
425d1c3d8bdSDaniel Schwierzeck	default n
426d1c3d8bdSDaniel Schwierzeck	help
427d1c3d8bdSDaniel Schwierzeck	  Enable this to insert some board-specific boot configuration in
428d1c3d8bdSDaniel Schwierzeck	  the U-Boot binary at offset 0x10.
429d1c3d8bdSDaniel Schwierzeck
430d1c3d8bdSDaniel Schwierzeckconfig MIPS_BOOT_CONFIG_WORD0
431d1c3d8bdSDaniel Schwierzeck	hex
432d1c3d8bdSDaniel Schwierzeck	depends on MIPS_INSERT_BOOT_CONFIG
433d1c3d8bdSDaniel Schwierzeck	default 0x420 if TARGET_MALTA
434d1c3d8bdSDaniel Schwierzeck	default 0x0
435d1c3d8bdSDaniel Schwierzeck	help
436d1c3d8bdSDaniel Schwierzeck	  Value which is inserted as boot config word 0.
437d1c3d8bdSDaniel Schwierzeck
438d1c3d8bdSDaniel Schwierzeckconfig MIPS_BOOT_CONFIG_WORD1
439d1c3d8bdSDaniel Schwierzeck	hex
440d1c3d8bdSDaniel Schwierzeck	depends on MIPS_INSERT_BOOT_CONFIG
441d1c3d8bdSDaniel Schwierzeck	default 0x0
442d1c3d8bdSDaniel Schwierzeck	help
443d1c3d8bdSDaniel Schwierzeck	  Value which is inserted as boot config word 1.
444d1c3d8bdSDaniel Schwierzeck
4450e1dc345SDaniel Schwierzeckendif
4460e1dc345SDaniel Schwierzeck
447dd84058dSMasahiro Yamadaendmenu
448