226 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			226 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# SPDX-License-Identifier: GPL-2.0-only
 | 
						|
config MICROBLAZE
 | 
						|
	def_bool y
 | 
						|
	select ARCH_32BIT_OFF_T
 | 
						|
	select ARCH_NO_SWAP
 | 
						|
	select ARCH_HAS_DMA_PREP_COHERENT
 | 
						|
	select ARCH_HAS_GCOV_PROFILE_ALL
 | 
						|
	select ARCH_HAS_SYNC_DMA_FOR_CPU
 | 
						|
	select ARCH_HAS_SYNC_DMA_FOR_DEVICE
 | 
						|
	select ARCH_MIGHT_HAVE_PC_PARPORT
 | 
						|
	select ARCH_WANT_IPC_PARSE_VERSION
 | 
						|
	select BUILDTIME_TABLE_SORT
 | 
						|
	select TIMER_OF
 | 
						|
	select CLONE_BACKWARDS3
 | 
						|
	select COMMON_CLK
 | 
						|
	select DMA_DIRECT_REMAP
 | 
						|
	select GENERIC_ATOMIC64
 | 
						|
	select GENERIC_CPU_DEVICES
 | 
						|
	select GENERIC_IDLE_POLL_SETUP
 | 
						|
	select GENERIC_IRQ_PROBE
 | 
						|
	select GENERIC_IRQ_SHOW
 | 
						|
	select GENERIC_PCI_IOMAP
 | 
						|
	select GENERIC_SCHED_CLOCK
 | 
						|
	select HAVE_ARCH_HASH
 | 
						|
	select HAVE_ARCH_KGDB
 | 
						|
	select HAVE_ARCH_SECCOMP
 | 
						|
	select HAVE_DEBUG_KMEMLEAK
 | 
						|
	select HAVE_DMA_CONTIGUOUS
 | 
						|
	select HAVE_DYNAMIC_FTRACE
 | 
						|
	select HAVE_FTRACE_MCOUNT_RECORD
 | 
						|
	select HAVE_FUNCTION_GRAPH_TRACER
 | 
						|
	select HAVE_FUNCTION_TRACER
 | 
						|
	select HAVE_PCI
 | 
						|
	select IRQ_DOMAIN
 | 
						|
	select XILINX_INTC
 | 
						|
	select MODULES_USE_ELF_RELA
 | 
						|
	select OF
 | 
						|
	select OF_EARLY_FLATTREE
 | 
						|
	select PCI_DOMAINS_GENERIC if PCI
 | 
						|
	select PCI_SYSCALL if PCI
 | 
						|
	select CPU_NO_EFFICIENT_FFS
 | 
						|
	select MMU_GATHER_NO_RANGE
 | 
						|
	select SPARSE_IRQ
 | 
						|
	select ZONE_DMA
 | 
						|
	select TRACE_IRQFLAGS_SUPPORT
 | 
						|
	select GENERIC_IRQ_MULTI_HANDLER
 | 
						|
 | 
						|
# Endianness selection
 | 
						|
choice
 | 
						|
	prompt "Endianness selection"
 | 
						|
	default CPU_LITTLE_ENDIAN
 | 
						|
	help
 | 
						|
	  microblaze architectures can be configured for either little or
 | 
						|
	  big endian formats. Be sure to select the appropriate mode.
 | 
						|
 | 
						|
config CPU_BIG_ENDIAN
 | 
						|
	bool "Big endian"
 | 
						|
 | 
						|
config CPU_LITTLE_ENDIAN
 | 
						|
	bool "Little endian"
 | 
						|
 | 
						|
endchoice
 | 
						|
 | 
						|
config ARCH_HAS_ILOG2_U32
 | 
						|
	def_bool n
 | 
						|
 | 
						|
config ARCH_HAS_ILOG2_U64
 | 
						|
	def_bool n
 | 
						|
 | 
						|
config GENERIC_HWEIGHT
 | 
						|
	def_bool y
 | 
						|
 | 
						|
config GENERIC_CALIBRATE_DELAY
 | 
						|
	def_bool y
 | 
						|
 | 
						|
config GENERIC_CSUM
 | 
						|
	def_bool y
 | 
						|
 | 
						|
config STACKTRACE_SUPPORT
 | 
						|
	def_bool y
 | 
						|
 | 
						|
config LOCKDEP_SUPPORT
 | 
						|
	def_bool y
 | 
						|
 | 
						|
source "arch/microblaze/Kconfig.platform"
 | 
						|
 | 
						|
menu "Processor type and features"
 | 
						|
 | 
						|
source "kernel/Kconfig.hz"
 | 
						|
 | 
						|
config MMU
 | 
						|
	def_bool y
 | 
						|
 | 
						|
comment "Boot options"
 | 
						|
 | 
						|
config CMDLINE_BOOL
 | 
						|
	bool "Default bootloader kernel arguments"
 | 
						|
 | 
						|
config CMDLINE
 | 
						|
	string "Default kernel command string"
 | 
						|
	depends on CMDLINE_BOOL
 | 
						|
	default "console=ttyUL0,115200"
 | 
						|
	help
 | 
						|
	  On some architectures there is currently no way for the boot loader
 | 
						|
	  to pass arguments to the kernel. For these architectures, you should
 | 
						|
	  supply some command-line options at build time by entering them
 | 
						|
	  here.
 | 
						|
 | 
						|
