OpenCores
URL https://opencores.org/ocsvn/aor3000/aor3000/trunk

Subversion Repositories aor3000

[/] [aor3000/] [trunk/] [linux/] [arch/] [mips/] [Kconfig] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 alfik
config MIPS
2
        bool
3
        default y
4
        select ARCH_MIGHT_HAVE_PC_PARPORT
5
        select ARCH_MIGHT_HAVE_PC_SERIO
6
        select HAVE_CONTEXT_TRACKING
7
        select HAVE_GENERIC_DMA_COHERENT
8
        select HAVE_IDE
9
        select HAVE_OPROFILE
10
        select HAVE_PERF_EVENTS
11
        select PERF_USE_VMALLOC
12
        select HAVE_ARCH_KGDB
13
        select HAVE_ARCH_SECCOMP_FILTER
14
        select HAVE_ARCH_TRACEHOOK
15
        select HAVE_BPF_JIT if !CPU_MICROMIPS
16
        select ARCH_HAVE_CUSTOM_GPIO_H
17
        select HAVE_FUNCTION_TRACER
18
        select HAVE_FUNCTION_TRACE_MCOUNT_TEST
19
        select HAVE_DYNAMIC_FTRACE
20
        select HAVE_FTRACE_MCOUNT_RECORD
21
        select HAVE_C_RECORDMCOUNT
22
        select HAVE_FUNCTION_GRAPH_TRACER
23
        select HAVE_KPROBES
24
        select HAVE_KRETPROBES
25
        select HAVE_DEBUG_KMEMLEAK
26
        select HAVE_SYSCALL_TRACEPOINTS
27
        select ARCH_BINFMT_ELF_RANDOMIZE_PIE
28
        select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES && 64BIT
29
        select RTC_LIB if !MACH_LOONGSON
30
        select GENERIC_ATOMIC64 if !64BIT
31
        select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
32
        select HAVE_DMA_ATTRS
33
        select HAVE_DMA_API_DEBUG
34
        select GENERIC_IRQ_PROBE
35
        select GENERIC_IRQ_SHOW
36
        select GENERIC_PCI_IOMAP
37
        select HAVE_ARCH_JUMP_LABEL
38
        select ARCH_WANT_IPC_PARSE_VERSION
39
        select IRQ_FORCED_THREADING
40
        select HAVE_MEMBLOCK
41
        select HAVE_MEMBLOCK_NODE_MAP
42
        select ARCH_DISCARD_MEMBLOCK
43
        select GENERIC_SMP_IDLE_THREAD
44
        select BUILDTIME_EXTABLE_SORT
45
        select GENERIC_CLOCKEVENTS
46
        select GENERIC_CMOS_UPDATE
47
        select HAVE_MOD_ARCH_SPECIFIC
48
        select VIRT_TO_BUS
49
        select MODULES_USE_ELF_REL if MODULES
50
        select MODULES_USE_ELF_RELA if MODULES && 64BIT
51
        select CLONE_BACKWARDS
52
        select HAVE_DEBUG_STACKOVERFLOW
53
        select HAVE_CC_STACKPROTECTOR
54
        select CPU_PM if CPU_IDLE
55
        select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
56
 
57
menu "Machine selection"
58
 
59
choice
60
        prompt "System type"
61
        default SGI_IP22
62
 
63
config MIPS_ALCHEMY
64
        bool "Alchemy processor based machines"
65
        select 64BIT_PHYS_ADDR
66
        select CEVT_R4K
67
        select CSRC_R4K
68
        select IRQ_CPU
69
        select DMA_MAYBE_COHERENT       # Au1000,1500,1100 aren't, rest is
70
        select SYS_HAS_CPU_MIPS32_R1
71
        select SYS_SUPPORTS_32BIT_KERNEL
72
        select SYS_SUPPORTS_APM_EMULATION
73
        select ARCH_REQUIRE_GPIOLIB
74
        select SYS_SUPPORTS_ZBOOT
75
 
76
config AOR3000
77
        bool "aoR3000 SoC"
78
        select SYS_HAS_CPU_R3000
79
        select SYS_HAS_EARLY_PRINTK
80
        select SYS_SUPPORTS_32BIT_KERNEL
81
        select SYS_SUPPORTS_LITTLE_ENDIAN
82
        select DMA_NONCOHERENT
83
        select IRQ_CPU
84
        select BOOT_RAW
85
 
86
config AR7
87
        bool "Texas Instruments AR7"
88
        select BOOT_ELF32
89
        select DMA_NONCOHERENT
90
        select CEVT_R4K
91
        select CSRC_R4K
92
        select IRQ_CPU
93
        select NO_EXCEPT_FILL
94
        select SWAP_IO_SPACE
95
        select SYS_HAS_CPU_MIPS32_R1
96
        select SYS_HAS_EARLY_PRINTK
97
        select SYS_SUPPORTS_32BIT_KERNEL
98
        select SYS_SUPPORTS_LITTLE_ENDIAN
99
        select SYS_SUPPORTS_MIPS16
100
        select SYS_SUPPORTS_ZBOOT_UART16550
101
        select ARCH_REQUIRE_GPIOLIB
102
        select VLYNQ
103
        select HAVE_CLK
104
        help
105
          Support for the Texas Instruments AR7 System-on-a-Chip
106
          family: TNETD7100, 7200 and 7300.
107
 
108
config ATH79
109
        bool "Atheros AR71XX/AR724X/AR913X based boards"
110
        select ARCH_REQUIRE_GPIOLIB
111
        select BOOT_RAW
112
        select CEVT_R4K
113
        select CSRC_R4K
114
        select DMA_NONCOHERENT
115
        select HAVE_CLK
116
        select CLKDEV_LOOKUP
117
        select IRQ_CPU
118
        select MIPS_MACHINE
119
        select SYS_HAS_CPU_MIPS32_R2
120
        select SYS_HAS_EARLY_PRINTK
121
        select SYS_SUPPORTS_32BIT_KERNEL
122
        select SYS_SUPPORTS_BIG_ENDIAN
123
        select SYS_SUPPORTS_MIPS16
124
        help
125
          Support for the Atheros AR71XX/AR724X/AR913X SoCs.
126
 
127
config BCM47XX
128
        bool "Broadcom BCM47XX based boards"
129
        select ARCH_WANT_OPTIONAL_GPIOLIB
130
        select BOOT_RAW
131
        select CEVT_R4K
132
        select CSRC_R4K
133
        select DMA_NONCOHERENT
134
        select HW_HAS_PCI
135
        select IRQ_CPU
136
        select SYS_HAS_CPU_MIPS32_R1
137
        select NO_EXCEPT_FILL
138
        select SYS_SUPPORTS_32BIT_KERNEL
139
        select SYS_SUPPORTS_LITTLE_ENDIAN
140
        select SYS_SUPPORTS_MIPS16
141
        select SYS_HAS_EARLY_PRINTK
142
        select USE_GENERIC_EARLY_PRINTK_8250
143
        help
144
         Support for BCM47XX based boards
145
 
146
config BCM63XX
147
        bool "Broadcom BCM63XX based boards"
148
        select BOOT_RAW
149
        select CEVT_R4K
150
        select CSRC_R4K
151
        select DMA_NONCOHERENT
152
        select IRQ_CPU
153
        select SYS_SUPPORTS_32BIT_KERNEL
154
        select SYS_SUPPORTS_BIG_ENDIAN
155
        select SYS_HAS_EARLY_PRINTK
156
        select SWAP_IO_SPACE
157
        select ARCH_REQUIRE_GPIOLIB
158
        select HAVE_CLK
159
        select MIPS_L1_CACHE_SHIFT_4
160
        help
161
         Support for BCM63XX based boards
162
 
163
config MIPS_COBALT
164
        bool "Cobalt Server"
165
        select CEVT_R4K
166
        select CSRC_R4K
167
        select CEVT_GT641XX
168
        select DMA_NONCOHERENT
169
        select HW_HAS_PCI
170
        select I8253
171
        select I8259
172
        select IRQ_CPU
173
        select IRQ_GT641XX
174
        select PCI_GT64XXX_PCI0
175
        select PCI
176
        select SYS_HAS_CPU_NEVADA
177
        select SYS_HAS_EARLY_PRINTK
178
        select SYS_SUPPORTS_32BIT_KERNEL
179
        select SYS_SUPPORTS_64BIT_KERNEL
180
        select SYS_SUPPORTS_LITTLE_ENDIAN
181
        select USE_GENERIC_EARLY_PRINTK_8250
182
 
183
config MACH_DECSTATION
184
        bool "DECstations"
185
        select BOOT_ELF32
186
        select CEVT_DS1287
187
        select CEVT_R4K if CPU_R4X00
188
        select CSRC_IOASIC
189
        select CSRC_R4K if CPU_R4X00
190
        select CPU_DADDI_WORKAROUNDS if 64BIT
191
        select CPU_R4000_WORKAROUNDS if 64BIT
192
        select CPU_R4400_WORKAROUNDS if 64BIT
193
        select DMA_NONCOHERENT
194
        select NO_IOPORT_MAP
195
        select IRQ_CPU
196
        select SYS_HAS_CPU_R3000
197
        select SYS_HAS_CPU_R4X00
198
        select SYS_SUPPORTS_32BIT_KERNEL
199
        select SYS_SUPPORTS_64BIT_KERNEL
200
        select SYS_SUPPORTS_LITTLE_ENDIAN
201
        select SYS_SUPPORTS_128HZ
202
        select SYS_SUPPORTS_256HZ
203
        select SYS_SUPPORTS_1024HZ
204
        select MIPS_L1_CACHE_SHIFT_4
205
        help
206
          This enables support for DEC's MIPS based workstations.  For details
207
          see the Linux/MIPS FAQ on  and the
208
          DECstation porting pages on .
209
 
210
          If you have one of the following DECstation Models you definitely
211
          want to choose R4xx0 for the CPU Type:
212
 
213
                DECstation 5000/50
214
                DECstation 5000/150
215
                DECstation 5000/260
216
                DECsystem 5900/260
217
 
218
          otherwise choose R3000.
219
 
220
config MACH_JAZZ
221
        bool "Jazz family of machines"
222
        select FW_ARC
223
        select FW_ARC32
224
        select ARCH_MAY_HAVE_PC_FDC
225
        select CEVT_R4K
226
        select CSRC_R4K
227
        select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
228
        select GENERIC_ISA_DMA
229
        select HAVE_PCSPKR_PLATFORM
230
        select IRQ_CPU
231
        select I8253
232
        select I8259
233
        select ISA
234
        select SYS_HAS_CPU_R4X00
235
        select SYS_SUPPORTS_32BIT_KERNEL
236
        select SYS_SUPPORTS_64BIT_KERNEL
237
        select SYS_SUPPORTS_100HZ
238
        help
239
         This a family of machines based on the MIPS R4030 chipset which was
240
         used by several vendors to build RISC/os and Windows NT workstations.
241
         Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
242
         Olivetti M700-10 workstations.
243
 
244
config MACH_JZ4740
245
        bool "Ingenic JZ4740 based machines"
246
        select SYS_HAS_CPU_MIPS32_R1
247
        select SYS_SUPPORTS_32BIT_KERNEL
248
        select SYS_SUPPORTS_LITTLE_ENDIAN
249
        select SYS_SUPPORTS_ZBOOT_UART16550
250
        select DMA_NONCOHERENT
251
        select IRQ_CPU
252
        select ARCH_REQUIRE_GPIOLIB
253
        select SYS_HAS_EARLY_PRINTK
254
        select HAVE_CLK
255
        select GENERIC_IRQ_CHIP
256
 
257
config LANTIQ
258
        bool "Lantiq based platforms"
259
        select DMA_NONCOHERENT
260
        select IRQ_CPU
261
        select CEVT_R4K
262
        select CSRC_R4K
263
        select SYS_HAS_CPU_MIPS32_R1
264
        select SYS_HAS_CPU_MIPS32_R2
265
        select SYS_SUPPORTS_BIG_ENDIAN
266
        select SYS_SUPPORTS_32BIT_KERNEL
267
        select SYS_SUPPORTS_MIPS16
268
        select SYS_SUPPORTS_MULTITHREADING
269
        select SYS_HAS_EARLY_PRINTK
270
        select ARCH_REQUIRE_GPIOLIB
271
        select SWAP_IO_SPACE
272
        select BOOT_RAW
273
        select HAVE_MACH_CLKDEV
274
        select CLKDEV_LOOKUP
275
        select USE_OF
276
        select PINCTRL
277
        select PINCTRL_LANTIQ
278
 
279
config LASAT
280
        bool "LASAT Networks platforms"
281
        select CEVT_R4K
282
        select CRC32
283
        select CSRC_R4K
284
        select DMA_NONCOHERENT
285
        select SYS_HAS_EARLY_PRINTK
286
        select HW_HAS_PCI
287
        select IRQ_CPU
288
        select PCI_GT64XXX_PCI0
289
        select MIPS_NILE4
290
        select R5000_CPU_SCACHE
291
        select SYS_HAS_CPU_R5000
