linux/arch/m32r/Kconfig
<<
>>
Prefs
   1#
   2# For a description of the syntax of this configuration file,
   3# see Documentation/kbuild/kconfig-language.txt.
   4#
   5
   6mainmenu "Linux/M32R Kernel Configuration"
   7
   8config M32R
   9        bool
  10        default y
  11        select HAVE_IDE
  12        select HAVE_OPROFILE
  13        select INIT_ALL_POSSIBLE
  14        select HAVE_KERNEL_GZIP
  15        select HAVE_KERNEL_BZIP2
  16        select HAVE_KERNEL_LZMA
  17
  18config SBUS
  19        bool
  20
  21config GENERIC_ISA_DMA
  22        bool
  23        default y
  24
  25config ZONE_DMA
  26        bool
  27        default y
  28
  29config GENERIC_HARDIRQS
  30        bool
  31        default y
  32
  33config GENERIC_IRQ_PROBE
  34        bool
  35        default y
  36
  37config NO_IOPORT
  38        def_bool y
  39
  40config NO_DMA
  41        def_bool y
  42
  43config HZ
  44        int
  45        default 100
  46
  47config GENERIC_TIME
  48        def_bool y
  49
  50config ARCH_USES_GETTIMEOFFSET
  51        def_bool y
  52
  53source "init/Kconfig"
  54
  55source "kernel/Kconfig.freezer"
  56
  57
  58menu "Processor type and features"
  59
  60choice
  61        prompt "Platform Type"
  62        default PLAT_MAPPI
  63
  64config PLAT_MAPPI
  65        bool "Mappi-I"
  66        help
  67          The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
  68          You can operate a Linux system on this board by using an M32R
  69          softmacro core, which is a fully-synthesizable functional model
  70          described in Verilog-HDL.
  71
  72          The Mappi-I board was the first platform, which had been used
  73          to port and develop a Linux system for the M32R processor.
  74          Currently, the Mappi-II, an heir to the Mappi-I, is available.
  75
  76config PLAT_USRV
  77        bool "uServer"
  78        select PLAT_HAS_INT1ICU
  79
  80config PLAT_M32700UT
  81        bool "M32700UT"
  82        select PLAT_HAS_INT0ICU
  83        select PLAT_HAS_INT1ICU
  84        select PLAT_HAS_INT2ICU
  85        help
  86          The M3T-M32700UT is an evaluation board based on uT-Engine
  87          specification.  This board has an M32700 (Chaos) evaluation chip.
  88          You can say Y for SMP, because the M32700 is a single chip
  89          multiprocessor.
  90
  91config PLAT_OPSPUT
  92        bool "OPSPUT"
  93        select PLAT_HAS_INT0ICU
  94        select PLAT_HAS_INT1ICU
  95        select PLAT_HAS_INT2ICU
  96        help
  97          The OPSPUT is an evaluation board based on uT-Engine
  98          specification.  This board has a OPSP-REP chip.
  99
 100config PLAT_OAKS32R
 101        bool "OAKS32R"
 102        help
 103          The OAKS32R is a tiny, inexpensive evaluation board.
 104          Please note that if you say Y here and choose chip "M32102",
 105          say N for MMU and select a no-MMU version kernel, otherwise
 106          a kernel with MMU support will not work, because the M32102
 107          is a microcontroller for embedded systems and it has no MMU.
 108
 109config PLAT_MAPPI2
 110       bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
 111
 112config PLAT_MAPPI3
 113       bool "Mappi-III(M3A-2170)"
 114
 115config PLAT_M32104UT
 116        bool "M32104UT"
 117        select PLAT_HAS_INT1ICU
 118        help
 119          The M3T-M32104UT is an reference board based on uT-Engine
 120          specification.  This board has a M32104 chip.
 121
 122endchoice
 123
 124choice
 125        prompt "Processor family"
 126        default CHIP_M32700
 127
 128config CHIP_M32700
 129        bool "M32700 (Chaos)"
 130
 131config CHIP_M32102
 132        bool "M32102"
 133
 134config CHIP_M32104
 135        bool "M32104"
 136        depends on PLAT_M32104UT
 137
 138config CHIP_VDEC2
 139       bool "VDEC2"
 140
 141config CHIP_OPSP
 142       bool "OPSP"
 143
 144endchoice
 145
 146config MMU
 147        bool "Support for memory management hardware"
 148        depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
 149        default y
 150
 151config TLB_ENTRIES
 152       int "TLB Entries"
 153       depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
 154       default 32 if CHIP_M32700 || CHIP_OPSP
 155       default 16 if CHIP_VDEC2
 156
 157
 158config ISA_M32R
 159        bool
 160        depends on CHIP_M32102 || CHIP_M32104
 161        default y
 162
 163config ISA_M32R2
 164        bool
 165        depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
 166        default y
 167
 168config ISA_DSP_LEVEL2
 169        bool
 170        depends on CHIP_M32700 || CHIP_OPSP
 171        default y
 172
 173config ISA_DUAL_ISSUE
 174        bool
 175        depends on CHIP_M32700 || CHIP_OPSP
 176        default y
 177
 178config PLAT_HAS_INT0ICU
 179        bool
 180        default n
 181
 182config PLAT_HAS_INT1ICU
 183        bool
 184        default n
 185
 186config PLAT_HAS_INT2ICU
 187        bool
 188        default n
 189
 190config BUS_CLOCK
 191        int "Bus Clock [Hz] (integer)"
 192        default "70000000" if PLAT_MAPPI
 193        default "25000000" if PLAT_USRV
 194        default "50000000" if PLAT_MAPPI3
 195        default "50000000" if PLAT_M32700UT
 196        default "50000000" if PLAT_OPSPUT
 197        default "54000000" if PLAT_M32104UT
 198        default "33333333" if PLAT_OAKS32R
 199        default "20000000" if PLAT_MAPPI2
 200
 201config TIMER_DIVIDE
 202        int "Timer divider (integer)"
 203        default "128"
 204
 205config CPU_LITTLE_ENDIAN
 206        bool "Generate little endian code"
 207        default n
 208
 209config MEMORY_START
 210        hex "Physical memory start address (hex)"
 211        default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
 212        default "08000000" if PLAT_USRV
 213        default "08000000" if PLAT_M32700UT
 214        default "08000000" if PLAT_OPSPUT
 215        default "04000000" if PLAT_M32104UT
 216        default "01000000" if PLAT_OAKS32R
 217
 218config MEMORY_SIZE
 219        hex "Physical memory size (hex)"
 220        default "08000000" if PLAT_MAPPI3
 221        default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
 222        default "02000000" if PLAT_USRV
 223        default "01000000" if PLAT_M32700UT
 224        default "01000000" if PLAT_OPSPUT
 225        default "01000000" if PLAT_M32104UT
 226        default "00800000" if PLAT_OAKS32R
 227
 228config ARCH_DISCONTIGMEM_ENABLE
 229        bool "Internal RAM Support"
 230        depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
 231        default y
 232
 233source "mm/Kconfig"
 234
 235config IRAM_START
 236        hex "Internal memory start address (hex)"
 237        default "00f00000" if !CHIP_M32104
 238        default "00700000" if CHIP_M32104
 239        depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
 240
 241config IRAM_SIZE
 242        hex "Internal memory size (hex)"
 243        depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
 244        default "00080000" if CHIP_M32700
 245        default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
 246        default "00008000" if CHIP_VDEC2
 247
 248#
 249# Define implied options from the CPU selection here
 250#
 251
 252config GENERIC_LOCKBREAK
 253        bool
 254        default y
 255        depends on SMP && PREEMPT
 256
 257config RWSEM_GENERIC_SPINLOCK
 258        bool
 259        depends on M32R
 260        default y
 261
 262config RWSEM_XCHGADD_ALGORITHM
 263        bool
 264        default n
 265
 266config ARCH_HAS_ILOG2_U32
 267        bool
 268        default n
 269
 270config ARCH_HAS_ILOG2_U64
 271        bool
 272        default n
 273
 274config GENERIC_FIND_NEXT_BIT
 275        bool
 276        default y
 277
 278config GENERIC_HWEIGHT
 279        bool
 280        default y
 281
 282config GENERIC_CALIBRATE_DELAY
 283        bool
 284        default y
 285
 286config SCHED_OMIT_FRAME_POINTER
 287        bool
 288        default y
 289
 290config PREEMPT
 291        bool "Preemptible Kernel"
 292        help
 293          This option reduces the latency of the kernel when reacting to
 294          real-time or interactive events by allowing a low priority process to
 295          be preempted even if it is in kernel mode executing a system call.
 296          This allows applications to run more reliably even when the system is
 297          under load.
 298
 299          Say Y here if you are building a kernel for a desktop, embedded
 300          or real-time system.  Say N if you are unsure.
 301
 302config SMP
 303        bool "Symmetric multi-processing support"
 304        select USE_GENERIC_SMP_HELPERS
 305        ---help---
 306          This enables support for systems with more than one CPU. If you have
 307          a system with only one CPU, like most personal computers, say N. If
 308          you have a system with more than one CPU, say Y.
 309
 310          If you say N here, the kernel will run on single and multiprocessor
 311          machines, but will use only one CPU of a multiprocessor machine. If
 312          you say Y here, the kernel will run on many, but not all,
 313          singleprocessor machines. On a singleprocessor machine, the kernel
 314          will run faster if you say N here.
 315
 316          People using multiprocessor machines who say Y here should also say
 317          Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
 318          Management" code will be disabled if you say Y here.
 319
 320          See also the SMP-HOWTO available at
 321          <http://www.linuxdoc.org/docs.html#howto>.
 322
 323          If you don't know what to do here, say N.
 324
 325config CHIP_M32700_TS1
 326        bool "Workaround code for the M32700 TS1 chip's bug"
 327        depends on (CHIP_M32700 && SMP)
 328        default n
 329
 330config NR_CPUS
 331        int "Maximum number of CPUs (2-32)"
 332        range 2 32
 333        depends on SMP
 334        default "2"
 335        help
 336          This allows you to specify the maximum number of CPUs which this
 337          kernel will support.  The maximum supported value is 32 and the
 338          minimum value which makes sense is 2.
 339
 340          This is purely to save memory - each supported CPU adds
 341          approximately eight kilobytes to the kernel image.
 342
 343# Common NUMA Features
 344config NUMA
 345        bool "Numa Memory Allocation Support"
 346        depends on SMP && BROKEN
 347        default n
 348
 349config NODES_SHIFT
 350        int
 351        default "1"
 352        depends on NEED_MULTIPLE_NODES
 353
 354# turning this on wastes a bunch of space.
 355# Summit needs it only when NUMA is on
 356config BOOT_IOREMAP
 357        bool
 358        depends on NUMA
 359        default n
 360
 361endmenu
 362
 363
 364menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
 365
 366config PCI
 367        bool "PCI support"
 368        depends on BROKEN
 369        default n
 370        help
 371          Find out whether you have a PCI motherboard. PCI is the name of a
 372          bus system, i.e. the way the CPU talks to the other stuff inside
 373          your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
 374          VESA. If you have PCI, say Y, otherwise N.
 375
 376choice
 377        prompt "PCI access mode"
 378        depends on PCI
 379        default PCI_GOANY
 380
 381config PCI_GOBIOS
 382        bool "BIOS"
 383        ---help---
 384          On PCI systems, the BIOS can be used to detect the PCI devices and
 385          determine their configuration. However, some old PCI motherboards
 386          have BIOS bugs and may crash if this is done. Also, some embedded
 387          PCI-based systems don't have any BIOS at all. Linux can also try to
 388          detect the PCI hardware directly without using the BIOS.
 389
 390          With this option, you can specify how Linux should detect the PCI
 391          devices. If you choose "BIOS", the BIOS will be used, if you choose
 392          "Direct", the BIOS won't be used, and if you choose "Any", the
 393          kernel will try the direct access method and falls back to the BIOS
 394          if that doesn't work. If unsure, go with the default, which is
 395          "Any".
 396
 397config PCI_GODIRECT
 398        bool "Direct"
 399
 400config PCI_GOANY
 401        bool "Any"
 402
 403endchoice
 404
 405config PCI_BIOS
 406        bool
 407        depends on PCI && (PCI_GOBIOS || PCI_GOANY)
 408        default y
 409
 410config PCI_DIRECT
 411        bool
 412        depends on PCI && (PCI_GODIRECT || PCI_GOANY)
 413        default y
 414
 415source "drivers/pci/Kconfig"
 416
 417config ISA
 418        bool
 419
 420source "drivers/pcmcia/Kconfig"
 421
 422source "drivers/pci/hotplug/Kconfig"
 423
 424endmenu
 425
 426
 427menu "Executable file formats"
 428
 429source "fs/Kconfig.binfmt"
 430
 431endmenu
 432
 433source "net/Kconfig"
 434
 435source "drivers/Kconfig"
 436
 437source "fs/Kconfig"
 438
 439source "arch/m32r/Kconfig.debug"
 440
 441source "security/Kconfig"
 442
 443source "crypto/Kconfig"
 444
 445source "lib/Kconfig"
 446