Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 35f9cd08 authored by Johannes Weiner's avatar Johannes Weiner Committed by Chris Zankel
Browse files

xtensa: beat Kconfig into shape



Instead of making support code depend on variants or platforms, the
latter should select what they need explicitely.

Otherwise this starts looking weird when support code depends on
!XTENSA_PLATFORM_FOO && !XTENSA_PLATFORM_BAR etc.

This also includes some minor fixlets like converting bool and default
to def_bool and fixing indentation and whitespace errors.

Signed-off-by: default avatarJohannes Weiner <jw@emlix.com>
Signed-off-by: default avatarChris Zankel <chris@zankel.net>
parent 4f682fbb
Loading
Loading
Loading
Loading
+78 −88
Original line number Diff line number Diff line
@@ -4,16 +4,13 @@
mainmenu "Linux/Xtensa Kernel Configuration"

config FRAME_POINTER
	bool
	default n
	def_bool n

config ZONE_DMA
	bool
	default y
	def_bool y

config XTENSA
	bool
	default y
	def_bool y
	select HAVE_IDE
	help
	  Xtensa processors are 32-bit RISC machines designed by Tensilica
@@ -24,28 +21,22 @@ config XTENSA
	  a home page at <http://xtensa.sourceforge.net/>.

config RWSEM_XCHGADD_ALGORITHM
	bool
	default y
	def_bool y

config GENERIC_FIND_NEXT_BIT
	bool
	default y
	def_bool y

config GENERIC_HWEIGHT
	bool
	default y
	def_bool y

config GENERIC_HARDIRQS
	bool
	default y
	def_bool y

config ARCH_HAS_ILOG2_U32
	bool
	default n
	def_bool n

config ARCH_HAS_ILOG2_U64
	bool
	default n
	def_bool n

config NO_IOPORT
	def_bool y
@@ -57,6 +48,9 @@ config HZ
source "init/Kconfig"
source "kernel/Kconfig.freezer"

config MMU
	def_bool n

menu "Processor type and features"

choice
@@ -65,20 +59,18 @@ choice

config XTENSA_VARIANT_FSF
	bool "fsf - default (not generic) configuration"
	select MMU

config XTENSA_VARIANT_DC232B
	bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
	select MMU
	help
	  This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE).
endchoice

config MMU
	bool
	default y

config XTENSA_UNALIGNED_USER
	bool "Unaligned memory access in use space"
	---help---
	help
	  The Xtensa architecture currently does not handle unaligned
	  memory accesses in hardware but through an exception handler.
	  Per default, unaligned memory accesses are disabled in user space.
@@ -87,7 +79,7 @@ config XTENSA_UNALIGNED_USER

config PREEMPT
	bool "Preemptible Kernel"
	---help---
	help
          This option reduces the latency of the kernel when reacting to
          real-time or interactive events by allowing a low priority process to
          be preempted even if it is in kernel mode executing a system call.
@@ -105,6 +97,32 @@ config MATH_EMULATION

endmenu

config XTENSA_CALIBRATE_CCOUNT
	def_bool n
	help
	  On some platforms (XT2000, for example), the CPU clock rate can
	  vary.  The frequency can be determined, however, by measuring
	  against a well known, fixed frequency, such as an UART oscillator.

config SERIAL_CONSOLE
	def_bool n

config XTENSA_ISS_NETWORK
	def_bool n

menu "Bus options"

config PCI
	bool "PCI support"
	default y
	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. Other bus systems are ISA, EISA, MicroChannel (MCA) or
	  VESA. If you have PCI, say Y, otherwise N.

source "drivers/pci/Kconfig"

menu "Platform options"

choice
@@ -113,11 +131,16 @@ choice

config XTENSA_PLATFORM_ISS
	bool "ISS"
	select XTENSA_CALIBRATE_CCOUNT
	select SERIAL_CONSOLE
	select XTENSA_ISS_NETWORK
	help
	  ISS is an acronym for Tensilica's Instruction Set Simulator.

config XTENSA_PLATFORM_XT2000
	bool "XT2000"
	select XTENSA_CALIBRATE_CCOUNT
	select PCI
	help
	  XT2000 is the name of Tensilica's feature-rich emulation platform.
	  This hardware is capable of running a full Linux distribution.
@@ -125,21 +148,14 @@ config XTENSA_PLATFORM_XT2000
endchoice


config XTENSA_CALIBRATE_CCOUNT
	bool "Auto calibration of the CPU clock rate"
	---help---
	  On some platforms (XT2000, for example), the CPU clock rate can
	  vary.  The frequency can be determined, however, by measuring
	  against a well known, fixed frequency, such as an UART oscillator.

config XTENSA_CPU_CLOCK
	int "CPU clock rate [MHz]"
	depends on !XTENSA_CALIBRATE_CCOUNT
	default "16"
	default 16

config GENERIC_CALIBRATE_DELAY
	bool "Auto calibration of the BogoMIPS value"
	---help---
	help
	  The BogoMIPS value can easily be derived from the CPU frequency.

config CMDLINE_BOOL
@@ -156,38 +172,13 @@ config CMDLINE
	  time by entering them here. As a minimum, you should specify the
	  memory size and the root device (e.g., mem=64M root=/dev/nfs).

config SERIAL_CONSOLE
	bool
	depends on XTENSA_PLATFORM_ISS
	default y

config XTENSA_ISS_NETWORK
	bool
	depends on XTENSA_PLATFORM_ISS
	default y

source "mm/Kconfig"

endmenu

menu "Bus options"

config PCI
	bool "PCI support" if !XTENSA_PLATFORM_ISS
	depends on !XTENSA_PLATFORM_ISS
	default y
	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. Other bus systems are ISA, EISA, MicroChannel (MCA) or
	  VESA. If you have PCI, say Y, otherwise N.

source "drivers/pci/Kconfig"

config HOTPLUG

	bool "Support for hot-pluggable devices"
	---help---
	help
	  Say Y here if you want to plug devices into your computer while
	  the system is running, and be able to use them quickly.  In many
	  cases, the devices can likewise be unplugged at any time too.
@@ -213,9 +204,8 @@ menu "Executable file formats"

# only elf supported
config KCORE_ELF
        bool
	def_bool y
        depends on PROC_FS
        default y
        help
          If you enabled support for /proc file system then the file
          /proc/kcore will contain the kernel core image in ELF format. This