1 # SPDX-License-Identifier: GPL-2.0 2 config SUPERH 3 def_bool y 4 select ARCH_32BIT_OFF_T 5 select ARCH_HAS_CPU_CACHE_ALIASING 6 select ARCH_HAVE_NMI_SAFE_CMPXCHG if ( 7 select ARCH_HAS_BINFMT_FLAT if !MMU 8 select ARCH_HAS_CPU_FINALIZE_INIT 9 select ARCH_HAS_CURRENT_STACK_POINTER 10 select ARCH_HAS_GIGANTIC_PAGE 11 select ARCH_HAS_GCOV_PROFILE_ALL 12 select ARCH_HAS_PTE_SPECIAL 13 select ARCH_HAS_TICK_BROADCAST if GENE 14 select ARCH_HIBERNATION_POSSIBLE if MM 15 select ARCH_MIGHT_HAVE_PC_PARPORT 16 select ARCH_WANT_IPC_PARSE_VERSION 17 select ARCH_NEED_CMPXCHG_1_EMU 18 select CPU_NO_EFFICIENT_FFS 19 select DMA_DECLARE_COHERENT 20 select GENERIC_ATOMIC64 21 select GENERIC_CMOS_UPDATE if SH_SH03 22 select GENERIC_IDLE_POLL_SETUP 23 select GENERIC_IRQ_SHOW 24 select GENERIC_LIB_ASHLDI3 25 select GENERIC_LIB_ASHRDI3 26 select GENERIC_LIB_LSHRDI3 27 select GENERIC_PCI_IOMAP if PCI 28 select GENERIC_SCHED_CLOCK 29 select GENERIC_SMP_IDLE_THREAD 30 select GUP_GET_PXX_LOW_HIGH if X2TLB 31 select HAS_IOPORT if HAS_IOPORT_MAP 32 select GENERIC_IOREMAP if MMU 33 select HAVE_ARCH_AUDITSYSCALL 34 select HAVE_ARCH_KGDB 35 select HAVE_ARCH_SECCOMP_FILTER 36 select HAVE_ARCH_TRACEHOOK 37 select HAVE_DEBUG_BUGVERBOSE 38 select HAVE_DEBUG_KMEMLEAK 39 select HAVE_DYNAMIC_FTRACE 40 select HAVE_GUP_FAST if MMU 41 select HAVE_FUNCTION_GRAPH_TRACER 42 select HAVE_FUNCTION_TRACER 43 select HAVE_FTRACE_MCOUNT_RECORD 44 select HAVE_HW_BREAKPOINT 45 select HAVE_IOREMAP_PROT if MMU && !X2 46 select HAVE_KERNEL_BZIP2 47 select HAVE_KERNEL_GZIP 48 select HAVE_KERNEL_LZMA 49 select HAVE_KERNEL_LZO 50 select HAVE_KERNEL_XZ 51 select HAVE_KPROBES 52 select HAVE_KRETPROBES 53 select HAVE_MIXED_BREAKPOINTS_REGS 54 select HAVE_MOD_ARCH_SPECIFIC if DWARF 55 select HAVE_NMI 56 select HAVE_PATA_PLATFORM 57 select HAVE_PERF_EVENTS 58 select HAVE_REGS_AND_STACK_ACCESS_API 59 select HAVE_UID16 60 select HAVE_SOFTIRQ_ON_OWN_STACK if IR 61 select HAVE_STACKPROTECTOR 62 select HAVE_SYSCALL_TRACEPOINTS 63 select IRQ_FORCED_THREADING 64 select LOCK_MM_AND_FIND_VMA 65 select MODULES_USE_ELF_RELA 66 select NEED_SG_DMA_LENGTH 67 select NO_DMA if !MMU && !DMA_COHERENT 68 select NO_GENERIC_PCI_IOPORT_MAP if PC 69 select OLD_SIGACTION 70 select OLD_SIGSUSPEND 71 select PCI_DOMAINS if PCI 72 select PERF_EVENTS 73 select PERF_USE_VMALLOC 74 select RTC_LIB 75 select SPARSE_IRQ 76 select TRACE_IRQFLAGS_SUPPORT 77 help 78 The SuperH is a RISC processor targe 79 and consumer electronics; it was als 80 gaming console. The SuperH port has 81 <http://www.linux-sh.org/>. 82 83 config GENERIC_BUG 84 def_bool y 85 depends on BUG 86 87 config GENERIC_HWEIGHT 88 def_bool y 89 90 config GENERIC_CALIBRATE_DELAY 91 bool 92 93 config GENERIC_LOCKBREAK 94 def_bool y 95 depends on SMP && PREEMPTION 96 97 config ARCH_SUSPEND_POSSIBLE 98 def_bool n 99 100 config ARCH_HIBERNATION_POSSIBLE 101 def_bool n 102 103 config SYS_SUPPORTS_APM_EMULATION 104 bool 105 select ARCH_SUSPEND_POSSIBLE 106 107 config SYS_SUPPORTS_SMP 108 bool 109 110 config SYS_SUPPORTS_NUMA 111 bool 112 113 config STACKTRACE_SUPPORT 114 def_bool y 115 116 config LOCKDEP_SUPPORT 117 def_bool y 118 119 config ARCH_HAS_ILOG2_U32 120 def_bool n 121 122 config ARCH_HAS_ILOG2_U64 123 def_bool n 124 125 config NO_IOPORT_MAP 126 def_bool !PCI 127 depends on !SH_SHMIN && !SH_HP6XX && ! 128 !SH_DREAMCAST 129 130 config IO_TRAPPED 131 bool 132 133 config SWAP_IO_SPACE 134 bool 135 136 config DMA_COHERENT 137 bool 138 139 config DMA_NONCOHERENT 140 def_bool !NO_DMA && !DMA_COHERENT 141 select ARCH_HAS_DMA_PREP_COHERENT 142 select ARCH_HAS_SYNC_DMA_FOR_DEVICE 143 select DMA_DIRECT_REMAP 144 145 config PGTABLE_LEVELS 146 default 3 if X2TLB 147 default 2 148 149 menu "System type" 150 151 # 152 # Processor families 153 # 154 config CPU_SH2 155 bool 156 select SH_INTC 157 158 config CPU_SH2A 159 bool 160 select CPU_SH2 161 select UNCACHED_MAPPING 162 163 config CPU_J2 164 bool 165 select CPU_SH2 166 select OF 167 select OF_EARLY_FLATTREE 168 169 config CPU_SH3 170 bool 171 select CPU_HAS_INTEVT 172 select CPU_HAS_SR_RB 173 select SH_INTC 174 select SYS_SUPPORTS_SH_TMU 175 176 config CPU_SH4 177 bool 178 select ARCH_SUPPORTS_HUGETLBFS if MMU 179 select CPU_HAS_INTEVT 180 select CPU_HAS_SR_RB 181 select CPU_HAS_FPU if !CPU_SH4AL_DSP 182 select SH_INTC 183 select SYS_SUPPORTS_SH_TMU 184 185 config CPU_SH4A 186 bool 187 select CPU_SH4 188 189 config CPU_SH4AL_DSP 190 bool 191 select CPU_SH4A 192 select CPU_HAS_DSP 193 194 config CPU_SHX2 195 bool 196 197 config CPU_SHX3 198 bool 199 select DMA_COHERENT 200 select SYS_SUPPORTS_SMP 201 select SYS_SUPPORTS_NUMA 202 203 config ARCH_SHMOBILE 204 bool 205 select ARCH_SUSPEND_POSSIBLE 206 select PM 207 208 config CPU_HAS_PMU 209 depends on CPU_SH4 || CPU_SH4A 210 default y 211 bool 212 213 choice 214 prompt "Processor sub-type selection" 215 216 # 217 # Processor subtypes 218 # 219 220 # SH-2 Processor Support 221 222 config CPU_SUBTYPE_SH7619 223 bool "Support SH7619 processor" 224 select CPU_SH2 225 select SYS_SUPPORTS_SH_CMT 226 227 config CPU_SUBTYPE_J2 228 bool "Support J2 processor" 229 select CPU_J2 230 select SYS_SUPPORTS_SMP 231 select GENERIC_CLOCKEVENTS_BROADCAST i 232 233 # SH-2A Processor Support 234 235 config CPU_SUBTYPE_SH7201 236 bool "Support SH7201 processor" 237 select CPU_SH2A 238 select CPU_HAS_FPU 239 select SYS_SUPPORTS_SH_MTU2 240 241 config CPU_SUBTYPE_SH7203 242 bool "Support SH7203 processor" 243 select CPU_SH2A 244 select CPU_HAS_FPU 245 select SYS_SUPPORTS_SH_CMT 246 select SYS_SUPPORTS_SH_MTU2 247 select PINCTRL 248 249 config CPU_SUBTYPE_SH7206 250 bool "Support SH7206 processor" 251 select CPU_SH2A 252 select SYS_SUPPORTS_SH_CMT 253 select SYS_SUPPORTS_SH_MTU2 254 255 config CPU_SUBTYPE_SH7263 256 bool "Support SH7263 processor" 257 select CPU_SH2A 258 select CPU_HAS_FPU 259 select SYS_SUPPORTS_SH_CMT 260 select SYS_SUPPORTS_SH_MTU2 261 262 config CPU_SUBTYPE_SH7264 263 bool "Support SH7264 processor" 264 select CPU_SH2A 265 select CPU_HAS_FPU 266 select SYS_SUPPORTS_SH_CMT 267 select SYS_SUPPORTS_SH_MTU2 268 select PINCTRL 269 270 config CPU_SUBTYPE_SH7269 271 bool "Support SH7269 processor" 272 select CPU_SH2A 273 select CPU_HAS_FPU 274 select SYS_SUPPORTS_SH_CMT 275 select SYS_SUPPORTS_SH_MTU2 276 select PINCTRL 277 278 config CPU_SUBTYPE_MXG 279 bool "Support MX-G processor" 280 select CPU_SH2A 281 select SYS_SUPPORTS_SH_MTU2 282 help 283 Select MX-G if running on an R8A0302 284 285 # SH-3 Processor Support 286 287 config CPU_SUBTYPE_SH7705 288 bool "Support SH7705 processor" 289 select CPU_SH3 290 291 config CPU_SUBTYPE_SH7706 292 bool "Support SH7706 processor" 293 select CPU_SH3 294 help 295 Select SH7706 if you have a 133 Mhz 296 297 config CPU_SUBTYPE_SH7707 298 bool "Support SH7707 processor" 299 select CPU_SH3 300 help 301 Select SH7707 if you have a 60 Mhz 302 303 config CPU_SUBTYPE_SH7708 304 bool "Support SH7708 processor" 305 select CPU_SH3 306 help 307 Select SH7708 if you have a 60 Mhz 308 if you have a 100 Mhz SH-3 HD6417708 309 310 config CPU_SUBTYPE_SH7709 311 bool "Support SH7709 processor" 312 select CPU_SH3 313 help 314 Select SH7709 if you have a 80 Mhz 315 316 config CPU_SUBTYPE_SH7710 317 bool "Support SH7710 processor" 318 select CPU_SH3 319 select CPU_HAS_DSP 320 help 321 Select SH7710 if you have a SH3-DSP 322 323 config CPU_SUBTYPE_SH7712 324 bool "Support SH7712 processor" 325 select CPU_SH3 326 select CPU_HAS_DSP 327 help 328 Select SH7712 if you have a SH3-DSP 329 330 config CPU_SUBTYPE_SH7720 331 bool "Support SH7720 processor" 332 select CPU_SH3 333 select CPU_HAS_DSP 334 select SYS_SUPPORTS_SH_CMT 335 select USB_OHCI_SH if USB_OHCI_HCD 336 select PINCTRL 337 help 338 Select SH7720 if you have a SH3-DSP 339 340 config CPU_SUBTYPE_SH7721 341 bool "Support SH7721 processor" 342 select CPU_SH3 343 select CPU_HAS_DSP 344 select SYS_SUPPORTS_SH_CMT 345 select USB_OHCI_SH if USB_OHCI_HCD 346 help 347 Select SH7721 if you have a SH3-DSP 348 349 # SH-4 Processor Support 350 351 config CPU_SUBTYPE_SH7750 352 bool "Support SH7750 processor" 353 select CPU_SH4 354 help 355 Select SH7750 if you have a 200 Mhz 356 357 config CPU_SUBTYPE_SH7091 358 bool "Support SH7091 processor" 359 select CPU_SH4 360 help 361 Select SH7091 if you have an SH-4 ba 362 the Dreamcast, Naomi, and Naomi 2). 363 364 config CPU_SUBTYPE_SH7750R 365 bool "Support SH7750R processor" 366 select CPU_SH4 367 368 config CPU_SUBTYPE_SH7750S 369 bool "Support SH7750S processor" 370 select CPU_SH4 371 372 config CPU_SUBTYPE_SH7751 373 bool "Support SH7751 processor" 374 select CPU_SH4 375 help 376 Select SH7751 if you have a 166 Mhz 377 or if you have a HD6417751R CPU. 378 379 config CPU_SUBTYPE_SH7751R 380 bool "Support SH7751R processor" 381 select CPU_SH4 382 383 config CPU_SUBTYPE_SH7760 384 bool "Support SH7760 processor" 385 select CPU_SH4 386 387 # SH-4A Processor Support 388 389 config CPU_SUBTYPE_SH7723 390 bool "Support SH7723 processor" 391 select CPU_SH4A 392 select CPU_SHX2 393 select ARCH_SHMOBILE 394 select ARCH_SPARSEMEM_ENABLE 395 select SYS_SUPPORTS_SH_CMT 396 select PINCTRL 397 help 398 Select SH7723 if you have an SH-Mobi 399 400 config CPU_SUBTYPE_SH7724 401 bool "Support SH7724 processor" 402 select CPU_SH4A 403 select CPU_SHX2 404 select ARCH_SHMOBILE 405 select ARCH_SPARSEMEM_ENABLE 406 select SYS_SUPPORTS_SH_CMT 407 select PINCTRL 408 help 409 Select SH7724 if you have an SH-Mobi 410 411 config CPU_SUBTYPE_SH7734 412 bool "Support SH7734 processor" 413 select CPU_SH4A 414 select CPU_SHX2 415 select PINCTRL 416 help 417 Select SH7734 if you have a SH4A SH7 418 419 config CPU_SUBTYPE_SH7757 420 bool "Support SH7757 processor" 421 select CPU_SH4A 422 select CPU_SHX2 423 select PINCTRL 424 help 425 Select SH7757 if you have a SH4A SH7 426 427 config CPU_SUBTYPE_SH7763 428 bool "Support SH7763 processor" 429 select CPU_SH4A 430 select USB_OHCI_SH if USB_OHCI_HCD 431 help 432 Select SH7763 if you have a SH4A SH7 433 434 config CPU_SUBTYPE_SH7770 435 bool "Support SH7770 processor" 436 select CPU_SH4A 437 438 config CPU_SUBTYPE_SH7780 439 bool "Support SH7780 processor" 440 select CPU_SH4A 441 442 config CPU_SUBTYPE_SH7785 443 bool "Support SH7785 processor" 444 select CPU_SH4A 445 select CPU_SHX2 446 select ARCH_SPARSEMEM_ENABLE 447 select SYS_SUPPORTS_NUMA 448 select PINCTRL 449 450 config CPU_SUBTYPE_SH7786 451 bool "Support SH7786 processor" 452 select CPU_SH4A 453 select CPU_SHX3 454 select CPU_HAS_PTEAEX 455 select GENERIC_CLOCKEVENTS_BROADCAST i 456 select USB_OHCI_SH if USB_OHCI_HCD 457 select USB_EHCI_SH if USB_EHCI_HCD 458 select PINCTRL 459 460 config CPU_SUBTYPE_SHX3 461 bool "Support SH-X3 processor" 462 select CPU_SH4A 463 select CPU_SHX3 464 select GENERIC_CLOCKEVENTS_BROADCAST i 465 select GPIOLIB 466 select PINCTRL 467 468 # SH4AL-DSP Processor Support 469 470 config CPU_SUBTYPE_SH7343 471 bool "Support SH7343 processor" 472 select CPU_SH4AL_DSP 473 select ARCH_SHMOBILE 474 select SYS_SUPPORTS_SH_CMT 475 476 config CPU_SUBTYPE_SH7722 477 bool "Support SH7722 processor" 478 select CPU_SH4AL_DSP 479 select CPU_SHX2 480 select ARCH_SHMOBILE 481 select ARCH_SPARSEMEM_ENABLE 482 select SYS_SUPPORTS_NUMA 483 select SYS_SUPPORTS_SH_CMT 484 select PINCTRL 485 486 config CPU_SUBTYPE_SH7366 487 bool "Support SH7366 processor" 488 select CPU_SH4AL_DSP 489 select CPU_SHX2 490 select ARCH_SHMOBILE 491 select ARCH_SPARSEMEM_ENABLE 492 select SYS_SUPPORTS_NUMA 493 select SYS_SUPPORTS_SH_CMT 494 495 endchoice 496 497 source "arch/sh/mm/Kconfig" 498 499 source "arch/sh/Kconfig.cpu" 500 501 source "arch/sh/boards/Kconfig" 502 503 menu "Timer and clock configuration" 504 505 config SH_PCLK_FREQ 506 int "Peripheral clock frequency (in Hz 507 depends on SH_CLK_CPG_LEGACY 508 default "31250000" if CPU_SUBTYPE_SH76 509 default "33333333" if CPU_SUBTYPE_SH77 510 CPU_SUBTYPE_SH77 511 CPU_SUBTYPE_SH77 512 CPU_SUBTYPE_SH72 513 CPU_SUBTYPE_SH72 514 CPU_SUBTYPE_SH72 515 CPU_SUBTYPE_MXG 516 default "60000000" if CPU_SUBTYPE_SH77 517 default "50000000" 518 help 519 This option is used to specify the p 520 This is necessary for determining th 521 platforms lacking an RTC. 522 523 config SH_CLK_CPG 524 def_bool y 525 526 config SH_CLK_CPG_LEGACY 527 depends on SH_CLK_CPG 528 def_bool y if !CPU_SUBTYPE_SH7785 && ! 529 !CPU_SHX3 && !CPU_SUBTYP 530 !CPU_SUBTYPE_SH7734 && ! 531 !CPU_SUBTYPE_SH7269 532 533 endmenu 534 535 menu "CPU Frequency scaling" 536 source "drivers/cpufreq/Kconfig" 537 endmenu 538 539 source "arch/sh/drivers/Kconfig" 540 541 endmenu 542 543 menu "Kernel features" 544 545 source "kernel/Kconfig.hz" 546 547 config ARCH_SUPPORTS_KEXEC 548 def_bool MMU 549 550 config ARCH_SUPPORTS_CRASH_DUMP 551 def_bool BROKEN_ON_SMP 552 553 config ARCH_SUPPORTS_KEXEC_JUMP 554 def_bool y 555 556 config PHYSICAL_START 557 hex "Physical address where the kernel 558 default MEMORY_START 559 help 560 This gives the physical address wher 561 and is ordinarily the same as MEMORY 562 563 Different values are primarily used 564 where the fail safe kernel needs to 565 than the panic-ed kernel. 566 567 config SMP 568 bool "Symmetric multi-processing suppo 569 depends on SYS_SUPPORTS_SMP 570 help 571 This enables support for systems wit 572 a system with only one CPU, say N. I 573 than one CPU, say Y. 574 575 If you say N here, the kernel will r 576 machines, but will use only one CPU 577 you say Y here, the kernel will run 578 uniprocessor machines. On a uniproce 579 will run faster if you say N here. 580 581 People using multiprocessor machines 582 Y to "Enhanced Real Time Clock Suppo 583 584 See also <file:Documentation/admin-g 585 available at <https://www.tldp.org/d 586 587 If you don't know what to do here, s 588 589 config NR_CPUS 590 int "Maximum number of CPUs (2-32)" 591 range 2 32 592 depends on SMP 593 default "4" if CPU_SUBTYPE_SHX3 594 default "2" 595 help 596 This allows you to specify the maxim 597 kernel will support. The maximum su 598 minimum value which makes sense is 2 599 600 This is purely to save memory - each 601 approximately eight kilobytes to the 602 603 config HOTPLUG_CPU 604 bool "Support for hot-pluggable CPUs ( 605 depends on SMP 606 help 607 Say Y here to experiment with turnin 608 can be controlled through /sys/devic 609 610 config GUSA 611 def_bool y 612 depends on !SMP 613 help 614 This enables support for gUSA (gener 615 This is the default implementation f 616 CPUs, and is used by the libc, among 617 618 For additional information, design i 619 in <http://lc.linux.or.jp/lc2002/pap 620 621 This should only be disabled for spe 622 atomicity implementations exist. 623 624 config GUSA_RB 625 bool "Implement atomic operations by r 626 depends on GUSA && CPU_SH3 || (CPU_SH4 627 help 628 Enabling this option will allow the 629 atomic operations using a software i 630 store-conditional (LLSC). On machine 631 LLSC, this should be more efficient 632 disabling interrupts around the atom 633 634 config HW_PERF_EVENTS 635 bool "Enable hardware performance coun 636 depends on PERF_EVENTS && CPU_HAS_PMU 637 default y 638 help 639 Enable hardware performance counter 640 disabled, perf events will use softw 641 642 source "drivers/sh/Kconfig" 643 644 endmenu 645 646 menu "Boot options" 647 648 config USE_BUILTIN_DTB 649 bool "Use builtin DTB" 650 default n 651 depends on SH_DEVICE_TREE 652 help 653 Link a device tree blob for particul 654 suppressing use of the DTB pointer p 655 This option should only be used with 656 not capable of providing a DTB to th 657 hardware without stable device tree 658 659 config BUILTIN_DTB_SOURCE 660 string "Source file for builtin DTB" 661 default "" 662 depends on USE_BUILTIN_DTB 663 help 664 Base name (without suffix, relative 665 a DTS file that will be used to prod 666 kernel. 667 668 config ZERO_PAGE_OFFSET 669 hex 670 default "0x00010000" if PAGE_SIZE_64KB 671 SH_7751_SOLUTI 672 default "0x00004000" if PAGE_SIZE_16KB 673 default "0x00002000" if PAGE_SIZE_8KB 674 default "0x00001000" 675 help 676 This sets the default offset of zero 677 678 config BOOT_LINK_OFFSET 679 hex 680 default "0x00210000" if SH_SHMIN 681 default "0x00810000" if SH_7780_SOLUTI 682 default "0x009e0000" if SH_TITAN 683 default "0x01800000" if SH_SDK7780 684 default "0x02000000" if SH_EDOSK7760 685 default "0x00800000" 686 help 687 This option allows you to set the li 688 This can be useful if you are on a b 689 memory. 690 691 config ENTRY_OFFSET 692 hex 693 default "0x00001000" if PAGE_SIZE_4KB 694 default "0x00002000" if PAGE_SIZE_8KB 695 default "0x00004000" if PAGE_SIZE_16KB 696 default "0x00010000" if PAGE_SIZE_64KB 697 default "0x00000000" 698 699 config ROMIMAGE_MMCIF 700 bool "Include MMCIF loader in romImage 701 depends on CPU_SUBTYPE_SH7724 702 help 703 Say Y here to include experimental M 704 romImage. With this enabled it is po 705 kernel image to an MMC card and boot 706 the reset vector. At reset the proce 707 first part of the romImage which in 708 image to RAM using the MMCIF hardwar 709 710 choice 711 prompt "Kernel command line" 712 default CMDLINE_OVERWRITE 713 help 714 Setting this option allows the kerne 715 to be set. 716 717 config CMDLINE_OVERWRITE 718 bool "Overwrite bootloader kernel argu 719 help 720 Given string will overwrite any argu 721 a bootloader. 722 723 config CMDLINE_EXTEND 724 bool "Extend bootloader kernel argumen 725 help 726 Given string will be concatenated wi 727 by a bootloader. 728 729 config CMDLINE_FROM_BOOTLOADER 730 bool "Use bootloader kernel arguments" 731 help 732 Uses the command-line options passed 733 734 endchoice 735 736 config CMDLINE 737 string "Kernel command line arguments 738 depends on CMDLINE_OVERWRITE || CMDLIN 739 default "console=ttySC1,115200" 740 741 endmenu 742 743 menu "Bus options" 744 745 config MAPLE 746 bool "Maple Bus support" 747 depends on SH_DREAMCAST 748 help 749 The Maple Bus is SEGA's serial commun 750 on the Dreamcast. Without this bus su 751 get your Dreamcast keyboard etc to wo 752 probably want to say 'Y' here, unless 753 Dreamcast with a serial line terminal 754 connection. 755 756 endmenu 757 758 menu "Power management options (EXPERIMENTAL)" 759 760 source "kernel/power/Kconfig" 761 762 source "drivers/cpuidle/Kconfig" 763 764 endmenu
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.