292
        select SYS_SUPPORTS_32BIT_KERNEL
293
        select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
294
        select SYS_SUPPORTS_LITTLE_ENDIAN
295
 
296
config MACH_LOONGSON
297
        bool "Loongson family of machines"
298
        select SYS_SUPPORTS_ZBOOT
299
        help
300
          This enables the support of Loongson family of machines.
301
 
302
          Loongson is a family of general-purpose MIPS-compatible CPUs.
303
          developed at Institute of Computing Technology (ICT),
304
          Chinese Academy of Sciences (CAS) in the People's Republic
305
          of China. The chief architect is Professor Weiwu Hu.
306
 
307
config MACH_LOONGSON1
308
        bool "Loongson 1 family of machines"
309
        select SYS_SUPPORTS_ZBOOT
310
        help
311
          This enables support for the Loongson 1 based machines.
312
 
313
          Loongson 1 is a family of 32-bit MIPS-compatible SoCs developed by
314
          the ICT (Institute of Computing Technology) and the Chinese Academy
315
          of Sciences.
316
 
317
config MIPS_MALTA
318
        bool "MIPS Malta board"
319
        select ARCH_MAY_HAVE_PC_FDC
320
        select BOOT_ELF32
321
        select BOOT_RAW
322
        select CEVT_R4K
323
        select CSRC_R4K
324
        select CSRC_GIC
325
        select DMA_MAYBE_COHERENT
326
        select GENERIC_ISA_DMA
327
        select HAVE_PCSPKR_PLATFORM
328
        select IRQ_CPU
329
        select IRQ_GIC
330
        select HW_HAS_PCI
331
        select I8253
332
        select I8259
333
        select MIPS_BONITO64
334
        select MIPS_CPU_SCACHE
335
        select PCI_GT64XXX_PCI0
336
        select MIPS_MSC
337
        select SWAP_IO_SPACE
338
        select SYS_HAS_CPU_MIPS32_R1
339
        select SYS_HAS_CPU_MIPS32_R2
340
        select SYS_HAS_CPU_MIPS32_R3_5
341
        select SYS_HAS_CPU_MIPS64_R1
342
        select SYS_HAS_CPU_MIPS64_R2
343
        select SYS_HAS_CPU_NEVADA
344
        select SYS_HAS_CPU_RM7000
345
        select SYS_SUPPORTS_32BIT_KERNEL
346
        select SYS_SUPPORTS_64BIT_KERNEL
347
        select SYS_SUPPORTS_BIG_ENDIAN
348
        select SYS_SUPPORTS_LITTLE_ENDIAN
349
        select SYS_SUPPORTS_MIPS_CMP
350
        select SYS_SUPPORTS_MIPS_CPS
351
        select SYS_SUPPORTS_MIPS16
352
        select SYS_SUPPORTS_MULTITHREADING
353
        select SYS_SUPPORTS_SMARTMIPS
354
        select SYS_SUPPORTS_ZBOOT
355
        help
356
          This enables support for the MIPS Technologies Malta evaluation
357
          board.
358
 
359
config MIPS_SEAD3
360
        bool "MIPS SEAD3 board"
361
        select BOOT_ELF32
362
        select BOOT_RAW
363
        select CEVT_R4K
364
        select CSRC_R4K
365
        select CSRC_GIC
366
        select CPU_MIPSR2_IRQ_VI
367
        select CPU_MIPSR2_IRQ_EI
368
        select DMA_NONCOHERENT
369
        select IRQ_CPU
370
        select IRQ_GIC
371
        select LIBFDT
372
        select MIPS_MSC
373
        select SYS_HAS_CPU_MIPS32_R1
374
        select SYS_HAS_CPU_MIPS32_R2
375
        select SYS_HAS_CPU_MIPS64_R1
376
        select SYS_HAS_EARLY_PRINTK
377
        select SYS_SUPPORTS_32BIT_KERNEL
378
        select SYS_SUPPORTS_64BIT_KERNEL
379
        select SYS_SUPPORTS_BIG_ENDIAN
380
        select SYS_SUPPORTS_LITTLE_ENDIAN
381
        select SYS_SUPPORTS_SMARTMIPS
382
        select SYS_SUPPORTS_MICROMIPS
383
        select SYS_SUPPORTS_MIPS16
384
        select USB_EHCI_BIG_ENDIAN_DESC
385
        select USB_EHCI_BIG_ENDIAN_MMIO
386
        select USE_OF
387
        help
388
          This enables support for the MIPS Technologies SEAD3 evaluation
389
          board.
390
 
391
config NEC_MARKEINS
392
        bool "NEC EMMA2RH Mark-eins board"
393
        select SOC_EMMA2RH
394
        select HW_HAS_PCI
395
        help
396
          This enables support for the NEC Electronics Mark-eins boards.
397
 
398
config MACH_VR41XX
399
        bool "NEC VR4100 series based machines"
400
        select CEVT_R4K
401
        select CSRC_R4K
402
        select SYS_HAS_CPU_VR41XX
403
        select SYS_SUPPORTS_MIPS16
404
        select ARCH_REQUIRE_GPIOLIB
405
 
406
config NXP_STB220
407
        bool "NXP STB220 board"
408
        select SOC_PNX833X
409
        help
410
         Support for NXP Semiconductors STB220 Development Board.
411
 
412
config NXP_STB225
413
        bool "NXP 225 board"
414
        select SOC_PNX833X
415
        select SOC_PNX8335
416
        help
417
         Support for NXP Semiconductors STB225 Development Board.
418
 
419
config PMC_MSP
420
        bool "PMC-Sierra MSP chipsets"
421
        select CEVT_R4K
422
        select CSRC_R4K
423
        select DMA_NONCOHERENT
424
        select SWAP_IO_SPACE
425
        select NO_EXCEPT_FILL
426
        select BOOT_RAW
427
        select SYS_HAS_CPU_MIPS32_R1
428
        select SYS_HAS_CPU_MIPS32_R2
429
        select SYS_SUPPORTS_32BIT_KERNEL
430
        select SYS_SUPPORTS_BIG_ENDIAN
431
        select SYS_SUPPORTS_MIPS16
432
        select IRQ_CPU
433
        select SERIAL_8250
434
        select SERIAL_8250_CONSOLE
435
        select USB_EHCI_BIG_ENDIAN_MMIO
436
        select USB_EHCI_BIG_ENDIAN_DESC
437
        help
438
          This adds support for the PMC-Sierra family of Multi-Service
439
          Processor System-On-A-Chips.  These parts include a number
440
          of integrated peripherals, interfaces and DSPs in addition to
441
          a variety of MIPS cores.
442
 
443
config RALINK
444
        bool "Ralink based machines"
445
        select CEVT_R4K
446
        select CSRC_R4K
447
        select BOOT_RAW
448
        select DMA_NONCOHERENT
449
        select IRQ_CPU
450
        select USE_OF
451
        select SYS_HAS_CPU_MIPS32_R1
452
        select SYS_HAS_CPU_MIPS32_R2
453
        select SYS_SUPPORTS_32BIT_KERNEL
454
        select SYS_SUPPORTS_LITTLE_ENDIAN
455
        select SYS_SUPPORTS_MIPS16
456
        select SYS_HAS_EARLY_PRINTK
457
        select HAVE_MACH_CLKDEV
458
        select CLKDEV_LOOKUP
459
        select ARCH_HAS_RESET_CONTROLLER
460
        select RESET_CONTROLLER
461
 
462
config SGI_IP22
463
        bool "SGI IP22 (Indy/Indigo2)"
464
        select FW_ARC
465
        select FW_ARC32
466
        select BOOT_ELF32
467
        select CEVT_R4K
468
        select CSRC_R4K
469
        select DEFAULT_SGI_PARTITION
470
        select DMA_NONCOHERENT
471
        select HW_HAS_EISA
472
        select I8253
473
        select I8259
474
        select IP22_CPU_SCACHE
475
        select IRQ_CPU
476
        select GENERIC_ISA_DMA_SUPPORT_BROKEN
477
        select SGI_HAS_I8042
478
        select SGI_HAS_INDYDOG
479
        select SGI_HAS_HAL2
480
        select SGI_HAS_SEEQ
481
        select SGI_HAS_WD93
482
        select SGI_HAS_ZILOG
483
        select SWAP_IO_SPACE
484
        select SYS_HAS_CPU_R4X00
485
        select SYS_HAS_CPU_R5000
486
        #
487
        # Disable EARLY_PRINTK for now since it leads to overwritten prom
488
        # memory during early boot on some machines.
489
        #
490
        # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
491
        # for a more details discussion
492
        #
493
        # select SYS_HAS_EARLY_PRINTK
494
        select SYS_SUPPORTS_32BIT_KERNEL
495
        select SYS_SUPPORTS_64BIT_KERNEL
496
        select SYS_SUPPORTS_BIG_ENDIAN
497
        select MIPS_L1_CACHE_SHIFT_7
498
        help
499
          This are the SGI Indy, Challenge S and Indigo2, as well as certain
500
          OEM variants like the Tandem CMN B006S. To compile a Linux kernel
501
          that runs on these, say Y here.
502
 
503
config SGI_IP27
504
        bool "SGI IP27 (Origin200/2000)"
505
        select FW_ARC
506
        select FW_ARC64
507
        select BOOT_ELF64
508
        select DEFAULT_SGI_PARTITION
509
        select DMA_COHERENT
510
        select SYS_HAS_EARLY_PRINTK
511
        select HW_HAS_PCI
512
        select NR_CPUS_DEFAULT_64
513
        select SYS_HAS_CPU_R10000
514
        select SYS_SUPPORTS_64BIT_KERNEL
515
        select SYS_SUPPORTS_BIG_ENDIAN
516
        select SYS_SUPPORTS_NUMA
517
        select SYS_SUPPORTS_SMP
518
        select MIPS_L1_CACHE_SHIFT_7
519
        help
520
          This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
521
          workstations.  To compile a Linux kernel that runs on these, say Y
522
          here.
523
 
524
config SGI_IP28
525
        bool "SGI IP28 (Indigo2 R10k)"
526
        select FW_ARC
527
        select FW_ARC64
528
        select BOOT_ELF64
529
        select CEVT_R4K
530
        select CSRC_R4K
531
        select DEFAULT_SGI_PARTITION
532
        select DMA_NONCOHERENT
533
        select GENERIC_ISA_DMA_SUPPORT_BROKEN
534
        select IRQ_CPU
535
        select HW_HAS_EISA
536
        select I8253
537
        select I8259
538
        select SGI_HAS_I8042
539
        select SGI_HAS_INDYDOG
540
        select SGI_HAS_HAL2
541
        select SGI_HAS_SEEQ
542
        select SGI_HAS_WD93
543
        select SGI_HAS_ZILOG
544
        select SWAP_IO_SPACE
545
        select SYS_HAS_CPU_R10000
546
        #
547
        # Disable EARLY_PRINTK for now since it leads to overwritten prom
548
        # memory during early boot on some machines.
549
        #
550
        # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
551
        # for a more details discussion
552
        #
553
        # select SYS_HAS_EARLY_PRINTK
554
        select SYS_SUPPORTS_64BIT_KERNEL
555
        select SYS_SUPPORTS_BIG_ENDIAN
556
      help
557
        This is the SGI Indigo2 with R10000 processor.  To compile a Linux
558
        kernel that runs on these, say Y here.
559
 
560
config SGI_IP32
561
        bool "SGI IP32 (O2)"
562
        select FW_ARC
563
        select FW_ARC32
564
        select BOOT_ELF32
565
        select CEVT_R4K
566
        select CSRC_R4K
567
        select DMA_NONCOHERENT
568
        select HW_HAS_PCI
569
        select IRQ_CPU
570
        select R5000_CPU_SCACHE
571
        select RM7000_CPU_SCACHE
572
        select SYS_HAS_CPU_R5000
573
        select SYS_HAS_CPU_R10000 if BROKEN
574
        select SYS_HAS_CPU_RM7000
575
        select SYS_HAS_CPU_NEVADA
576
        select SYS_SUPPORTS_64BIT_KERNEL
577
        select SYS_SUPPORTS_BIG_ENDIAN
578
        help
579
          If you want this kernel to run on SGI O2 workstation, say Y here.
580
 
581
config SIBYTE_CRHINE
582
        bool "Sibyte BCM91120C-CRhine"
583
        select BOOT_ELF32
584
        select DMA_COHERENT
585
        select SIBYTE_BCM1120
586
        select SWAP_IO_SPACE
587
        select SYS_HAS_CPU_SB1
588
        select SYS_SUPPORTS_BIG_ENDIAN
589
        select SYS_SUPPORTS_LITTLE_ENDIAN
590
 
591
config SIBYTE_CARMEL
592
        bool "Sibyte BCM91120x-Carmel"
593
        select BOOT_ELF32
594
        select DMA_COHERENT
595
        select SIBYTE_BCM1120
596
        select SWAP_IO_SPACE
597
        select SYS_HAS_CPU_SB1
598
        select SYS_SUPPORTS_BIG_ENDIAN
