 1e05b62ae4
			
		
	
	
	1e05b62ae4
	
	
	
		
			
			commit 43db595e8b
(sh: switch to GENERIC_PCI_IOMAP)
failed to take into account the PCI channels's
io_map_base for mapping IO BARs.
This also caused a new warning on sh.
Fix this, without re-introducing code duplication,
by setting NO_GENERIC_PCI_IOPORT_MAP
and supplying a sh-specific __pci_ioport_map.
Reported-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
		
	
			
		
			
				
	
	
		
			908 lines
		
	
	
	
		
			21 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			908 lines
		
	
	
	
		
			21 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| config SUPERH
 | |
| 	def_bool y
 | |
| 	select EXPERT
 | |
| 	select CLKDEV_LOOKUP
 | |
| 	select HAVE_IDE if HAS_IOPORT
 | |
| 	select HAVE_MEMBLOCK
 | |
| 	select HAVE_MEMBLOCK_NODE_MAP
 | |
| 	select HAVE_OPROFILE
 | |
| 	select HAVE_GENERIC_DMA_COHERENT
 | |
| 	select HAVE_ARCH_TRACEHOOK
 | |
| 	select HAVE_DMA_API_DEBUG
 | |
| 	select HAVE_DMA_ATTRS
 | |
| 	select HAVE_IRQ_WORK
 | |
| 	select HAVE_PERF_EVENTS
 | |
| 	select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A)
 | |
| 	select PERF_USE_VMALLOC
 | |
| 	select HAVE_KERNEL_GZIP
 | |
| 	select HAVE_KERNEL_BZIP2
 | |
| 	select HAVE_KERNEL_LZMA
 | |
| 	select HAVE_KERNEL_XZ
 | |
| 	select HAVE_KERNEL_LZO
 | |
| 	select HAVE_SYSCALL_TRACEPOINTS
 | |
| 	select HAVE_REGS_AND_STACK_ACCESS_API
 | |
| 	select HAVE_GENERIC_HARDIRQS
 | |
| 	select HAVE_SPARSE_IRQ
 | |
| 	select IRQ_FORCED_THREADING
 | |
| 	select RTC_LIB
 | |
| 	select GENERIC_ATOMIC64
 | |
| 	select GENERIC_IRQ_SHOW
 | |
| 	help
 | |
| 	  The SuperH is a RISC processor targeted for use in embedded systems
 | |
| 	  and consumer electronics; it was also used in the Sega Dreamcast
 | |
| 	  gaming console.  The SuperH port has a home page at
 | |
| 	  <http://www.linux-sh.org/>.
 | |
| 
 | |
| config SUPERH32
 | |
| 	def_bool ARCH = "sh"
 | |
| 	select HAVE_KPROBES
 | |
| 	select HAVE_KRETPROBES
 | |
| 	select HAVE_IOREMAP_PROT if MMU && !X2TLB
 | |
| 	select HAVE_FUNCTION_TRACER
 | |
| 	select HAVE_FTRACE_MCOUNT_RECORD
 | |
| 	select HAVE_DYNAMIC_FTRACE
 | |
| 	select HAVE_FUNCTION_TRACE_MCOUNT_TEST
 | |
| 	select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
 | |
| 	select HAVE_FUNCTION_GRAPH_TRACER
 | |
| 	select HAVE_ARCH_KGDB
 | |
| 	select HAVE_HW_BREAKPOINT
 | |
| 	select HAVE_MIXED_BREAKPOINTS_REGS
 | |
| 	select PERF_EVENTS
 | |
| 	select ARCH_HIBERNATION_POSSIBLE if MMU
 | |
| 	select SPARSE_IRQ
 | |
| 
 | |
| config SUPERH64
 | |
| 	def_bool ARCH = "sh64"
 | |
| 
 | |
| config ARCH_DEFCONFIG
 | |
| 	string
 | |
| 	default "arch/sh/configs/shx3_defconfig" if SUPERH32
 | |
| 	default "arch/sh/configs/cayman_defconfig" if SUPERH64
 | |
| 
 | |
| config RWSEM_GENERIC_SPINLOCK
 | |
| 	def_bool y
 | |
| 
 | |
| config RWSEM_XCHGADD_ALGORITHM
 | |
| 	bool
 | |
| 
 | |
| config GENERIC_BUG
 | |
| 	def_bool y
 | |
| 	depends on BUG && SUPERH32
 | |
| 
 | |
| config GENERIC_CSUM
 | |
| 	def_bool y
 | |
| 	depends on SUPERH64
 | |
| 
 | |
| config GENERIC_HWEIGHT
 | |
