xref: /openbmc/linux/arch/sh/Kconfig.cpu (revision 6b2aac42)
14690bdc7SPaul Mundtmenu "Processor features"
24690bdc7SPaul Mundt
34690bdc7SPaul Mundtchoice
46b2aac42SMasanari Iida	prompt "Endianness selection"
54690bdc7SPaul Mundt	default CPU_LITTLE_ENDIAN
64690bdc7SPaul Mundt	help
74690bdc7SPaul Mundt	  Some SuperH machines can be configured for either little or big
84690bdc7SPaul Mundt	  endian byte order. These modes require different kernels.
94690bdc7SPaul Mundt
104690bdc7SPaul Mundtconfig CPU_LITTLE_ENDIAN
114690bdc7SPaul Mundt	bool "Little Endian"
124690bdc7SPaul Mundt
134690bdc7SPaul Mundtconfig CPU_BIG_ENDIAN
144690bdc7SPaul Mundt	bool "Big Endian"
1564e34ca9SPaul Mundt	depends on !CPU_SH5
164690bdc7SPaul Mundt
174690bdc7SPaul Mundtendchoice
184690bdc7SPaul Mundt
194690bdc7SPaul Mundtconfig SH_FPU
20d7ef4fb3SHarvey Harrison	def_bool y
21d7ef4fb3SHarvey Harrison	prompt "FPU support"
224690bdc7SPaul Mundt	depends on CPU_HAS_FPU
234690bdc7SPaul Mundt	help
244690bdc7SPaul Mundt	  Selecting this option will enable support for SH processors that
254690bdc7SPaul Mundt	  have FPU units (ie, SH77xx).
264690bdc7SPaul Mundt
274690bdc7SPaul Mundt	  This option must be set in order to enable the FPU.
284690bdc7SPaul Mundt
29ea0e1a9aSPaul Mundtconfig SH64_FPU_DENORM_FLUSH
30ea0e1a9aSPaul Mundt	bool "Flush floating point denorms to zero"
31ea0e1a9aSPaul Mundt	depends on SH_FPU && SUPERH64
32ea0e1a9aSPaul Mundt
334690bdc7SPaul Mundtconfig SH_FPU_EMU
34d7ef4fb3SHarvey Harrison	def_bool n
35d7ef4fb3SHarvey Harrison	prompt "FPU emulation support"
364690bdc7SPaul Mundt	depends on !SH_FPU && EXPERIMENTAL
374690bdc7SPaul Mundt	help
384690bdc7SPaul Mundt	  Selecting this option will enable support for software FPU emulation.
394690bdc7SPaul Mundt	  Most SH-3 users will want to say Y here, whereas most SH-4 users will
404690bdc7SPaul Mundt	  want to say N.
414690bdc7SPaul Mundt
424690bdc7SPaul Mundtconfig SH_DSP
43d7ef4fb3SHarvey Harrison	def_bool y
44d7ef4fb3SHarvey Harrison	prompt "DSP support"
454690bdc7SPaul Mundt	depends on CPU_HAS_DSP
464690bdc7SPaul Mundt	help
474690bdc7SPaul Mundt	  Selecting this option will enable support for SH processors that
484690bdc7SPaul Mundt	  have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
494690bdc7SPaul Mundt
504690bdc7SPaul Mundt	  This option must be set in order to enable the DSP.
514690bdc7SPaul Mundt
524690bdc7SPaul Mundtconfig SH_ADC
53d7ef4fb3SHarvey Harrison	def_bool y
54d7ef4fb3SHarvey Harrison	prompt "ADC support"
554690bdc7SPaul Mundt	depends on CPU_SH3
564690bdc7SPaul Mundt	help
574690bdc7SPaul Mundt	  Selecting this option will allow the Linux kernel to use SH3 on-chip
584690bdc7SPaul Mundt	  ADC module.
594690bdc7SPaul Mundt
604690bdc7SPaul Mundt	  If unsure, say N.
614690bdc7SPaul Mundt
624690bdc7SPaul Mundtconfig SH_STORE_QUEUES
634690bdc7SPaul Mundt	bool "Support for Store Queues"
644690bdc7SPaul Mundt	depends on CPU_SH4
654690bdc7SPaul Mundt	help
664690bdc7SPaul Mundt	  Selecting this option will enable an in-kernel API for manipulating
674690bdc7SPaul Mundt	  the store queues integrated in the SH-4 processors.
684690bdc7SPaul Mundt
694690bdc7SPaul Mundtconfig SPECULATIVE_EXECUTION
704690bdc7SPaul Mundt	bool "Speculative subroutine return"
718c563a30SMatt Fleming	depends on EXPERIMENTAL
728c563a30SMatt Fleming	depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || CPU_SUBTYPE_SH7786
734690bdc7SPaul Mundt	help
744690bdc7SPaul Mundt	  This enables support for a speculative instruction fetch for
754690bdc7SPaul Mundt	  subroutine return. There are various pitfalls associated with
764690bdc7SPaul Mundt	  this, as outlined in the SH7780 hardware manual.
774690bdc7SPaul Mundt
784690bdc7SPaul Mundt	  If unsure, say N.
794690bdc7SPaul Mundt
80ea0e1a9aSPaul Mundtconfig SH64_ID2815_WORKAROUND
81ea0e1a9aSPaul Mundt	bool "Include workaround for SH5-101 cut2 silicon defect ID2815"
82ea0e1a9aSPaul Mundt	depends on CPU_SUBTYPE_SH5_101
83ea0e1a9aSPaul Mundt
844690bdc7SPaul Mundtconfig CPU_HAS_INTEVT
854690bdc7SPaul Mundt	bool
864690bdc7SPaul Mundt
874690bdc7SPaul Mundtconfig CPU_HAS_IPR_IRQ
884690bdc7SPaul Mundt	bool
894690bdc7SPaul Mundt
904690bdc7SPaul Mundtconfig CPU_HAS_SR_RB
914690bdc7SPaul Mundt	bool
924690bdc7SPaul Mundt	help
934690bdc7SPaul Mundt	  This will enable the use of SR.RB register bank usage. Processors
944690bdc7SPaul Mundt	  that are lacking this bit must have another method in place for
954690bdc7SPaul Mundt	  accomplishing what is taken care of by the banked registers.
964690bdc7SPaul Mundt
974690bdc7SPaul Mundt	  See <file:Documentation/sh/register-banks.txt> for further
984690bdc7SPaul Mundt	  information on SR.RB and register banking in the kernel in general.
994690bdc7SPaul Mundt
1008263a67eSPaul Mundtconfig CPU_HAS_PTEAEX
1018263a67eSPaul Mundt	bool
1028263a67eSPaul Mundt
1034690bdc7SPaul Mundtconfig CPU_HAS_DSP
1044690bdc7SPaul Mundt	bool
1054690bdc7SPaul Mundt
1064690bdc7SPaul Mundtconfig CPU_HAS_FPU
1074690bdc7SPaul Mundt	bool
1084690bdc7SPaul Mundt
1094690bdc7SPaul Mundtendmenu
110