mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 10:26:10 +01:00 
			
		
		
		
	Add Kconfig symbol for L1 cache shift like the kernel does. The value of CONFIG_SYS_CACHELINE_SIZE is not a reliable source for ARCH_DMA_MINALIGN anymore, because it is optional on MIPS. If CONFIG_SYS_CACHELINE_SIZE is not defined by a board, the cache sizes are automatically detected and ARCH_DMA_MINALIGN would be set to 128 Bytes. The default value for CONFIG_MIPS_L1_CACHE_SHIFT is 5 which corresponds to 32 Bytes. All current MIPS boards already used that value. While on it, fix the Malta board to use a value of 6 like the kernel port does. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
		
			
				
	
	
		
			223 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			223 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| menu "MIPS architecture"
 | |
| 	depends on MIPS
 | |
| 
 | |
| config SYS_ARCH
 | |
| 	default "mips"
 | |
| 
 | |
| config SYS_CPU
 | |
| 	default "mips32" if CPU_MIPS32_R1 || CPU_MIPS32_R2
 | |
| 	default "mips64" if CPU_MIPS64_R1 || CPU_MIPS64_R2
 | |
| 
 | |
| choice
 | |
| 	prompt "Target select"
 | |
| 	optional
 | |
| 
 | |
| config TARGET_QEMU_MIPS
 | |
| 	bool "Support qemu-mips"
 | |
| 	select SUPPORTS_BIG_ENDIAN
 | |
| 	select SUPPORTS_LITTLE_ENDIAN
 | |
| 	select SUPPORTS_CPU_MIPS32_R1
 | |
| 	select SUPPORTS_CPU_MIPS32_R2
 | |
| 	select SUPPORTS_CPU_MIPS64_R1
 | |
| 	select SUPPORTS_CPU_MIPS64_R2
 | |
| 
 | |
| config TARGET_MALTA
 | |
| 	bool "Support malta"
 | |
| 	select SUPPORTS_BIG_ENDIAN
 | |
| 	select SUPPORTS_LITTLE_ENDIAN
 | |
| 	select SUPPORTS_CPU_MIPS32_R1
 | |
| 	select SUPPORTS_CPU_MIPS32_R2
 | |
| 	select SWAP_IO_SPACE
 | |
| 	select MIPS_L1_CACHE_SHIFT_6
 | |
| 
 | |
| config TARGET_VCT
 | |
| 	bool "Support vct"
 | |
| 	select SUPPORTS_BIG_ENDIAN
 | |
| 	select SUPPORTS_CPU_MIPS32_R1
 | |
| 	select SUPPORTS_CPU_MIPS32_R2
 | |
| 	select SYS_MIPS_CACHE_INIT_RAM_LOAD
 | |
| 
 | |
| config TARGET_DBAU1X00
 | |
| 	bool "Support dbau1x00"
 | |
| 	select SUPPORTS_BIG_ENDIAN
 | |
| 	select SUPPORTS_LITTLE_ENDIAN
 | |
| 	select SUPPORTS_CPU_MIPS32_R1
 | |
| 	select SUPPORTS_CPU_MIPS32_R2
 | |
| 	select SYS_MIPS_CACHE_INIT_RAM_LOAD
 | |
| 	select MIPS_TUNE_4KC
 | |
| 
 | |
| config TARGET_PB1X00
 | |
| 	bool "Support pb1x00"
 | |
| 	select SUPPORTS_LITTLE_ENDIAN
 | |
| 	select SUPPORTS_CPU_MIPS32_R1
 | |
| 	select SUPPORTS_CPU_MIPS32_R2
 | |
| 	select SYS_MIPS_CACHE_INIT_RAM_LOAD
 | |
| 	select MIPS_TUNE_4KC
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| source "board/dbau1x00/Kconfig"
 | |
| source "board/imgtec/malta/Kconfig"
 | |
| source "board/micronas/vct/Kconfig"
 | |
| source "board/pb1x00/Kconfig"
 | |
| source "board/qemu-mips/Kconfig"
 | |
| 
 | |
| if MIPS
 | |
| 
 | |
| choice
 | |
| 	prompt "Endianness selection"
 | |
| 	help
 | |
| 	  Some MIPS boards can be configured for either little or big endian
 | |
| 	  byte order. These modes require different U-Boot images. In general there
 | |
| 	  is one preferred byteorder for a particular system but some systems are
 | |
| 	  just as commonly used in the one or the other endianness.
 | |
| 
 | |
| config SYS_BIG_ENDIAN
 | |
| 	bool "Big endian"
 | |
| 	depends on SUPPORTS_BIG_ENDIAN
 | |
| 
 | |
| config SYS_LITTLE_ENDIAN
 | |
| 	bool "Little endian"
 | |
| 	depends on SUPPORTS_LITTLE_ENDIAN
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| choice
 | |
| 	prompt "CPU selection"
 | |
| 	default CPU_MIPS32_R2
 | |
| 
 | |
| config CPU_MIPS32_R1
 | |
| 	bool "MIPS32 Release 1"
 | |
| 	depends on SUPPORTS_CPU_MIPS32_R1
 | |