| 	def_bool y
 | |
| 
 | |
| config IRQ_PER_CPU
 | |
| 	def_bool y
 | |
| 
 | |
| config GENERIC_GPIO
 | |
| 	def_bool n
 | |
| 
 | |
| config GENERIC_CALIBRATE_DELAY
 | |
| 	bool
 | |
| 
 | |
| config GENERIC_CLOCKEVENTS
 | |
| 	def_bool y
 | |
| 
 | |
| config GENERIC_CLOCKEVENTS_BROADCAST
 | |
| 	bool
 | |
| 
 | |
| config GENERIC_CMOS_UPDATE
 | |
| 	def_bool y
 | |
| 	depends on SH_SH03 || SH_DREAMCAST
 | |
| 
 | |
| config GENERIC_LOCKBREAK
 | |
| 	def_bool y
 | |
| 	depends on SMP && PREEMPT
 | |
| 
 | |
| config ARCH_SUSPEND_POSSIBLE
 | |
| 	def_bool n
 | |
| 
 | |
| config ARCH_HIBERNATION_POSSIBLE
 | |
| 	def_bool n
 | |
| 
 | |
| config SYS_SUPPORTS_APM_EMULATION
 | |
| 	bool
 | |
| 	select ARCH_SUSPEND_POSSIBLE
 | |
| 
 | |
| config SYS_SUPPORTS_HUGETLBFS
 | |
| 	bool
 | |
| 
 | |
| config SYS_SUPPORTS_SMP
 | |
| 	bool
 | |
| 
 | |
| config SYS_SUPPORTS_NUMA
 | |
| 	bool
 | |
| 
 | |
| config SYS_SUPPORTS_PCI
 | |
| 	bool
 | |
| 
 | |
| config SYS_SUPPORTS_CMT
 | |
| 	bool
 | |
| 
 | |
| config SYS_SUPPORTS_MTU2
 | |
| 	bool
 | |
| 
 | |
| config SYS_SUPPORTS_TMU
 | |
| 	bool
 | |
| 
 | |
| config STACKTRACE_SUPPORT
 | |
| 	def_bool y
 | |
| 
 | |
| config LOCKDEP_SUPPORT
 | |
| 	def_bool y
 | |
| 
 | |
| config HAVE_LATENCYTOP_SUPPORT
 | |
| 	def_bool y
 | |
| 
 | |
| config ARCH_HAS_ILOG2_U32
 | |
| 	def_bool n
 | |
| 
 | |
| config ARCH_HAS_ILOG2_U64
 | |
| 	def_bool n
 | |
| 
 | |
| config ARCH_NO_VIRT_TO_BUS
 | |
| 	def_bool y
 | |
| 
 | |
| config ARCH_HAS_DEFAULT_IDLE
 | |
| 	def_bool y
 | |
| 
 | |
| config ARCH_HAS_CPU_IDLE_WAIT
 | |
| 	def_bool y
 | |
| 
 | |
| config NO_IOPORT
 | |
| 	def_bool !PCI
 | |
| 	depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN
 | |
| 
 | |
| config IO_TRAPPED
 | |
| 	bool
 | |
| 
 | |
| config DMA_COHERENT
 | |
| 	bool
 | |
| 
 | |
| config DMA_NONCOHERENT
 | |
| 	def_bool !DMA_COHERENT
 | |
| 
 | |
| config NEED_DMA_MAP_STATE
 | |
| 	def_bool DMA_NONCOHERENT
 | |
| 
 | |
| config NEED_SG_DMA_LENGTH
 | |
| 	def_bool y
 | |
| 
 | |
| source "init/Kconfig"
 | |
| 
 | |
| source "kernel/Kconfig.freezer"
 | |
| 
 | |
| menu "System type"
 | |
| 
 | |
| #
 | |
| # Processor families
 | |
| #
 | |
| config CPU_SH2
 | |
| 	bool
 | |
| 
 | |
| config CPU_SH2A
 | |
| 	bool
 | |
| 	select CPU_SH2
 | |
| 	select UNCACHED_MAPPING
 | |
| 
 | |
| config CPU_SH3
 | |
| 	bool
 | |
| 	select CPU_HAS_INTEVT
 | |
| 	select CPU_HAS_SR_RB
 | |
| 	select SYS_SUPPORTS_TMU
 | |
| 
 | |
| config CPU_SH4
 | |
| 	bool
 | |
| 	select CPU_HAS_INTEVT
 | |
| 	select CPU_HAS_SR_RB
 | |
| 	select CPU_HAS_FPU if !CPU_SH4AL_DSP
 | |