599
        select SYS_SUPPORTS_LITTLE_ENDIAN
600
 
601
config SIBYTE_CRHONE
602
        bool "Sibyte BCM91125C-CRhone"
603
        select BOOT_ELF32
604
        select DMA_COHERENT
605
        select SIBYTE_BCM1125
606
        select SWAP_IO_SPACE
607
        select SYS_HAS_CPU_SB1
608
        select SYS_SUPPORTS_BIG_ENDIAN
609
        select SYS_SUPPORTS_HIGHMEM
610
        select SYS_SUPPORTS_LITTLE_ENDIAN
611
 
612
config SIBYTE_RHONE
613
        bool "Sibyte BCM91125E-Rhone"
614
        select BOOT_ELF32
615
        select DMA_COHERENT
616
        select SIBYTE_BCM1125H
617
        select SWAP_IO_SPACE
618
        select SYS_HAS_CPU_SB1
619
        select SYS_SUPPORTS_BIG_ENDIAN
620
        select SYS_SUPPORTS_LITTLE_ENDIAN
621
 
622
config SIBYTE_SWARM
623
        bool "Sibyte BCM91250A-SWARM"
624
        select BOOT_ELF32
625
        select DMA_COHERENT
626
        select HAVE_PATA_PLATFORM
627
        select SIBYTE_SB1250
628
        select SWAP_IO_SPACE
629
        select SYS_HAS_CPU_SB1
630
        select SYS_SUPPORTS_BIG_ENDIAN
631
        select SYS_SUPPORTS_HIGHMEM
632
        select SYS_SUPPORTS_LITTLE_ENDIAN
633
        select ZONE_DMA32 if 64BIT
634
 
635
config SIBYTE_LITTLESUR
636
        bool "Sibyte BCM91250C2-LittleSur"
637
        select BOOT_ELF32
638
        select DMA_COHERENT
639
        select HAVE_PATA_PLATFORM
640
        select SIBYTE_SB1250
641
        select SWAP_IO_SPACE
642
        select SYS_HAS_CPU_SB1
643
        select SYS_SUPPORTS_BIG_ENDIAN
644
        select SYS_SUPPORTS_HIGHMEM
645
        select SYS_SUPPORTS_LITTLE_ENDIAN
646
 
647
config SIBYTE_SENTOSA
648
        bool "Sibyte BCM91250E-Sentosa"
649
        select BOOT_ELF32
650
        select DMA_COHERENT
651
        select SIBYTE_SB1250
652
        select SWAP_IO_SPACE
653
        select SYS_HAS_CPU_SB1
654
        select SYS_SUPPORTS_BIG_ENDIAN
655
        select SYS_SUPPORTS_LITTLE_ENDIAN
656
 
657
config SIBYTE_BIGSUR
658
        bool "Sibyte BCM91480B-BigSur"
659
        select BOOT_ELF32
660
        select DMA_COHERENT
661
        select NR_CPUS_DEFAULT_4
662
        select SIBYTE_BCM1x80
663
        select SWAP_IO_SPACE
664
        select SYS_HAS_CPU_SB1
665
        select SYS_SUPPORTS_BIG_ENDIAN
666
        select SYS_SUPPORTS_HIGHMEM
667
        select SYS_SUPPORTS_LITTLE_ENDIAN
668
        select ZONE_DMA32 if 64BIT
669
 
670
config SNI_RM
671
        bool "SNI RM200/300/400"
672
        select FW_ARC if CPU_LITTLE_ENDIAN
673
        select FW_ARC32 if CPU_LITTLE_ENDIAN
674
        select FW_SNIPROM if CPU_BIG_ENDIAN
675
        select ARCH_MAY_HAVE_PC_FDC
676
        select BOOT_ELF32
677
        select CEVT_R4K
678
        select CSRC_R4K
679
        select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
680
        select DMA_NONCOHERENT
681
        select GENERIC_ISA_DMA
682
        select HAVE_PCSPKR_PLATFORM
683
        select HW_HAS_EISA
684
        select HW_HAS_PCI
685
        select IRQ_CPU
686
        select I8253
687
        select I8259
688
        select ISA
689
        select SWAP_IO_SPACE if CPU_BIG_ENDIAN
690
        select SYS_HAS_CPU_R4X00
691
        select SYS_HAS_CPU_R5000
692
        select SYS_HAS_CPU_R10000
693
        select R5000_CPU_SCACHE
694
        select SYS_HAS_EARLY_PRINTK
695
        select SYS_SUPPORTS_32BIT_KERNEL
696
        select SYS_SUPPORTS_64BIT_KERNEL
697
        select SYS_SUPPORTS_BIG_ENDIAN
698
        select SYS_SUPPORTS_HIGHMEM
699
        select SYS_SUPPORTS_LITTLE_ENDIAN
700
        help
701
          The SNI RM200/300/400 are MIPS-based machines manufactured by
702
          Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
703
          Technology and now in turn merged with Fujitsu.  Say Y here to
704
          support this machine type.
705
 
706
config MACH_TX39XX
707
        bool "Toshiba TX39 series based machines"
708
 
709
config MACH_TX49XX
710
        bool "Toshiba TX49 series based machines"
711
 
712
config MIKROTIK_RB532
713
        bool "Mikrotik RB532 boards"
714
        select CEVT_R4K
715
        select CSRC_R4K
716
        select DMA_NONCOHERENT
717
        select HW_HAS_PCI
718
        select IRQ_CPU
719
        select SYS_HAS_CPU_MIPS32_R1
720
        select SYS_SUPPORTS_32BIT_KERNEL
721
        select SYS_SUPPORTS_LITTLE_ENDIAN
722
        select SWAP_IO_SPACE
723
        select BOOT_RAW
724
        select ARCH_REQUIRE_GPIOLIB
725
        select MIPS_L1_CACHE_SHIFT_4
726
        help
727
          Support the Mikrotik(tm) RouterBoard 532 series,
728
          based on the IDT RC32434 SoC.
729
 
730
config CAVIUM_OCTEON_SOC
731
        bool "Cavium Networks Octeon SoC based boards"
732
        select CEVT_R4K
733
        select 64BIT_PHYS_ADDR
734
        select DMA_COHERENT
735
        select SYS_SUPPORTS_64BIT_KERNEL
736
        select SYS_SUPPORTS_BIG_ENDIAN
737
        select EDAC_SUPPORT
738
        select SYS_SUPPORTS_HOTPLUG_CPU
739
        select SYS_HAS_EARLY_PRINTK
740
        select SYS_HAS_CPU_CAVIUM_OCTEON
741
        select SWAP_IO_SPACE
742
        select HW_HAS_PCI
743
        select ZONE_DMA32
744
        select HOLES_IN_ZONE
745
        select ARCH_REQUIRE_GPIOLIB
746
        select LIBFDT
747
        select USE_OF
748
        select ARCH_SPARSEMEM_ENABLE
749
        select SYS_SUPPORTS_SMP
750
        select NR_CPUS_DEFAULT_16
751
        help
752
          This option supports all of the Octeon reference boards from Cavium
753
          Networks. It builds a kernel that dynamically determines the Octeon
754
          CPU type and supports all known board reference implementations.
755
          Some of the supported boards are:
756
                EBT3000
757
                EBH3000
758
                EBH3100
759
                Thunder
760
                Kodama
761
                Hikari
762
          Say Y here for most Octeon reference boards.
763
 
764
config NLM_XLR_BOARD
765
        bool "Netlogic XLR/XLS based systems"
766
        select BOOT_ELF32
767
        select NLM_COMMON
768
        select SYS_HAS_CPU_XLR
769
        select SYS_SUPPORTS_SMP
770
        select HW_HAS_PCI
771
        select SWAP_IO_SPACE
772
        select SYS_SUPPORTS_32BIT_KERNEL
773
        select SYS_SUPPORTS_64BIT_KERNEL
774
        select 64BIT_PHYS_ADDR
775
        select SYS_SUPPORTS_BIG_ENDIAN
776
        select SYS_SUPPORTS_HIGHMEM
777
        select DMA_COHERENT
778
        select NR_CPUS_DEFAULT_32
779
        select CEVT_R4K
780
        select CSRC_R4K
781
        select IRQ_CPU
782
        select ZONE_DMA32 if 64BIT
783
        select SYNC_R4K
784
        select SYS_HAS_EARLY_PRINTK
785
        select SYS_SUPPORTS_ZBOOT
786
        select SYS_SUPPORTS_ZBOOT_UART16550
787
        help
788
          Support for systems based on Netlogic XLR and XLS processors.
789
          Say Y here if you have a XLR or XLS based board.
790
 
791
config NLM_XLP_BOARD
792
        bool "Netlogic XLP based systems"
793
        select BOOT_ELF32
794
        select NLM_COMMON
795
        select SYS_HAS_CPU_XLP
796
        select SYS_SUPPORTS_SMP
797
        select HW_HAS_PCI
798
        select SYS_SUPPORTS_32BIT_KERNEL
799
        select SYS_SUPPORTS_64BIT_KERNEL
800
        select 64BIT_PHYS_ADDR
801
        select SYS_SUPPORTS_BIG_ENDIAN
802
        select SYS_SUPPORTS_LITTLE_ENDIAN
803
        select SYS_SUPPORTS_HIGHMEM
804
        select DMA_COHERENT
805
        select NR_CPUS_DEFAULT_32
806
        select CEVT_R4K
807
        select CSRC_R4K
808
        select IRQ_CPU
809
        select ZONE_DMA32 if 64BIT
810
        select SYNC_R4K
811
        select SYS_HAS_EARLY_PRINTK
812
        select USE_OF
813
        select SYS_SUPPORTS_ZBOOT
814
        select SYS_SUPPORTS_ZBOOT_UART16550
815
        help
816
          This board is based on Netlogic XLP Processor.
817
          Say Y here if you have a XLP based board.
818
 
819
config MIPS_PARAVIRT
820
        bool "Para-Virtualized guest system"
821
        select CEVT_R4K
822
        select CSRC_R4K
823
        select DMA_COHERENT
824
        select SYS_SUPPORTS_64BIT_KERNEL
825
        select SYS_SUPPORTS_32BIT_KERNEL
826
        select SYS_SUPPORTS_BIG_ENDIAN
827
        select SYS_SUPPORTS_SMP
828
        select NR_CPUS_DEFAULT_4
829
        select SYS_HAS_EARLY_PRINTK
830
        select SYS_HAS_CPU_MIPS32_R2
831
        select SYS_HAS_CPU_MIPS64_R2
832
        select SYS_HAS_CPU_CAVIUM_OCTEON
833
        select HW_HAS_PCI
834
        select SWAP_IO_SPACE
835
        help
836
          This option supports guest running under ????
837
 
838
endchoice
839
 
840
source "arch/mips/alchemy/Kconfig"
841
source "arch/mips/ath79/Kconfig"
842
source "arch/mips/bcm47xx/Kconfig"
843
source "arch/mips/bcm63xx/Kconfig"
844
source "arch/mips/jazz/Kconfig"
845
source "arch/mips/jz4740/Kconfig"
846
source "arch/mips/lantiq/Kconfig"
847
source "arch/mips/lasat/Kconfig"
848
source "arch/mips/pmcs-msp71xx/Kconfig"
849
source "arch/mips/ralink/Kconfig"
850
source "arch/mips/sgi-ip27/Kconfig"
851
source "arch/mips/sibyte/Kconfig"
852
source "arch/mips/txx9/Kconfig"
853
source "arch/mips/vr41xx/Kconfig"
854
source "arch/mips/cavium-octeon/Kconfig"
855
source "arch/mips/loongson/Kconfig"
856
source "arch/mips/loongson1/Kconfig"
857
source "arch/mips/netlogic/Kconfig"
858
source "arch/mips/paravirt/Kconfig"
859
 
860
endmenu
861
 
862
config RWSEM_GENERIC_SPINLOCK
863
        bool
864
        default y
865
 
866
config RWSEM_XCHGADD_ALGORITHM
867
        bool
868
 
869
config ARCH_HAS_ILOG2_U32
870
        bool
871
        default n
872
 
873
config ARCH_HAS_ILOG2_U64
874
        bool
875
        default n
876
 
877
config GENERIC_HWEIGHT
878
        bool
879
        default y
880
 
881
config GENERIC_CALIBRATE_DELAY
882
        bool
883
        default y
884
 
885
config SCHED_OMIT_FRAME_POINTER
886
        bool
887
        default y
888
 
889
#
890
# Select some configuration options automatically based on user selections.
891
#
892
config FW_ARC
893
        bool
894
 
895
config ARCH_MAY_HAVE_PC_FDC
896
        bool
897
 
898
config BOOT_RAW
899
        bool
900
 
901
config CEVT_BCM1480
902
        bool
903
 
904
config CEVT_DS1287
905
        bool
906
 
907
config CEVT_GT641XX
908
        bool
909
 
910
config CEVT_R4K
911
        bool
912
 
913
config CEVT_GIC
914
        select MIPS_CM
915
        bool
916
 
