123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499 |
- config MN10300
- def_bool y
- select HAVE_EXIT_THREAD
- select HAVE_OPROFILE
- select HAVE_UID16
- select GENERIC_IRQ_SHOW
- select ARCH_WANT_IPC_PARSE_VERSION
- select HAVE_ARCH_TRACEHOOK
- select HAVE_ARCH_KGDB
- select GENERIC_ATOMIC64
- select HAVE_NMI_WATCHDOG if MN10300_WD_TIMER
- select VIRT_TO_BUS
- select GENERIC_CLOCKEVENTS
- select MODULES_USE_ELF_RELA
- select OLD_SIGSUSPEND3
- select OLD_SIGACTION
- select HAVE_DEBUG_STACKOVERFLOW
- select ARCH_NO_COHERENT_DMA_MMAP
- config AM33_2
- def_bool n
- config AM33_3
- def_bool n
- config AM34_2
- def_bool n
- select MN10300_HAS_ATOMIC_OPS_UNIT
- select MN10300_HAS_CACHE_SNOOP
- config ERRATUM_NEED_TO_RELOAD_MMUCTR
- def_bool y if AM33_3 || AM34_2
- config MMU
- def_bool y
- config HIGHMEM
- def_bool n
- config NUMA
- def_bool n
- config RWSEM_GENERIC_SPINLOCK
- def_bool y
- config RWSEM_XCHGADD_ALGORITHM
- bool
- config GENERIC_CALIBRATE_DELAY
- def_bool y
- config GENERIC_HWEIGHT
- def_bool y
- config GENERIC_BUG
- def_bool y
- depends on BUG
- config QUICKLIST
- def_bool y
- config ARCH_HAS_ILOG2_U32
- def_bool y
- config HOTPLUG_CPU
- def_bool n
- source "init/Kconfig"
- source "kernel/Kconfig.freezer"
- menu "Panasonic MN10300 system setup"
- choice
- prompt "Unit type"
- default MN10300_UNIT_ASB2303
- help
- This option specifies board for which the kernel will be
- compiled. It affects the external peripherals catered for.
- config MN10300_UNIT_ASB2303
- bool "ASB2303"
- config MN10300_UNIT_ASB2305
- bool "ASB2305"
- config MN10300_UNIT_ASB2364
- bool "ASB2364"
- select SMSC911X_ARCH_HOOKS if SMSC911X
- endchoice
- choice
- prompt "Processor support"
- default MN10300_PROC_MN103E010
- help
- This option specifies the processor for which the kernel will be
- compiled. It affects the on-chip peripherals catered for.
- config MN10300_PROC_MN103E010
- bool "MN103E010"
- depends on MN10300_UNIT_ASB2303 || MN10300_UNIT_ASB2305
- select AM33_2
- select MN10300_PROC_HAS_TTYSM0
- select MN10300_PROC_HAS_TTYSM1
- select MN10300_PROC_HAS_TTYSM2
- config MN10300_PROC_MN2WS0050
- bool "MN2WS0050"
- depends on MN10300_UNIT_ASB2364
- select AM34_2
- select MN10300_PROC_HAS_TTYSM0
- select MN10300_PROC_HAS_TTYSM1
- select MN10300_PROC_HAS_TTYSM2
- endchoice
- config MN10300_HAS_ATOMIC_OPS_UNIT
- def_bool n
- help
- This should be enabled if the processor has an atomic ops unit
- capable of doing LL/SC equivalent operations.
- config FPU
- bool "FPU present"
- default y
- depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050
- config LAZY_SAVE_FPU
- bool "Save FPU state lazily"
- default y
- depends on FPU && !SMP
- help
- Enable this to be lazy in the saving of the FPU state to the owning
- task's thread struct. This is useful if most tasks on the system
- don't use the FPU as only those tasks that use it will pass it
- between them, and the state needn't be saved for a task that isn't
- using it.
- This can't be so easily used on SMP as the process that owns the FPU
- state on a CPU may be currently running on another CPU, so for the
- moment, it is disabled.
- source "arch/mn10300/mm/Kconfig.cache"
- config MN10300_TLB_USE_PIDR
- def_bool y
- menu "Memory layout options"
- config KERNEL_RAM_BASE_ADDRESS
- hex "Base address of kernel RAM"
- default "0x90000000"
- config INTERRUPT_VECTOR_BASE
- hex "Base address of vector table"
- default "0x90000000"
- help
- The base address of the vector table will be programmed into
- the TBR register. It must be on 16MiB address boundary.
- config KERNEL_TEXT_ADDRESS
- hex "Base address of kernel"
- default "0x90001000"
- config KERNEL_ZIMAGE_BASE_ADDRESS
- hex "Base address of compressed vmlinux image"
- default "0x50700000"
- config BOOT_STACK_OFFSET
- hex
- default "0xF00" if SMP
- default "0xFF0" if !SMP
- config BOOT_STACK_SIZE
- hex
- depends on SMP
- default "0x100"
- endmenu
- config SMP
- bool "Symmetric multi-processing support"
- default y
- depends on MN10300_PROC_MN2WS0050
- ---help---
- This enables support for systems with more than one CPU. If you have
- a system with only one CPU, say N. If you have a system with more
- than one CPU, say Y.
- If you say N here, the kernel will run on uni- and multiprocessor
- machines, but will use only one CPU of a multiprocessor machine. If
- you say Y here, the kernel will run on many, but not all,
- uniprocessor machines. On a uniprocessor machine, the kernel
- will run faster if you say N here.
- See also <file:Documentation/x86/i386/IO-APIC.txt>,
- <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
- <http://www.tldp.org/docs.html#howto>.
- If you don't know what to do here, say N.
- config NR_CPUS
- int
- depends on SMP
- default "2"
- source "kernel/Kconfig.preempt"
- config MN10300_CURRENT_IN_E2
- bool "Hold current task address in E2 register"
- depends on !SMP
- default y
- help
- This option removes the E2/R2 register from the set available to gcc
- for normal use and instead uses it to store the address of the
- current process's task_struct whilst in the kernel.
- This means the kernel doesn't need to calculate the address each time
- "current" is used (take SP, AND with mask and dereference pointer
- just to get the address), and instead can just use E2+offset
- addressing each time.
- This has no effect on userspace.
- config MN10300_USING_JTAG
- bool "Using JTAG to debug kernel"
- default y
- help
- This options indicates that JTAG will be used to debug the kernel. It
- suppresses the use of certain hardware debugging features, such as
- single-stepping, which are taken over completely by the JTAG unit.
- source "kernel/Kconfig.hz"
- config MN10300_RTC
- bool "Using MN10300 RTC"
- depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050
- select RTC_CLASS
- select RTC_DRV_CMOS
- select RTC_SYSTOHC
- default n
- help
- This option enables support for the RTC, thus enabling time to be
- tracked, even when system is powered down. This is available on-chip
- on the MN103E010.
- config MN10300_WD_TIMER
- bool "Using MN10300 watchdog timer"
- default y
- help
- This options indicates that the watchdog timer will be used.
- config PCI
- bool "Use PCI"
- depends on MN10300_UNIT_ASB2305
- default y
- select GENERIC_PCI_IOMAP
- help
- Some systems (such as the ASB2305) have PCI onboard. If you have one
- of these boards and you wish to use the PCI facilities, say Y here.
- The PCI-HOWTO, available from
- <http://www.tldp.org/docs.html#howto>, contains valuable
- information about which PCI hardware does work under Linux and which
- doesn't.
- source "drivers/pci/Kconfig"
- source "drivers/pcmcia/Kconfig"
- menu "MN10300 internal serial options"
- config MN10300_PROC_HAS_TTYSM0
- bool
- default n
- config MN10300_PROC_HAS_TTYSM1
- bool
- default n
- config MN10300_PROC_HAS_TTYSM2
- bool
- default n
- config MN10300_TTYSM
- bool "Support for ttySM serial ports"
- depends on MN10300
- default y
- select SERIAL_CORE
- help
- This option enables support for the on-chip serial ports that the
- MN10300 has available.
- config MN10300_TTYSM_CONSOLE
- bool "Support for console on ttySM serial ports"
- depends on MN10300_TTYSM
- select SERIAL_CORE_CONSOLE
- help
- This option enables support for a console on the on-chip serial ports
- that the MN10300 has available.
- #
- # /dev/ttySM0
- #
- config MN10300_TTYSM0
- bool "Enable SIF0 (/dev/ttySM0)"
- depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM0
- help
- Enable access to SIF0 through /dev/ttySM0 or gdb-stub
- choice
- prompt "Select the timer to supply the clock for SIF0"
- default MN10300_TTYSM0_TIMER8
- depends on MN10300_TTYSM0
- config MN10300_TTYSM0_TIMER8
- bool "Use timer 8 (16-bit)"
- config MN10300_TTYSM0_TIMER2
- bool "Use timer 2 (8-bit)"
- endchoice
- #
- # /dev/ttySM1
- #
- config MN10300_TTYSM1
- bool "Enable SIF1 (/dev/ttySM1)"
- depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM1
- help
- Enable access to SIF1 through /dev/ttySM1 or gdb-stub
- choice
- prompt "Select the timer to supply the clock for SIF1"
- default MN10300_TTYSM1_TIMER12 \
- if !(AM33_2 || AM33_3)
- default MN10300_TTYSM1_TIMER9 \
- if AM33_2 || AM33_3
- depends on MN10300_TTYSM1
- config MN10300_TTYSM1_TIMER12
- bool "Use timer 12 (16-bit)"
- depends on !(AM33_2 || AM33_3)
- config MN10300_TTYSM1_TIMER9
- bool "Use timer 9 (16-bit)"
- depends on AM33_2 || AM33_3
- config MN10300_TTYSM1_TIMER3
- bool "Use timer 3 (8-bit)"
- depends on AM33_2 || AM33_3
- endchoice
- #
- # /dev/ttySM2
- #
- config MN10300_TTYSM2
- bool "Enable SIF2 (/dev/ttySM2)"
- depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM2
- help
- Enable access to SIF2 through /dev/ttySM2 or gdb-stub
- choice
- prompt "Select the timer to supply the clock for SIF2"
- default MN10300_TTYSM2_TIMER3 \
- if !(AM33_2 || AM33_3)
- default MN10300_TTYSM2_TIMER10 \
- if AM33_2 || AM33_3
- depends on MN10300_TTYSM2
- config MN10300_TTYSM2_TIMER9
- bool "Use timer 9 (16-bit)"
- depends on !(AM33_2 || AM33_3)
- config MN10300_TTYSM2_TIMER1
- bool "Use timer 1 (8-bit)"
- depends on !(AM33_2 || AM33_3)
- config MN10300_TTYSM2_TIMER3
- bool "Use timer 3 (8-bit)"
- depends on !(AM33_2 || AM33_3)
- config MN10300_TTYSM2_TIMER10
- bool "Use timer 10 (16-bit)"
- depends on AM33_2 || AM33_3
- endchoice
- config MN10300_TTYSM2_CTS
- bool "Enable the use of the CTS line /dev/ttySM2"
- depends on MN10300_TTYSM2 && AM33_2
- endmenu
- menu "Interrupt request priority options"
- comment "[!] NOTE: A lower number/level indicates a higher priority (0 is highest, 6 is lowest)"
- comment "____Non-maskable interrupt levels____"
- comment "The following must be set to a higher priority than local_irq_disable() and on-chip serial"
- config DEBUGGER_IRQ_LEVEL
- int "DEBUGGER interrupt priority"
- depends on KERNEL_DEBUGGER
- range 0 1 if LINUX_CLI_LEVEL = 2
- range 0 2 if LINUX_CLI_LEVEL = 3
- range 0 3 if LINUX_CLI_LEVEL = 4
- range 0 4 if LINUX_CLI_LEVEL = 5
- range 0 5 if LINUX_CLI_LEVEL = 6
- default 0
- comment "The following must be set to a higher priority than local_irq_disable()"
- config MN10300_SERIAL_IRQ_LEVEL
- int "MN10300 on-chip serial interrupt priority"
- depends on MN10300_TTYSM
- range 1 1 if LINUX_CLI_LEVEL = 2
- range 1 2 if LINUX_CLI_LEVEL = 3
- range 1 3 if LINUX_CLI_LEVEL = 4
- range 1 4 if LINUX_CLI_LEVEL = 5
- range 1 5 if LINUX_CLI_LEVEL = 6
- default 1
- comment "-"
- comment "____Maskable interrupt levels____"
- config LINUX_CLI_LEVEL
- int "The highest interrupt priority excluded by local_irq_disable() (2-6)"
- range 2 6
- default 2
- help
- local_irq_disable() doesn't actually disable maskable interrupts -
- what it does is restrict the levels of interrupt which are permitted
- (a lower level indicates a higher priority) by lowering the value in
- EPSW.IM from 7. Any interrupt is permitted for which the level is
- lower than EPSW.IM.
- Certain interrupts, such as DEBUGGER and virtual MN10300 on-chip
- serial DMA interrupts are allowed to interrupt normal disabled
- sections.
- comment "The following must be set to a equal to or lower priority than LINUX_CLI_LEVEL"
- config TIMER_IRQ_LEVEL
- int "Kernel timer interrupt priority"
- range LINUX_CLI_LEVEL 6
- default 4
- config PCI_IRQ_LEVEL
- int "PCI interrupt priority"
- depends on PCI
- range LINUX_CLI_LEVEL 6
- default 5
- config ETHERNET_IRQ_LEVEL
- int "Ethernet interrupt priority"
- depends on SMC91X || SMC911X || SMSC911X
- range LINUX_CLI_LEVEL 6
- default 6
- config EXT_SERIAL_IRQ_LEVEL
- int "External serial port interrupt priority"
- depends on SERIAL_8250
- range LINUX_CLI_LEVEL 6
- default 6
- endmenu
- source "mm/Kconfig"
- menu "Power management options"
- source kernel/power/Kconfig
- endmenu
- endmenu
- menu "Executable formats"
- source "fs/Kconfig.binfmt"
- endmenu
- source "net/Kconfig"
- source "drivers/Kconfig"
- source "fs/Kconfig"
- source "arch/mn10300/Kconfig.debug"
- source "security/Kconfig"
- source "crypto/Kconfig"
- source "lib/Kconfig"
|