config CMDLINE_FORCE
 | 
						|
	bool "Force default kernel command string"
 | 
						|
	depends on CMDLINE_BOOL
 | 
						|
	default n
 | 
						|
	help
 | 
						|
	  Set this to have arguments from the default kernel command string
 | 
						|
	  override those passed by the boot loader.
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
menu "Kernel features"
 | 
						|
 | 
						|
config NR_CPUS
 | 
						|
	int
 | 
						|
	default "1"
 | 
						|
 | 
						|
config ADVANCED_OPTIONS
 | 
						|
	bool "Prompt for advanced kernel configuration options"
 | 
						|
	help
 | 
						|
	  This option will enable prompting for a variety of advanced kernel
 | 
						|
	  configuration options.  These options can cause the kernel to not
 | 
						|
	  work if they are set incorrectly, but can be used to optimize certain
 | 
						|
	  aspects of kernel memory management.
 | 
						|
 | 
						|
	  Unless you know what you are doing, say N here.
 | 
						|
 | 
						|
comment "Default settings for advanced configuration options are used"
 | 
						|
	depends on !ADVANCED_OPTIONS
 | 
						|
 | 
						|
config HIGHMEM
 | 
						|
	bool "High memory support"
 | 
						|
	select KMAP_LOCAL
 | 
						|
	help
 | 
						|
	  The address space of Microblaze processors is only 4 Gigabytes large
 | 
						|
	  and it has to accommodate user address space, kernel address
 | 
						|
	  space as well as some memory mapped IO. That means that, if you
 | 
						|
	  have a large amount of physical memory and/or IO, not all of the
 | 
						|
	  memory can be "permanently mapped" by the kernel. The physical
 | 
						|
	  memory that is not permanently mapped is called "high memory".
 | 
						|
 | 
						|
	  If unsure, say n.
 | 
						|
 | 
						|
config LOWMEM_SIZE_BOOL
 | 
						|
	bool "Set maximum low memory"
 | 
						|
	depends on ADVANCED_OPTIONS
 | 
						|
	help
 | 
						|
	  This option allows you to set the maximum amount of memory which
 | 
						|
	  will be used as "low memory", that is, memory which the kernel can
 | 
						|
	  access directly, without having to set up a kernel virtual mapping.
 | 
						|
	  This can be useful in optimizing the layout of kernel virtual
 | 
						|
	  memory.
 | 
						|
 | 
						|
	  Say N here unless you know what you are doing.
 | 
						|
 | 
						|
config LOWMEM_SIZE
 | 
						|
	hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
 | 
						|
	default "0x30000000"
 | 
						|
 | 
						|
config MANUAL_RESET_VECTOR
 | 
						|
	hex "Microblaze reset vector address setup"
 | 
						|
	default "0x0"
 | 
						|
	help
 | 
						|
	  Set this option to have the kernel override the CPU Reset vector.
 | 
						|
	  If zero, no change will be made to the MicroBlaze reset vector at
 | 
						|
	  address 0x0.
 | 
						|
	  If non-zero, a jump instruction to this address, will be written
 | 
						|
	  to the reset vector at address 0x0.
 | 
						|
	  If you are unsure, set it to default value 0x0.
 | 
						|
 | 
						|
config KERNEL_START_BOOL
 | 
						|
	bool "Set custom kernel base address"
 | 
						|
	depends on ADVANCED_OPTIONS
 | 
						|
	help
 | 
						|
	  This option allows you to set the kernel virtual address at which
 | 
						|
	  the kernel will map low memory (the kernel image will be linked at
 | 
						|
	  this address).  This can be useful in optimizing the virtual memory
 | 
						|
	  layout of the system.
 | 
						|
 | 
						|
	  Say N here unless you know what you are doing.
 | 
						|
 | 
						|
config KERNEL_START
 | 
						|
	hex "Virtual address of kernel base" if KERNEL_START_BOOL
 | 
						|
	default "0xc0000000"
 | 
						|
 | 
						|
config TASK_SIZE_BOOL
 | 
						|
	bool "Set custom user task size"
 | 
						|
	depends on ADVANCED_OPTIONS
 | 
						|
	help
 | 
						|
	  This option allows you to set the amount of virtual address space
 | 
						|
	  allocated to user tasks.  This can be useful in optimizing the
 | 
						|
	  virtual memory layout of the system.
 | 
						|
 | 
						|
	  Say N here unless you know what you are doing.
 | 
						|
 | 
						|
config TASK_SIZE
 | 
						|
	hex "Size of user task space" if TASK_SIZE_BOOL
 | 
						|
	default "0x80000000"
 | 
						|
 | 
						|
config MB_MANAGER
 | 
						|
	bool "Support for Microblaze Manager"
 | 
						|
	depends on ADVANCED_OPTIONS
 | 
						|
	help
 | 
						|
	  This option enables API for configuring the MicroBlaze manager
 | 
						|
	  control register, which is consumed by the break handler to
 | 
						|
	  block the break.
 | 
						|
 | 
						|
	  Say N here unless you know what you are doing.
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
menu "Bus Options"
 | 
						|
 | 
						|
config PCI_XILINX
 | 
						|
	bool "Xilinx PCI host bridge support"
 | 
						|
	depends on PCI
 | 
						|
 | 
						|
endmenu
 |