| 	select SYS_SUPPORTS_TMU
 | |
| 	select SYS_SUPPORTS_HUGETLBFS if MMU
 | |
| 
 | |
| config CPU_SH4A
 | |
| 	bool
 | |
| 	select CPU_SH4
 | |
| 
 | |
| config CPU_SH4AL_DSP
 | |
| 	bool
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_HAS_DSP
 | |
| 
 | |
| config CPU_SH5
 | |
| 	bool
 | |
| 	select CPU_HAS_FPU
 | |
| 	select SYS_SUPPORTS_TMU
 | |
| 	select SYS_SUPPORTS_HUGETLBFS if MMU
 | |
| 
 | |
| config CPU_SHX2
 | |
| 	bool
 | |
| 
 | |
| config CPU_SHX3
 | |
| 	bool
 | |
| 	select DMA_COHERENT
 | |
| 	select SYS_SUPPORTS_SMP
 | |
| 	select SYS_SUPPORTS_NUMA
 | |
| 
 | |
| config ARCH_SHMOBILE
 | |
| 	bool
 | |
| 	select ARCH_SUSPEND_POSSIBLE
 | |
| 	select PM
 | |
| 	select PM_RUNTIME
 | |
| 
 | |
| config CPU_HAS_PMU
 | |
|        depends on CPU_SH4 || CPU_SH4A
 | |
|        default y
 | |
|        bool
 | |
| 
 | |
| if SUPERH32
 | |
| 
 | |
| choice
 | |
| 	prompt "Processor sub-type selection"
 | |
| 
 | |
| #
 | |
| # Processor subtypes
 | |
| #
 | |
| 
 | |
| # SH-2 Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH7619
 | |
| 	bool "Support SH7619 processor"
 | |
| 	select CPU_SH2
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 
 | |
| # SH-2A Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH7201
 | |
| 	bool "Support SH7201 processor"
 | |
| 	select CPU_SH2A
 | |
| 	select CPU_HAS_FPU
 | |
| 	select SYS_SUPPORTS_MTU2
 | |
|  
 | |
| config CPU_SUBTYPE_SH7203
 | |
| 	bool "Support SH7203 processor"
 | |
| 	select CPU_SH2A
 | |
| 	select CPU_HAS_FPU
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select SYS_SUPPORTS_MTU2
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 
 | |
| config CPU_SUBTYPE_SH7206
 | |
| 	bool "Support SH7206 processor"
 | |
| 	select CPU_SH2A
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select SYS_SUPPORTS_MTU2
 | |
| 
 | |
| config CPU_SUBTYPE_SH7263
 | |
| 	bool "Support SH7263 processor"
 | |
| 	select CPU_SH2A
 | |
| 	select CPU_HAS_FPU
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select SYS_SUPPORTS_MTU2
 | |
| 
 | |
| config CPU_SUBTYPE_MXG
 | |
| 	bool "Support MX-G processor"
 | |
| 	select CPU_SH2A
 | |
| 	select SYS_SUPPORTS_MTU2
 | |
| 	help
 | |
| 	  Select MX-G if running on an R8A03022BG part.
 | |
| 
 | |
| # SH-3 Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH7705
 | |
| 	bool "Support SH7705 processor"
 | |
| 	select CPU_SH3
 | |
| 
 | |
| config CPU_SUBTYPE_SH7706
 | |
| 	bool "Support SH7706 processor"
 | |
| 	select CPU_SH3
 | |
| 	help
 | |
| 	  Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7707
 | |
| 	bool "Support SH7707 processor"
 | |
| 	select CPU_SH3
 | |
| 	help
 | |
| 	  Select SH7707 if you have a  60 Mhz SH-3 HD6417707 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7708
 | |
| 	bool "Support SH7708 processor"
 | |
| 	select CPU_SH3
 | |
| 	help
 | |
| 	  Select SH7708 if you have a  60 Mhz SH-3 HD6417708S or
 | |
| 	  if you have a 100 Mhz SH-3 HD6417708R CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7709
 | |
| 	bool "Support SH7709 processor"
 | |
| 	select CPU_SH3
 | |
| 	help
 | |
| 	  Select SH7709 if you have a  80 Mhz SH-3 HD6417709 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7710
 | |
| 	bool "Support SH7710 processor"
 | |
| 	select CPU_SH3
 | |
| 	select CPU_HAS_DSP
 | |
| 	help
 | |
| 	  Select SH7710 if you have a SH3-DSP SH7710 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7712
 | |
| 	bool "Support SH7712 processor"
 | |
| 	select CPU_SH3
 | |