917
config CEVT_SB1250
918
        bool
919
 
920
config CEVT_TXX9
921
        bool
922
 
923
config CSRC_BCM1480
924
        bool
925
 
926
config CSRC_IOASIC
927
        bool
928
 
929
config CSRC_R4K
930
        bool
931
 
932
config CSRC_GIC
933
        select MIPS_CM
934
        bool
935
 
936
config CSRC_SB1250
937
        bool
938
 
939
config GPIO_TXX9
940
        select ARCH_REQUIRE_GPIOLIB
941
        bool
942
 
943
config FW_CFE
944
        bool
945
 
946
config ARCH_DMA_ADDR_T_64BIT
947
        def_bool (HIGHMEM && 64BIT_PHYS_ADDR) || 64BIT
948
 
949
config DMA_MAYBE_COHERENT
950
        select DMA_NONCOHERENT
951
        bool
952
 
953
config DMA_COHERENT
954
        bool
955
 
956
config DMA_NONCOHERENT
957
        bool
958
        select NEED_DMA_MAP_STATE
959
 
960
config NEED_DMA_MAP_STATE
961
        bool
962
 
963
config SYS_HAS_EARLY_PRINTK
964
        bool
965
 
966
config HOTPLUG_CPU
967
        bool "Support for hot-pluggable CPUs"
968
        depends on SMP && SYS_SUPPORTS_HOTPLUG_CPU
969
        help
970
          Say Y here to allow turning CPUs off and on. CPUs can be
971
          controlled through /sys/devices/system/cpu.
972
          (Note: power management support will enable this option
973
            automatically on SMP systems. )
974
          Say N if you want to disable CPU hotplug.
975
 
976
config SYS_SUPPORTS_HOTPLUG_CPU
977
        bool
978
 
979
config I8259
980
        bool
981
 
982
config MIPS_BONITO64
983
        bool
984
 
985
config MIPS_MSC
986
        bool
987
 
988
config MIPS_NILE4
989
        bool
990
 
991
config SYNC_R4K
992
        bool
993
 
994
config MIPS_MACHINE
995
        def_bool n
996
 
997
config NO_IOPORT_MAP
998
        def_bool n
999
 
1000
config GENERIC_ISA_DMA
1001
        bool
1002
        select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
1003
        select ISA_DMA_API
1004
 
1005
config GENERIC_ISA_DMA_SUPPORT_BROKEN
1006
        bool
1007
        select GENERIC_ISA_DMA
1008
 
1009
config ISA_DMA_API
1010
        bool
1011
 
1012
config HOLES_IN_ZONE
1013
        bool
1014
 
1015
#
1016
# Endianness selection.  Sufficiently obscure so many users don't know what to
1017
# answer,so we try hard to limit the available choices.  Also the use of a
1018
# choice statement should be more obvious to the user.
1019
#
1020
choice
1021
        prompt "Endianness selection"
1022
        help
1023
          Some MIPS machines can be configured for either little or big endian
1024
          byte order. These modes require different kernels and a different
1025
          Linux distribution.  In general there is one preferred byteorder for a
1026
          particular system but some systems are just as commonly used in the
1027
          one or the other endianness.
1028
 
1029
config CPU_BIG_ENDIAN
1030
        bool "Big endian"
1031
        depends on SYS_SUPPORTS_BIG_ENDIAN
1032
 
1033
config CPU_LITTLE_ENDIAN
1034
        bool "Little endian"
1035
        depends on SYS_SUPPORTS_LITTLE_ENDIAN
1036
 
1037
endchoice
1038
 
1039
config EXPORT_UASM
1040
        bool
1041
 
1042
config SYS_SUPPORTS_APM_EMULATION
1043
        bool
1044
 
1045
config SYS_SUPPORTS_BIG_ENDIAN
1046
        bool
1047
 
1048
config SYS_SUPPORTS_LITTLE_ENDIAN
1049
        bool
1050
 
1051
config SYS_SUPPORTS_HUGETLBFS
1052
        bool
1053
        depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
1054
        default y
1055
 
1056
config MIPS_HUGE_TLB_SUPPORT
1057
        def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE
1058
 
1059
config IRQ_CPU
1060
        bool
1061
 
1062
config IRQ_CPU_RM7K
1063
        bool
1064
 
1065
config IRQ_MSP_SLP
1066
        bool
1067
 
1068
config IRQ_MSP_CIC
1069
        bool
1070
 
1071
config IRQ_TXX9
1072
        bool
1073
 
1074
config IRQ_GT641XX
1075
        bool
1076
 
1077
config IRQ_GIC
1078
        select MIPS_CM
1079
        bool
1080
 
1081
config PCI_GT64XXX_PCI0
1082
        bool
1083
 
1084
config NO_EXCEPT_FILL
1085
        bool
1086
 
1087
config SOC_EMMA2RH
1088
        bool
1089
        select CEVT_R4K
1090
        select CSRC_R4K
1091
        select DMA_NONCOHERENT
1092
        select IRQ_CPU
1093
        select SWAP_IO_SPACE
1094
        select SYS_HAS_CPU_R5500
1095
        select SYS_SUPPORTS_32BIT_KERNEL
1096
        select SYS_SUPPORTS_64BIT_KERNEL
1097
        select SYS_SUPPORTS_BIG_ENDIAN
1098
 
1099
config SOC_PNX833X
1100
        bool
1101
        select CEVT_R4K
1102
        select CSRC_R4K
1103
        select IRQ_CPU
1104
        select DMA_NONCOHERENT
1105
        select SYS_HAS_CPU_MIPS32_R2
1106
        select SYS_SUPPORTS_32BIT_KERNEL
1107
        select SYS_SUPPORTS_LITTLE_ENDIAN
1108
        select SYS_SUPPORTS_BIG_ENDIAN
1109
        select SYS_SUPPORTS_MIPS16
1110
        select CPU_MIPSR2_IRQ_VI
1111
 
1112
config SOC_PNX8335
1113
        bool
1114
        select SOC_PNX833X
1115
 
1116
config SWAP_IO_SPACE
1117
        bool
1118
 
1119
config SGI_HAS_INDYDOG
1120
        bool
1121
 
1122
config SGI_HAS_HAL2
1123
        bool
1124
 
1125
config SGI_HAS_SEEQ
1126
        bool
1127
 
1128
config SGI_HAS_WD93
1129
        bool
1130
 
1131
config SGI_HAS_ZILOG
1132
        bool
1133
 
1134
config SGI_HAS_I8042
1135
        bool
1136
 
1137
config DEFAULT_SGI_PARTITION
1138
        bool
1139
 
1140
config FW_ARC32
1141
        bool
1142
 
1143
config FW_SNIPROM
1144
        bool
1145
 
1146
config BOOT_ELF32
1147
        bool
1148
 
1149
config MIPS_L1_CACHE_SHIFT_4
1150
        bool
1151
 
1152
config MIPS_L1_CACHE_SHIFT_5
1153
        bool
1154
 
1155
config MIPS_L1_CACHE_SHIFT_6
1156
        bool
1157
 
1158
config MIPS_L1_CACHE_SHIFT_7
1159
        bool
1160
 
1161
config MIPS_L1_CACHE_SHIFT
1162
        int
1163
        default "4" if MIPS_L1_CACHE_SHIFT_4
1164
        default "5" if MIPS_L1_CACHE_SHIFT_5
1165
        default "6" if MIPS_L1_CACHE_SHIFT_6
1166
        default "7" if MIPS_L1_CACHE_SHIFT_7
1167
        default "5"
1168
 
1169
config HAVE_STD_PC_SERIAL_PORT
1170
        bool
1171
 
1172
config ARC_CONSOLE
1173
        bool "ARC console support"
1174
        depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
1175
 
1176
config ARC_MEMORY
1177
        bool
1178
        depends on MACH_JAZZ || SNI_RM || SGI_IP32
1179
        default y
1180
 
1181
config ARC_PROMLIB
1182
        bool
1183
        depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
1184
        default y
1185
 
1186
config FW_ARC64
1187
        bool
1188
 
1189
config BOOT_ELF64
1190
        bool
1191
 
1192
menu "CPU selection"
1193
 
1194
choice
1195
        prompt "CPU type"
1196
        default CPU_R4X00
1197
 
1198
config CPU_LOONGSON3
1199
        bool "Loongson 3 CPU"
1200
        depends on SYS_HAS_CPU_LOONGSON3
1201
        select CPU_SUPPORTS_64BIT_KERNEL
1202
        select CPU_SUPPORTS_HIGHMEM
1203
        select CPU_SUPPORTS_HUGEPAGES
1204
        select WEAK_ORDERING
1205
        select WEAK_REORDERING_BEYOND_LLSC
1206
        help
1207
                The Loongson 3 processor implements the MIPS64R2 instruction
1208
                set with many extensions.
1209
 
1210
config CPU_LOONGSON2E
1211
        bool "Loongson 2E"
1212
        depends on SYS_HAS_CPU_LOONGSON2E
1213
        select CPU_LOONGSON2
1214
        help
1215
          The Loongson 2E processor implements the MIPS III instruction set
1216
          with many extensions.
1217
 
1218
          It has an internal FPGA northbridge, which is compatible to
1219
          bonito64.
1220
 
1221
config CPU_LOONGSON2F
1222
        bool "Loongson 2F"
1223
        depends on SYS_HAS_CPU_LOONGSON2F
1224
        select CPU_LOONGSON2
1225
        select ARCH_REQUIRE_GPIOLIB
1226
        help
1227
          The Loongson 2F processor implements the MIPS III instruction set
1228
          with many extensions.
1229
 
1230
          Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
1231
          have a similar programming interface with FPGA northbridge used in
1232
          Loongson2E.
1233
 
1234
config CPU_LOONGSON1B
1235
        bool "Loongson 1B"
1236
        depends on SYS_HAS_CPU_LOONGSON1B
1237
        select CPU_LOONGSON1
1238
        help
1239
          The Loongson 1B is a 32-bit SoC, which implements the MIPS32
1240
          release 2 instruction set.
1241
 
1242
config CPU_MIPS32_R1
1243
        bool "MIPS32 Release 1"
1244
        depends on SYS_HAS_CPU_MIPS32_R1
1245
        select CPU_HAS_PREFETCH
1246
        select CPU_SUPPORTS_32BIT_KERNEL
1247
        select CPU_SUPPORTS_HIGHMEM
1248
        help
1249
          Choose this option to build a kernel for release 1 or later of the
1250
          MIPS32 architecture.  Most modern embedded systems with a 32-bit
1251
          MIPS processor are based on a MIPS32 processor.  If you know the
1252
          specific type of processor in your system, choose those that one
1253
          otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1254
          Release 2 of the MIPS32 architecture is available since several
1255
          years so chances are you even have a MIPS32 Release 2 processor
1256
          in which case you should choose CPU_MIPS32_R2 instead for better
1257
          performance.
1258
 
1259
config CPU_MIPS32_R2
1260
        bool "MIPS32 Release 2"
1261
        depends on SYS_HAS_CPU_MIPS32_R2
1262
        select CPU_HAS_PREFETCH
1263
        select CPU_SUPPORTS_32BIT_KERNEL
1264
        select CPU_SUPPORTS_HIGHMEM
1265
        select CPU_SUPPORTS_MSA
1266
        select HAVE_KVM
1267
        help
1268
          Choose this option to build a kernel for release 2 or later of the
1269
          MIPS32 architecture.  Most modern embedded systems with a 32-bit
1270
          MIPS processor are based on a MIPS32 processor.  If you know the
1271
          specific type of processor in your system, choose those that one
1272
          otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1273
 
1274
config CPU_MIPS64_R1
1275
        bool "MIPS64 Release 1"
1276
        depends on SYS_HAS_CPU_MIPS64_R1
1277
        select CPU_HAS_PREFETCH
1278
        select CPU_SUPPORTS_32BIT_KERNEL
1279
        select CPU_SUPPORTS_64BIT_KERNEL
1280
        select CPU_SUPPORTS_HIGHMEM
1281
        select CPU_SUPPORTS_HUGEPAGES
1282
        help
1283
          Choose this option to build a kernel for release 1 or later of the
1284
          MIPS64 architecture.  Many modern embedded systems with a 64-bit
1285
          MIPS processor are based on a MIPS64 processor.  If you know the
1286
          specific type of processor in your system, choose those that one
1287
          otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1288
          Release 2 of the MIPS64 architecture is available since several
1289
          years so chances are you even have a MIPS64 Release 2 processor
1290
          in which case you should choose CPU_MIPS64_R2 instead for better
1291
          performance.
1292
 
1293
config CPU_MIPS64_R2
1294
        bool "MIPS64 Release 2"
1295
        depends on SYS_HAS_CPU_MIPS64_R2
1296
        select CPU_HAS_PREFETCH
1297
        select CPU_SUPPORTS_32BIT_KERNEL
1298
        select CPU_SUPPORTS_64BIT_KERNEL
1299
        select CPU_SUPPORTS_HIGHMEM
1300
        select CPU_SUPPORTS_HUGEPAGES