| 	select 32BIT
 | |
| 	help
 | |
| 	  Choose this option to build an U-Boot for release 1 or later of the
 | |
| 	  MIPS32 architecture.
 | |
| 
 | |
| config CPU_MIPS32_R2
 | |
| 	bool "MIPS32 Release 2"
 | |
| 	depends on SUPPORTS_CPU_MIPS32_R2
 | |
| 	select 32BIT
 | |
| 	help
 | |
| 	  Choose this option to build an U-Boot for release 2 or later of the
 | |
| 	  MIPS32 architecture.
 | |
| 
 | |
| config CPU_MIPS64_R1
 | |
| 	bool "MIPS64 Release 1"
 | |
| 	depends on SUPPORTS_CPU_MIPS64_R1
 | |
| 	select 64BIT
 | |
| 	help
 | |
| 	  Choose this option to build a kernel for release 1 or later of the
 | |
| 	  MIPS64 architecture.
 | |
| 
 | |
| config CPU_MIPS64_R2
 | |
| 	bool "MIPS64 Release 2"
 | |
| 	depends on SUPPORTS_CPU_MIPS64_R2
 | |
| 	select 64BIT
 | |
| 	help
 | |
| 	  Choose this option to build a kernel for release 2 or later of the
 | |
| 	  MIPS64 architecture.
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| menu "OS boot interface"
 | |
| 
 | |
| config MIPS_BOOT_CMDLINE_LEGACY
 | |
| 	bool "Hand over legacy command line to Linux kernel"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable this option if you want U-Boot to hand over the Yamon-style
 | |
| 	  command line to the kernel. All bootargs will be prepared as argc/argv
 | |
| 	  compatible list. The argument count (argc) is stored in register $a0.
 | |
| 	  The address of the argument list (argv) is stored in register $a1.
 | |
| 
 | |
| config MIPS_BOOT_ENV_LEGACY
 | |
| 	bool "Hand over legacy environment to Linux kernel"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable this option if you want U-Boot to hand over the Yamon-style
 | |
| 	  environment to the kernel. Information like memory size, initrd
 | |
| 	  address and size will be prepared as zero-terminated key/value list.
 | |
| 	  The address of the enviroment is stored in register $a2.
 | |
| 
 | |
| config MIPS_BOOT_FDT
 | |
| 	bool "Hand over a flattened device tree to Linux kernel"
 | |
| 	default n
 | |
| 	help
 | |
| 	  Enable this option if you want U-Boot to hand over a flattened
 | |
| 	  device tree to the kernel. According to UHI register $a0 will be set
 | |
| 	  to -2 and the FDT address is stored in $a1.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| config SUPPORTS_BIG_ENDIAN
 | |
| 	bool
 | |
| 
 | |
| config SUPPORTS_LITTLE_ENDIAN
 | |
| 	bool
 | |
| 
 | |
| config SUPPORTS_CPU_MIPS32_R1
 | |
| 	bool
 | |
| 
 | |
| config SUPPORTS_CPU_MIPS32_R2
 | |
| 	bool
 | |
| 
 | |
| config SUPPORTS_CPU_MIPS64_R1
 | |
| 	bool
 | |
| 
 | |
| config SUPPORTS_CPU_MIPS64_R2
 | |
| 	bool
 | |
| 
 | |
| config CPU_MIPS32
 | |
| 	bool
 | |
| 	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
 | |
| 
 | |
| config CPU_MIPS64
 | |
| 	bool
 | |
| 	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
 | |
| 
 | |
| config MIPS_TUNE_4KC
 | |
| 	bool
 | |
| 
 | |
| config MIPS_TUNE_14KC
 | |
| 	bool
 | |
| 
 | |
| config MIPS_TUNE_24KC
 | |
| 	bool
 | |
| 
 | |
| config 32BIT
 | |
| 	bool
 | |
| 
 | |
| config 64BIT
 | |
| 	bool
 | |
| 
 | |
| config SWAP_IO_SPACE
 | |
| 	bool
 | |
| 
 | |
| config SYS_MIPS_CACHE_INIT_RAM_LOAD
 | |
| 	bool
 | |
| 
 | |
| config MIPS_L1_CACHE_SHIFT_4
 | |
| 	bool
 | |
| 
 | |
| config MIPS_L1_CACHE_SHIFT_5
 | |
| 	bool
 | |
| 
 | |
| config MIPS_L1_CACHE_SHIFT_6
 | |
| 	bool
 | |
| 
 | |
| config MIPS_L1_CACHE_SHIFT_7
 | |
| 	bool
 | |
| 
 | |
| config MIPS_L1_CACHE_SHIFT
 | |
| 	int
 | |
| 	default "7" if MIPS_L1_CACHE_SHIFT_7
 | |
| 	default "6" if MIPS_L1_CACHE_SHIFT_6
 | |
| 	default "5" if MIPS_L1_CACHE_SHIFT_5
 | |
| 	default "4" if MIPS_L1_CACHE_SHIFT_4
 | |
| 	default "5"
 | |
| 
 | |
| endif
 | |
| 
 | |
| endmenu
 |