| 	select CPU_HAS_DSP
 | |
| 	help
 | |
| 	  Select SH7712 if you have a SH3-DSP SH7712 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7720
 | |
| 	bool "Support SH7720 processor"
 | |
| 	select CPU_SH3
 | |
| 	select CPU_HAS_DSP
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 	select USB_ARCH_HAS_OHCI
 | |
| 	select USB_OHCI_SH if USB_OHCI_HCD
 | |
| 	help
 | |
| 	  Select SH7720 if you have a SH3-DSP SH7720 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7721
 | |
| 	bool "Support SH7721 processor"
 | |
| 	select CPU_SH3
 | |
| 	select CPU_HAS_DSP
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select USB_ARCH_HAS_OHCI
 | |
| 	select USB_OHCI_SH if USB_OHCI_HCD
 | |
| 	help
 | |
| 	  Select SH7721 if you have a SH3-DSP SH7721 CPU.
 | |
| 
 | |
| # SH-4 Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH7750
 | |
| 	bool "Support SH7750 processor"
 | |
| 	select CPU_SH4
 | |
| 	help
 | |
| 	  Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7091
 | |
| 	bool "Support SH7091 processor"
 | |
| 	select CPU_SH4
 | |
| 	help
 | |
| 	  Select SH7091 if you have an SH-4 based Sega device (such as
 | |
| 	  the Dreamcast, Naomi, and Naomi 2).
 | |
| 
 | |
| config CPU_SUBTYPE_SH7750R
 | |
| 	bool "Support SH7750R processor"
 | |
| 	select CPU_SH4
 | |
| 
 | |
| config CPU_SUBTYPE_SH7750S
 | |
| 	bool "Support SH7750S processor"
 | |
| 	select CPU_SH4
 | |
| 
 | |
| config CPU_SUBTYPE_SH7751
 | |
| 	bool "Support SH7751 processor"
 | |
| 	select CPU_SH4
 | |
| 	help
 | |
| 	  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
 | |
| 	  or if you have a HD6417751R CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7751R
 | |
| 	bool "Support SH7751R processor"
 | |
| 	select CPU_SH4
 | |
| 
 | |
| config CPU_SUBTYPE_SH7760
 | |
| 	bool "Support SH7760 processor"
 | |
| 	select CPU_SH4
 | |
| 
 | |
| config CPU_SUBTYPE_SH4_202
 | |
| 	bool "Support SH4-202 processor"
 | |
| 	select CPU_SH4
 | |
| 
 | |
| # SH-4A Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH7723
 | |
| 	bool "Support SH7723 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_SHX2
 | |
| 	select ARCH_SHMOBILE
 | |
| 	select ARCH_SPARSEMEM_ENABLE
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 	help
 | |
| 	  Select SH7723 if you have an SH-MobileR2 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7724
 | |
| 	bool "Support SH7724 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_SHX2
 | |
| 	select ARCH_SHMOBILE
 | |
| 	select ARCH_SPARSEMEM_ENABLE
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 	help
 | |
| 	  Select SH7724 if you have an SH-MobileR2R CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7757
 | |
| 	bool "Support SH7757 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_SHX2
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 	select USB_ARCH_HAS_OHCI
 | |
| 	select USB_ARCH_HAS_EHCI
 | |
| 	help
 | |
| 	  Select SH7757 if you have a SH4A SH7757 CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7763
 | |
| 	bool "Support SH7763 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select USB_ARCH_HAS_OHCI
 | |
| 	select USB_OHCI_SH if USB_OHCI_HCD
 | |
| 	help
 | |
| 	  Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
 | |
| 
 | |
| config CPU_SUBTYPE_SH7770
 | |
| 	bool "Support SH7770 processor"
 | |
| 	select CPU_SH4A
 | |
| 
 | |
| config CPU_SUBTYPE_SH7780
 | |
| 	bool "Support SH7780 processor"
 | |
| 	select CPU_SH4A
 | |
| 
 | |
| config CPU_SUBTYPE_SH7785
 | |
| 	bool "Support SH7785 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_SHX2
 | |
| 	select ARCH_SPARSEMEM_ENABLE
 | |
| 	select SYS_SUPPORTS_NUMA
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 
 | |
| config CPU_SUBTYPE_SH7786
 | |
| 	bool "Support SH7786 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_SHX3
 | |
| 	select CPU_HAS_PTEAEX
 | |
| 	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 	select USB_ARCH_HAS_OHCI
 | |
| 	select USB_OHCI_SH if USB_OHCI_HCD
 | |
| 	select USB_ARCH_HAS_EHCI
 | |