1301
        select CPU_SUPPORTS_MSA
1302
        help
1303
          Choose this option to build a kernel for release 2 or later of the
1304
          MIPS64 architecture.  Many modern embedded systems with a 64-bit
1305
          MIPS processor are based on a MIPS64 processor.  If you know the
1306
          specific type of processor in your system, choose those that one
1307
          otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1308
 
1309
config CPU_R3000
1310
        bool "R3000"
1311
        depends on SYS_HAS_CPU_R3000
1312
        select CPU_HAS_WB
1313
        select CPU_SUPPORTS_32BIT_KERNEL
1314
        select CPU_SUPPORTS_HIGHMEM
1315
        help
1316
          Please make sure to pick the right CPU type. Linux/MIPS is not
1317
          designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1318
          *not* work on R4000 machines and vice versa.  However, since most
1319
          of the supported machines have an R4000 (or similar) CPU, R4x00
1320
          might be a safe bet.  If the resulting kernel does not work,
1321
          try to recompile with R3000.
1322
 
1323
config CPU_TX39XX
1324
        bool "R39XX"
1325
        depends on SYS_HAS_CPU_TX39XX
1326
        select CPU_SUPPORTS_32BIT_KERNEL
1327
 
1328
config CPU_VR41XX
1329
        bool "R41xx"
1330
        depends on SYS_HAS_CPU_VR41XX
1331
        select CPU_SUPPORTS_32BIT_KERNEL
1332
        select CPU_SUPPORTS_64BIT_KERNEL
1333
        help
1334
          The options selects support for the NEC VR4100 series of processors.
1335
          Only choose this option if you have one of these processors as a
1336
          kernel built with this option will not run on any other type of
1337
          processor or vice versa.
1338
 
1339
config CPU_R4300
1340
        bool "R4300"
1341
        depends on SYS_HAS_CPU_R4300
1342
        select CPU_SUPPORTS_32BIT_KERNEL
1343
        select CPU_SUPPORTS_64BIT_KERNEL
1344
        help
1345
          MIPS Technologies R4300-series processors.
1346
 
1347
config CPU_R4X00
1348
        bool "R4x00"
1349
        depends on SYS_HAS_CPU_R4X00
1350
        select CPU_SUPPORTS_32BIT_KERNEL
1351
        select CPU_SUPPORTS_64BIT_KERNEL
1352
        select CPU_SUPPORTS_HUGEPAGES
1353
        help
1354
          MIPS Technologies R4000-series processors other than 4300, including
1355
          the R4000, R4400, R4600, and 4700.
1356
 
1357
config CPU_TX49XX
1358
        bool "R49XX"
1359
        depends on SYS_HAS_CPU_TX49XX
1360
        select CPU_HAS_PREFETCH
1361
        select CPU_SUPPORTS_32BIT_KERNEL
1362
        select CPU_SUPPORTS_64BIT_KERNEL
1363
        select CPU_SUPPORTS_HUGEPAGES
1364
 
1365
config CPU_R5000
1366
        bool "R5000"
1367
        depends on SYS_HAS_CPU_R5000
1368
        select CPU_SUPPORTS_32BIT_KERNEL
1369
        select CPU_SUPPORTS_64BIT_KERNEL
1370
        select CPU_SUPPORTS_HUGEPAGES
1371
        help
1372
          MIPS Technologies R5000-series processors other than the Nevada.
1373
 
1374
config CPU_R5432
1375
        bool "R5432"
1376
        depends on SYS_HAS_CPU_R5432
1377
        select CPU_SUPPORTS_32BIT_KERNEL
1378
        select CPU_SUPPORTS_64BIT_KERNEL
1379
        select CPU_SUPPORTS_HUGEPAGES
1380
 
1381
config CPU_R5500
1382
        bool "R5500"
1383
        depends on SYS_HAS_CPU_R5500
1384
        select CPU_SUPPORTS_32BIT_KERNEL
1385
        select CPU_SUPPORTS_64BIT_KERNEL
1386
        select CPU_SUPPORTS_HUGEPAGES
1387
        help
1388
          NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1389
          instruction set.
1390
 
1391
config CPU_R6000
1392
        bool "R6000"
1393
        depends on SYS_HAS_CPU_R6000
1394
        select CPU_SUPPORTS_32BIT_KERNEL
1395
        help
1396
          MIPS Technologies R6000 and R6000A series processors.  Note these
1397
          processors are extremely rare and the support for them is incomplete.
1398
 
1399
config CPU_NEVADA
1400
        bool "RM52xx"
1401
        depends on SYS_HAS_CPU_NEVADA
1402
        select CPU_SUPPORTS_32BIT_KERNEL
1403
        select CPU_SUPPORTS_64BIT_KERNEL
1404
        select CPU_SUPPORTS_HUGEPAGES
1405
        help
1406
          QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1407
 
1408
config CPU_R8000
1409
        bool "R8000"
1410
        depends on SYS_HAS_CPU_R8000
1411
        select CPU_HAS_PREFETCH
1412
        select CPU_SUPPORTS_64BIT_KERNEL
1413
        help
1414
          MIPS Technologies R8000 processors.  Note these processors are
1415
          uncommon and the support for them is incomplete.
1416
 
1417
config CPU_R10000
1418
        bool "R10000"
1419
        depends on SYS_HAS_CPU_R10000
1420
        select CPU_HAS_PREFETCH
1421
        select CPU_SUPPORTS_32BIT_KERNEL
1422
        select CPU_SUPPORTS_64BIT_KERNEL
1423
        select CPU_SUPPORTS_HIGHMEM
1424
        select CPU_SUPPORTS_HUGEPAGES
1425
        help
1426
          MIPS Technologies R10000-series processors.
1427
 
1428
config CPU_RM7000
1429
        bool "RM7000"
1430
        depends on SYS_HAS_CPU_RM7000
1431
        select CPU_HAS_PREFETCH
1432
        select CPU_SUPPORTS_32BIT_KERNEL
1433
        select CPU_SUPPORTS_64BIT_KERNEL
1434
        select CPU_SUPPORTS_HIGHMEM
1435
        select CPU_SUPPORTS_HUGEPAGES
1436
 
1437
config CPU_SB1
1438
        bool "SB1"
1439
        depends on SYS_HAS_CPU_SB1
1440
        select CPU_SUPPORTS_32BIT_KERNEL
1441
        select CPU_SUPPORTS_64BIT_KERNEL
1442
        select CPU_SUPPORTS_HIGHMEM
1443
        select CPU_SUPPORTS_HUGEPAGES
1444
        select WEAK_ORDERING
1445
 
1446
config CPU_CAVIUM_OCTEON
1447
        bool "Cavium Octeon processor"
1448
        depends on SYS_HAS_CPU_CAVIUM_OCTEON
1449
        select CPU_HAS_PREFETCH
1450
        select CPU_SUPPORTS_64BIT_KERNEL
1451
        select WEAK_ORDERING
1452
        select CPU_SUPPORTS_HIGHMEM
1453
        select CPU_SUPPORTS_HUGEPAGES
1454
        select USB_EHCI_BIG_ENDIAN_MMIO
1455
        select MIPS_L1_CACHE_SHIFT_7
1456
        help
1457
          The Cavium Octeon processor is a highly integrated chip containing
1458
          many ethernet hardware widgets for networking tasks. The processor
1459
          can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1460
          Full details can be found at http://www.caviumnetworks.com.
1461
 
1462
config CPU_BMIPS
1463
        bool "Broadcom BMIPS"
1464
        depends on SYS_HAS_CPU_BMIPS
1465
        select CPU_MIPS32
1466
        select CPU_BMIPS32_3300 if SYS_HAS_CPU_BMIPS32_3300
1467
        select CPU_BMIPS4350 if SYS_HAS_CPU_BMIPS4350
1468
        select CPU_BMIPS4380 if SYS_HAS_CPU_BMIPS4380
1469
        select CPU_BMIPS5000 if SYS_HAS_CPU_BMIPS5000
1470
        select CPU_SUPPORTS_32BIT_KERNEL
1471
        select DMA_NONCOHERENT
1472
        select IRQ_CPU
1473
        select SWAP_IO_SPACE
1474
        select WEAK_ORDERING
1475
        select CPU_SUPPORTS_HIGHMEM
1476
        select CPU_HAS_PREFETCH
1477
        help
1478
          Support for BMIPS32/3300/4350/4380 and BMIPS5000 processors.
1479
 
1480
config CPU_XLR
1481
        bool "Netlogic XLR SoC"
1482
        depends on SYS_HAS_CPU_XLR
1483
        select CPU_SUPPORTS_32BIT_KERNEL
1484
        select CPU_SUPPORTS_64BIT_KERNEL
1485
        select CPU_SUPPORTS_HIGHMEM
1486
        select CPU_SUPPORTS_HUGEPAGES
1487
        select WEAK_ORDERING
1488
        select WEAK_REORDERING_BEYOND_LLSC
1489
        help
1490
          Netlogic Microsystems XLR/XLS processors.
1491
 
1492
config CPU_XLP
1493
        bool "Netlogic XLP SoC"
1494
        depends on SYS_HAS_CPU_XLP
1495
        select CPU_SUPPORTS_32BIT_KERNEL
1496
        select CPU_SUPPORTS_64BIT_KERNEL
1497
        select CPU_SUPPORTS_HIGHMEM
1498
        select WEAK_ORDERING
1499
        select WEAK_REORDERING_BEYOND_LLSC
1500
        select CPU_HAS_PREFETCH
1501
        select CPU_MIPSR2
1502
        help
1503
          Netlogic Microsystems XLP processors.
1504
endchoice
1505
 
1506
config CPU_MIPS32_3_5_FEATURES
1507
        bool "MIPS32 Release 3.5 Features"
1508
        depends on SYS_HAS_CPU_MIPS32_R3_5
1509
        depends on CPU_MIPS32_R2
1510
        help
1511
          Choose this option to build a kernel for release 2 or later of the
1512
          MIPS32 architecture including features from the 3.5 release such as
1513
          support for Enhanced Virtual Addressing (EVA).
1514
 
1515
config CPU_MIPS32_3_5_EVA
1516
        bool "Enhanced Virtual Addressing (EVA)"
1517
        depends on CPU_MIPS32_3_5_FEATURES
1518
        select EVA
1519
        default y
1520
        help
1521
          Choose this option if you want to enable the Enhanced Virtual
1522
          Addressing (EVA) on your MIPS32 core (such as proAptiv).
1523
          One of its primary benefits is an increase in the maximum size
1524
          of lowmem (up to 3GB). If unsure, say 'N' here.
1525
 
1526
if CPU_LOONGSON2F
1527
config CPU_NOP_WORKAROUNDS
1528
        bool
1529
 
1530
config CPU_JUMP_WORKAROUNDS
1531
        bool
1532
 
1533
config CPU_LOONGSON2F_WORKAROUNDS
1534
        bool "Loongson 2F Workarounds"
1535
        default y
1536
        select CPU_NOP_WORKAROUNDS
1537
        select CPU_JUMP_WORKAROUNDS
1538
        help
1539
          Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which
1540
          require workarounds.  Without workarounds the system may hang
1541
          unexpectedly.  For more information please refer to the gas
1542
          -mfix-loongson2f-nop and -mfix-loongson2f-jump options.
1543
 
1544
          Loongson 2F03 and later have fixed these issues and no workarounds
1545
          are needed.  The workarounds have no significant side effect on them
1546
          but may decrease the performance of the system so this option should
1547
          be disabled unless the kernel is intended to be run on 2F01 or 2F02
1548
          systems.
1549
 
1550
          If unsure, please say Y.
1551
endif # CPU_LOONGSON2F
1552
 
1553
config SYS_SUPPORTS_ZBOOT
1554
        bool
1555
        select HAVE_KERNEL_GZIP
1556
        select HAVE_KERNEL_BZIP2
1557
        select HAVE_KERNEL_LZ4
1558
        select HAVE_KERNEL_LZMA
1559
        select HAVE_KERNEL_LZO
1560
        select HAVE_KERNEL_XZ
1561
 
1562
config SYS_SUPPORTS_ZBOOT_UART16550
1563
        bool
1564
        select SYS_SUPPORTS_ZBOOT
1565
 
1566
config CPU_LOONGSON2
1567
        bool
1568
        select CPU_SUPPORTS_32BIT_KERNEL
1569
        select CPU_SUPPORTS_64BIT_KERNEL
1570
        select CPU_SUPPORTS_HIGHMEM
1571
        select CPU_SUPPORTS_HUGEPAGES
1572
 
1573
config CPU_LOONGSON1
1574
        bool
1575
        select CPU_MIPS32
1576
        select CPU_MIPSR2
1577
        select CPU_HAS_PREFETCH
1578
        select CPU_SUPPORTS_32BIT_KERNEL
1579
        select CPU_SUPPORTS_HIGHMEM
1580
 
1581
config CPU_BMIPS32_3300
1582
        select SMP_UP if SMP
1583
        bool
1584
 
1585
config CPU_BMIPS4350
1586
        bool
