a593773232
SVN-Revision: 19815
403 lines
9 KiB
Text
403 lines
9 KiB
Text
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see Documentation/kbuild/kconfig-language.txt.
|
|
#
|
|
|
|
mainmenu "uClinux/ubicom32 (w/o MMU) Kernel Configuration"
|
|
|
|
config UBICOM32
|
|
bool
|
|
select HAVE_OPROFILE
|
|
default y
|
|
|
|
config RAMKERNEL
|
|
bool
|
|
default y
|
|
|
|
config CPU_BIG_ENDIAN
|
|
bool
|
|
default y
|
|
|
|
config FORCE_MAX_ZONEORDER
|
|
int
|
|
default "14"
|
|
|
|
config HAVE_CLK
|
|
bool
|
|
default y
|
|
|
|
config MMU
|
|
bool
|
|
default n
|
|
|
|
config FPU
|
|
bool
|
|
default n
|
|
|
|
config ZONE_DMA
|
|
bool
|
|
default y
|
|
|
|
config RWSEM_GENERIC_SPINLOCK
|
|
bool
|
|
default y
|
|
|
|
config RWSEM_XCHGADD_ALGORITHM
|
|
bool
|
|
default n
|
|
|
|
config ARCH_HAS_ILOG2_U32
|
|
bool
|
|
default n
|
|
|
|
config ARCH_HAS_ILOG2_U64
|
|
bool
|
|
default n
|
|
|
|
config GENERIC_FIND_NEXT_BIT
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_GPIO
|
|
bool
|
|
default y
|
|
|
|
config GPIOLIB
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_HWEIGHT
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_HARDIRQS
|
|
bool
|
|
default y
|
|
|
|
config STACKTRACE_SUPPORT
|
|
bool
|
|
default y
|
|
|
|
config LOCKDEP_SUPPORT
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_TIME
|
|
bool
|
|
default y
|
|
|
|
config TIME_LOW_RES
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_CLOCKEVENTS
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_CLOCKEVENTS_BROADCAST
|
|
bool
|
|
depends on GENERIC_CLOCKEVENTS
|
|
default y if SMP && !LOCAL_TIMERS
|
|
|
|
config NO_IOPORT
|
|
def_bool y
|
|
|
|
config ARCH_SUPPORTS_AOUT
|
|
def_bool y
|
|
|
|
config IRQ_PER_CPU
|
|
bool
|
|
default y
|
|
|
|
config SCHED_NO_NO_OMIT_FRAME_POINTER
|
|
bool
|
|
default y
|
|
|
|
config UBICOM32_PLIO
|
|
bool
|
|
default n
|
|
|
|
menu "Processor type and features"
|
|
|
|
comment "Processor type will be selected by Board"
|
|
|
|
config UBICOM32_V3
|
|
bool
|
|
help
|
|
Ubicom IP5xxx series processor support.
|
|
|
|
config UBICOM32_V4
|
|
bool
|
|
help
|
|
Ubicom IP7xxx series processor support.
|
|
|
|
comment "Board"
|
|
choice
|
|
prompt "Board type"
|
|
help
|
|
Select your board.
|
|
|
|
config NOBOARD
|
|
bool "No board selected"
|
|
help
|
|
Default. Don't select any board specific config. Will not build unless you change!
|
|
|
|
# Add your boards here
|
|
source "arch/ubicom32/mach-ip5k/Kconfig"
|
|
source "arch/ubicom32/mach-ip7k/Kconfig"
|
|
|
|
endchoice
|
|
|
|
comment "Kernel Options"
|
|
config SMP
|
|
bool "Symmetric multi-processing support"
|
|
select USE_GENERIC_SMP_HELPERS
|
|
default n
|
|
help
|
|
Enables multithreading support. Enabling SMP support increases
|
|
the size of system data structures. SMP support can have either
|
|
positive or negative impact on performance depending on workloads.
|
|
|
|
If you do not know what to do here, say N.
|
|
config OLD_40400010_SYSTEM_CALL
|
|
bool "Provide old system call interface at 0x40400010"
|
|
default y
|
|
help
|
|
Provides the old system call interface, does not affect the
|
|
new system_call interface.
|
|
|
|
config NR_CPUS
|
|
int "Number of configured CPUs"
|
|
range 2 32
|
|
default 2
|
|
depends on SMP
|
|
help
|
|
Upper bound on the number of CPUs. Space is reserved
|
|
at compile time for this many CPUs.
|
|
|
|
config LOCAL_TIMERS
|
|
bool "Use local timer interrupts"
|
|
depends on SMP
|
|
default y
|
|
help
|
|
Enable support for local timers on SMP platforms, rather then the
|
|
legacy IPI broadcast method. Local timers allows the system
|
|
accounting to be spread across the timer interval, preventing a
|
|
"thundering herd" at every timer tick. A physical timer is allocated
|
|
per cpu.
|
|
|
|
config TIMER_EXTRA_ALLOC
|
|
int "Number of additional physical timer events to create"
|
|
depends on GENERIC_CLOCKEVENTS
|
|
default 0
|
|
help
|
|
The Ubicom32 processor has a number of event timers that can be wrapped
|
|
in Linux clock event structures (assuming that the timers are not being
|
|
used for another purpose). Based on the value of LOCAL_TIMERS, either
|
|
2 timers will be used or a timer will be used for every CPU. This value
|
|
allows the programmer to select additional timers over that amount.
|
|
|
|
config IRQSTACKS
|
|
bool "Create separate stacks for interrupt handling"
|
|
default n
|
|
help
|
|
Selecting this causes interrupts to be created on a separate
|
|
stack instead of nesting the interrupts on the kernel stack.
|
|
|
|
config IRQSTACKS_USEOCM
|
|
bool "Use OCM for interrupt stacks"
|
|
default n
|
|
depends on IRQSTACKS
|
|
help
|
|
Selecting this cause the interrupt stacks to be placed in OCM
|
|
reducing cache misses at the expense of using the OCM for servicing
|
|
interrupts.
|
|
|
|
menu "OCM Instruction Heap"
|
|
|
|
config OCM_MODULES_RESERVATION
|
|
int "OCM Instruction heap reservation. 0-192 kB"
|
|
range 0 192
|
|
default "0"
|
|
help
|
|
The minimum amount of OCM memory to reserve for kernel loadable module
|
|
code. If you are not using this memory it cannot be used for anything
|
|
else. Leave it as 0 if you have prebuilt modules that are compiled with
|
|
OCM support.
|
|
|
|
config OCM_MODULES_MAY_CONSUME_REMAINING_CODESPACE
|
|
bool "Give all unused ocm code space to the ocm instruction heap."
|
|
default n
|
|
help
|
|
Allow the OCM instruction heap allocation to consume any remaining
|
|
unused OCM code space. The result of this is that you will not have
|
|
and deterministic results, but you will not have any waste either.
|
|
|
|
config OCM_MODULES_FALLBACK_TO_DDR
|
|
bool "Loadable Modules requiring OCM may fallback to use DDR."
|
|
default n
|
|
help
|
|
If a module cannot get the OCM code it requires allow DDR to
|
|
be used instead.
|
|
endmenu
|
|
|
|
config HZ
|
|
int "Frequency of 'jiffies' (for polling)"
|
|
default 1000
|
|
help
|
|
100 is common for embedded systems, but 1000 allows
|
|
you to do more drivers without actually having
|
|
interrupts working properly.
|
|
|
|
comment "RAM configuration"
|
|
|
|
config MIN_RAMSIZE
|
|
hex "Minimum Size of RAM (in bytes)"
|
|
range 0x01000000 0x08000000
|
|
default "0x02000000"
|
|
help
|
|
Define the minimum acceptable size of the system
|
|
RAM. Must be at least 16MB (0x01000000)
|
|
|
|
comment "Build options"
|
|
config LINKER_RELAXATION
|
|
bool "Linker Relaxation"
|
|
default y
|
|
help
|
|
Turns on linker relaxation that will produce smaller
|
|
faster code. Increases link time.
|
|
|
|
comment "Driver options"
|
|
menu "PCI Bus"
|
|
config PCI
|
|
bool "PCI bus"
|
|
default true
|
|
help
|
|
Enable/Disable PCI bus
|
|
source "drivers/pci/Kconfig"
|
|
|
|
|
|
config PCI_DEV0_IDSEL
|
|
hex "slot 0 address"
|
|
depends on PCI
|
|
default "0x01000000"
|
|
help
|
|
Slot 0 address. This address should correspond to the address line
|
|
which the IDSEL bit for this slot is connected to.
|
|
|
|
config PCI_DEV1_IDSEL
|
|
hex "slot 1 address"
|
|
depends on PCI
|
|
default "0x02000000"
|
|
help
|
|
Slot 1 address. This address should correspond to the address line
|
|
which the IDSEL bit for this slot is connected to.
|
|
endmenu
|
|
# End PCI
|
|
|
|
menu "Input devices"
|
|
config UBICOM_INPUT
|
|
bool "Ubicom polled GPIO input driver"
|
|
select INPUT
|
|
select INPUT_POLLDEV
|
|
help
|
|
Polling input driver, much like the GPIO input driver, except that it doesn't
|
|
rely on interrupts. It will report events via the input subsystem.
|
|
default n
|
|
|
|
config UBICOM_INPUT_I2C
|
|
bool "Ubicom polled GPIO input driver over I2C"
|
|
select INPUT
|
|
select INPUT_POLLDEV
|
|
help
|
|
Polling input driver, much like the PCA953x driver, it can support a variety of
|
|
different I2C I/O expanders. This device polls the I2C I/O expander for events
|
|
and reports them via the input subsystem.
|
|
default n
|
|
endmenu
|
|
# Input devices
|
|
|
|
source "arch/ubicom32/mach-common/Kconfig.switch"
|
|
|
|
menu "Misc devices"
|
|
config UBICOM_HID
|
|
bool "Ubicom HID driver"
|
|
select INPUT
|
|
select INPUT_POLLDEV
|
|
select LCD_CLASS_DEVICE
|
|
help
|
|
Driver for HID chip found on some Ubicom reference designs. This chip handles
|
|
PWM, button input, and IR remote control. It registers as an input device and
|
|
a backlight device.
|
|
default n
|
|
endmenu
|
|
# Misc devices
|
|
|
|
config CMDLINE_BOOL
|
|
bool "Built-in kernel command line"
|
|
default n
|
|
help
|
|
Allow for specifying boot arguments to the kernel at
|
|
build time. On some systems (e.g. embedded ones), it is
|
|
necessary or convenient to provide some or all of the
|
|
kernel boot arguments with the kernel itself (that is,
|
|
to not rely on the boot loader to provide them.)
|
|
|
|
To compile command line arguments into the kernel,
|
|
set this option to 'Y', then fill in the
|
|
the boot arguments in CONFIG_CMDLINE.
|
|
|
|
Systems with fully functional boot loaders (i.e. non-embedded)
|
|
should leave this option set to 'N'.
|
|
|
|
config CMDLINE
|
|
string "Built-in kernel command string"
|
|
depends on CMDLINE_BOOL
|
|
default ""
|
|
help
|
|
Enter arguments here that should be compiled into the kernel
|
|
image and used at boot time. If the boot loader provides a
|
|
command line at boot time, it is appended to this string to
|
|
form the full kernel command line, when the system boots.
|
|
|
|
However, you can use the CONFIG_CMDLINE_OVERRIDE option to
|
|
change this behavior.
|
|
|
|
In most cases, the command line (whether built-in or provided
|
|
by the boot loader) should specify the device for the root
|
|
file system.
|
|
|
|
config CMDLINE_OVERRIDE
|
|
bool "Built-in command line overrides boot loader arguments"
|
|
default n
|
|
depends on CMDLINE_BOOL
|
|
help
|
|
Set this option to 'Y' to have the kernel ignore the boot loader
|
|
command line, and use ONLY the built-in command line.
|
|
|
|
This is used to work around broken boot loaders. This should
|
|
be set to 'N' under normal conditions.
|
|
|
|
endmenu
|
|
# End Processor type and features
|
|
|
|
source "arch/ubicom32/Kconfig.debug"
|
|
|
|
menu "Executable file formats"
|
|
source "fs/Kconfig.binfmt"
|
|
endmenu
|
|
|
|
source "init/Kconfig"
|
|
source "kernel/Kconfig.preempt"
|
|
source "kernel/time/Kconfig"
|
|
source "mm/Kconfig"
|
|
source "net/Kconfig"
|
|
source "drivers/Kconfig"
|
|
source "fs/Kconfig"
|
|
source "security/Kconfig"
|
|
source "crypto/Kconfig"
|
|
source "lib/Kconfig"
|