| 	select USB_EHCI_SH if USB_EHCI_HCD
 | |
| 
 | |
| config CPU_SUBTYPE_SHX3
 | |
| 	bool "Support SH-X3 processor"
 | |
| 	select CPU_SH4A
 | |
| 	select CPU_SHX3
 | |
| 	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
 | |
| 	select ARCH_REQUIRE_GPIOLIB
 | |
| 
 | |
| # SH4AL-DSP Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH7343
 | |
| 	bool "Support SH7343 processor"
 | |
| 	select CPU_SH4AL_DSP
 | |
| 	select ARCH_SHMOBILE
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 
 | |
| config CPU_SUBTYPE_SH7722
 | |
| 	bool "Support SH7722 processor"
 | |
| 	select CPU_SH4AL_DSP
 | |
| 	select CPU_SHX2
 | |
| 	select ARCH_SHMOBILE
 | |
| 	select ARCH_SPARSEMEM_ENABLE
 | |
| 	select SYS_SUPPORTS_NUMA
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 	select ARCH_WANT_OPTIONAL_GPIOLIB
 | |
| 
 | |
| config CPU_SUBTYPE_SH7366
 | |
| 	bool "Support SH7366 processor"
 | |
| 	select CPU_SH4AL_DSP
 | |
| 	select CPU_SHX2
 | |
| 	select ARCH_SHMOBILE
 | |
| 	select ARCH_SPARSEMEM_ENABLE
 | |
| 	select SYS_SUPPORTS_NUMA
 | |
| 	select SYS_SUPPORTS_CMT
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| endif
 | |
| 
 | |
| if SUPERH64
 | |
| 
 | |
| choice
 | |
| 	prompt "Processor sub-type selection"
 | |
| 
 | |
| # SH-5 Processor Support
 | |
| 
 | |
| config CPU_SUBTYPE_SH5_101
 | |
| 	bool "Support SH5-101 processor"
 | |
| 	select CPU_SH5
 | |
| 
 | |
| config CPU_SUBTYPE_SH5_103
 | |
| 	bool "Support SH5-103 processor"
 | |
| 	select CPU_SH5
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| endif
 | |
| 
 | |
| source "arch/sh/mm/Kconfig"
 | |
|  
 | |
| source "arch/sh/Kconfig.cpu"
 | |
| 
 | |
| source "arch/sh/boards/Kconfig"
 | |
| 
 | |
| menu "Timer and clock configuration"
 | |
| 
 | |
| config SH_TIMER_TMU
 | |
| 	bool "TMU timer driver"
 | |
| 	depends on SYS_SUPPORTS_TMU
 | |
| 	default y
 | |
| 	help
 | |
| 	  This enables the build of the TMU timer driver.
 | |
| 
 | |
| config SH_TIMER_CMT
 | |
| 	bool "CMT timer driver"
 | |
| 	depends on SYS_SUPPORTS_CMT
 | |
| 	default y
 | |
| 	help
 | |
| 	  This enables build of the CMT timer driver.
 | |
| 
 | |
| config SH_TIMER_MTU2
 | |
| 	bool "MTU2 timer driver"
 | |
| 	depends on SYS_SUPPORTS_MTU2
 | |
| 	default y
 | |
| 	help
 | |
| 	  This enables build of the MTU2 timer driver.
 | |
| 
 | |
| config SH_PCLK_FREQ
 | |
| 	int "Peripheral clock frequency (in Hz)"
 | |
| 	depends on SH_CLK_CPG_LEGACY
 | |
| 	default "31250000" if CPU_SUBTYPE_SH7619
 | |
| 	default "33333333" if CPU_SUBTYPE_SH7770 || \
 | |
| 			      CPU_SUBTYPE_SH7760 || \
 | |
| 			      CPU_SUBTYPE_SH7705 || \
 | |
| 			      CPU_SUBTYPE_SH7203 || \
 | |
| 			      CPU_SUBTYPE_SH7206 || \
 | |
| 			      CPU_SUBTYPE_SH7263 || \
 | |
| 			      CPU_SUBTYPE_MXG
 | |
| 	default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
 | |
| 	default "66000000" if CPU_SUBTYPE_SH4_202
 | |
| 	default "50000000"
 | |
| 	help
 | |
| 	  This option is used to specify the peripheral clock frequency.
 | |
| 	  This is necessary for determining the reference clock value on
 | |
| 	  platforms lacking an RTC.
 | |
| 
 | |
| config SH_CLK_CPG
 | |
| 	def_bool y
 | |
| 
 | |
| config SH_CLK_CPG_LEGACY
 | |
| 	depends on SH_CLK_CPG
 | |
