1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2ea0e1a9aSPaul Mundtconfig SUPERH 3ea0e1a9aSPaul Mundt def_bool y 4aef0f78eSChristoph Hellwig select ARCH_HAS_BINFMT_FLAT if !MMU 53010a5eaSLaurent Dufour select ARCH_HAS_PTE_SPECIAL 645624ac3SRich Felker select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST 709d8dd93SMark Salter select ARCH_MIGHT_HAVE_PC_PARPORT 807c75d7aSVladimir Murzin select ARCH_NO_COHERENT_DMA_MMAP if !MMU 9560b8c0eSRob Landley select HAVE_PATA_PLATFORM 106d803ba7SJean-Christop PLAGNIOL-VILLARD select CLKDEV_LOOKUP 11ff4c25f2SChristoph Hellwig select DMA_DECLARE_COHERENT 12ce816fa8SUwe Kleine-König select HAVE_IDE if HAS_IOPORT_MAP 13534cfbeeSTejun Heo select HAVE_MEMBLOCK_NODE_MAP 1442d4b839SMathieu Desnoyers select HAVE_OPROFILE 15d7b01f78SPaul Mundt select HAVE_ARCH_TRACEHOOK 16cdd6c482SIngo Molnar select HAVE_PERF_EVENTS 179b2a60c4SCatalin Marinas select HAVE_DEBUG_BUGVERBOSE 183c9b9accSChristoph Hellwig select HAVE_GENERIC_GUP 197563bbf8SMark Brown select ARCH_HAVE_CUSTOM_GPIO_H 20df013ffbSHuang Ying select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A) 21957e3facSRiku Voipio select ARCH_HAS_GCOV_PROFILE_ALL 2272f0c137SPaul Mundt select PERF_USE_VMALLOC 23b69ec42bSCatalin Marinas select HAVE_DEBUG_KMEMLEAK 24df8ce259SPaul Mundt select HAVE_KERNEL_GZIP 25fff7fb0bSZhaoxiu Zeng select CPU_NO_EFFICIENT_FFS 2607e88e1bSPaul Mundt select HAVE_KERNEL_BZIP2 2707e88e1bSPaul Mundt select HAVE_KERNEL_LZMA 2850cfa79dSPaul Mundt select HAVE_KERNEL_XZ 29c7b16efbSPaul Mundt select HAVE_KERNEL_LZO 30af1839ebSCatalin Marinas select HAVE_UID16 31c1d7e01dSWill Deacon select ARCH_WANT_IPC_PARSE_VERSION 32a74f7e04SPaul Mundt select HAVE_SYSCALL_TRACEPOINTS 33eaaaeef3SPaul Mundt select HAVE_REGS_AND_STACK_ACCESS_API 342ed86b16SRob Herring select MAY_HAVE_SPARSE_IRQ 35ed170924SPaul Mundt select IRQ_FORCED_THREADING 366eac1af0SPaul Mundt select RTC_LIB 37f01789c6SPaul Mundt select GENERIC_ATOMIC64 383d44ae40SPaul Mundt select GENERIC_IRQ_SHOW 39ea0588cbSThomas Gleixner select GENERIC_SMP_IDLE_THREAD 40dc775dd8SThomas Gleixner select GENERIC_IDLE_POLL_SETUP 418cf200d8SAnna-Maria Gleixner select GENERIC_CLOCKEVENTS 428cf200d8SAnna-Maria Gleixner select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST 43eb01d42aSChristoph Hellwig select GENERIC_PCI_IOMAP if PCI 44b46ed370SRich Felker select GENERIC_SCHED_CLOCK 450e100e11SPaul Mundt select GENERIC_STRNCPY_FROM_USER 46cba8df4bSPaul Mundt select GENERIC_STRNLEN_USER 47786d35d4SDavid Howells select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER 48786d35d4SDavid Howells select MODULES_USE_ELF_RELA 49eb01d42aSChristoph Hellwig select NO_GENERIC_PCI_IOPORT_MAP if PCI 50881e252dSAl Viro select OLD_SIGSUSPEND 510679a858SAl Viro select OLD_SIGACTION 52eb01d42aSChristoph Hellwig select PCI_DOMAINS if PCI 537a017721SAKASHI Takahiro select HAVE_ARCH_AUDITSYSCALL 5472cc564fSRich Felker select HAVE_FUTEX_CMPXCHG if FUTEX 5542a0bb3fSPetr Mladek select HAVE_NMI 5686596f0aSChristoph Hellwig select NEED_SG_DMA_LENGTH 574eb0716eSAlexandre Ghiti select ARCH_HAS_GIGANTIC_PAGE 5886596f0aSChristoph Hellwig 59ea0e1a9aSPaul Mundt help 60ea0e1a9aSPaul Mundt The SuperH is a RISC processor targeted for use in embedded systems 61ea0e1a9aSPaul Mundt and consumer electronics; it was also used in the Sega Dreamcast 62ea0e1a9aSPaul Mundt gaming console. The SuperH port has a home page at 63ea0e1a9aSPaul Mundt <http://www.linux-sh.org/>. 64ea0e1a9aSPaul Mundt 65ea0e1a9aSPaul Mundtconfig SUPERH32 66104daea1SMasahiro Yamada def_bool "$(ARCH)" = "sh" 67942fa985SYury Norov select ARCH_32BIT_OFF_T 683c9b9accSChristoph Hellwig select GUP_GET_PTE_LOW_HIGH if X2TLB 69d39f5450SChris Smith select HAVE_KPROBES 70d39f5450SChris Smith select HAVE_KRETPROBES 716d63e73dSPaul Mundt select HAVE_IOREMAP_PROT if MMU && !X2TLB 72694f94f2SPaul Mundt select HAVE_FUNCTION_TRACER 73fad57febSMatt Fleming select HAVE_FTRACE_MCOUNT_RECORD 74fad57febSMatt Fleming select HAVE_DYNAMIC_FTRACE 75e4b053d9SPaul Mundt select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE 76c1d7e01dSWill Deacon select ARCH_WANT_IPC_PARSE_VERSION 77327933f5SMatt Fleming select HAVE_FUNCTION_GRAPH_TRACER 78ab6e570bSPaul Mundt select HAVE_ARCH_KGDB 796fbfe8d7SPaul Mundt select HAVE_HW_BREAKPOINT 800102752eSFrederic Weisbecker select HAVE_MIXED_BREAKPOINTS_REGS 81e583d6b3SSam Ravnborg select PERF_EVENTS 828dafc346SPaul Mundt select ARCH_HIBERNATION_POSSIBLE if MMU 8357b81330SPaul Mundt select SPARSE_IRQ 84d148eac0SMasahiro Yamada select HAVE_STACKPROTECTOR 85ea0e1a9aSPaul Mundt 86ea0e1a9aSPaul Mundtconfig SUPERH64 87104daea1SMasahiro Yamada def_bool "$(ARCH)" = "sh64" 885f56a5dfSJiri Slaby select HAVE_EXIT_THREAD 893a898c0fSPaul Mundt select KALLSYMS 90ea0e1a9aSPaul Mundt 91f42b7e3dSPaul Mundtconfig ARCH_DEFCONFIG 92f42b7e3dSPaul Mundt string 93f42b7e3dSPaul Mundt default "arch/sh/configs/shx3_defconfig" if SUPERH32 94f42b7e3dSPaul Mundt default "arch/sh/configs/cayman_defconfig" if SUPERH64 95f42b7e3dSPaul Mundt 96ea0e1a9aSPaul Mundtconfig GENERIC_BUG 97ea0e1a9aSPaul Mundt def_bool y 98a82d53ecSPaul Mundt depends on BUG && SUPERH32 99ea0e1a9aSPaul Mundt 1003767f3f1SPaul Mundtconfig GENERIC_CSUM 1013767f3f1SPaul Mundt def_bool y 1023767f3f1SPaul Mundt depends on SUPERH64 1033767f3f1SPaul Mundt 104ea0e1a9aSPaul Mundtconfig GENERIC_HWEIGHT 105d7ef4fb3SHarvey Harrison def_bool y 106ea0e1a9aSPaul Mundt 107ea0e1a9aSPaul Mundtconfig GENERIC_CALIBRATE_DELAY 108cf204fa7SPaul Mundt bool 109ea0e1a9aSPaul Mundt 110bdcab87bSPaul Mundtconfig GENERIC_LOCKBREAK 111bdcab87bSPaul Mundt def_bool y 112bdcab87bSPaul Mundt depends on SMP && PREEMPT 113bdcab87bSPaul Mundt 114af998a9aSMagnus Dammconfig ARCH_SUSPEND_POSSIBLE 115af998a9aSMagnus Damm def_bool n 116af998a9aSMagnus Damm 117af998a9aSMagnus Dammconfig ARCH_HIBERNATION_POSSIBLE 118af998a9aSMagnus Damm def_bool n 119ea0e1a9aSPaul Mundt 120ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_APM_EMULATION 121ea0e1a9aSPaul Mundt bool 122af998a9aSMagnus Damm select ARCH_SUSPEND_POSSIBLE 123ea0e1a9aSPaul Mundt 124ffb4a73dSPaul Mundtconfig SYS_SUPPORTS_HUGETLBFS 125ffb4a73dSPaul Mundt bool 126ffb4a73dSPaul Mundt 127ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_SMP 128ea0e1a9aSPaul Mundt bool 129ea0e1a9aSPaul Mundt 130ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_NUMA 131ea0e1a9aSPaul Mundt bool 132ea0e1a9aSPaul Mundt 133ea0e1a9aSPaul Mundtconfig STACKTRACE_SUPPORT 134d7ef4fb3SHarvey Harrison def_bool y 135ea0e1a9aSPaul Mundt 136ea0e1a9aSPaul Mundtconfig LOCKDEP_SUPPORT 137d7ef4fb3SHarvey Harrison def_bool y 138ea0e1a9aSPaul Mundt 139ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U32 140d7ef4fb3SHarvey Harrison def_bool n 141ea0e1a9aSPaul Mundt 142ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U64 143d7ef4fb3SHarvey Harrison def_bool n 144ea0e1a9aSPaul Mundt 145ce816fa8SUwe Kleine-Königconfig NO_IOPORT_MAP 14637b7a978SPaul Mundt def_bool !PCI 147c30b9c43SPaul Mundt depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \ 148c30b9c43SPaul Mundt !SH_HP6XX && !SH_SOLUTION_ENGINE 14986e4dd5aSPaul Mundt 150e7cc9a73SMagnus Dammconfig IO_TRAPPED 151e7cc9a73SMagnus Damm bool 152e7cc9a73SMagnus Damm 153b7e68d68SPaul Mundtconfig SWAP_IO_SPACE 154b7e68d68SPaul Mundt bool 155b7e68d68SPaul Mundt 15601be5d63SPaul Mundtconfig DMA_COHERENT 15701be5d63SPaul Mundt bool 15801be5d63SPaul Mundt 15901be5d63SPaul Mundtconfig DMA_NONCOHERENT 16001be5d63SPaul Mundt def_bool !DMA_COHERENT 1616fa1d28eSChristoph Hellwig select ARCH_HAS_SYNC_DMA_FOR_DEVICE 16201be5d63SPaul Mundt 16369543d63SKirill A. Shutemovconfig PGTABLE_LEVELS 16469543d63SKirill A. Shutemov default 3 if X2TLB 16569543d63SKirill A. Shutemov default 2 16669543d63SKirill A. Shutemov 167ea0e1a9aSPaul Mundtmenu "System type" 168ea0e1a9aSPaul Mundt 169ea0e1a9aSPaul Mundt# 170ea0e1a9aSPaul Mundt# Processor families 171ea0e1a9aSPaul Mundt# 172ea0e1a9aSPaul Mundtconfig CPU_SH2 173ea0e1a9aSPaul Mundt bool 174049d2804SGeert Uytterhoeven select SH_INTC 175ea0e1a9aSPaul Mundt 176ea0e1a9aSPaul Mundtconfig CPU_SH2A 177ea0e1a9aSPaul Mundt bool 178ea0e1a9aSPaul Mundt select CPU_SH2 179e2fcf74fSPaul Mundt select UNCACHED_MAPPING 180ea0e1a9aSPaul Mundt 1815a846abaSRich Felkerconfig CPU_J2 1825a846abaSRich Felker bool 1835a846abaSRich Felker select CPU_SH2 1845a846abaSRich Felker select OF 1855a846abaSRich Felker select OF_EARLY_FLATTREE 1865a846abaSRich Felker 187ea0e1a9aSPaul Mundtconfig CPU_SH3 188ea0e1a9aSPaul Mundt bool 189ea0e1a9aSPaul Mundt select CPU_HAS_INTEVT 190ea0e1a9aSPaul Mundt select CPU_HAS_SR_RB 191049d2804SGeert Uytterhoeven select SH_INTC 192fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_TMU 193ea0e1a9aSPaul Mundt 194ea0e1a9aSPaul Mundtconfig CPU_SH4 195ea0e1a9aSPaul Mundt bool 196ea0e1a9aSPaul Mundt select CPU_HAS_INTEVT 197ea0e1a9aSPaul Mundt select CPU_HAS_SR_RB 198ea0e1a9aSPaul Mundt select CPU_HAS_FPU if !CPU_SH4AL_DSP 199049d2804SGeert Uytterhoeven select SH_INTC 200fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_TMU 201ffb4a73dSPaul Mundt select SYS_SUPPORTS_HUGETLBFS if MMU 202ea0e1a9aSPaul Mundt 203ea0e1a9aSPaul Mundtconfig CPU_SH4A 204ea0e1a9aSPaul Mundt bool 205ea0e1a9aSPaul Mundt select CPU_SH4 206ea0e1a9aSPaul Mundt 207ea0e1a9aSPaul Mundtconfig CPU_SH4AL_DSP 208ea0e1a9aSPaul Mundt bool 209ea0e1a9aSPaul Mundt select CPU_SH4A 210ea0e1a9aSPaul Mundt select CPU_HAS_DSP 211ea0e1a9aSPaul Mundt 212ea0e1a9aSPaul Mundtconfig CPU_SH5 213ea0e1a9aSPaul Mundt bool 214ea0e1a9aSPaul Mundt select CPU_HAS_FPU 215fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_TMU 216ffb4a73dSPaul Mundt select SYS_SUPPORTS_HUGETLBFS if MMU 217ea0e1a9aSPaul Mundt 218ea0e1a9aSPaul Mundtconfig CPU_SHX2 219ea0e1a9aSPaul Mundt bool 220ea0e1a9aSPaul Mundt 221ea0e1a9aSPaul Mundtconfig CPU_SHX3 222ea0e1a9aSPaul Mundt bool 22301be5d63SPaul Mundt select DMA_COHERENT 2244b478ee2SPaul Mundt select SYS_SUPPORTS_SMP 2254b478ee2SPaul Mundt select SYS_SUPPORTS_NUMA 226ea0e1a9aSPaul Mundt 227dc65a977SPaul Mundtconfig ARCH_SHMOBILE 228dc65a977SPaul Mundt bool 22977594912SMagnus Damm select ARCH_SUSPEND_POSSIBLE 230464ed18eSRafael J. Wysocki select PM 231dc65a977SPaul Mundt 23286c8c047SMatt Flemingconfig CPU_HAS_PMU 23386c8c047SMatt Fleming depends on CPU_SH4 || CPU_SH4A 23486c8c047SMatt Fleming default y 23586c8c047SMatt Fleming bool 23686c8c047SMatt Fleming 2373cc000b5SPaul Mundtif SUPERH32 2383cc000b5SPaul Mundt 239ea0e1a9aSPaul Mundtchoice 240ea0e1a9aSPaul Mundt prompt "Processor sub-type selection" 241ea0e1a9aSPaul Mundt 242ea0e1a9aSPaul Mundt# 243ea0e1a9aSPaul Mundt# Processor subtypes 244ea0e1a9aSPaul Mundt# 245ea0e1a9aSPaul Mundt 246ea0e1a9aSPaul Mundt# SH-2 Processor Support 247ea0e1a9aSPaul Mundt 248ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7619 249ea0e1a9aSPaul Mundt bool "Support SH7619 processor" 250ea0e1a9aSPaul Mundt select CPU_SH2 251fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 252ea0e1a9aSPaul Mundt 2535a846abaSRich Felkerconfig CPU_SUBTYPE_J2 2545a846abaSRich Felker bool "Support J2 processor" 2555a846abaSRich Felker select CPU_J2 256b4214e41SRich Felker select SYS_SUPPORTS_SMP 257b4214e41SRich Felker select GENERIC_CLOCKEVENTS_BROADCAST if SMP 2585a846abaSRich Felker 259ea0e1a9aSPaul Mundt# SH-2A Processor Support 260ea0e1a9aSPaul Mundt 2612825999eSPeter Griffinconfig CPU_SUBTYPE_SH7201 2622825999eSPeter Griffin bool "Support SH7201 processor" 2632825999eSPeter Griffin select CPU_SH2A 2642825999eSPeter Griffin select CPU_HAS_FPU 265fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 2662825999eSPeter Griffin 2676d01f510SPaul Mundtconfig CPU_SUBTYPE_SH7203 2686d01f510SPaul Mundt bool "Support SH7203 processor" 2696d01f510SPaul Mundt select CPU_SH2A 27074d99a5eSPaul Mundt select CPU_HAS_FPU 271fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 272fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 273b768ecbcSLaurent Pinchart select PINCTRL 2746d01f510SPaul Mundt 275ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7206 276ea0e1a9aSPaul Mundt bool "Support SH7206 processor" 277ea0e1a9aSPaul Mundt select CPU_SH2A 278fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 279fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 280ea0e1a9aSPaul Mundt 281a8f67f4bSPaul Mundtconfig CPU_SUBTYPE_SH7263 282a8f67f4bSPaul Mundt bool "Support SH7263 processor" 283a8f67f4bSPaul Mundt select CPU_SH2A 28474d99a5eSPaul Mundt select CPU_HAS_FPU 285fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 286fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 287a8f67f4bSPaul Mundt 28851ce3068SPhil Edworthyconfig CPU_SUBTYPE_SH7264 28951ce3068SPhil Edworthy bool "Support SH7264 processor" 29051ce3068SPhil Edworthy select CPU_SH2A 29151ce3068SPhil Edworthy select CPU_HAS_FPU 292fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 293fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 2945946e7bbSLaurent Pinchart select PINCTRL 29551ce3068SPhil Edworthy 2960b25b7c8SPhil Edworthyconfig CPU_SUBTYPE_SH7269 2970b25b7c8SPhil Edworthy bool "Support SH7269 processor" 2980b25b7c8SPhil Edworthy select CPU_SH2A 2990b25b7c8SPhil Edworthy select CPU_HAS_FPU 300fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 301fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 302fb872fccSLaurent Pinchart select PINCTRL 3030b25b7c8SPhil Edworthy 3042ad69908SPaul Mundtconfig CPU_SUBTYPE_MXG 3052ad69908SPaul Mundt bool "Support MX-G processor" 3062ad69908SPaul Mundt select CPU_SH2A 307fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 3082ad69908SPaul Mundt help 3092ad69908SPaul Mundt Select MX-G if running on an R8A03022BG part. 3102ad69908SPaul Mundt 311ea0e1a9aSPaul Mundt# SH-3 Processor Support 312ea0e1a9aSPaul Mundt 313ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7705 314ea0e1a9aSPaul Mundt bool "Support SH7705 processor" 315ea0e1a9aSPaul Mundt select CPU_SH3 316ea0e1a9aSPaul Mundt 317ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7706 318ea0e1a9aSPaul Mundt bool "Support SH7706 processor" 319ea0e1a9aSPaul Mundt select CPU_SH3 320ea0e1a9aSPaul Mundt help 321ea0e1a9aSPaul Mundt Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. 322ea0e1a9aSPaul Mundt 323ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7707 324ea0e1a9aSPaul Mundt bool "Support SH7707 processor" 325ea0e1a9aSPaul Mundt select CPU_SH3 326ea0e1a9aSPaul Mundt help 327ea0e1a9aSPaul Mundt Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU. 328ea0e1a9aSPaul Mundt 329ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7708 330ea0e1a9aSPaul Mundt bool "Support SH7708 processor" 331ea0e1a9aSPaul Mundt select CPU_SH3 332ea0e1a9aSPaul Mundt help 333ea0e1a9aSPaul Mundt Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or 334ea0e1a9aSPaul Mundt if you have a 100 Mhz SH-3 HD6417708R CPU. 335ea0e1a9aSPaul Mundt 336ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7709 337ea0e1a9aSPaul Mundt bool "Support SH7709 processor" 338ea0e1a9aSPaul Mundt select CPU_SH3 339ea0e1a9aSPaul Mundt help 340ea0e1a9aSPaul Mundt Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. 341ea0e1a9aSPaul Mundt 342ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7710 343ea0e1a9aSPaul Mundt bool "Support SH7710 processor" 344ea0e1a9aSPaul Mundt select CPU_SH3 345ea0e1a9aSPaul Mundt select CPU_HAS_DSP 346ea0e1a9aSPaul Mundt help 347ea0e1a9aSPaul Mundt Select SH7710 if you have a SH3-DSP SH7710 CPU. 348ea0e1a9aSPaul Mundt 349ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7712 350ea0e1a9aSPaul Mundt bool "Support SH7712 processor" 351ea0e1a9aSPaul Mundt select CPU_SH3 352ea0e1a9aSPaul Mundt select CPU_HAS_DSP 353ea0e1a9aSPaul Mundt help 354ea0e1a9aSPaul Mundt Select SH7712 if you have a SH3-DSP SH7712 CPU. 355ea0e1a9aSPaul Mundt 356ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7720 357ea0e1a9aSPaul Mundt bool "Support SH7720 processor" 358ea0e1a9aSPaul Mundt select CPU_SH3 359ea0e1a9aSPaul Mundt select CPU_HAS_DSP 360fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 3617b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 36285db6bffSLaurent Pinchart select PINCTRL 363ea0e1a9aSPaul Mundt help 364ea0e1a9aSPaul Mundt Select SH7720 if you have a SH3-DSP SH7720 CPU. 365ea0e1a9aSPaul Mundt 36631a49c4bSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7721 36731a49c4bSYoshihiro Shimoda bool "Support SH7721 processor" 36831a49c4bSYoshihiro Shimoda select CPU_SH3 36931a49c4bSYoshihiro Shimoda select CPU_HAS_DSP 370fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 3717b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 37231a49c4bSYoshihiro Shimoda help 37331a49c4bSYoshihiro Shimoda Select SH7721 if you have a SH3-DSP SH7721 CPU. 37431a49c4bSYoshihiro Shimoda 375ea0e1a9aSPaul Mundt# SH-4 Processor Support 376ea0e1a9aSPaul Mundt 377ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750 378ea0e1a9aSPaul Mundt bool "Support SH7750 processor" 379ea0e1a9aSPaul Mundt select CPU_SH4 380ea0e1a9aSPaul Mundt help 381ea0e1a9aSPaul Mundt Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. 382ea0e1a9aSPaul Mundt 383ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7091 384ea0e1a9aSPaul Mundt bool "Support SH7091 processor" 385ea0e1a9aSPaul Mundt select CPU_SH4 386ea0e1a9aSPaul Mundt help 387ea0e1a9aSPaul Mundt Select SH7091 if you have an SH-4 based Sega device (such as 388ea0e1a9aSPaul Mundt the Dreamcast, Naomi, and Naomi 2). 389ea0e1a9aSPaul Mundt 390ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750R 391ea0e1a9aSPaul Mundt bool "Support SH7750R processor" 392ea0e1a9aSPaul Mundt select CPU_SH4 393ea0e1a9aSPaul Mundt 394ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750S 395ea0e1a9aSPaul Mundt bool "Support SH7750S processor" 396ea0e1a9aSPaul Mundt select CPU_SH4 397ea0e1a9aSPaul Mundt 398ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751 399ea0e1a9aSPaul Mundt bool "Support SH7751 processor" 400ea0e1a9aSPaul Mundt select CPU_SH4 401ea0e1a9aSPaul Mundt help 402ea0e1a9aSPaul Mundt Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, 403ea0e1a9aSPaul Mundt or if you have a HD6417751R CPU. 404ea0e1a9aSPaul Mundt 405ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751R 406ea0e1a9aSPaul Mundt bool "Support SH7751R processor" 407ea0e1a9aSPaul Mundt select CPU_SH4 408ea0e1a9aSPaul Mundt 409ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7760 410ea0e1a9aSPaul Mundt bool "Support SH7760 processor" 411ea0e1a9aSPaul Mundt select CPU_SH4 412ea0e1a9aSPaul Mundt 413ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH4_202 414ea0e1a9aSPaul Mundt bool "Support SH4-202 processor" 415ea0e1a9aSPaul Mundt select CPU_SH4 416ea0e1a9aSPaul Mundt 417ea0e1a9aSPaul Mundt# SH-4A Processor Support 418ea0e1a9aSPaul Mundt 419178dd0cdSPaul Mundtconfig CPU_SUBTYPE_SH7723 420178dd0cdSPaul Mundt bool "Support SH7723 processor" 421178dd0cdSPaul Mundt select CPU_SH4A 422178dd0cdSPaul Mundt select CPU_SHX2 423dc65a977SPaul Mundt select ARCH_SHMOBILE 424178dd0cdSPaul Mundt select ARCH_SPARSEMEM_ENABLE 425fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 42616941a89SLaurent Pinchart select PINCTRL 427178dd0cdSPaul Mundt help 428178dd0cdSPaul Mundt Select SH7723 if you have an SH-MobileR2 CPU. 429178dd0cdSPaul Mundt 4300207a2efSKuninori Morimotoconfig CPU_SUBTYPE_SH7724 4310207a2efSKuninori Morimoto bool "Support SH7724 processor" 4320207a2efSKuninori Morimoto select CPU_SH4A 4330207a2efSKuninori Morimoto select CPU_SHX2 43459fe700dSPaul Mundt select ARCH_SHMOBILE 4350207a2efSKuninori Morimoto select ARCH_SPARSEMEM_ENABLE 436fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 43718ebd228SLaurent Pinchart select PINCTRL 4380207a2efSKuninori Morimoto help 4390207a2efSKuninori Morimoto Select SH7724 if you have an SH-MobileR2R CPU. 4400207a2efSKuninori Morimoto 441fea88a0cSNobuhiro Iwamatsuconfig CPU_SUBTYPE_SH7734 442fea88a0cSNobuhiro Iwamatsu bool "Support SH7734 processor" 443fea88a0cSNobuhiro Iwamatsu select CPU_SH4A 444fea88a0cSNobuhiro Iwamatsu select CPU_SHX2 4452c172182SLaurent Pinchart select PINCTRL 446fea88a0cSNobuhiro Iwamatsu help 447fea88a0cSNobuhiro Iwamatsu Select SH7734 if you have a SH4A SH7734 CPU. 448fea88a0cSNobuhiro Iwamatsu 449c01f0f1aSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7757 450c01f0f1aSYoshihiro Shimoda bool "Support SH7757 processor" 451c01f0f1aSYoshihiro Shimoda select CPU_SH4A 452c01f0f1aSYoshihiro Shimoda select CPU_SHX2 453eb61b772SLaurent Pinchart select PINCTRL 454c01f0f1aSYoshihiro Shimoda help 455c01f0f1aSYoshihiro Shimoda Select SH7757 if you have a SH4A SH7757 CPU. 456c01f0f1aSYoshihiro Shimoda 4577d740a06SYoshihiro Shimodaconfig CPU_SUBTYPE_SH7763 4587d740a06SYoshihiro Shimoda bool "Support SH7763 processor" 4597d740a06SYoshihiro Shimoda select CPU_SH4A 4607b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 4617d740a06SYoshihiro Shimoda help 4627d740a06SYoshihiro Shimoda Select SH7763 if you have a SH4A SH7763(R5S77631) CPU. 4637d740a06SYoshihiro Shimoda 464ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7770 465ea0e1a9aSPaul Mundt bool "Support SH7770 processor" 466ea0e1a9aSPaul Mundt select CPU_SH4A 467ea0e1a9aSPaul Mundt 468ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7780 469ea0e1a9aSPaul Mundt bool "Support SH7780 processor" 470ea0e1a9aSPaul Mundt select CPU_SH4A 471ea0e1a9aSPaul Mundt 472ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7785 473ea0e1a9aSPaul Mundt bool "Support SH7785 processor" 474ea0e1a9aSPaul Mundt select CPU_SH4A 475ea0e1a9aSPaul Mundt select CPU_SHX2 476ea0e1a9aSPaul Mundt select ARCH_SPARSEMEM_ENABLE 477ea0e1a9aSPaul Mundt select SYS_SUPPORTS_NUMA 47877bd27b2SLaurent Pinchart select PINCTRL 479ea0e1a9aSPaul Mundt 48055ba99ebSKuninori Morimotoconfig CPU_SUBTYPE_SH7786 48155ba99ebSKuninori Morimoto bool "Support SH7786 processor" 48255ba99ebSKuninori Morimoto select CPU_SH4A 48337042fbdSPaul Mundt select CPU_SHX3 4848263a67eSPaul Mundt select CPU_HAS_PTEAEX 4852eb2a436SPaul Mundt select GENERIC_CLOCKEVENTS_BROADCAST if SMP 4867b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 4877b61ca5dSPaul Mundt select USB_EHCI_SH if USB_EHCI_HCD 488c0fdbff9SLaurent Pinchart select PINCTRL 48955ba99ebSKuninori Morimoto 490ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SHX3 491ea0e1a9aSPaul Mundt bool "Support SH-X3 processor" 492ea0e1a9aSPaul Mundt select CPU_SH4A 493ea0e1a9aSPaul Mundt select CPU_SHX3 4945840263eSPaul Mundt select GENERIC_CLOCKEVENTS_BROADCAST if SMP 495fdcfdfa1SLinus Walleij select GPIOLIB 4963e347f08SLaurent Pinchart select PINCTRL 497ea0e1a9aSPaul Mundt 498ea0e1a9aSPaul Mundt# SH4AL-DSP Processor Support 499ea0e1a9aSPaul Mundt 500ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7343 501ea0e1a9aSPaul Mundt bool "Support SH7343 processor" 502ea0e1a9aSPaul Mundt select CPU_SH4AL_DSP 503dc65a977SPaul Mundt select ARCH_SHMOBILE 504fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 505ea0e1a9aSPaul Mundt 506ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7722 507ea0e1a9aSPaul Mundt bool "Support SH7722 processor" 508ea0e1a9aSPaul Mundt select CPU_SH4AL_DSP 509ea0e1a9aSPaul Mundt select CPU_SHX2 510dc65a977SPaul Mundt select ARCH_SHMOBILE 511ea0e1a9aSPaul Mundt select ARCH_SPARSEMEM_ENABLE 512ea0e1a9aSPaul Mundt select SYS_SUPPORTS_NUMA 513fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 514ef97c3c1SLaurent Pinchart select PINCTRL 515ea0e1a9aSPaul Mundt 5169109a30eSMagnus Dammconfig CPU_SUBTYPE_SH7366 5179109a30eSMagnus Damm bool "Support SH7366 processor" 5189109a30eSMagnus Damm select CPU_SH4AL_DSP 5199109a30eSMagnus Damm select CPU_SHX2 520dc65a977SPaul Mundt select ARCH_SHMOBILE 5219109a30eSMagnus Damm select ARCH_SPARSEMEM_ENABLE 5229109a30eSMagnus Damm select SYS_SUPPORTS_NUMA 523fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 5249109a30eSMagnus Damm 5253cc000b5SPaul Mundtendchoice 5263cc000b5SPaul Mundt 5273cc000b5SPaul Mundtendif 5283cc000b5SPaul Mundt 5293cc000b5SPaul Mundtif SUPERH64 5303cc000b5SPaul Mundt 5313cc000b5SPaul Mundtchoice 5323cc000b5SPaul Mundt prompt "Processor sub-type selection" 5333cc000b5SPaul Mundt 534ea0e1a9aSPaul Mundt# SH-5 Processor Support 535ea0e1a9aSPaul Mundt 536ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_101 537ea0e1a9aSPaul Mundt bool "Support SH5-101 processor" 538ea0e1a9aSPaul Mundt select CPU_SH5 539ea0e1a9aSPaul Mundt 540ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_103 541ea0e1a9aSPaul Mundt bool "Support SH5-103 processor" 5428ef97dd7SPaul Mundt select CPU_SH5 543ea0e1a9aSPaul Mundt 544ea0e1a9aSPaul Mundtendchoice 545ea0e1a9aSPaul Mundt 5463cc000b5SPaul Mundtendif 5473cc000b5SPaul Mundt 548ea0e1a9aSPaul Mundtsource "arch/sh/mm/Kconfig" 549939a24a6SPaul Mundt 550ea0e1a9aSPaul Mundtsource "arch/sh/Kconfig.cpu" 551ea0e1a9aSPaul Mundt 552939a24a6SPaul Mundtsource "arch/sh/boards/Kconfig" 553ea0e1a9aSPaul Mundt 554ea0e1a9aSPaul Mundtmenu "Timer and clock configuration" 555ea0e1a9aSPaul Mundt 556ea0e1a9aSPaul Mundtconfig SH_PCLK_FREQ 557ea0e1a9aSPaul Mundt int "Peripheral clock frequency (in Hz)" 5588152a74bSPaul Mundt depends on SH_CLK_CPG_LEGACY 559ea0e1a9aSPaul Mundt default "31250000" if CPU_SUBTYPE_SH7619 5608152a74bSPaul Mundt default "33333333" if CPU_SUBTYPE_SH7770 || \ 5618152a74bSPaul Mundt CPU_SUBTYPE_SH7760 || \ 5628152a74bSPaul Mundt CPU_SUBTYPE_SH7705 || \ 5638152a74bSPaul Mundt CPU_SUBTYPE_SH7203 || \ 5648152a74bSPaul Mundt CPU_SUBTYPE_SH7206 || \ 5658152a74bSPaul Mundt CPU_SUBTYPE_SH7263 || \ 56643a1839cSPaul Mundt CPU_SUBTYPE_MXG 567ea0e1a9aSPaul Mundt default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R 568ea0e1a9aSPaul Mundt default "66000000" if CPU_SUBTYPE_SH4_202 569ea0e1a9aSPaul Mundt default "50000000" 570ea0e1a9aSPaul Mundt help 571ea0e1a9aSPaul Mundt This option is used to specify the peripheral clock frequency. 572ea0e1a9aSPaul Mundt This is necessary for determining the reference clock value on 573ea0e1a9aSPaul Mundt platforms lacking an RTC. 574ea0e1a9aSPaul Mundt 57536aa1e32SPaul Mundtconfig SH_CLK_CPG 57636aa1e32SPaul Mundt def_bool y 57736aa1e32SPaul Mundt 578253b0887SPaul Mundtconfig SH_CLK_CPG_LEGACY 57936aa1e32SPaul Mundt depends on SH_CLK_CPG 58043a1839cSPaul Mundt def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \ 58151ce3068SPhil Edworthy !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \ 582bcb86e0aSPaul Mundt !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \ 583bcb86e0aSPaul Mundt !CPU_SUBTYPE_SH7269 584253b0887SPaul Mundt 585ea0e1a9aSPaul Mundtendmenu 586ea0e1a9aSPaul Mundt 587ea0e1a9aSPaul Mundtmenu "CPU Frequency scaling" 588ea0e1a9aSPaul Mundtsource "drivers/cpufreq/Kconfig" 589ea0e1a9aSPaul Mundtendmenu 590ea0e1a9aSPaul Mundt 591ea0e1a9aSPaul Mundtsource "arch/sh/drivers/Kconfig" 592ea0e1a9aSPaul Mundt 593ea0e1a9aSPaul Mundtendmenu 594ea0e1a9aSPaul Mundt 595ea0e1a9aSPaul Mundtmenu "Kernel features" 596ea0e1a9aSPaul Mundt 5978636a1f9SMasahiro Yamadasource "kernel/Kconfig.hz" 598ea0e1a9aSPaul Mundt 599ea0e1a9aSPaul Mundtconfig KEXEC 600ea0e1a9aSPaul Mundt bool "kexec system call (EXPERIMENTAL)" 6010d57af1eSKees Cook depends on SUPERH32 && MMU 6022965faa5SDave Young select KEXEC_CORE 603ea0e1a9aSPaul Mundt help 604ea0e1a9aSPaul Mundt kexec is a system call that implements the ability to shutdown your 605ea0e1a9aSPaul Mundt current kernel, and to start another kernel. It is like a reboot 606ea0e1a9aSPaul Mundt but it is independent of the system firmware. And like a reboot 607ea0e1a9aSPaul Mundt you can start any kernel with it, not just Linux. 608ea0e1a9aSPaul Mundt 609ea0e1a9aSPaul Mundt The name comes from the similarity to the exec system call. 610ea0e1a9aSPaul Mundt 611ea0e1a9aSPaul Mundt It is an ongoing process to be certain the hardware in a machine 612ea0e1a9aSPaul Mundt is properly shutdown, so do not be surprised if this code does not 613bf220695SGeert Uytterhoeven initially work for you. As of this writing the exact hardware 614bf220695SGeert Uytterhoeven interface is strongly in flux, so no good recommendation can be 615bf220695SGeert Uytterhoeven made. 616ea0e1a9aSPaul Mundt 617ea0e1a9aSPaul Mundtconfig CRASH_DUMP 618ea0e1a9aSPaul Mundt bool "kernel crash dumps (EXPERIMENTAL)" 6190d57af1eSKees Cook depends on SUPERH32 && BROKEN_ON_SMP 620ea0e1a9aSPaul Mundt help 621ea0e1a9aSPaul Mundt Generate crash dump after being started by kexec. 622ea0e1a9aSPaul Mundt This should be normally only set in special crash dump kernels 623ea0e1a9aSPaul Mundt which are loaded in the main kernel with kexec-tools into 624ea0e1a9aSPaul Mundt a specially reserved region and then later executed after 625ea0e1a9aSPaul Mundt a crash by kdump/kexec. The crash dump kernel must be compiled 626ea0e1a9aSPaul Mundt to a memory address not used by the main kernel using 627e66ac3f2SSimon Horman PHYSICAL_START. 628ea0e1a9aSPaul Mundt 629d67297adSMauro Carvalho Chehab For more details see Documentation/kdump/kdump.rst 630ea0e1a9aSPaul Mundt 631b7cf6ddcSMagnus Dammconfig KEXEC_JUMP 632b7cf6ddcSMagnus Damm bool "kexec jump (EXPERIMENTAL)" 6330d57af1eSKees Cook depends on SUPERH32 && KEXEC && HIBERNATION 634b7cf6ddcSMagnus Damm help 635b7cf6ddcSMagnus Damm Jump between original kernel and kexeced kernel and invoke 636b7cf6ddcSMagnus Damm code via KEXEC 637b7cf6ddcSMagnus Damm 638e66ac3f2SSimon Hormanconfig PHYSICAL_START 639e66ac3f2SSimon Horman hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP) 640e66ac3f2SSimon Horman default MEMORY_START 641e66ac3f2SSimon Horman ---help--- 642e66ac3f2SSimon Horman This gives the physical address where the kernel is loaded 643e66ac3f2SSimon Horman and is ordinarily the same as MEMORY_START. 644e66ac3f2SSimon Horman 645e66ac3f2SSimon Horman Different values are primarily used in the case of kexec on panic 646e66ac3f2SSimon Horman where the fail safe kernel needs to run at a different address 647e66ac3f2SSimon Horman than the panic-ed kernel. 648e66ac3f2SSimon Horman 649c4637d47SPaul Mundtconfig SECCOMP 650c4637d47SPaul Mundt bool "Enable seccomp to safely compute untrusted bytecode" 651c4637d47SPaul Mundt depends on PROC_FS 652c4637d47SPaul Mundt help 653c4637d47SPaul Mundt This kernel feature is useful for number crunching applications 654c4637d47SPaul Mundt that may need to compute untrusted bytecode during their 655c4637d47SPaul Mundt execution. By using pipes or other transports made available to 656c4637d47SPaul Mundt the process as file descriptors supporting the read/write 657c4637d47SPaul Mundt syscalls, it's possible to isolate those applications in 658c4637d47SPaul Mundt their own address space using seccomp. Once seccomp is 659c4637d47SPaul Mundt enabled via prctl, it cannot be disabled and the task is only 660c4637d47SPaul Mundt allowed to execute a few safe syscalls defined by each seccomp 661c4637d47SPaul Mundt mode. 662c4637d47SPaul Mundt 663c4637d47SPaul Mundt If unsure, say N. 664c4637d47SPaul Mundt 665ea0e1a9aSPaul Mundtconfig SMP 666ea0e1a9aSPaul Mundt bool "Symmetric multi-processing support" 667ea0e1a9aSPaul Mundt depends on SYS_SUPPORTS_SMP 668ea0e1a9aSPaul Mundt ---help--- 669ea0e1a9aSPaul Mundt This enables support for systems with more than one CPU. If you have 6704a474157SRobert Graffham a system with only one CPU, say N. If you have a system with more 6714a474157SRobert Graffham than one CPU, say Y. 672ea0e1a9aSPaul Mundt 6734a474157SRobert Graffham If you say N here, the kernel will run on uni- and multiprocessor 674ea0e1a9aSPaul Mundt machines, but will use only one CPU of a multiprocessor machine. If 675ea0e1a9aSPaul Mundt you say Y here, the kernel will run on many, but not all, 6764a474157SRobert Graffham uniprocessor machines. On a uniprocessor machine, the kernel 677ea0e1a9aSPaul Mundt will run faster if you say N here. 678ea0e1a9aSPaul Mundt 679ea0e1a9aSPaul Mundt People using multiprocessor machines who say Y here should also say 680ea0e1a9aSPaul Mundt Y to "Enhanced Real Time Clock Support", below. 681ea0e1a9aSPaul Mundt 682ecf38679SMauro Carvalho Chehab See also <file:Documentation/lockup-watchdogs.txt> and the SMP-HOWTO 68303502faaSAdrian Bunk available at <http://www.tldp.org/docs.html#howto>. 684ea0e1a9aSPaul Mundt 685ea0e1a9aSPaul Mundt If you don't know what to do here, say N. 686ea0e1a9aSPaul Mundt 687ea0e1a9aSPaul Mundtconfig NR_CPUS 688ea0e1a9aSPaul Mundt int "Maximum number of CPUs (2-32)" 689ea0e1a9aSPaul Mundt range 2 32 690ea0e1a9aSPaul Mundt depends on SMP 6912eb2a436SPaul Mundt default "4" if CPU_SUBTYPE_SHX3 692ea0e1a9aSPaul Mundt default "2" 693ea0e1a9aSPaul Mundt help 694ea0e1a9aSPaul Mundt This allows you to specify the maximum number of CPUs which this 695ea0e1a9aSPaul Mundt kernel will support. The maximum supported value is 32 and the 696ea0e1a9aSPaul Mundt minimum value which makes sense is 2. 697ea0e1a9aSPaul Mundt 698ea0e1a9aSPaul Mundt This is purely to save memory - each supported CPU adds 699ea0e1a9aSPaul Mundt approximately eight kilobytes to the kernel image. 700ea0e1a9aSPaul Mundt 701763142d1SPaul Mundtconfig HOTPLUG_CPU 702763142d1SPaul Mundt bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 70340b31360SStephen Rothwell depends on SMP 704763142d1SPaul Mundt help 705763142d1SPaul Mundt Say Y here to experiment with turning CPUs off and on. CPUs 706763142d1SPaul Mundt can be controlled through /sys/devices/system/cpu. 707763142d1SPaul Mundt 708ea0e1a9aSPaul Mundtconfig GUSA 709ea0e1a9aSPaul Mundt def_bool y 7101efe4ce3SStuart Menefy depends on !SMP && SUPERH32 711ea0e1a9aSPaul Mundt help 712ea0e1a9aSPaul Mundt This enables support for gUSA (general UserSpace Atomicity). 713ea0e1a9aSPaul Mundt This is the default implementation for both UP and non-ll/sc 714ea0e1a9aSPaul Mundt CPUs, and is used by the libc, amongst others. 715ea0e1a9aSPaul Mundt 716ea0e1a9aSPaul Mundt For additional information, design information can be found 717ea0e1a9aSPaul Mundt in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>. 718ea0e1a9aSPaul Mundt 719ea0e1a9aSPaul Mundt This should only be disabled for special cases where alternate 720ea0e1a9aSPaul Mundt atomicity implementations exist. 721ea0e1a9aSPaul Mundt 7221efe4ce3SStuart Menefyconfig GUSA_RB 7231efe4ce3SStuart Menefy bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)" 7241efe4ce3SStuart Menefy depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A) 7251efe4ce3SStuart Menefy help 7261efe4ce3SStuart Menefy Enabling this option will allow the kernel to implement some 727692105b8SMatt LaPlante atomic operations using a software implementation of load-locked/ 7281efe4ce3SStuart Menefy store-conditional (LLSC). On machines which do not have hardware 7291efe4ce3SStuart Menefy LLSC, this should be more efficient than the other alternative of 730692105b8SMatt LaPlante disabling interrupts around the atomic sequence. 7311efe4ce3SStuart Menefy 73286c8c047SMatt Flemingconfig HW_PERF_EVENTS 73386c8c047SMatt Fleming bool "Enable hardware performance counter support for perf events" 73486c8c047SMatt Fleming depends on PERF_EVENTS && CPU_HAS_PMU 73586c8c047SMatt Fleming default y 73686c8c047SMatt Fleming help 73786c8c047SMatt Fleming Enable hardware performance counter support for perf events. If 73886c8c047SMatt Fleming disabled, perf events will use software events only. 73986c8c047SMatt Fleming 74043b8774dSPaul Mundtsource "drivers/sh/Kconfig" 74143b8774dSPaul Mundt 742ea0e1a9aSPaul Mundtendmenu 743ea0e1a9aSPaul Mundt 744ea0e1a9aSPaul Mundtmenu "Boot options" 745ea0e1a9aSPaul Mundt 746190fe191SRich Felkerconfig USE_BUILTIN_DTB 747190fe191SRich Felker bool "Use builtin DTB" 748190fe191SRich Felker default n 749190fe191SRich Felker depends on SH_DEVICE_TREE 750190fe191SRich Felker help 751190fe191SRich Felker Link a device tree blob for particular hardware into the kernel, 752190fe191SRich Felker suppressing use of the DTB pointer provided by the bootloader. 753190fe191SRich Felker This option should only be used with legacy bootloaders that are 754190fe191SRich Felker not capable of providing a DTB to the kernel, or for experimental 755190fe191SRich Felker hardware without stable device tree bindings. 756190fe191SRich Felker 757190fe191SRich Felkerconfig BUILTIN_DTB_SOURCE 758190fe191SRich Felker string "Source file for builtin DTB" 759190fe191SRich Felker default "" 760190fe191SRich Felker depends on USE_BUILTIN_DTB 761190fe191SRich Felker help 762190fe191SRich Felker Base name (without suffix, relative to arch/sh/boot/dts) for the 763190fe191SRich Felker a DTS file that will be used to produce the DTB linked into the 764190fe191SRich Felker kernel. 765190fe191SRich Felker 766ea0e1a9aSPaul Mundtconfig ZERO_PAGE_OFFSET 767b412a49aSPaul Mundt hex 768b412a49aSPaul Mundt default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \ 769b412a49aSPaul Mundt SH_7751_SOLUTION_ENGINE 770b412a49aSPaul Mundt default "0x00004000" if PAGE_SIZE_16KB || SH_SH03 771ea0e1a9aSPaul Mundt default "0x00002000" if PAGE_SIZE_8KB 772ea0e1a9aSPaul Mundt default "0x00001000" 773ea0e1a9aSPaul Mundt help 774ea0e1a9aSPaul Mundt This sets the default offset of zero page. 775ea0e1a9aSPaul Mundt 776ea0e1a9aSPaul Mundtconfig BOOT_LINK_OFFSET 777b412a49aSPaul Mundt hex 778b412a49aSPaul Mundt default "0x00210000" if SH_SHMIN 779a2e76c80SPaul Mundt default "0x00400000" if SH_CAYMAN 780b412a49aSPaul Mundt default "0x00810000" if SH_7780_SOLUTION_ENGINE 781b412a49aSPaul Mundt default "0x009e0000" if SH_TITAN 782b412a49aSPaul Mundt default "0x01800000" if SH_SDK7780 783b412a49aSPaul Mundt default "0x02000000" if SH_EDOSK7760 784ea0e1a9aSPaul Mundt default "0x00800000" 785ea0e1a9aSPaul Mundt help 786ea0e1a9aSPaul Mundt This option allows you to set the link address offset of the zImage. 787ea0e1a9aSPaul Mundt This can be useful if you are on a board which has a small amount of 788ea0e1a9aSPaul Mundt memory. 789ea0e1a9aSPaul Mundt 790b412a49aSPaul Mundtconfig ENTRY_OFFSET 791b412a49aSPaul Mundt hex 792b412a49aSPaul Mundt default "0x00001000" if PAGE_SIZE_4KB 793b412a49aSPaul Mundt default "0x00002000" if PAGE_SIZE_8KB 794b412a49aSPaul Mundt default "0x00004000" if PAGE_SIZE_16KB 795b412a49aSPaul Mundt default "0x00010000" if PAGE_SIZE_64KB 796b412a49aSPaul Mundt default "0x00000000" 797b412a49aSPaul Mundt 7984705b2e8SMagnus Dammconfig ROMIMAGE_MMCIF 7994705b2e8SMagnus Damm bool "Include MMCIF loader in romImage (EXPERIMENTAL)" 8000d57af1eSKees Cook depends on CPU_SUBTYPE_SH7724 8014705b2e8SMagnus Damm help 8024705b2e8SMagnus Damm Say Y here to include experimental MMCIF loading code in 8034705b2e8SMagnus Damm romImage. With this enabled it is possible to write the romImage 8044705b2e8SMagnus Damm kernel image to an MMC card and boot the kernel straight from 8054705b2e8SMagnus Damm the reset vector. At reset the processor Mask ROM will load the 8064705b2e8SMagnus Damm first part of the romImage which in turn loads the rest the kernel 8074705b2e8SMagnus Damm image to RAM using the MMCIF hardware block. 8084705b2e8SMagnus Damm 809d724a9c9SPawel Mollchoice 810d724a9c9SPawel Moll prompt "Kernel command line" 811d724a9c9SPawel Moll optional 812d724a9c9SPawel Moll default CMDLINE_OVERWRITE 813d724a9c9SPawel Moll help 814d724a9c9SPawel Moll Setting this option allows the kernel command line arguments 815d724a9c9SPawel Moll to be set. 816d724a9c9SPawel Moll 817d724a9c9SPawel Mollconfig CMDLINE_OVERWRITE 818d724a9c9SPawel Moll bool "Overwrite bootloader kernel arguments" 819d724a9c9SPawel Moll help 820d724a9c9SPawel Moll Given string will overwrite any arguments passed in by 821d724a9c9SPawel Moll a bootloader. 822d724a9c9SPawel Moll 823d724a9c9SPawel Mollconfig CMDLINE_EXTEND 824d724a9c9SPawel Moll bool "Extend bootloader kernel arguments" 825d724a9c9SPawel Moll help 826d724a9c9SPawel Moll Given string will be concatenated with arguments passed in 827d724a9c9SPawel Moll by a bootloader. 828d724a9c9SPawel Moll 829d724a9c9SPawel Mollendchoice 830ea0e1a9aSPaul Mundt 831ea0e1a9aSPaul Mundtconfig CMDLINE 832d724a9c9SPawel Moll string "Kernel command line arguments string" 833d724a9c9SPawel Moll depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND 834ea0e1a9aSPaul Mundt default "console=ttySC1,115200" 835ea0e1a9aSPaul Mundt 836ea0e1a9aSPaul Mundtendmenu 837ea0e1a9aSPaul Mundt 838ea0e1a9aSPaul Mundtmenu "Bus options" 839ea0e1a9aSPaul Mundt 840ea0e1a9aSPaul Mundtconfig SUPERHYWAY 841ea0e1a9aSPaul Mundt tristate "SuperHyway Bus support" 842ea0e1a9aSPaul Mundt depends on CPU_SUBTYPE_SH4_202 843ea0e1a9aSPaul Mundt 844ea0e1a9aSPaul Mundtconfig MAPLE 845ea0e1a9aSPaul Mundt bool "Maple Bus support" 846ea0e1a9aSPaul Mundt depends on SH_DREAMCAST 847ea0e1a9aSPaul Mundt help 848ea0e1a9aSPaul Mundt The Maple Bus is SEGA's serial communication bus for peripherals 849ea0e1a9aSPaul Mundt on the Dreamcast. Without this bus support you won't be able to 850ea0e1a9aSPaul Mundt get your Dreamcast keyboard etc to work, so most users 851ea0e1a9aSPaul Mundt probably want to say 'Y' here, unless you are only using the 852ea0e1a9aSPaul Mundt Dreamcast with a serial line terminal or a remote network 853ea0e1a9aSPaul Mundt connection. 854ea0e1a9aSPaul Mundt 855ea0e1a9aSPaul Mundtendmenu 856ea0e1a9aSPaul Mundt 857ea0e1a9aSPaul Mundtmenu "Power management options (EXPERIMENTAL)" 858f4cb5700SJohannes Berg 859c6f17cb2SMagnus Dammsource "kernel/power/Kconfig" 860c6f17cb2SMagnus Damm 861c6f17cb2SMagnus Dammsource "drivers/cpuidle/Kconfig" 862ea0e1a9aSPaul Mundt 863ea0e1a9aSPaul Mundtendmenu 864