mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-17 16:14:25 +08:00
da844a8177
Device trees allow specification of hardware topology and device parameters at runtime instead of hard-coding them in platform setup code. This allows running single binary kernel on a range of compatible boards. New boot parameters tag BP_TAG_FDT is allocated and a pointer to flat device tree is passed in it. Note that current interrupt mapping scheme uses single cell for interrupt identification. That means that IRQ numbers used in DTS must be CPU internal IRQ numbers, not external. It is possible to extend interrupt identification to two cells, and use second cell to tell external IRQ numbers form internal. That would allow to use single DTS on multiple boards with different mapping of external IRQ numbers. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Chris Zankel <chris@zankel.net>
236 lines
5.3 KiB
Plaintext
236 lines
5.3 KiB
Plaintext
config FRAME_POINTER
|
|
def_bool n
|
|
|
|
config ZONE_DMA
|
|
def_bool y
|
|
|
|
config XTENSA
|
|
def_bool y
|
|
select HAVE_IDE
|
|
select GENERIC_ATOMIC64
|
|
select HAVE_GENERIC_HARDIRQS
|
|
select GENERIC_IRQ_SHOW
|
|
select GENERIC_CPU_DEVICES
|
|
select MODULES_USE_ELF_RELA
|
|
select GENERIC_PCI_IOMAP
|
|
select GENERIC_KERNEL_THREAD
|
|
select GENERIC_KERNEL_EXECVE
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select CLONE_BACKWARDS
|
|
select IRQ_DOMAIN
|
|
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
|
|
def_bool y
|
|
|
|
config GENERIC_HWEIGHT
|
|
def_bool y
|
|
|
|
config GENERIC_GPIO
|
|
def_bool y
|
|
|
|
config ARCH_HAS_ILOG2_U32
|
|
def_bool n
|
|
|
|
config ARCH_HAS_ILOG2_U64
|
|
def_bool n
|
|
|
|
config NO_IOPORT
|
|
def_bool n
|
|
|
|
config HZ
|
|
int
|
|
default 100
|
|
|
|
source "init/Kconfig"
|
|
source "kernel/Kconfig.freezer"
|
|
|
|
config MMU
|
|
def_bool n
|
|
|
|
config VARIANT_IRQ_SWITCH
|
|
def_bool n
|
|
|
|
menu "Processor type and features"
|
|
|
|
choice
|
|
prompt "Xtensa Processor Configuration"
|
|
default XTENSA_VARIANT_FSF
|
|
|
|
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).
|
|
|
|
config XTENSA_VARIANT_S6000
|
|
bool "s6000 - Stretch software configurable processor"
|
|
select VARIANT_IRQ_SWITCH
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select XTENSA_CALIBRATE_CCOUNT
|
|
endchoice
|
|
|
|
config XTENSA_UNALIGNED_USER
|
|
bool "Unaligned memory access in use space"
|
|
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.
|
|
|
|
Say Y here to enable unaligned memory access in user space.
|
|
|
|
source "kernel/Kconfig.preempt"
|
|
|
|
config MATH_EMULATION
|
|
bool "Math emulation"
|
|
help
|
|
Can we use information of configuration file?
|
|
|
|
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"
|
|
|
|
endmenu
|
|
|
|
menu "Platform options"
|
|
|
|
choice
|
|
prompt "Xtensa System Type"
|
|
default XTENSA_PLATFORM_ISS
|
|
|
|
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"
|
|
help
|
|
XT2000 is the name of Tensilica's feature-rich emulation platform.
|
|
This hardware is capable of running a full Linux distribution.
|
|
|
|
config XTENSA_PLATFORM_S6105
|
|
bool "S6105"
|
|
select SERIAL_CONSOLE
|
|
select NO_IOPORT
|
|
|
|
endchoice
|
|
|
|
|
|
config XTENSA_CPU_CLOCK
|
|
int "CPU clock rate [MHz]"
|
|
depends on !XTENSA_CALIBRATE_CCOUNT
|
|
default 16
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
bool "Auto calibration of the BogoMIPS value"
|
|
help
|
|
The BogoMIPS value can easily be derived from the CPU frequency.
|
|
|
|
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).
|
|
|
|
config USE_OF
|
|
bool "Flattened Device Tree support"
|
|
select OF
|
|
select OF_EARLY_FLATTREE
|
|
help
|
|
Include support for flattened device tree machine descriptions.
|
|
|
|
config BUILTIN_DTB
|
|
string "DTB to build into the kernel image"
|
|
depends on OF
|
|
|
|
source "mm/Kconfig"
|
|
|
|
source "drivers/pcmcia/Kconfig"
|
|
|
|
source "drivers/pci/hotplug/Kconfig"
|
|
|
|
endmenu
|
|
|
|
menu "Executable file formats"
|
|
|
|
# only elf supported
|
|
config KCORE_ELF
|
|
def_bool y
|
|
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
|
|
|
|
source "net/Kconfig"
|
|
|
|
source "drivers/Kconfig"
|
|
|
|
source "fs/Kconfig"
|
|
|
|
source "arch/xtensa/Kconfig.debug"
|
|
|
|
source "security/Kconfig"
|
|
|
|
source "crypto/Kconfig"
|
|
|
|
source "lib/Kconfig"
|
|
|
|
|