| 	def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
 | |
| 		      !CPU_SHX3 && !CPU_SUBTYPE_SH7757
 | |
| 
 | |
| source "kernel/time/Kconfig"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "CPU Frequency scaling"
 | |
| 
 | |
| source "drivers/cpufreq/Kconfig"
 | |
| 
 | |
| config SH_CPU_FREQ
 | |
| 	tristate "SuperH CPU Frequency driver"
 | |
| 	depends on CPU_FREQ
 | |
| 	select CPU_FREQ_TABLE
 | |
| 	help
 | |
| 	  This adds the cpufreq driver for SuperH. Any CPU that supports
 | |
| 	  clock rate rounding through the clock framework can use this
 | |
| 	  driver. While it will make the kernel slightly larger, this is
 | |
| 	  harmless for CPUs that don't support rate rounding. The driver
 | |
| 	  will also generate a notice in the boot log before disabling
 | |
| 	  itself if the CPU in question is not capable of rate rounding.
 | |
| 
 | |
| 	  For details, take a look at <file:Documentation/cpu-freq>.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| source "arch/sh/drivers/Kconfig"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Kernel features"
 | |
| 
 | |
| source kernel/Kconfig.hz
 | |
| 
 | |
| config KEXEC
 | |
| 	bool "kexec system call (EXPERIMENTAL)"
 | |
| 	depends on SUPERH32 && EXPERIMENTAL && MMU
 | |
| 	help
 | |
| 	  kexec is a system call that implements the ability to shutdown your
 | |
| 	  current kernel, and to start another kernel.  It is like a reboot
 | |
| 	  but it is independent of the system firmware.  And like a reboot
 | |
| 	  you can start any kernel with it, not just Linux.
 | |
| 
 | |
| 	  The name comes from the similarity to the exec system call.
 | |
| 
 | |
| 	  It is an ongoing process to be certain the hardware in a machine
 | |
| 	  is properly shutdown, so do not be surprised if this code does not
 | |
| 	  initially work for you.  It may help to enable device hotplugging
 | |
| 	  support.  As of this writing the exact hardware interface is
 | |
| 	  strongly in flux, so no good recommendation can be made.
 | |
| 
 | |
| config CRASH_DUMP
 | |
| 	bool "kernel crash dumps (EXPERIMENTAL)"
 | |
| 	depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP
 | |
| 	help
 | |
| 	  Generate crash dump after being started by kexec.
 | |
| 	  This should be normally only set in special crash dump kernels
 | |
| 	  which are loaded in the main kernel with kexec-tools into
 | |
| 	  a specially reserved region and then later executed after
 | |
| 	  a crash by kdump/kexec. The crash dump kernel must be compiled
 | |
| 	  to a memory address not used by the main kernel using
 | |
| 	  PHYSICAL_START.
 | |
| 
 | |
| 	  For more details see Documentation/kdump/kdump.txt
 | |
| 
 | |
| config KEXEC_JUMP
 | |
| 	bool "kexec jump (EXPERIMENTAL)"
 | |
| 	depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
 | |
| 	help
 | |
| 	  Jump between original kernel and kexeced kernel and invoke
 | |
| 	  code via KEXEC
 | |
| 
 | |
| config PHYSICAL_START
 | |
| 	hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
 | |
| 	default MEMORY_START
 | |
| 	---help---
 | |
| 	  This gives the physical address where the kernel is loaded
 | |
| 	  and is ordinarily the same as MEMORY_START.
 | |
| 
 | |
| 	  Different values are primarily used in the case of kexec on panic
 | |
| 	  where the fail safe kernel needs to run at a different address
 | |
| 	  than the panic-ed kernel.
 | |
| 
 | |
| config SECCOMP
 | |
| 	bool "Enable seccomp to safely compute untrusted bytecode"
 | |
| 	depends on PROC_FS
 | |
| 	help
 | |
| 	  This kernel feature is useful for number crunching applications
 | |
| 	  that may need to compute untrusted bytecode during their
 | |
| 	  execution. By using pipes or other transports made available to
 | |
| 	  the process as file descriptors supporting the read/write
 | |
| 	  syscalls, it's possible to isolate those applications in
 | |
| 	  their own address space using seccomp. Once seccomp is
 | |
| 	  enabled via prctl, it cannot be disabled and the task is only
 | |
| 	  allowed to execute a few safe syscalls defined by each seccomp
 | |
| 	  mode.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config SMP
 | |
| 	bool "Symmetric multi-processing support"
 | |
| 	depends on SYS_SUPPORTS_SMP
 | |