1587
        select SYS_SUPPORTS_SMP
1588
        select SYS_SUPPORTS_HOTPLUG_CPU
1589
 
1590
config CPU_BMIPS4380
1591
        bool
1592
        select SYS_SUPPORTS_SMP
1593
        select SYS_SUPPORTS_HOTPLUG_CPU
1594
 
1595
config CPU_BMIPS5000
1596
        bool
1597
        select MIPS_CPU_SCACHE
1598
        select SYS_SUPPORTS_SMP
1599
        select SYS_SUPPORTS_HOTPLUG_CPU
1600
 
1601
config SYS_HAS_CPU_LOONGSON3
1602
        bool
1603
        select CPU_SUPPORTS_CPUFREQ
1604
 
1605
config SYS_HAS_CPU_LOONGSON2E
1606
        bool
1607
 
1608
config SYS_HAS_CPU_LOONGSON2F
1609
        bool
1610
        select CPU_SUPPORTS_CPUFREQ
1611
        select CPU_SUPPORTS_ADDRWINCFG if 64BIT
1612
        select CPU_SUPPORTS_UNCACHED_ACCELERATED
1613
 
1614
config SYS_HAS_CPU_LOONGSON1B
1615
        bool
1616
 
1617
config SYS_HAS_CPU_MIPS32_R1
1618
        bool
1619
 
1620
config SYS_HAS_CPU_MIPS32_R2
1621
        bool
1622
 
1623
config SYS_HAS_CPU_MIPS32_R3_5
1624
        bool
1625
 
1626
config SYS_HAS_CPU_MIPS64_R1
1627
        bool
1628
 
1629
config SYS_HAS_CPU_MIPS64_R2
1630
        bool
1631
 
1632
config SYS_HAS_CPU_R3000
1633
        bool
1634
 
1635
config SYS_HAS_CPU_TX39XX
1636
        bool
1637
 
1638
config SYS_HAS_CPU_VR41XX
1639
        bool
1640
 
1641
config SYS_HAS_CPU_R4300
1642
        bool
1643
 
1644
config SYS_HAS_CPU_R4X00
1645
        bool
1646
 
1647
config SYS_HAS_CPU_TX49XX
1648
        bool
1649
 
1650
config SYS_HAS_CPU_R5000
1651
        bool
1652
 
1653
config SYS_HAS_CPU_R5432
1654
        bool
1655
 
1656
config SYS_HAS_CPU_R5500
1657
        bool
1658
 
1659
config SYS_HAS_CPU_R6000
1660
        bool
1661
 
1662
config SYS_HAS_CPU_NEVADA
1663
        bool
1664
 
1665
config SYS_HAS_CPU_R8000
1666
        bool
1667
 
1668
config SYS_HAS_CPU_R10000
1669
        bool
1670
 
1671
config SYS_HAS_CPU_RM7000
1672
        bool
1673
 
1674
config SYS_HAS_CPU_SB1
1675
        bool
1676
 
1677
config SYS_HAS_CPU_CAVIUM_OCTEON
1678
        bool
1679
 
1680
config SYS_HAS_CPU_BMIPS
1681
        bool
1682
 
1683
config SYS_HAS_CPU_BMIPS32_3300
1684
        bool
1685
        select SYS_HAS_CPU_BMIPS
1686
 
1687
config SYS_HAS_CPU_BMIPS4350
1688
        bool
1689
        select SYS_HAS_CPU_BMIPS
1690
 
1691
config SYS_HAS_CPU_BMIPS4380
1692
        bool
1693
        select SYS_HAS_CPU_BMIPS
1694
 
1695
config SYS_HAS_CPU_BMIPS5000
1696
        bool
1697
        select SYS_HAS_CPU_BMIPS
1698
 
1699
config SYS_HAS_CPU_XLR
1700
        bool
1701
 
1702
config SYS_HAS_CPU_XLP
1703
        bool
1704
 
1705
config MIPS_MALTA_PM
1706
        depends on MIPS_MALTA
1707
        depends on PCI
1708
        bool
1709
        default y
1710
 
1711
#
1712
# CPU may reorder R->R, R->W, W->R, W->W
1713
# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1714
#
1715
config WEAK_ORDERING
1716
        bool
1717
 
1718
#
1719
# CPU may reorder reads and writes beyond LL/SC
1720
# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1721
#
1722
config WEAK_REORDERING_BEYOND_LLSC
1723
        bool
1724
endmenu
1725
 
1726
#
1727
# These two indicate any level of the MIPS32 and MIPS64 architecture
1728
#
1729
config CPU_MIPS32
1730
        bool
1731
        default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1732
 
1733
config CPU_MIPS64
1734
        bool
1735
        default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1736
 
1737
#
1738
# These two indicate the revision of the architecture, either Release 1 or Release 2
1739
#
1740
config CPU_MIPSR1
1741
        bool
1742
        default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1743
 
1744
config CPU_MIPSR2
1745
        bool
1746
        default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
1747
 
1748
config EVA
1749
        bool
1750
 
1751
config SYS_SUPPORTS_32BIT_KERNEL
1752
        bool
1753
config SYS_SUPPORTS_64BIT_KERNEL
1754
        bool
1755
config CPU_SUPPORTS_32BIT_KERNEL
1756
        bool
1757
config CPU_SUPPORTS_64BIT_KERNEL
1758
        bool
1759
config CPU_SUPPORTS_CPUFREQ
1760
        bool
1761
config CPU_SUPPORTS_ADDRWINCFG
1762
        bool
1763
config CPU_SUPPORTS_HUGEPAGES
1764
        bool
1765
config CPU_SUPPORTS_UNCACHED_ACCELERATED
1766
        bool
1767
config MIPS_PGD_C0_CONTEXT
1768
        bool
1769
        default y if 64BIT && CPU_MIPSR2 && !CPU_XLP
1770
 
1771
#
1772
# Set to y for ptrace access to watch registers.
1773
#
1774
config HARDWARE_WATCHPOINTS
1775
       bool
1776
       default y if CPU_MIPSR1 || CPU_MIPSR2
1777
 
1778
menu "Kernel type"
1779
 
1780
choice
1781
        prompt "Kernel code model"
1782
        help
1783
          You should only select this option if you have a workload that
1784
          actually benefits from 64-bit processing or if your machine has
1785
          large memory.  You will only be presented a single option in this
1786
          menu if your system does not support both 32-bit and 64-bit kernels.
1787
 
1788
config 32BIT
1789
        bool "32-bit kernel"
1790
        depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1791
        select TRAD_SIGNALS
1792
        help
1793
          Select this option if you want to build a 32-bit kernel.
1794
config 64BIT
1795
        bool "64-bit kernel"
1796
        depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1797
        help
1798
          Select this option if you want to build a 64-bit kernel.
1799
 
1800
endchoice
1801
 
1802
config KVM_GUEST
1803
        bool "KVM Guest Kernel"
1804
        depends on BROKEN_ON_SMP
1805
        help
1806
          Select this option if building a guest kernel for KVM (Trap & Emulate) mode
1807
 
1808
config KVM_GUEST_TIMER_FREQ
1809
        int "Count/Compare Timer Frequency (MHz)"
1810
        depends on KVM_GUEST
1811
        default 100
1812
        help
1813
          Set this to non-zero if building a guest kernel for KVM to skip RTC
1814
          emulation when determining guest CPU Frequency. Instead, the guest's
1815
          timer frequency is specified directly.
1816
 
1817
choice
1818
        prompt "Kernel page size"
1819
        default PAGE_SIZE_4KB
1820
 
1821
config PAGE_SIZE_4KB
1822
        bool "4kB"
1823
        depends on !CPU_LOONGSON2 && !CPU_LOONGSON3
1824
        help
1825
         This option select the standard 4kB Linux page size.  On some
1826
         R3000-family processors this is the only available page size.  Using
1827
         4kB page size will minimize memory consumption and is therefore
1828
         recommended for low memory systems.
1829
 
1830
config PAGE_SIZE_8KB
1831
        bool "8kB"
1832
        depends on CPU_R8000 || CPU_CAVIUM_OCTEON
1833
        help
1834
          Using 8kB page size will result in higher performance kernel at
1835
          the price of higher memory consumption.  This option is available
1836
          only on R8000 and cnMIPS processors.  Note that you will need a
1837
          suitable Linux distribution to support this.
1838
 
1839
config PAGE_SIZE_16KB
1840
        bool "16kB"
1841
        depends on !CPU_R3000 && !CPU_TX39XX
1842
        help
1843
          Using 16kB page size will result in higher performance kernel at
1844
          the price of higher memory consumption.  This option is available on
1845
          all non-R3000 family processors.  Note that you will need a suitable
1846
          Linux distribution to support this.
1847
 
1848
config PAGE_SIZE_32KB
1849
        bool "32kB"
1850
        depends on CPU_CAVIUM_OCTEON
1851
        help
1852
          Using 32kB page size will result in higher performance kernel at
1853
          the price of higher memory consumption.  This option is available
1854
          only on cnMIPS cores.  Note that you will need a suitable Linux
1855
          distribution to support this.
1856
 
1857
config PAGE_SIZE_64KB
1858
        bool "64kB"
1859
        depends on !CPU_R3000 && !CPU_TX39XX
1860
        help
1861
          Using 64kB page size will result in higher performance kernel at
1862
          the price of higher memory consumption.  This option is available on
1863
          all non-R3000 family processor.  Not that at the time of this
1864
          writing this option is still high experimental.
1865
 
1866
endchoice
1867
 
1868
config FORCE_MAX_ZONEORDER
1869
        int "Maximum zone order"
1870
        range 14 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_64KB
1871
        default "14" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_64KB
1872
        range 13 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_32KB
1873
        default "13" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_32KB
1874
        range 12 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_16KB
1875
        default "12" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_16KB
1876
        range 11 64
1877
        default "11"
1878
        help
1879
          The kernel memory allocator divides physically contiguous memory
1880
          blocks into "zones", where each zone is a power of two number of
1881
          pages.  This option selects the largest power of two that the kernel
1882
          keeps in the memory allocator.  If you need to allocate very large
1883
          blocks of physically contiguous memory, then you may need to
1884
          increase this value.
1885
 
1886
          This config option is actually maximum order plus one. For example,
1887
          a value of 11 means that the largest free memory block is 2^10 pages.
1888
 
1889
          The page size is not necessarily 4KB.  Keep this in mind
1890
          when choosing a value for this option.
1891
 
1892
config CEVT_GIC
1893
        bool "Use GIC global counter for clock events"
1894
        depends on IRQ_GIC && !MIPS_SEAD3
1895
        help
1896
          Use the GIC global counter for the clock events. The R4K clock
1897
          event driver is always present, so if the platform ends up not
1898
          detecting a GIC, it will fall back to the R4K timer for the
1899
          generation of clock events.
1900
 
1901
config BOARD_SCACHE
1902
        bool
1903
 
1904
config IP22_CPU_SCACHE
1905
        bool
1906
        select BOARD_SCACHE
1907
 
1908
#
1909
# Support for a MIPS32 / MIPS64 style S-caches
1910
#
1911
config MIPS_CPU_SCACHE
1912
        bool
1913
        select BOARD_SCACHE
1914
        select MIPS_L1_CACHE_SHIFT_6
1915
 
1916
config R5000_CPU_SCACHE
1917
        bool
1918
        select BOARD_SCACHE
1919
 
1920
config RM7000_CPU_SCACHE
1921
        bool
1922
        select BOARD_SCACHE
1923
 
1924
config SIBYTE_DMA_PAGEOPS
1925
        bool "Use DMA to clear/copy pages"
1926
        depends on CPU_SB1
1927
        help
1928
          Instead of using the CPU to zero and copy pages, use a Data Mover
1929
          channel.  These DMA channels are otherwise unused by the standard
1930
          SiByte Linux port.  Seems to give a small performance benefit.
1931
 
1932
config CPU_HAS_PREFETCH
1933
        bool
1934
 
1935
config CPU_GENERIC_DUMP_TLB
1936
        bool
1937
        default y if !(CPU_R3000 || CPU_R6000 || CPU_R8000 || CPU_TX39XX)
1938
 
1939
config CPU_R4K_FPU
1940
        bool
