linux/arch/mn10300/Kconfig
<<
>>
Prefs
   1config MN10300
   2        def_bool y
   3        select HAVE_OPROFILE
   4
   5config AM33_2
   6        def_bool n
   7
   8config AM33_3
   9        def_bool n
  10
  11config AM34_2
  12        def_bool n
  13        select MN10300_HAS_ATOMIC_OPS_UNIT
  14        select MN10300_HAS_CACHE_SNOOP
  15
  16config ERRATUM_NEED_TO_RELOAD_MMUCTR
  17        def_bool y if AM33_3 || AM34_2
  18
  19config MMU
  20        def_bool y
  21
  22config HIGHMEM
  23        def_bool n
  24
  25config NUMA
  26        def_bool n
  27
  28config UID16
  29        def_bool y
  30
  31config RWSEM_GENERIC_SPINLOCK
  32        def_bool y
  33
  34config RWSEM_XCHGADD_ALGORITHM
  35        bool
  36
  37config GENERIC_HARDIRQS_NO__DO_IRQ
  38        def_bool y
  39
  40config GENERIC_CALIBRATE_DELAY
  41        def_bool y
  42
  43config GENERIC_CMOS_UPDATE
  44        def_bool n
  45
  46config GENERIC_FIND_NEXT_BIT
  47        def_bool y
  48
  49config GENERIC_HWEIGHT
  50        def_bool y
  51
  52config GENERIC_TIME
  53        def_bool y
  54
  55config GENERIC_CLOCKEVENTS
  56        def_bool y
  57
  58config GENERIC_CLOCKEVENTS_BUILD
  59        def_bool y
  60        depends on GENERIC_CLOCKEVENTS
  61
  62config GENERIC_CLOCKEVENTS_BROADCAST
  63        bool
  64
  65config CEVT_MN10300
  66       def_bool y
  67       depends on GENERIC_CLOCKEVENTS
  68
  69config CSRC_MN10300
  70       def_bool y
  71       depends on GENERIC_TIME
  72
  73config GENERIC_BUG
  74        def_bool y
  75
  76config QUICKLIST
  77        def_bool y
  78
  79config ARCH_HAS_ILOG2_U32
  80        def_bool y
  81
  82# Use the generic interrupt handling code in kernel/irq/
  83config GENERIC_HARDIRQS
  84        def_bool y
  85
  86config HOTPLUG_CPU
  87        def_bool n
  88
  89source "init/Kconfig"
  90
  91source "kernel/Kconfig.freezer"
  92
  93
  94menu "Panasonic MN10300 system setup"
  95
  96choice
  97        prompt "Unit type"
  98        default MN10300_UNIT_ASB2303
  99        help
 100          This option specifies board for which the kernel will be
 101          compiled. It affects the external peripherals catered for.
 102
 103config MN10300_UNIT_ASB2303
 104        bool "ASB2303"
 105
 106config MN10300_UNIT_ASB2305
 107        bool "ASB2305"
 108
 109config MN10300_UNIT_ASB2364
 110        bool "ASB2364"
 111        select SMSC911X_ARCH_HOOKS if SMSC911X
 112
 113endchoice
 114
 115choice
 116        prompt "Processor support"
 117        default MN10300_PROC_MN103E010
 118        help
 119          This option specifies the processor for which the kernel will be
 120          compiled. It affects the on-chip peripherals catered for.
 121
 122config MN10300_PROC_MN103E010
 123        bool "MN103E010"
 124        depends on MN10300_UNIT_ASB2303 || MN10300_UNIT_ASB2305
 125        select AM33_2
 126        select MN10300_PROC_HAS_TTYSM0
 127        select MN10300_PROC_HAS_TTYSM1
 128        select MN10300_PROC_HAS_TTYSM2
 129
 130config MN10300_PROC_MN2WS0050
 131        bool "MN2WS0050"
 132        depends on MN10300_UNIT_ASB2364
 133        select AM34_2
 134        select MN10300_PROC_HAS_TTYSM0
 135        select MN10300_PROC_HAS_TTYSM1
 136        select MN10300_PROC_HAS_TTYSM2
 137
 138endchoice
 139
 140config MN10300_HAS_ATOMIC_OPS_UNIT
 141        def_bool n
 142        help
 143          This should be enabled if the processor has an atomic ops unit
 144          capable of doing LL/SC equivalent operations.
 145
 146config FPU
 147        bool "FPU present"
 148        default y
 149        depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050
 150
 151config LAZY_SAVE_FPU
 152        bool "Save FPU state lazily"
 153        default y
 154        depends on FPU && !SMP
 155        help
 156          Enable this to be lazy in the saving of the FPU state to the owning
 157          task's thread struct.  This is useful if most tasks on the system
 158          don't use the FPU as only those tasks that use it will pass it
 159          between them, and the state needn't be saved for a task that isn't
 160          using it.
 161
 162          This can't be so easily used on SMP as the process that owns the FPU
 163          state on a CPU may be currently running on another CPU, so for the
 164          moment, it is disabled.
 165
 166source "arch/mn10300/mm/Kconfig.cache"
 167
 168config MN10300_TLB_USE_PIDR
 169        def_bool y
 170
 171menu "Memory layout options"
 172
 173config KERNEL_RAM_BASE_ADDRESS
 174        hex "Base address of kernel RAM"
 175        default "0x90000000"
 176
 177config INTERRUPT_VECTOR_BASE
 178        hex "Base address of vector table"
 179        default "0x90000000"
 180        help
 181          The base address of the vector table will be programmed into
 182          the TBR register. It must be on 16MiB address boundary.
 183
 184config KERNEL_TEXT_ADDRESS
 185        hex "Base address of kernel"
 186        default "0x90001000"
 187
 188config KERNEL_ZIMAGE_BASE_ADDRESS
 189        hex "Base address of compressed vmlinux image"
 190        default "0x50700000"
 191
 192config BOOT_STACK_OFFSET
 193        hex
 194        default "0xF00" if SMP
 195        default "0xFF0" if !SMP
 196
 197config BOOT_STACK_SIZE
 198        hex
 199        depends on SMP
 200        default "0x100"
 201endmenu
 202
 203config SMP
 204        bool "Symmetric multi-processing support"
 205        default y
 206        depends on MN10300_PROC_MN2WS0038 || MN10300_PROC_MN2WS0050
 207        ---help---
 208          This enables support for systems with more than one CPU. If you have
 209          a system with only one CPU, like most personal computers, say N. If
 210          you have a system with more than one CPU, say Y.
 211
 212          If you say N here, the kernel will run on single and multiprocessor
 213          machines, but will use only one CPU of a multiprocessor machine. If
 214          you say Y here, the kernel will run on many, but not all,
 215          singleprocessor machines. On a singleprocessor machine, the kernel
 216          will run faster if you say N here.
 217
 218          See also <file:Documentation/i386/IO-APIC.txt>,
 219          <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
 220          <http://www.tldp.org/docs.html#howto>.
 221
 222          If you don't know what to do here, say N.
 223
 224config NR_CPUS
 225        int
 226        depends on SMP
 227        default "2"
 228
 229config USE_GENERIC_SMP_HELPERS
 230        bool
 231        depends on SMP
 232        default y
 233
 234source "kernel/Kconfig.preempt"
 235
 236config MN10300_CURRENT_IN_E2
 237        bool "Hold current task address in E2 register"
 238        depends on !SMP
 239        default y
 240        help
 241          This option removes the E2/R2 register from the set available to gcc
 242          for normal use and instead uses it to store the address of the
 243          current process's task_struct whilst in the kernel.
 244
 245          This means the kernel doesn't need to calculate the address each time
 246          "current" is used (take SP, AND with mask and dereference pointer
 247          just to get the address), and instead can just use E2+offset
 248          addressing each time.
 249
 250          This has no effect on userspace.
 251
 252config MN10300_USING_JTAG
 253        bool "Using JTAG to debug kernel"
 254        default y
 255        help
 256          This options indicates that JTAG will be used to debug the kernel. It
 257          suppresses the use of certain hardware debugging features, such as
 258          single-stepping, which are taken over completely by the JTAG unit.
 259
 260source "kernel/Kconfig.hz"
 261source "kernel/time/Kconfig"
 262
 263config MN10300_RTC
 264        bool "Using MN10300 RTC"
 265        depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050
 266        select GENERIC_CMOS_UPDATE
 267        default n
 268        help
 269          This option enables support for the RTC, thus enabling time to be
 270          tracked, even when system is powered down. This is available on-chip
 271          on the MN103E010.
 272
 273config MN10300_WD_TIMER
 274        bool "Using MN10300 watchdog timer"
 275        default y
 276        help
 277          This options indicates that the watchdog timer will be used.
 278
 279config PCI
 280        bool "Use PCI"
 281        depends on MN10300_UNIT_ASB2305
 282        default y
 283        help
 284          Some systems (such as the ASB2305) have PCI onboard. If you have one
 285          of these boards and you wish to use the PCI facilities, say Y here.
 286
 287          The PCI-HOWTO, available from
 288          <http://www.tldp.org/docs.html#howto>, contains valuable
 289          information about which PCI hardware does work under Linux and which
 290          doesn't.
 291
 292source "drivers/pci/Kconfig"
 293
 294source "drivers/pcmcia/Kconfig"
 295
 296menu "MN10300 internal serial options"
 297
 298config MN10300_PROC_HAS_TTYSM0
 299        bool
 300        default n
 301
 302config MN10300_PROC_HAS_TTYSM1
 303        bool
 304        default n
 305
 306config MN10300_PROC_HAS_TTYSM2
 307        bool
 308        default n
 309
 310config MN10300_TTYSM
 311        bool "Support for ttySM serial ports"
 312        depends on MN10300
 313        default y
 314        select SERIAL_CORE
 315        help
 316          This option enables support for the on-chip serial ports that the
 317          MN10300 has available.
 318
 319config MN10300_TTYSM_CONSOLE
 320        bool "Support for console on ttySM serial ports"
 321        depends on MN10300_TTYSM
 322        select SERIAL_CORE_CONSOLE
 323        help
 324          This option enables support for a console on the on-chip serial ports
 325          that the MN10300 has available.
 326
 327#
 328# /dev/ttySM0
 329#
 330config MN10300_TTYSM0
 331        bool "Enable SIF0 (/dev/ttySM0)"
 332        depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM0
 333        help
 334          Enable access to SIF0 through /dev/ttySM0 or gdb-stub
 335
 336choice
 337        prompt "Select the timer to supply the clock for SIF0"
 338        default MN10300_TTYSM0_TIMER8
 339        depends on MN10300_TTYSM0
 340
 341config MN10300_TTYSM0_TIMER8
 342        bool "Use timer 8 (16-bit)"
 343
 344config MN10300_TTYSM0_TIMER2
 345        bool "Use timer 2 (8-bit)"
 346
 347endchoice
 348
 349#
 350# /dev/ttySM1
 351#
 352config MN10300_TTYSM1
 353        bool "Enable SIF1 (/dev/ttySM1)"
 354        depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM1
 355        help
 356          Enable access to SIF1 through /dev/ttySM1 or gdb-stub
 357
 358choice
 359        prompt "Select the timer to supply the clock for SIF1"
 360        default MN10300_TTYSM1_TIMER12 \
 361                if !(AM33_2 || AM33_3)
 362        default MN10300_TTYSM1_TIMER9 \
 363                if AM33_2 || AM33_3
 364        depends on MN10300_TTYSM1
 365
 366config MN10300_TTYSM1_TIMER12
 367        bool "Use timer 12 (16-bit)"
 368        depends on !(AM33_2 || AM33_3)
 369
 370config MN10300_TTYSM1_TIMER9
 371        bool "Use timer 9 (16-bit)"
 372        depends on AM33_2 || AM33_3
 373
 374config MN10300_TTYSM1_TIMER3
 375        bool "Use timer 3 (8-bit)"
 376        depends on AM33_2 || AM33_3
 377
 378endchoice
 379
 380#
 381# /dev/ttySM2
 382#
 383config MN10300_TTYSM2
 384        bool "Enable SIF2 (/dev/ttySM2)"
 385        depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM2
 386        help
 387          Enable access to SIF2 through /dev/ttySM2 or gdb-stub
 388
 389choice
 390        prompt "Select the timer to supply the clock for SIF2"
 391        default MN10300_TTYSM2_TIMER3 \
 392                if !(AM33_2 || AM33_3)
 393        default MN10300_TTYSM2_TIMER10 \
 394                if AM33_2 || AM33_3
 395        depends on MN10300_TTYSM2
 396
 397config MN10300_TTYSM2_TIMER9
 398        bool "Use timer 9 (16-bit)"
 399        depends on !(AM33_2 || AM33_3)
 400
 401config MN10300_TTYSM2_TIMER1
 402        bool "Use timer 1 (8-bit)"
 403        depends on !(AM33_2 || AM33_3)
 404
 405config MN10300_TTYSM2_TIMER3
 406        bool "Use timer 3 (8-bit)"
 407        depends on !(AM33_2 || AM33_3)
 408
 409config MN10300_TTYSM2_TIMER10
 410        bool "Use timer 10 (16-bit)"
 411        depends on AM33_2 || AM33_3
 412
 413endchoice
 414
 415config MN10300_TTYSM2_CTS
 416        bool "Enable the use of the CTS line /dev/ttySM2"
 417        depends on MN10300_TTYSM2 && AM33_2
 418
 419endmenu
 420
 421menu "Interrupt request priority options"
 422
 423comment "[!] NOTE: A lower number/level indicates a higher priority (0 is highest, 6 is lowest)"
 424
 425comment "____Non-maskable interrupt levels____"
 426comment "The following must be set to a higher priority than local_irq_disable() and on-chip serial"
 427
 428config GDBSTUB_IRQ_LEVEL
 429        int "GDBSTUB interrupt priority"
 430        depends on GDBSTUB
 431        range 0 1 if LINUX_CLI_LEVEL = 2
 432        range 0 2 if LINUX_CLI_LEVEL = 3
 433        range 0 3 if LINUX_CLI_LEVEL = 4
 434        range 0 4 if LINUX_CLI_LEVEL = 5
 435        range 0 5 if LINUX_CLI_LEVEL = 6
 436        default 0
 437
 438comment "The following must be set to a higher priority than local_irq_disable()"
 439
 440config MN10300_SERIAL_IRQ_LEVEL
 441        int "MN10300 on-chip serial interrupt priority"
 442        depends on MN10300_TTYSM
 443        range 1 1 if LINUX_CLI_LEVEL = 2
 444        range 1 2 if LINUX_CLI_LEVEL = 3
 445        range 1 3 if LINUX_CLI_LEVEL = 4
 446        range 1 4 if LINUX_CLI_LEVEL = 5
 447        range 1 5 if LINUX_CLI_LEVEL = 6
 448        default 1
 449
 450comment "-"
 451comment "____Maskable interrupt levels____"
 452
 453config LINUX_CLI_LEVEL
 454        int "The highest interrupt priority excluded by local_irq_disable() (2-6)"
 455        range 2 6
 456        default 2
 457        help
 458          local_irq_disable() doesn't actually disable maskable interrupts -
 459          what it does is restrict the levels of interrupt which are permitted
 460          (a lower level indicates a higher priority) by lowering the value in
 461          EPSW.IM from 7.  Any interrupt is permitted for which the level is
 462          lower than EPSW.IM.
 463
 464          Certain interrupts, such as GDBSTUB and virtual MN10300 on-chip
 465          serial DMA interrupts are allowed to interrupt normal disabled
 466          sections.
 467
 468comment "The following must be set to a equal to or lower priority than LINUX_CLI_LEVEL"
 469
 470config TIMER_IRQ_LEVEL
 471        int "Kernel timer interrupt priority"
 472        range LINUX_CLI_LEVEL 6
 473        default 4
 474
 475config PCI_IRQ_LEVEL
 476        int "PCI interrupt priority"
 477        depends on PCI
 478        range LINUX_CLI_LEVEL 6
 479        default 5
 480
 481config ETHERNET_IRQ_LEVEL
 482        int "Ethernet interrupt priority"
 483        depends on SMC91X || SMC911X || SMSC911X
 484        range LINUX_CLI_LEVEL 6
 485        default 6
 486
 487config EXT_SERIAL_IRQ_LEVEL
 488        int "External serial port interrupt priority"
 489        depends on SERIAL_8250
 490        range LINUX_CLI_LEVEL 6
 491        default 6
 492
 493endmenu
 494
 495source "mm/Kconfig"
 496
 497menu "Power management options"
 498source kernel/power/Kconfig
 499endmenu
 500
 501endmenu
 502
 503
 504menu "Executable formats"
 505
 506source "fs/Kconfig.binfmt"
 507
 508endmenu
 509
 510source "net/Kconfig"
 511
 512source "drivers/Kconfig"
 513
 514source "fs/Kconfig"
 515
 516source "arch/mn10300/Kconfig.debug"
 517
 518source "security/Kconfig"
 519
 520source "crypto/Kconfig"
 521
 522source "lib/Kconfig"
 523
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.