| 	select USE_GENERIC_SMP_HELPERS
 | |
| 	---help---
 | |
| 	  This enables support for systems with more than one CPU. If you have
 | |
| 	  a system with only one CPU, like most personal computers, say N. If
 | |
| 	  you have a system with more than one CPU, say Y.
 | |
| 
 | |
| 	  If you say N here, the kernel will run on single and multiprocessor
 | |
| 	  machines, but will use only one CPU of a multiprocessor machine. If
 | |
| 	  you say Y here, the kernel will run on many, but not all,
 | |
| 	  singleprocessor machines. On a singleprocessor machine, the kernel
 | |
| 	  will run faster if you say N here.
 | |
| 
 | |
| 	  People using multiprocessor machines who say Y here should also say
 | |
| 	  Y to "Enhanced Real Time Clock Support", below.
 | |
| 
 | |
| 	  See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
 | |
| 	  available at <http://www.tldp.org/docs.html#howto>.
 | |
| 
 | |
| 	  If you don't know what to do here, say N.
 | |
| 
 | |
| config NR_CPUS
 | |
| 	int "Maximum number of CPUs (2-32)"
 | |
| 	range 2 32
 | |
| 	depends on SMP
 | |
| 	default "4" if CPU_SUBTYPE_SHX3
 | |
| 	default "2"
 | |
| 	help
 | |
| 	  This allows you to specify the maximum number of CPUs which this
 | |
| 	  kernel will support.  The maximum supported value is 32 and the
 | |
| 	  minimum value which makes sense is 2.
 | |
| 
 | |
| 	  This is purely to save memory - each supported CPU adds
 | |
| 	  approximately eight kilobytes to the kernel image.
 | |
| 
 | |
| config HOTPLUG_CPU
 | |
| 	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
 | |
| 	depends on SMP && HOTPLUG && EXPERIMENTAL
 | |
| 	help
 | |
| 	  Say Y here to experiment with turning CPUs off and on.  CPUs
 | |
| 	  can be controlled through /sys/devices/system/cpu.
 | |
| 
 | |
| source "kernel/Kconfig.preempt"
 | |
| 
 | |
| config GUSA
 | |
| 	def_bool y
 | |
| 	depends on !SMP && SUPERH32
 | |
| 	help
 | |
| 	  This enables support for gUSA (general UserSpace Atomicity).
 | |
| 	  This is the default implementation for both UP and non-ll/sc
 | |
| 	  CPUs, and is used by the libc, amongst others.
 | |
| 
 | |
| 	  For additional information, design information can be found 
 | |
| 	  in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
 | |
| 
 | |
| 	  This should only be disabled for special cases where alternate
 | |
| 	  atomicity implementations exist.
 | |
| 
 | |
| config GUSA_RB
 | |
| 	bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
 | |
| 	depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
 | |
| 	help
 | |
| 	  Enabling this option will allow the kernel to implement some
 | |
| 	  atomic operations using a software implementation of load-locked/
 | |
| 	  store-conditional (LLSC). On machines which do not have hardware
 | |
| 	  LLSC, this should be more efficient than the other alternative of
 | |
| 	  disabling interrupts around the atomic sequence.
 | |
| 
 | |
| config HW_PERF_EVENTS
 | |
| 	bool "Enable hardware performance counter support for perf events"
 | |
| 	depends on PERF_EVENTS && CPU_HAS_PMU
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable hardware performance counter support for perf events. If
 | |
| 	  disabled, perf events will use software events only.
 | |
| 
 | |
| source "drivers/sh/Kconfig"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Boot options"
 | |
| 
 | |
| config ZERO_PAGE_OFFSET
 | |
| 	hex
 | |
| 	default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
 | |
| 				SH_7751_SOLUTION_ENGINE
 | |
| 	default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
 | |
| 	default "0x00002000" if PAGE_SIZE_8KB
 | |
| 	default "0x00001000"
 | |
| 	help
 | |
| 	  This sets the default offset of zero page.
 | |
| 
 | |
| config BOOT_LINK_OFFSET
 | |
| 	hex
 | |
| 	default "0x00210000" if SH_SHMIN
 | |
| 	default "0x00400000" if SH_CAYMAN
 | |
| 	default "0x00810000" if SH_7780_SOLUTION_ENGINE
 | |
| 	default "0x009e0000" if SH_TITAN
 | |
| 	default "0x01800000" if SH_SDK7780
 | |
| 	default "0x02000000" if SH_EDOSK7760
 | |
| 	default "0x00800000"
 | |
| 	help
 | |
| 	  This option allows you to set the link address offset of the zImage.
 | |