1941
        default y if !(CPU_R3000 || CPU_R6000 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1942
 
1943
config CPU_R4K_CACHE_TLB
1944
        bool
1945
        default y if !(CPU_R3000 || CPU_R8000 || CPU_SB1 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1946
 
1947
config MIPS_MT_SMP
1948
        bool "MIPS MT SMP support (1 TC on each available VPE)"
1949
        depends on SYS_SUPPORTS_MULTITHREADING
1950
        select CPU_MIPSR2_IRQ_VI
1951
        select CPU_MIPSR2_IRQ_EI
1952
        select SYNC_R4K
1953
        select MIPS_GIC_IPI
1954
        select MIPS_MT
1955
        select SMP
1956
        select SMP_UP
1957
        select SYS_SUPPORTS_SMP
1958
        select SYS_SUPPORTS_SCHED_SMT
1959
        select MIPS_PERF_SHARED_TC_COUNTERS
1960
        help
1961
          This is a kernel model which is known as SMVP. This is supported
1962
          on cores with the MT ASE and uses the available VPEs to implement
1963
          virtual processors which supports SMP. This is equivalent to the
1964
          Intel Hyperthreading feature. For further information go to
1965
          .
1966
 
1967
config MIPS_MT
1968
        bool
1969
 
1970
config SCHED_SMT
1971
        bool "SMT (multithreading) scheduler support"
1972
        depends on SYS_SUPPORTS_SCHED_SMT
1973
        default n
1974
        help
1975
          SMT scheduler support improves the CPU scheduler's decision making
1976
          when dealing with MIPS MT enabled cores at a cost of slightly
1977
          increased overhead in some places. If unsure say N here.
1978
 
1979
config SYS_SUPPORTS_SCHED_SMT
1980
        bool
1981
 
1982
config SYS_SUPPORTS_MULTITHREADING
1983
        bool
1984
 
1985
config MIPS_MT_FPAFF
1986
        bool "Dynamic FPU affinity for FP-intensive threads"
1987
        default y
1988
        depends on MIPS_MT_SMP
1989
 
1990
config MIPS_VPE_LOADER
1991
        bool "VPE loader support."
1992
        depends on SYS_SUPPORTS_MULTITHREADING && MODULES
1993
        select CPU_MIPSR2_IRQ_VI
1994
        select CPU_MIPSR2_IRQ_EI
1995
        select MIPS_MT
1996
        help
1997
          Includes a loader for loading an elf relocatable object
1998
          onto another VPE and running it.
1999
 
2000
config MIPS_VPE_LOADER_CMP
2001
        bool
2002
        default "y"
2003
        depends on MIPS_VPE_LOADER && MIPS_CMP
2004
 
2005
config MIPS_VPE_LOADER_MT
2006
        bool
2007
        default "y"
2008
        depends on MIPS_VPE_LOADER && !MIPS_CMP
2009
 
2010
config MIPS_VPE_LOADER_TOM
2011
        bool "Load VPE program into memory hidden from linux"
2012
        depends on MIPS_VPE_LOADER
2013
        default y
2014
        help
2015
          The loader can use memory that is present but has been hidden from
2016
          Linux using the kernel command line option "mem=xxMB". It's up to
2017
          you to ensure the amount you put in the option and the space your
2018
          program requires is less or equal to the amount physically present.
2019
 
2020
config MIPS_VPE_APSP_API
2021
        bool "Enable support for AP/SP API (RTLX)"
2022
        depends on MIPS_VPE_LOADER
2023
        help
2024
 
2025
config MIPS_VPE_APSP_API_CMP
2026
        bool
2027
        default "y"
2028
        depends on MIPS_VPE_APSP_API && MIPS_CMP
2029
 
2030
config MIPS_VPE_APSP_API_MT
2031
        bool
2032
        default "y"
2033
        depends on MIPS_VPE_APSP_API && !MIPS_CMP
2034
 
2035
config MIPS_CMP
2036
        bool "MIPS CMP framework support (DEPRECATED)"
2037
        depends on SYS_SUPPORTS_MIPS_CMP
2038
        select MIPS_GIC_IPI
2039
        select SYNC_R4K
2040
        select WEAK_ORDERING
2041
        default n
2042
        help
2043
          Select this if you are using a bootloader which implements the "CMP
2044
          framework" protocol (ie. YAMON) and want your kernel to make use of
2045
          its ability to start secondary CPUs.
2046
 
2047
          Unless you have a specific need, you should use CONFIG_MIPS_CPS
2048
          instead of this.
2049
 
2050
config MIPS_CPS
2051
        bool "MIPS Coherent Processing System support"
2052
        depends on SYS_SUPPORTS_MIPS_CPS
2053
        select MIPS_CM
2054
        select MIPS_CPC
2055
        select MIPS_CPS_PM if HOTPLUG_CPU
2056
        select MIPS_GIC_IPI
2057
        select SMP
2058
        select SYNC_R4K if (CEVT_R4K || CSRC_R4K)
2059
        select SYS_SUPPORTS_HOTPLUG_CPU
2060
        select SYS_SUPPORTS_SMP
2061
        select WEAK_ORDERING
2062
        help
2063
          Select this if you wish to run an SMP kernel across multiple cores
2064
          within a MIPS Coherent Processing System. When this option is
2065
          enabled the kernel will probe for other cores and boot them with
2066
          no external assistance. It is safe to enable this when hardware
2067
          support is unavailable.
2068
 
2069
config MIPS_CPS_PM
2070
        bool
2071
 
2072
config MIPS_GIC_IPI
2073
        bool
2074
 
2075
config MIPS_CM
2076
        bool
2077
 
2078
config MIPS_CPC
2079
        bool
2080
 
2081
config SB1_PASS_1_WORKAROUNDS
2082
        bool
2083
        depends on CPU_SB1_PASS_1
2084
        default y
2085
 
2086
config SB1_PASS_2_WORKAROUNDS
2087
        bool
2088
        depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
2089
        default y
2090
 
2091
config SB1_PASS_2_1_WORKAROUNDS
2092
        bool
2093
        depends on CPU_SB1 && CPU_SB1_PASS_2
2094
        default y
2095
 
2096
 
2097
config 64BIT_PHYS_ADDR
2098
        bool
2099
 
2100
config ARCH_PHYS_ADDR_T_64BIT
2101
       def_bool 64BIT_PHYS_ADDR
2102
 
2103
config CPU_HAS_SMARTMIPS
2104
        depends on SYS_SUPPORTS_SMARTMIPS
2105
        bool "Support for the SmartMIPS ASE"
2106
        help
2107
          SmartMIPS is a extension of the MIPS32 architecture aimed at
2108
          increased security at both hardware and software level for
2109
          smartcards.  Enabling this option will allow proper use of the
2110
          SmartMIPS instructions by Linux applications.  However a kernel with
2111
          this option will not work on a MIPS core without SmartMIPS core.  If
2112
          you don't know you probably don't have SmartMIPS and should say N
2113
          here.
2114
 
2115
config CPU_MICROMIPS
2116
        depends on SYS_SUPPORTS_MICROMIPS
2117
        bool "Build kernel using microMIPS ISA"
2118
        help
2119
          When this option is enabled the kernel will be built using the
2120
          microMIPS ISA
2121
 
2122
config CPU_HAS_MSA
2123
        bool "Support for the MIPS SIMD Architecture"
2124
        depends on CPU_SUPPORTS_MSA
2125
        default y
2126
        help
2127
          MIPS SIMD Architecture (MSA) introduces 128 bit wide vector registers
2128
          and a set of SIMD instructions to operate on them. When this option
2129
          is enabled the kernel will support allocating & switching MSA
2130
          vector register contexts. If you know that your kernel will only be
2131
          running on CPUs which do not support MSA or that your userland will
2132
          not be making use of it then you may wish to say N here to reduce
2133
          the size & complexity of your kernel.
2134
 
2135
          If unsure, say Y.
2136
 
2137
config CPU_HAS_WB
2138
        bool
2139
 
2140
config XKS01
2141
        bool
2142
 
2143
#
2144
# Vectored interrupt mode is an R2 feature
2145
#
2146
config CPU_MIPSR2_IRQ_VI
2147
        bool
2148
 
2149
#
2150
# Extended interrupt mode is an R2 feature
2151
#
2152
config CPU_MIPSR2_IRQ_EI
2153
        bool
2154
 
2155
config CPU_HAS_SYNC
2156
        bool
2157
        depends on !CPU_R3000
2158
        default y
2159
 
2160
#
2161
# CPU non-features
2162
#
2163
config CPU_DADDI_WORKAROUNDS
2164
        bool
2165
 
2166
config CPU_R4000_WORKAROUNDS
2167
        bool
2168
        select CPU_R4400_WORKAROUNDS
2169
 
2170
config CPU_R4400_WORKAROUNDS
2171
        bool
2172
 
2173
#
2174
# - Highmem only makes sense for the 32-bit kernel.
2175
# - The current highmem code will only work properly on physically indexed
2176
#   caches such as R3000, SB1, R7000 or those that look like they're virtually
2177
#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
2178
#   moment we protect the user and offer the highmem option only on machines
2179
#   where it's known to be safe.  This will not offer highmem on a few systems
2180
#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
2181
#   indexed CPUs but we're playing safe.
2182
# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
2183
#   know they might have memory configurations that could make use of highmem
2184
#   support.
2185
#
2186
config HIGHMEM
2187
        bool "High Memory Support"
2188
        depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM && !CPU_MIPS32_3_5_EVA
2189
 
2190
config CPU_SUPPORTS_HIGHMEM
2191
        bool
2192
 
2193
config SYS_SUPPORTS_HIGHMEM
2194
        bool
2195
 
2196
config SYS_SUPPORTS_SMARTMIPS
2197
        bool
2198
 
2199
config SYS_SUPPORTS_MICROMIPS
2200
        bool
2201
 
2202
config SYS_SUPPORTS_MIPS16
2203
        bool
2204
        help
2205
          This option must be set if a kernel might be executed on a MIPS16-
2206
          enabled CPU even if MIPS16 is not actually being used.  In other
2207
          words, it makes the kernel MIPS16-tolerant.
2208
 
2209
config CPU_SUPPORTS_MSA
2210
        bool
2211
 
2212
config ARCH_FLATMEM_ENABLE
2213
        def_bool y
2214
        depends on !NUMA && !CPU_LOONGSON2
2215
 
2216
config ARCH_DISCONTIGMEM_ENABLE
2217
        bool
2218
        default y if SGI_IP27
2219
        help
2220
          Say Y to support efficient handling of discontiguous physical memory,
2221
          for architectures which are either NUMA (Non-Uniform Memory Access)
2222
          or have huge holes in the physical address space for other reasons.
2223
          See  for more.
2224
 
2225
config ARCH_SPARSEMEM_ENABLE
2226
        bool
2227
        select SPARSEMEM_STATIC
2228
 
2229
config NUMA
2230
        bool "NUMA Support"
2231
        depends on SYS_SUPPORTS_NUMA
2232
        help
2233
          Say Y to compile the kernel to support NUMA (Non-Uniform Memory
2234
          Access).  This option improves performance on systems with more
2235
          than two nodes; on two node systems it is generally better to
2236
          leave it disabled; on single node systems disable this option
2237
          disabled.
2238
 
2239
config SYS_SUPPORTS_NUMA
2240
        bool
2241
 
2242
config NODES_SHIFT
2243
        int
2244
        default "6"
2245
        depends on NEED_MULTIPLE_NODES
2246
 
2247
config HW_PERF_EVENTS
2248
        bool "Enable hardware performance counter support for perf events"
2249
        depends on PERF_EVENTS && OPROFILE=n && (CPU_MIPS32 || CPU_MIPS64 || CPU_R10000 || CPU_SB1 || CPU_CAVIUM_OCTEON || CPU_XLP)
2250
        default y
2251
        help
2252
          Enable hardware performance counter support for perf events. If
2253
          disabled, perf events will use software events only.
2254
 
2255
source "mm/Kconfig"
2256
 
2257
config SMP
2258
        bool "Multi-Processing support"
2259
        depends on SYS_SUPPORTS_SMP
2260
        help
2261
          This enables support for systems with more than one CPU. If you have
2262
          a system with only one CPU, say N. If you have a system with more
2263
          than one CPU, say Y.
2264
 
2265
          If you say N here, the kernel will run on uni- and multiprocessor
2266
          machines, but will use only one CPU of a multiprocessor machine. If
2267
          you say Y here, the kernel will run on many, but not all,
2268
          uniprocessor machines. On a uniprocessor machine, the kernel
2269
          will run faster if you say N here.
2270
 
2271
          People using multiprocessor machines who say Y here should also say
2272
          Y to "Enhanced Real Time Clock Support", below.
2273
 
2274
          See also the SMP-HOWTO available at
2275
          .
2276
 
2277
          If you don't know what to do here, say N.
2278
 
2279
config SMP_UP
2280
        bool
2281
 
2282
config SYS_SUPPORTS_MIPS_CMP
2283
        bool
2284
 
2285
config SYS_SUPPORTS_MIPS_CPS
2286
        bool
2287
 
2288
config SYS_SUPPORTS_SMP
2289
        bool
2290
 
2291
config NR_CPUS_DEFAULT_4
2292
        bool
2293
 
2294
config NR_CPUS_DEFAULT_8
2295
        bool
2296
 
2297
config NR_CPUS_DEFAULT_16
2298
        bool
2299
 
2300
config NR_CPUS_DEFAULT_32
2301
        bool
2302
 
2303
config NR_CPUS_DEFAULT_64
2304
        bool
2305
 
2306
config NR_CPUS
2307
        int "Maximum number of CPUs (2-256)"
2308
        range 2 256
2309
        depends on SMP
2310
        default "4" if NR_CPUS_DEFAULT_4
2311
        default "8" if NR_CPUS_DEFAULT_8
2312
        default "16" if NR_CPUS_DEFAULT_16
2313
        default "32" if NR_CPUS_DEFAULT_32
2314
        default "64" if NR_CPUS_DEFAULT_64
2315
        help
2316
          This allows you to specify the maximum number of CPUs which this
2317
          kernel will support.  The maximum supported value is 32 for 32-bit
2318
          kernel and 64 for 64-bit kernels; the minimum value which makes
2319
          sense is 1 for Qemu (useful only for kernel debugging purposes)
2320
          and 2 for all others.
2321
 
2322
          This is purely to save memory - each supported CPU adds
2323
          approximately eight kilobytes to the kernel image.  For best
2324
          performance should round up your number of processors to the next
2325
          power of two.
2326
 
2327
config MIPS_PERF_SHARED_TC_COUNTERS
2328
        bool
2329
 
2330
#
2331
# Timer Interrupt Frequency Configuration
2332
#
2333
 
2334
choice
2335
        prompt "Timer frequency"
2336
        default HZ_250
2337
        help
2338
         Allows the configuration of the timer frequency.
2339
 
2340
        config HZ_48
2341
                bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
2342
 
2343
        config HZ_100
2344
                bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
2345
 
2346
        config HZ_128
2347
                bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
2348
 
2349
        config HZ_250
2350
                bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
2351
 
2352
        config HZ_256
2353
                bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
2354
 
2355
        config HZ_1000
2356
                bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
2357
 
2358
        config HZ_1024
2359
                bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
2360
 
2361
endchoice
2362
 
2363
config SYS_SUPPORTS_48HZ
2364
        bool
2365
 
2366
config SYS_SUPPORTS_100HZ
2367
        bool
2368
 
2369
config SYS_SUPPORTS_128HZ
2370
        bool
2371
 
2372
config SYS_SUPPORTS_250HZ
2373
        bool
2374
 
2375
config SYS_SUPPORTS_256HZ
2376
        bool
2377
 
2378
config SYS_SUPPORTS_1000HZ
2379
        bool
2380
 
2381
config SYS_SUPPORTS_1024HZ
2382
        bool
2383
 
2384
config SYS_SUPPORTS_ARBIT_HZ
2385
        bool
2386
        default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
2387
                     !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
2388
                     !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
2389
                     !SYS_SUPPORTS_1024HZ
2390
 
2391
config HZ
2392
        int
2393
        default 48 if HZ_48
2394
        default 100 if HZ_100
2395
        default 128 if HZ_128
2396
        default 250 if HZ_250
2397
        default 256 if HZ_256
2398
        default 1000 if HZ_1000
2399
        default 1024 if HZ_1024
2400
 
2401
source "kernel/Kconfig.preempt"
2402
 
2403
config KEXEC
2404
        bool "Kexec system call"
2405
        help
2406
          kexec is a system call that implements the ability to shutdown your
2407
          current kernel, and to start another kernel.  It is like a reboot
2408
          but it is independent of the system firmware.   And like a reboot
2409
          you can start any kernel with it, not just Linux.
2410
 
2411
          The name comes from the similarity to the exec system call.
2412
 
2413
          It is an ongoing process to be certain the hardware in a machine
2414
          is properly shutdown, so do not be surprised if this code does not
2415
          initially work for you.  As of this writing the exact hardware
2416
          interface is strongly in flux, so no good recommendation can be
2417
          made.
2418
 
2419
config CRASH_DUMP
2420
          bool "Kernel crash dumps"
2421
          help
2422
          Generate crash dump after being started by kexec.
2423
          This should be normally only set in special crash dump kernels
2424
          which are loaded in the main kernel with kexec-tools into
2425
          a specially reserved region and then later executed after
2426
          a crash by kdump/kexec. The crash dump kernel must be compiled
2427
          to a memory address not used by the main kernel or firmware using
2428
          PHYSICAL_START.
2429
 
2430
config PHYSICAL_START
2431
          hex "Physical address where the kernel is loaded"
2432
          default "0xffffffff84000000" if 64BIT
2433
          default "0x84000000" if 32BIT
2434
          depends on CRASH_DUMP
2435
          help
2436
          This gives the CKSEG0 or KSEG0 address where the kernel is loaded.
2437
          If you plan to use kernel for capturing the crash dump change
2438
          this value to start of the reserved region (the "X" value as
2439
          specified in the "crashkernel=YM@XM" command line boot parameter
2440
          passed to the panic-ed kernel).
2441
 
2442
config SECCOMP
2443
        bool "Enable seccomp to safely compute untrusted bytecode"
2444
        depends on PROC_FS
2445
        default y
2446
        help
2447
          This kernel feature is useful for number crunching applications
2448
          that may need to compute untrusted bytecode during their
2449
          execution. By using pipes or other transports made available to
2450
          the process as file descriptors supporting the read/write
2451
          syscalls, it's possible to isolate those applications in
2452
          their own address space using seccomp. Once seccomp is
2453
          enabled via /proc//seccomp, it cannot be disabled
2454
          and the task is only allowed to execute a few safe syscalls
2455
          defined by each seccomp mode.
2456
 
2457
          If unsure, say Y. Only embedded should say N here.
2458
 
2459
config MIPS_O32_FP64_SUPPORT
2460
        bool "Support for O32 binaries using 64-bit FP (EXPERIMENTAL)"
2461
        depends on 32BIT || MIPS32_O32
2462
        help
2463
          When this is enabled, the kernel will support use of 64-bit floating
2464
          point registers with binaries using the O32 ABI along with the
2465
          EF_MIPS_FP64 ELF header flag (typically built with -mfp64). On
2466
          32-bit MIPS systems this support is at the cost of increasing the
2467
          size and complexity of the compiled FPU emulator. Thus if you are
2468
          running a MIPS32 system and know that none of your userland binaries
2469
          will require 64-bit floating point, you may wish to reduce the size
2470
          of your kernel & potentially improve FP emulation performance by
2471
          saying N here.
2472
 
2473
          Although binutils currently supports use of this flag the details
2474
          concerning its effect upon the O32 ABI in userland are still being
2475
          worked on. In order to avoid userland becoming dependant upon current
2476
          behaviour before the details have been finalised, this option should
2477
          be considered experimental and only enabled by those working upon
2478
          said details.
2479
 
2480
          If unsure, say N.
2481
 
2482
config USE_OF
2483
        bool
2484
        select OF
2485
        select OF_EARLY_FLATTREE
2486
        select IRQ_DOMAIN
2487
 
2488
endmenu
2489
 
2490
config LOCKDEP_SUPPORT
2491
        bool
2492
        default y
2493
 
2494
config STACKTRACE_SUPPORT
2495
        bool
2496
        default y
2497
 
2498
source "init/Kconfig"
2499
 
2500
source "kernel/Kconfig.freezer"
2501
 
2502
menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2503
 
2504
config HW_HAS_EISA
2505
        bool
2506
config HW_HAS_PCI
2507
        bool
2508
 
2509
config PCI
2510
        bool "Support for PCI controller"
2511
        depends on HW_HAS_PCI
2512
        select PCI_DOMAINS
2513
        select NO_GENERIC_PCI_IOPORT_MAP
2514
        help
2515
          Find out whether you have a PCI motherboard. PCI is the name of a
2516
          bus system, i.e. the way the CPU talks to the other stuff inside
2517
          your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2518
          say Y, otherwise N.
2519
 
2520
config HT_PCI
2521
        bool "Support for HT-linked PCI"
2522
        default y
2523
        depends on CPU_LOONGSON3
2524
        select PCI
2525
        select PCI_DOMAINS
2526
        help
2527
          Loongson family machines use Hyper-Transport bus for inter-core
2528
          connection and device connection. The PCI bus is a subordinate
2529
          linked at HT. Choose Y for Loongson-3 based machines.
2530
 
2531
config PCI_DOMAINS
2532
        bool
2533
 
2534
source "drivers/pci/Kconfig"
2535
 
2536
source "drivers/pci/pcie/Kconfig"
2537
 
2538
#
2539
# ISA support is now enabled via select.  Too many systems still have the one
2540
# or other ISA chip on the board that users don't know about so don't expect
2541
# users to choose the right thing ...
2542
#
2543
config ISA
2544
        bool
2545
 
2546
config EISA
2547
        bool "EISA support"
2548
        depends on HW_HAS_EISA
2549
        select ISA
2550
        select GENERIC_ISA_DMA
2551
        ---help---
2552
          The Extended Industry Standard Architecture (EISA) bus was
2553
          developed as an open alternative to the IBM MicroChannel bus.
2554
 
2555
          The EISA bus provided some of the features of the IBM MicroChannel
2556
          bus while maintaining backward compatibility with cards made for
2557
          the older ISA bus.  The EISA bus saw limited use between 1988 and
2558
          1995 when it was made obsolete by the PCI bus.
2559
 
2560
          Say Y here if you are building a kernel for an EISA-based machine.
2561
 
2562
          Otherwise, say N.
2563
 
2564
source "drivers/eisa/Kconfig"
2565
 
2566
config TC
2567
        bool "TURBOchannel support"
2568
        depends on MACH_DECSTATION
2569
        help
2570
          TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2571
          processors.  TURBOchannel programming specifications are available
2572
          at:
2573
          
2574
          and:
2575
          
2576
          Linux driver support status is documented at:
2577
          
2578
 
2579
config MMU
2580
        bool
2581
        default y
2582
 
2583
config I8253
2584
        bool
2585
        select CLKSRC_I8253
2586
        select CLKEVT_I8253
2587
        select MIPS_EXTERNAL_TIMER
2588
 
2589
config ZONE_DMA
2590
        bool
2591
 
2592
config ZONE_DMA32
2593
        bool
2594
 
2595
source "drivers/pcmcia/Kconfig"
2596
 
2597
source "drivers/pci/hotplug/Kconfig"
2598
 
2599
config RAPIDIO
2600
        tristate "RapidIO support"
2601
        depends on PCI
2602
        default n
2603
        help
2604
          If you say Y here, the kernel will include drivers and
2605
          infrastructure code to support RapidIO interconnect devices.
2606
 
2607
source "drivers/rapidio/Kconfig"
2608
 
2609
endmenu
2610
 
2611
menu "Executable file formats"
2612
 
2613
source "fs/Kconfig.binfmt"
2614
 
2615
config TRAD_SIGNALS
2616
        bool
2617
 
2618
config MIPS32_COMPAT
2619
        bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2620
        depends on 64BIT
2621
        help
2622
          Select this option if you want Linux/MIPS 32-bit binary
2623
          compatibility. Since all software available for Linux/MIPS is
2624
          currently 32-bit you should say Y here.
2625
 
2626
config COMPAT
2627
        bool
2628
        depends on MIPS32_COMPAT
2629
        select ARCH_WANT_OLD_COMPAT_IPC
2630
        default y
2631
 
2632
config SYSVIPC_COMPAT
2633
        bool
2634
        depends on COMPAT && SYSVIPC
2635
        default y
2636
 
2637
config MIPS32_O32
2638
        bool "Kernel support for o32 binaries"
2639
        depends on MIPS32_COMPAT
2640
        help
2641
          Select this option if you want to run o32 binaries.  These are pure
2642
          32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
2643
          existing binaries are in this format.
2644
 
2645
          If unsure, say Y.
2646
 
2647
config MIPS32_N32
2648
        bool "Kernel support for n32 binaries"
2649
        depends on MIPS32_COMPAT
2650
        help
2651
          Select this option if you want to run n32 binaries.  These are
2652
          64-bit binaries using 32-bit quantities for addressing and certain
2653
          data that would normally be 64-bit.  They are used in special
2654
          cases.
2655
 
2656
          If unsure, say N.
2657
 
2658
config BINFMT_ELF32
2659
        bool
2660
        default y if MIPS32_O32 || MIPS32_N32
2661
 
2662
endmenu
2663
 
2664
menu "Power management options"
2665
 
2666
config ARCH_HIBERNATION_POSSIBLE
2667
        def_bool y
2668
        depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2669
 
2670
config ARCH_SUSPEND_POSSIBLE
2671
        def_bool y
2672
        depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2673
 
2674
source "kernel/power/Kconfig"
2675
 
2676
endmenu
2677
 
2678
config MIPS_EXTERNAL_TIMER
2679
        bool
2680
 
2681
menu "CPU Power Management"
2682
 
2683
if CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER
2684
source "drivers/cpufreq/Kconfig"
2685
endif
2686
 
2687
source "drivers/cpuidle/Kconfig"
2688
 
2689
endmenu
2690
 
2691
source "net/Kconfig"
2692
 
2693
source "drivers/Kconfig"
2694
 
2695
source "drivers/firmware/Kconfig"
2696
 
2697
source "fs/Kconfig"
2698
 
2699
source "arch/mips/Kconfig.debug"
2700
 
2701
source "security/Kconfig"
2702
 
2703
source "crypto/Kconfig"
2704
 
2705
source "lib/Kconfig"
2706
 
2707
source "arch/mips/kvm/Kconfig"

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.