2005-06-24 09:01:10 +04:00
config FRAME_POINTER
2009-03-04 18:21:28 +03:00
def_bool n
2005-06-24 09:01:10 +04:00
2007-02-10 12:43:09 +03:00
config ZONE_DMA
2009-03-04 18:21:28 +03:00
def_bool y
2007-02-10 12:43:09 +03:00
2005-06-24 09:01:10 +04:00
config XTENSA
2009-03-04 18:21:28 +03:00
def_bool y
2008-02-09 12:46:40 +03:00
select HAVE_IDE
2012-08-01 03:41:33 +04:00
select GENERIC_ATOMIC64
2011-02-07 00:10:54 +03:00
select HAVE_GENERIC_HARDIRQS
2011-03-24 20:28:40 +03:00
select GENERIC_IRQ_SHOW
2012-01-10 07:04:32 +04:00
select GENERIC_CPU_DEVICES
2012-09-17 05:44:40 +04:00
select MODULES_USE_ELF_RELA
select GENERIC_PCI_IOMAP
2012-10-25 11:10:50 +04:00
select GENERIC_KERNEL_THREAD
2012-10-25 11:10:51 +04:00
select GENERIC_KERNEL_EXECVE
2012-09-17 05:44:42 +04:00
select ARCH_WANT_OPTIONAL_GPIOLIB
2012-10-27 07:41:40 +04:00
select CLONE_BACKWARDS
2005-06-24 09:01:10 +04:00
help
Xtensa processors are 32-bit RISC machines designed by Tensilica
primarily for embedded systems. These processors are both
configurable and extensible. The Linux port to the Xtensa
architecture supports all processor configurations and extensions,
with reasonable minimum requirements. The Xtensa Linux project has
a home page at <http://xtensa.sourceforge.net/>.
config RWSEM_XCHGADD_ALGORITHM
2009-03-04 18:21:28 +03:00
def_bool y
2005-06-24 09:01:10 +04:00
[PATCH] bitops: xtensa: use generic bitops
- remove {,test_and_}{set,clear,change}_bit()
- remove __{,test_and_}{set,clear,change}_bit() and test_bit()
- remove generic_fls64()
- remove find_{next,first}{,_zero}_bit()
- remove ext2_{set,clear,test,find_first_zero,find_next_zero}_bit()
- remove generic_hweight{32,16,8}()
- remove sched_find_first_bit()
- remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()
Signed-off-by: Akinobu Mita <mita@miraclelinux.com>
Cc: Chris Zankel <chris@zankel.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-26 13:39:43 +04:00
config GENERIC_HWEIGHT
2009-03-04 18:21:28 +03:00
def_bool y
[PATCH] bitops: xtensa: use generic bitops
- remove {,test_and_}{set,clear,change}_bit()
- remove __{,test_and_}{set,clear,change}_bit() and test_bit()
- remove generic_fls64()
- remove find_{next,first}{,_zero}_bit()
- remove ext2_{set,clear,test,find_first_zero,find_next_zero}_bit()
- remove generic_hweight{32,16,8}()
- remove sched_find_first_bit()
- remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()
Signed-off-by: Akinobu Mita <mita@miraclelinux.com>
Cc: Chris Zankel <chris@zankel.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-26 13:39:43 +04:00
2009-03-04 18:21:32 +03:00
config GENERIC_GPIO
def_bool y
2006-12-08 13:37:49 +03:00
config ARCH_HAS_ILOG2_U32
2009-03-04 18:21:28 +03:00
def_bool n
2006-12-08 13:37:49 +03:00
config ARCH_HAS_ILOG2_U64
2009-03-04 18:21:28 +03:00
def_bool n
2006-12-08 13:37:49 +03:00
2007-02-11 18:41:31 +03:00
config NO_IOPORT
2012-09-17 05:44:41 +04:00
def_bool n
2007-02-11 18:41:31 +03:00
avoid overflows in kernel/time.c
When the conversion factor between jiffies and milli- or microseconds is
not a single multiply or divide, as for the case of HZ == 300, we currently
do a multiply followed by a divide. The intervening result, however, is
subject to overflows, especially since the fraction is not simplified (for
HZ == 300, we multiply by 300 and divide by 1000).
This is exposed to the user when passing a large timeout to poll(), for
example.
This patch replaces the multiply-divide with a reciprocal multiplication on
32-bit platforms. When the input is an unsigned long, there is no portable
way to do this on 64-bit platforms there is no portable way to do this
since it requires a 128-bit intermediate result (which gcc does support on
64-bit platforms but may generate libgcc calls, e.g. on 64-bit s390), but
since the output is a 32-bit integer in the cases affected, just simplify
the multiply-divide (*3/10 instead of *300/1000).
The reciprocal multiply used can have off-by-one errors in the upper half
of the valid output range. This could be avoided at the expense of having
to deal with a potential 65-bit intermediate result. Since the intent is
to avoid overflow problems and most of the other time conversions are only
semiexact, the off-by-one errors were considered an acceptable tradeoff.
At Ralf Baechle's suggestion, this version uses a Perl script to compute
the necessary constants. We already have dependencies on Perl for kernel
compiles. This does, however, require the Perl module Math::BigInt, which
is included in the standard Perl distribution starting with version 5.8.0.
In order to support older versions of Perl, include a table of canned
constants in the script itself, and structure the script so that
Math::BigInt isn't required if pulling values from said table.
Running the script requires that the HZ value is available from the
Makefile. Thus, this patch also adds the Kconfig variable CONFIG_HZ to the
architectures which didn't already have it (alpha, cris, frv, h8300, m32r,
m68k, m68knommu, sparc, v850, and xtensa.) It does *not* touch the sh or
sh64 architectures, since Paul Mundt has dealt with those separately in the
sh tree.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Cc: Ralf Baechle <ralf@linux-mips.org>,
Cc: Sam Ravnborg <sam@ravnborg.org>,
Cc: Paul Mundt <lethal@linux-sh.org>,
Cc: Richard Henderson <rth@twiddle.net>,
Cc: Michael Starvik <starvik@axis.com>,
Cc: David Howells <dhowells@redhat.com>,
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>,
Cc: Hirokazu Takata <takata@linux-m32r.org>,
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
Cc: Roman Zippel <zippel@linux-m68k.org>,
Cc: William L. Irwin <sparclinux@vger.kernel.org>,
Cc: Chris Zankel <chris@zankel.net>,
Cc: H. Peter Anvin <hpa@zytor.com>,
Cc: Jan Engelhardt <jengelh@computergmbh.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-08 15:21:26 +03:00
config HZ
int
default 100
2005-06-24 09:01:10 +04:00
source "init/Kconfig"
2008-10-19 07:27:21 +04:00
source "kernel/Kconfig.freezer"
2005-06-24 09:01:10 +04:00
2009-03-04 18:21:28 +03:00
config MMU
def_bool n
2009-03-04 18:21:31 +03:00
config VARIANT_IRQ_SWITCH
def_bool n
2005-06-24 09:01:10 +04:00
menu "Processor type and features"
choice
prompt "Xtensa Processor Configuration"
2006-12-10 13:18:48 +03:00
default XTENSA_VARIANT_FSF
2005-06-24 09:01:10 +04:00
2006-12-10 13:18:48 +03:00
config XTENSA_VARIANT_FSF
2008-10-21 20:11:43 +04:00
bool "fsf - default (not generic) configuration"
2009-03-04 18:21:28 +03:00
select MMU
2008-10-21 20:11:43 +04:00
config XTENSA_VARIANT_DC232B
bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
2009-03-04 18:21:28 +03:00
select MMU
2008-10-21 20:11:43 +04:00
help
2009-03-04 18:21:28 +03:00
This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE).
2009-03-04 18:21:32 +03:00
config XTENSA_VARIANT_S6000
bool "s6000 - Stretch software configurable processor"
select VARIANT_IRQ_SWITCH
select ARCH_REQUIRE_GPIOLIB
2009-05-11 17:43:36 +04:00
select XTENSA_CALIBRATE_CCOUNT
2005-06-24 09:01:10 +04:00
endchoice
config XTENSA_UNALIGNED_USER
bool "Unaligned memory access in use space"
2009-03-04 18:21:28 +03:00
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.
2005-06-24 09:01:10 +04:00
2009-03-04 18:21:28 +03:00
Say Y here to enable unaligned memory access in user space.
2005-06-24 09:01:10 +04:00
2011-07-05 19:45:34 +04:00
source "kernel/Kconfig.preempt"
2005-06-24 09:01:10 +04:00
config MATH_EMULATION
bool "Math emulation"
help
Can we use information of configuration file?
endmenu
2009-03-04 18:21:28 +03:00
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"
2009-04-16 11:25:39 +04:00
endmenu
2005-06-24 09:01:10 +04:00
menu "Platform options"
choice
prompt "Xtensa System Type"
default XTENSA_PLATFORM_ISS
config XTENSA_PLATFORM_ISS
bool "ISS"
2009-03-04 18:21:28 +03:00
select XTENSA_CALIBRATE_CCOUNT
select SERIAL_CONSOLE
select XTENSA_ISS_NETWORK
2005-06-24 09:01:10 +04:00
help
ISS is an acronym for Tensilica's Instruction Set Simulator.
config XTENSA_PLATFORM_XT2000
bool "XT2000"
help
XT2000 is the name of Tensilica's feature-rich emulation platform.
This hardware is capable of running a full Linux distribution.
2009-03-04 18:21:33 +03:00
config XTENSA_PLATFORM_S6105
bool "S6105"
select SERIAL_CONSOLE
2012-09-17 05:44:41 +04:00
select NO_IOPORT
2009-03-04 18:21:33 +03:00
2005-06-24 09:01:10 +04:00
endchoice
config XTENSA_CPU_CLOCK
int "CPU clock rate [MHz]"
depends on !XTENSA_CALIBRATE_CCOUNT
2009-03-04 18:21:28 +03:00
default 16
2005-06-24 09:01:10 +04:00
config GENERIC_CALIBRATE_DELAY
bool "Auto calibration of the BogoMIPS value"
2009-03-04 18:21:28 +03:00
help
2005-06-30 13:58:58 +04:00
The BogoMIPS value can easily be derived from the CPU frequency.
2005-06-24 09:01:10 +04:00
config CMDLINE_BOOL
bool "Default bootloader kernel arguments"
config CMDLINE
string "Initial kernel command string"
depends on CMDLINE_BOOL
default "console=ttyS0,38400 root=/dev/ram"
help
On some architectures (EBSA110 and CATS), 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. As a minimum, you should specify the
memory size and the root device (e.g., mem=64M root=/dev/nfs).
2005-06-30 13:58:58 +04:00
source "mm/Kconfig"
2005-06-24 09:01:10 +04:00
source "drivers/pcmcia/Kconfig"
source "drivers/pci/hotplug/Kconfig"
endmenu
2006-10-04 00:36:44 +04:00
menu "Executable file formats"
2005-06-24 09:01:10 +04:00
# only elf supported
config KCORE_ELF
2009-03-04 18:21:28 +03:00
def_bool y
2005-06-24 09:01:10 +04:00
depends on PROC_FS
help
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image in ELF format. This
can be used in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel.
source "fs/Kconfig.binfmt"
endmenu
2005-07-12 08:03:49 +04:00
source "net/Kconfig"
2005-06-24 09:01:10 +04:00
source "drivers/Kconfig"
source "fs/Kconfig"
source "arch/xtensa/Kconfig.debug"
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"