| 	  This can be useful if you are on a board which has a small amount of
 | |
| 	  memory.
 | |
| 
 | |
| config ENTRY_OFFSET
 | |
| 	hex
 | |
| 	default "0x00001000" if PAGE_SIZE_4KB
 | |
| 	default "0x00002000" if PAGE_SIZE_8KB
 | |
| 	default "0x00004000" if PAGE_SIZE_16KB
 | |
| 	default "0x00010000" if PAGE_SIZE_64KB
 | |
| 	default "0x00000000"
 | |
| 
 | |
| config ROMIMAGE_MMCIF
 | |
| 	bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
 | |
| 	depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL
 | |
| 	help
 | |
| 	  Say Y here to include experimental MMCIF loading code in
 | |
| 	  romImage. With this enabled it is possible to write the romImage
 | |
| 	  kernel image to an MMC card and boot the kernel straight from
 | |
| 	  the reset vector. At reset the processor Mask ROM will load the
 | |
| 	  first part of the romImage which in turn loads the rest the kernel
 | |
| 	  image to RAM using the MMCIF hardware block.
 | |
| 
 | |
| choice
 | |
| 	prompt "Kernel command line"
 | |
| 	optional
 | |
| 	default CMDLINE_OVERWRITE
 | |
| 	help
 | |
| 	  Setting this option allows the kernel command line arguments
 | |
| 	  to be set.
 | |
| 
 | |
| config CMDLINE_OVERWRITE
 | |
| 	bool "Overwrite bootloader kernel arguments"
 | |
| 	help
 | |
| 	  Given string will overwrite any arguments passed in by
 | |
| 	  a bootloader.
 | |
| 
 | |
| config CMDLINE_EXTEND
 | |
| 	bool "Extend bootloader kernel arguments"
 | |
| 	help
 | |
| 	  Given string will be concatenated with arguments passed in
 | |
| 	  by a bootloader.
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| config CMDLINE
 | |
| 	string "Kernel command line arguments string"
 | |
| 	depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
 | |
| 	default "console=ttySC1,115200"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Bus options"
 | |
| 
 | |
| config SUPERHYWAY
 | |
| 	tristate "SuperHyway Bus support"
 | |
| 	depends on CPU_SUBTYPE_SH4_202
 | |
| 
 | |
| config MAPLE
 | |
| 	bool "Maple Bus support"
 | |
| 	depends on SH_DREAMCAST
 | |
| 	help
 | |
| 	 The Maple Bus is SEGA's serial communication bus for peripherals
 | |
| 	 on the Dreamcast. Without this bus support you won't be able to
 | |
| 	 get your Dreamcast keyboard etc to work, so most users
 | |
| 	 probably want to say 'Y' here, unless you are only using the
 | |
| 	 Dreamcast with a serial line terminal or a remote network
 | |
| 	 connection.
 | |
| 
 | |
| config PCI
 | |
| 	bool "PCI support"
 | |
| 	depends on SYS_SUPPORTS_PCI
 | |
| 	select PCI_DOMAINS
 | |
| 	select GENERIC_PCI_IOMAP
 | |
| 	select NO_GENERIC_PCI_IOPORT_MAP
 | |
| 	help
 | |
| 	  Find out whether you have a PCI motherboard. PCI is the name of a
 | |
| 	  bus system, i.e. the way the CPU talks to the other stuff inside
 | |
| 	  your box. If you have PCI, say Y, otherwise N.
 | |
| 
 | |
| config PCI_DOMAINS
 | |
| 	bool
 | |
| 
 | |
| source "drivers/pci/pcie/Kconfig"
 | |
| 
 | |
| source "drivers/pci/Kconfig"
 | |
| 
 | |
| source "drivers/pcmcia/Kconfig"
 | |
| 
 | |
| source "drivers/pci/hotplug/Kconfig"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Executable file formats"
 | |
| 
 | |
| source "fs/Kconfig.binfmt"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Power management options (EXPERIMENTAL)"
 | |
| depends on EXPERIMENTAL
 | |
| 
 | |
| source "kernel/power/Kconfig"
 | |
| 
 | |
| source "drivers/cpuidle/Kconfig"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| source "net/Kconfig"
 | |
| 
 | |
| source "drivers/Kconfig"
 | |
| 
 | |
| source "fs/Kconfig"
 | |
| 
 | |
| source "arch/sh/Kconfig.debug"
 | |
| 
 | |
| source "security/Kconfig"
 | |
| 
 | |
| source "crypto/Kconfig"
 | |
| 
 | |
| source "lib/Kconfig"
 |