1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2ea0e1a9aSPaul Mundtconfig SUPERH 3ea0e1a9aSPaul Mundt def_bool y 43010a5eaSLaurent Dufour select ARCH_HAS_PTE_SPECIAL 545624ac3SRich Felker select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST 609d8dd93SMark Salter select ARCH_MIGHT_HAVE_PC_PARPORT 707c75d7aSVladimir Murzin select ARCH_NO_COHERENT_DMA_MMAP if !MMU 8560b8c0eSRob Landley select HAVE_PATA_PLATFORM 96d803ba7SJean-Christop PLAGNIOL-VILLARD select CLKDEV_LOOKUP 10ce816fa8SUwe Kleine-König select HAVE_IDE if HAS_IOPORT_MAP 11534cfbeeSTejun Heo select HAVE_MEMBLOCK_NODE_MAP 12adaf7fd2SPaul Mundt select ARCH_DISCARD_MEMBLOCK 1342d4b839SMathieu Desnoyers select HAVE_OPROFILE 149de90ac2SDmitry Baryshkov select HAVE_GENERIC_DMA_COHERENT 15d7b01f78SPaul Mundt select HAVE_ARCH_TRACEHOOK 16cdd6c482SIngo Molnar select HAVE_PERF_EVENTS 179b2a60c4SCatalin Marinas select HAVE_DEBUG_BUGVERBOSE 187563bbf8SMark Brown select ARCH_HAVE_CUSTOM_GPIO_H 19df013ffbSHuang Ying select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A) 20957e3facSRiku Voipio select ARCH_HAS_GCOV_PROFILE_ALL 2172f0c137SPaul Mundt select PERF_USE_VMALLOC 22b69ec42bSCatalin Marinas select HAVE_DEBUG_KMEMLEAK 23df8ce259SPaul Mundt select HAVE_KERNEL_GZIP 24fff7fb0bSZhaoxiu Zeng select CPU_NO_EFFICIENT_FFS 2507e88e1bSPaul Mundt select HAVE_KERNEL_BZIP2 2607e88e1bSPaul Mundt select HAVE_KERNEL_LZMA 2750cfa79dSPaul Mundt select HAVE_KERNEL_XZ 28c7b16efbSPaul Mundt select HAVE_KERNEL_LZO 29af1839ebSCatalin Marinas select HAVE_UID16 30c1d7e01dSWill Deacon select ARCH_WANT_IPC_PARSE_VERSION 31a74f7e04SPaul Mundt select HAVE_SYSCALL_TRACEPOINTS 32eaaaeef3SPaul Mundt select HAVE_REGS_AND_STACK_ACCESS_API 332ed86b16SRob Herring select MAY_HAVE_SPARSE_IRQ 34ed170924SPaul Mundt select IRQ_FORCED_THREADING 356eac1af0SPaul Mundt select RTC_LIB 36f01789c6SPaul Mundt select GENERIC_ATOMIC64 373d44ae40SPaul Mundt select GENERIC_IRQ_SHOW 38ea0588cbSThomas Gleixner select GENERIC_SMP_IDLE_THREAD 39dc775dd8SThomas Gleixner select GENERIC_IDLE_POLL_SETUP 408cf200d8SAnna-Maria Gleixner select GENERIC_CLOCKEVENTS 418cf200d8SAnna-Maria Gleixner select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST 42eb01d42aSChristoph Hellwig select GENERIC_PCI_IOMAP if PCI 43b46ed370SRich Felker select GENERIC_SCHED_CLOCK 440e100e11SPaul Mundt select GENERIC_STRNCPY_FROM_USER 45cba8df4bSPaul Mundt select GENERIC_STRNLEN_USER 46786d35d4SDavid Howells select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER 47786d35d4SDavid Howells select MODULES_USE_ELF_RELA 48eb01d42aSChristoph Hellwig select NO_GENERIC_PCI_IOPORT_MAP if PCI 49881e252dSAl Viro select OLD_SIGSUSPEND 500679a858SAl Viro select OLD_SIGACTION 51eb01d42aSChristoph Hellwig select PCI_DOMAINS if PCI 527a017721SAKASHI Takahiro select HAVE_ARCH_AUDITSYSCALL 5372cc564fSRich Felker select HAVE_FUTEX_CMPXCHG if FUTEX 5442a0bb3fSPetr Mladek select HAVE_NMI 5586596f0aSChristoph Hellwig select NEED_SG_DMA_LENGTH 5686596f0aSChristoph Hellwig 57ea0e1a9aSPaul Mundt help 58ea0e1a9aSPaul Mundt The SuperH is a RISC processor targeted for use in embedded systems 59ea0e1a9aSPaul Mundt and consumer electronics; it was also used in the Sega Dreamcast 60ea0e1a9aSPaul Mundt gaming console. The SuperH port has a home page at 61ea0e1a9aSPaul Mundt <http://www.linux-sh.org/>. 62ea0e1a9aSPaul Mundt 63ea0e1a9aSPaul Mundtconfig SUPERH32 64104daea1SMasahiro Yamada def_bool "$(ARCH)" = "sh" 65942fa985SYury Norov select ARCH_32BIT_OFF_T 66d39f5450SChris Smith select HAVE_KPROBES 67d39f5450SChris Smith select HAVE_KRETPROBES 686d63e73dSPaul Mundt select HAVE_IOREMAP_PROT if MMU && !X2TLB 69694f94f2SPaul Mundt select HAVE_FUNCTION_TRACER 70fad57febSMatt Fleming select HAVE_FTRACE_MCOUNT_RECORD 71fad57febSMatt Fleming select HAVE_DYNAMIC_FTRACE 72e4b053d9SPaul Mundt select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE 73c1d7e01dSWill Deacon select ARCH_WANT_IPC_PARSE_VERSION 74327933f5SMatt Fleming select HAVE_FUNCTION_GRAPH_TRACER 75ab6e570bSPaul Mundt select HAVE_ARCH_KGDB 766fbfe8d7SPaul Mundt select HAVE_HW_BREAKPOINT 770102752eSFrederic Weisbecker select HAVE_MIXED_BREAKPOINTS_REGS 78e583d6b3SSam Ravnborg select PERF_EVENTS 798dafc346SPaul Mundt select ARCH_HIBERNATION_POSSIBLE if MMU 8057b81330SPaul Mundt select SPARSE_IRQ 81d148eac0SMasahiro Yamada select HAVE_STACKPROTECTOR 82ea0e1a9aSPaul Mundt 83ea0e1a9aSPaul Mundtconfig SUPERH64 84104daea1SMasahiro Yamada def_bool "$(ARCH)" = "sh64" 855f56a5dfSJiri Slaby select HAVE_EXIT_THREAD 863a898c0fSPaul Mundt select KALLSYMS 87ea0e1a9aSPaul Mundt 88f42b7e3dSPaul Mundtconfig ARCH_DEFCONFIG 89f42b7e3dSPaul Mundt string 90f42b7e3dSPaul Mundt default "arch/sh/configs/shx3_defconfig" if SUPERH32 91f42b7e3dSPaul Mundt default "arch/sh/configs/cayman_defconfig" if SUPERH64 92f42b7e3dSPaul Mundt 93ea0e1a9aSPaul Mundtconfig RWSEM_GENERIC_SPINLOCK 94d7ef4fb3SHarvey Harrison def_bool y 95ea0e1a9aSPaul Mundt 96ea0e1a9aSPaul Mundtconfig RWSEM_XCHGADD_ALGORITHM 97ea0e1a9aSPaul Mundt bool 98ea0e1a9aSPaul Mundt 99ea0e1a9aSPaul Mundtconfig GENERIC_BUG 100ea0e1a9aSPaul Mundt def_bool y 101a82d53ecSPaul Mundt depends on BUG && SUPERH32 102ea0e1a9aSPaul Mundt 1033767f3f1SPaul Mundtconfig GENERIC_CSUM 1043767f3f1SPaul Mundt def_bool y 1053767f3f1SPaul Mundt depends on SUPERH64 1063767f3f1SPaul Mundt 107ea0e1a9aSPaul Mundtconfig GENERIC_HWEIGHT 108d7ef4fb3SHarvey Harrison def_bool y 109ea0e1a9aSPaul Mundt 110ea0e1a9aSPaul Mundtconfig GENERIC_CALIBRATE_DELAY 111cf204fa7SPaul Mundt bool 112ea0e1a9aSPaul Mundt 113bdcab87bSPaul Mundtconfig GENERIC_LOCKBREAK 114bdcab87bSPaul Mundt def_bool y 115bdcab87bSPaul Mundt depends on SMP && PREEMPT 116bdcab87bSPaul Mundt 117af998a9aSMagnus Dammconfig ARCH_SUSPEND_POSSIBLE 118af998a9aSMagnus Damm def_bool n 119af998a9aSMagnus Damm 120af998a9aSMagnus Dammconfig ARCH_HIBERNATION_POSSIBLE 121af998a9aSMagnus Damm def_bool n 122ea0e1a9aSPaul Mundt 123ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_APM_EMULATION 124ea0e1a9aSPaul Mundt bool 125af998a9aSMagnus Damm select ARCH_SUSPEND_POSSIBLE 126ea0e1a9aSPaul Mundt 127ffb4a73dSPaul Mundtconfig SYS_SUPPORTS_HUGETLBFS 128ffb4a73dSPaul Mundt bool 129ffb4a73dSPaul Mundt 130ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_SMP 131ea0e1a9aSPaul Mundt bool 132ea0e1a9aSPaul Mundt 133ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_NUMA 134ea0e1a9aSPaul Mundt bool 135ea0e1a9aSPaul Mundt 136ea0e1a9aSPaul Mundtconfig STACKTRACE_SUPPORT 137d7ef4fb3SHarvey Harrison def_bool y 138ea0e1a9aSPaul Mundt 139ea0e1a9aSPaul Mundtconfig LOCKDEP_SUPPORT 140d7ef4fb3SHarvey Harrison def_bool y 141ea0e1a9aSPaul Mundt 142ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U32 143d7ef4fb3SHarvey Harrison def_bool n 144ea0e1a9aSPaul Mundt 145ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U64 146d7ef4fb3SHarvey Harrison def_bool n 147ea0e1a9aSPaul Mundt 148ce816fa8SUwe Kleine-Königconfig NO_IOPORT_MAP 14937b7a978SPaul Mundt def_bool !PCI 150c30b9c43SPaul Mundt depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \ 151c30b9c43SPaul Mundt !SH_HP6XX && !SH_SOLUTION_ENGINE 15286e4dd5aSPaul Mundt 153e7cc9a73SMagnus Dammconfig IO_TRAPPED 154e7cc9a73SMagnus Damm bool 155e7cc9a73SMagnus Damm 156b7e68d68SPaul Mundtconfig SWAP_IO_SPACE 157b7e68d68SPaul Mundt bool 158b7e68d68SPaul Mundt 15901be5d63SPaul Mundtconfig DMA_COHERENT 16001be5d63SPaul Mundt bool 16101be5d63SPaul Mundt 16201be5d63SPaul Mundtconfig DMA_NONCOHERENT 16301be5d63SPaul Mundt def_bool !DMA_COHERENT 1646fa1d28eSChristoph Hellwig select ARCH_HAS_SYNC_DMA_FOR_DEVICE 16501be5d63SPaul Mundt 16669543d63SKirill A. Shutemovconfig PGTABLE_LEVELS 16769543d63SKirill A. Shutemov default 3 if X2TLB 16869543d63SKirill A. Shutemov default 2 16969543d63SKirill A. Shutemov 170ea0e1a9aSPaul Mundtmenu "System type" 171ea0e1a9aSPaul Mundt 172ea0e1a9aSPaul Mundt# 173ea0e1a9aSPaul Mundt# Processor families 174ea0e1a9aSPaul Mundt# 175ea0e1a9aSPaul Mundtconfig CPU_SH2 176ea0e1a9aSPaul Mundt bool 177049d2804SGeert Uytterhoeven select SH_INTC 178ea0e1a9aSPaul Mundt 179ea0e1a9aSPaul Mundtconfig CPU_SH2A 180ea0e1a9aSPaul Mundt bool 181ea0e1a9aSPaul Mundt select CPU_SH2 182e2fcf74fSPaul Mundt select UNCACHED_MAPPING 183ea0e1a9aSPaul Mundt 1845a846abaSRich Felkerconfig CPU_J2 1855a846abaSRich Felker bool 1865a846abaSRich Felker select CPU_SH2 1875a846abaSRich Felker select OF 1885a846abaSRich Felker select OF_EARLY_FLATTREE 1895a846abaSRich Felker 190ea0e1a9aSPaul Mundtconfig CPU_SH3 191ea0e1a9aSPaul Mundt bool 192ea0e1a9aSPaul Mundt select CPU_HAS_INTEVT 193ea0e1a9aSPaul Mundt select CPU_HAS_SR_RB 194049d2804SGeert Uytterhoeven select SH_INTC 195fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_TMU 196ea0e1a9aSPaul Mundt 197ea0e1a9aSPaul Mundtconfig CPU_SH4 198ea0e1a9aSPaul Mundt bool 199ea0e1a9aSPaul Mundt select CPU_HAS_INTEVT 200ea0e1a9aSPaul Mundt select CPU_HAS_SR_RB 201ea0e1a9aSPaul Mundt select CPU_HAS_FPU if !CPU_SH4AL_DSP 202049d2804SGeert Uytterhoeven select SH_INTC 203fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_TMU 204ffb4a73dSPaul Mundt select SYS_SUPPORTS_HUGETLBFS if MMU 205ea0e1a9aSPaul Mundt 206ea0e1a9aSPaul Mundtconfig CPU_SH4A 207ea0e1a9aSPaul Mundt bool 208ea0e1a9aSPaul Mundt select CPU_SH4 209ea0e1a9aSPaul Mundt 210ea0e1a9aSPaul Mundtconfig CPU_SH4AL_DSP 211ea0e1a9aSPaul Mundt bool 212ea0e1a9aSPaul Mundt select CPU_SH4A 213ea0e1a9aSPaul Mundt select CPU_HAS_DSP 214ea0e1a9aSPaul Mundt 215ea0e1a9aSPaul Mundtconfig CPU_SH5 216ea0e1a9aSPaul Mundt bool 217ea0e1a9aSPaul Mundt select CPU_HAS_FPU 218fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_TMU 219ffb4a73dSPaul Mundt select SYS_SUPPORTS_HUGETLBFS if MMU 220ea0e1a9aSPaul Mundt 221ea0e1a9aSPaul Mundtconfig CPU_SHX2 222ea0e1a9aSPaul Mundt bool 223ea0e1a9aSPaul Mundt 224ea0e1a9aSPaul Mundtconfig CPU_SHX3 225ea0e1a9aSPaul Mundt bool 22601be5d63SPaul Mundt select DMA_COHERENT 2274b478ee2SPaul Mundt select SYS_SUPPORTS_SMP 2284b478ee2SPaul Mundt select SYS_SUPPORTS_NUMA 229ea0e1a9aSPaul Mundt 230dc65a977SPaul Mundtconfig ARCH_SHMOBILE 231dc65a977SPaul Mundt bool 23277594912SMagnus Damm select ARCH_SUSPEND_POSSIBLE 233464ed18eSRafael J. Wysocki select PM 234dc65a977SPaul Mundt 23586c8c047SMatt Flemingconfig CPU_HAS_PMU 23686c8c047SMatt Fleming depends on CPU_SH4 || CPU_SH4A 23786c8c047SMatt Fleming default y 23886c8c047SMatt Fleming bool 23986c8c047SMatt Fleming 2403cc000b5SPaul Mundtif SUPERH32 2413cc000b5SPaul Mundt 242ea0e1a9aSPaul Mundtchoice 243ea0e1a9aSPaul Mundt prompt "Processor sub-type selection" 244ea0e1a9aSPaul Mundt 245ea0e1a9aSPaul Mundt# 246ea0e1a9aSPaul Mundt# Processor subtypes 247ea0e1a9aSPaul Mundt# 248ea0e1a9aSPaul Mundt 249ea0e1a9aSPaul Mundt# SH-2 Processor Support 250ea0e1a9aSPaul Mundt 251ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7619 252ea0e1a9aSPaul Mundt bool "Support SH7619 processor" 253ea0e1a9aSPaul Mundt select CPU_SH2 254fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 255ea0e1a9aSPaul Mundt 2565a846abaSRich Felkerconfig CPU_SUBTYPE_J2 2575a846abaSRich Felker bool "Support J2 processor" 2585a846abaSRich Felker select CPU_J2 259b4214e41SRich Felker select SYS_SUPPORTS_SMP 260b4214e41SRich Felker select GENERIC_CLOCKEVENTS_BROADCAST if SMP 2615a846abaSRich Felker 262ea0e1a9aSPaul Mundt# SH-2A Processor Support 263ea0e1a9aSPaul Mundt 2642825999eSPeter Griffinconfig CPU_SUBTYPE_SH7201 2652825999eSPeter Griffin bool "Support SH7201 processor" 2662825999eSPeter Griffin select CPU_SH2A 2672825999eSPeter Griffin select CPU_HAS_FPU 268fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 2692825999eSPeter Griffin 2706d01f510SPaul Mundtconfig CPU_SUBTYPE_SH7203 2716d01f510SPaul Mundt bool "Support SH7203 processor" 2726d01f510SPaul Mundt select CPU_SH2A 27374d99a5eSPaul Mundt select CPU_HAS_FPU 274fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 275fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 276b768ecbcSLaurent Pinchart select PINCTRL 2776d01f510SPaul Mundt 278ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7206 279ea0e1a9aSPaul Mundt bool "Support SH7206 processor" 280ea0e1a9aSPaul Mundt select CPU_SH2A 281fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 282fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 283ea0e1a9aSPaul Mundt 284a8f67f4bSPaul Mundtconfig CPU_SUBTYPE_SH7263 285a8f67f4bSPaul Mundt bool "Support SH7263 processor" 286a8f67f4bSPaul Mundt select CPU_SH2A 28774d99a5eSPaul Mundt select CPU_HAS_FPU 288fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 289fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 290a8f67f4bSPaul Mundt 29151ce3068SPhil Edworthyconfig CPU_SUBTYPE_SH7264 29251ce3068SPhil Edworthy bool "Support SH7264 processor" 29351ce3068SPhil Edworthy select CPU_SH2A 29451ce3068SPhil Edworthy select CPU_HAS_FPU 295fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 296fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 2975946e7bbSLaurent Pinchart select PINCTRL 29851ce3068SPhil Edworthy 2990b25b7c8SPhil Edworthyconfig CPU_SUBTYPE_SH7269 3000b25b7c8SPhil Edworthy bool "Support SH7269 processor" 3010b25b7c8SPhil Edworthy select CPU_SH2A 3020b25b7c8SPhil Edworthy select CPU_HAS_FPU 303fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 304fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 305fb872fccSLaurent Pinchart select PINCTRL 3060b25b7c8SPhil Edworthy 3072ad69908SPaul Mundtconfig CPU_SUBTYPE_MXG 3082ad69908SPaul Mundt bool "Support MX-G processor" 3092ad69908SPaul Mundt select CPU_SH2A 310fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_MTU2 3112ad69908SPaul Mundt help 3122ad69908SPaul Mundt Select MX-G if running on an R8A03022BG part. 3132ad69908SPaul Mundt 314ea0e1a9aSPaul Mundt# SH-3 Processor Support 315ea0e1a9aSPaul Mundt 316ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7705 317ea0e1a9aSPaul Mundt bool "Support SH7705 processor" 318ea0e1a9aSPaul Mundt select CPU_SH3 319ea0e1a9aSPaul Mundt 320ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7706 321ea0e1a9aSPaul Mundt bool "Support SH7706 processor" 322ea0e1a9aSPaul Mundt select CPU_SH3 323ea0e1a9aSPaul Mundt help 324ea0e1a9aSPaul Mundt Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. 325ea0e1a9aSPaul Mundt 326ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7707 327ea0e1a9aSPaul Mundt bool "Support SH7707 processor" 328ea0e1a9aSPaul Mundt select CPU_SH3 329ea0e1a9aSPaul Mundt help 330ea0e1a9aSPaul Mundt Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU. 331ea0e1a9aSPaul Mundt 332ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7708 333ea0e1a9aSPaul Mundt bool "Support SH7708 processor" 334ea0e1a9aSPaul Mundt select CPU_SH3 335ea0e1a9aSPaul Mundt help 336ea0e1a9aSPaul Mundt Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or 337ea0e1a9aSPaul Mundt if you have a 100 Mhz SH-3 HD6417708R CPU. 338ea0e1a9aSPaul Mundt 339ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7709 340ea0e1a9aSPaul Mundt bool "Support SH7709 processor" 341ea0e1a9aSPaul Mundt select CPU_SH3 342ea0e1a9aSPaul Mundt help 343ea0e1a9aSPaul Mundt Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. 344ea0e1a9aSPaul Mundt 345ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7710 346ea0e1a9aSPaul Mundt bool "Support SH7710 processor" 347ea0e1a9aSPaul Mundt select CPU_SH3 348ea0e1a9aSPaul Mundt select CPU_HAS_DSP 349ea0e1a9aSPaul Mundt help 350ea0e1a9aSPaul Mundt Select SH7710 if you have a SH3-DSP SH7710 CPU. 351ea0e1a9aSPaul Mundt 352ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7712 353ea0e1a9aSPaul Mundt bool "Support SH7712 processor" 354ea0e1a9aSPaul Mundt select CPU_SH3 355ea0e1a9aSPaul Mundt select CPU_HAS_DSP 356ea0e1a9aSPaul Mundt help 357ea0e1a9aSPaul Mundt Select SH7712 if you have a SH3-DSP SH7712 CPU. 358ea0e1a9aSPaul Mundt 359ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7720 360ea0e1a9aSPaul Mundt bool "Support SH7720 processor" 361ea0e1a9aSPaul Mundt select CPU_SH3 362ea0e1a9aSPaul Mundt select CPU_HAS_DSP 363fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 3647b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 36585db6bffSLaurent Pinchart select PINCTRL 366ea0e1a9aSPaul Mundt help 367ea0e1a9aSPaul Mundt Select SH7720 if you have a SH3-DSP SH7720 CPU. 368ea0e1a9aSPaul Mundt 36931a49c4bSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7721 37031a49c4bSYoshihiro Shimoda bool "Support SH7721 processor" 37131a49c4bSYoshihiro Shimoda select CPU_SH3 37231a49c4bSYoshihiro Shimoda select CPU_HAS_DSP 373fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 3747b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 37531a49c4bSYoshihiro Shimoda help 37631a49c4bSYoshihiro Shimoda Select SH7721 if you have a SH3-DSP SH7721 CPU. 37731a49c4bSYoshihiro Shimoda 378ea0e1a9aSPaul Mundt# SH-4 Processor Support 379ea0e1a9aSPaul Mundt 380ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750 381ea0e1a9aSPaul Mundt bool "Support SH7750 processor" 382ea0e1a9aSPaul Mundt select CPU_SH4 383ea0e1a9aSPaul Mundt help 384ea0e1a9aSPaul Mundt Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. 385ea0e1a9aSPaul Mundt 386ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7091 387ea0e1a9aSPaul Mundt bool "Support SH7091 processor" 388ea0e1a9aSPaul Mundt select CPU_SH4 389ea0e1a9aSPaul Mundt help 390ea0e1a9aSPaul Mundt Select SH7091 if you have an SH-4 based Sega device (such as 391ea0e1a9aSPaul Mundt the Dreamcast, Naomi, and Naomi 2). 392ea0e1a9aSPaul Mundt 393ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750R 394ea0e1a9aSPaul Mundt bool "Support SH7750R processor" 395ea0e1a9aSPaul Mundt select CPU_SH4 396ea0e1a9aSPaul Mundt 397ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750S 398ea0e1a9aSPaul Mundt bool "Support SH7750S processor" 399ea0e1a9aSPaul Mundt select CPU_SH4 400ea0e1a9aSPaul Mundt 401ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751 402ea0e1a9aSPaul Mundt bool "Support SH7751 processor" 403ea0e1a9aSPaul Mundt select CPU_SH4 404ea0e1a9aSPaul Mundt help 405ea0e1a9aSPaul Mundt Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, 406ea0e1a9aSPaul Mundt or if you have a HD6417751R CPU. 407ea0e1a9aSPaul Mundt 408ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751R 409ea0e1a9aSPaul Mundt bool "Support SH7751R processor" 410ea0e1a9aSPaul Mundt select CPU_SH4 411ea0e1a9aSPaul Mundt 412ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7760 413ea0e1a9aSPaul Mundt bool "Support SH7760 processor" 414ea0e1a9aSPaul Mundt select CPU_SH4 415ea0e1a9aSPaul Mundt 416ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH4_202 417ea0e1a9aSPaul Mundt bool "Support SH4-202 processor" 418ea0e1a9aSPaul Mundt select CPU_SH4 419ea0e1a9aSPaul Mundt 420ea0e1a9aSPaul Mundt# SH-4A Processor Support 421ea0e1a9aSPaul Mundt 422178dd0cdSPaul Mundtconfig CPU_SUBTYPE_SH7723 423178dd0cdSPaul Mundt bool "Support SH7723 processor" 424178dd0cdSPaul Mundt select CPU_SH4A 425178dd0cdSPaul Mundt select CPU_SHX2 426dc65a977SPaul Mundt select ARCH_SHMOBILE 427178dd0cdSPaul Mundt select ARCH_SPARSEMEM_ENABLE 428fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 42916941a89SLaurent Pinchart select PINCTRL 430178dd0cdSPaul Mundt help 431178dd0cdSPaul Mundt Select SH7723 if you have an SH-MobileR2 CPU. 432178dd0cdSPaul Mundt 4330207a2efSKuninori Morimotoconfig CPU_SUBTYPE_SH7724 4340207a2efSKuninori Morimoto bool "Support SH7724 processor" 4350207a2efSKuninori Morimoto select CPU_SH4A 4360207a2efSKuninori Morimoto select CPU_SHX2 43759fe700dSPaul Mundt select ARCH_SHMOBILE 4380207a2efSKuninori Morimoto select ARCH_SPARSEMEM_ENABLE 439fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 44018ebd228SLaurent Pinchart select PINCTRL 4410207a2efSKuninori Morimoto help 4420207a2efSKuninori Morimoto Select SH7724 if you have an SH-MobileR2R CPU. 4430207a2efSKuninori Morimoto 444fea88a0cSNobuhiro Iwamatsuconfig CPU_SUBTYPE_SH7734 445fea88a0cSNobuhiro Iwamatsu bool "Support SH7734 processor" 446fea88a0cSNobuhiro Iwamatsu select CPU_SH4A 447fea88a0cSNobuhiro Iwamatsu select CPU_SHX2 4482c172182SLaurent Pinchart select PINCTRL 449fea88a0cSNobuhiro Iwamatsu help 450fea88a0cSNobuhiro Iwamatsu Select SH7734 if you have a SH4A SH7734 CPU. 451fea88a0cSNobuhiro Iwamatsu 452c01f0f1aSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7757 453c01f0f1aSYoshihiro Shimoda bool "Support SH7757 processor" 454c01f0f1aSYoshihiro Shimoda select CPU_SH4A 455c01f0f1aSYoshihiro Shimoda select CPU_SHX2 456eb61b772SLaurent Pinchart select PINCTRL 457c01f0f1aSYoshihiro Shimoda help 458c01f0f1aSYoshihiro Shimoda Select SH7757 if you have a SH4A SH7757 CPU. 459c01f0f1aSYoshihiro Shimoda 4607d740a06SYoshihiro Shimodaconfig CPU_SUBTYPE_SH7763 4617d740a06SYoshihiro Shimoda bool "Support SH7763 processor" 4627d740a06SYoshihiro Shimoda select CPU_SH4A 4637b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 4647d740a06SYoshihiro Shimoda help 4657d740a06SYoshihiro Shimoda Select SH7763 if you have a SH4A SH7763(R5S77631) CPU. 4667d740a06SYoshihiro Shimoda 467ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7770 468ea0e1a9aSPaul Mundt bool "Support SH7770 processor" 469ea0e1a9aSPaul Mundt select CPU_SH4A 470ea0e1a9aSPaul Mundt 471ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7780 472ea0e1a9aSPaul Mundt bool "Support SH7780 processor" 473ea0e1a9aSPaul Mundt select CPU_SH4A 474ea0e1a9aSPaul Mundt 475ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7785 476ea0e1a9aSPaul Mundt bool "Support SH7785 processor" 477ea0e1a9aSPaul Mundt select CPU_SH4A 478ea0e1a9aSPaul Mundt select CPU_SHX2 479ea0e1a9aSPaul Mundt select ARCH_SPARSEMEM_ENABLE 480ea0e1a9aSPaul Mundt select SYS_SUPPORTS_NUMA 48177bd27b2SLaurent Pinchart select PINCTRL 482ea0e1a9aSPaul Mundt 48355ba99ebSKuninori Morimotoconfig CPU_SUBTYPE_SH7786 48455ba99ebSKuninori Morimoto bool "Support SH7786 processor" 48555ba99ebSKuninori Morimoto select CPU_SH4A 48637042fbdSPaul Mundt select CPU_SHX3 4878263a67eSPaul Mundt select CPU_HAS_PTEAEX 4882eb2a436SPaul Mundt select GENERIC_CLOCKEVENTS_BROADCAST if SMP 4897b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 4907b61ca5dSPaul Mundt select USB_EHCI_SH if USB_EHCI_HCD 491c0fdbff9SLaurent Pinchart select PINCTRL 49255ba99ebSKuninori Morimoto 493ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SHX3 494ea0e1a9aSPaul Mundt bool "Support SH-X3 processor" 495ea0e1a9aSPaul Mundt select CPU_SH4A 496ea0e1a9aSPaul Mundt select CPU_SHX3 4975840263eSPaul Mundt select GENERIC_CLOCKEVENTS_BROADCAST if SMP 498fdcfdfa1SLinus Walleij select GPIOLIB 4993e347f08SLaurent Pinchart select PINCTRL 500ea0e1a9aSPaul Mundt 501ea0e1a9aSPaul Mundt# SH4AL-DSP Processor Support 502ea0e1a9aSPaul Mundt 503ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7343 504ea0e1a9aSPaul Mundt bool "Support SH7343 processor" 505ea0e1a9aSPaul Mundt select CPU_SH4AL_DSP 506dc65a977SPaul Mundt select ARCH_SHMOBILE 507fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 508ea0e1a9aSPaul Mundt 509ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7722 510ea0e1a9aSPaul Mundt bool "Support SH7722 processor" 511ea0e1a9aSPaul Mundt select CPU_SH4AL_DSP 512ea0e1a9aSPaul Mundt select CPU_SHX2 513dc65a977SPaul Mundt select ARCH_SHMOBILE 514ea0e1a9aSPaul Mundt select ARCH_SPARSEMEM_ENABLE 515ea0e1a9aSPaul Mundt select SYS_SUPPORTS_NUMA 516fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 517ef97c3c1SLaurent Pinchart select PINCTRL 518ea0e1a9aSPaul Mundt 5199109a30eSMagnus Dammconfig CPU_SUBTYPE_SH7366 5209109a30eSMagnus Damm bool "Support SH7366 processor" 5219109a30eSMagnus Damm select CPU_SH4AL_DSP 5229109a30eSMagnus Damm select CPU_SHX2 523dc65a977SPaul Mundt select ARCH_SHMOBILE 5249109a30eSMagnus Damm select ARCH_SPARSEMEM_ENABLE 5259109a30eSMagnus Damm select SYS_SUPPORTS_NUMA 526fbfa8934SMagnus Damm select SYS_SUPPORTS_SH_CMT 5279109a30eSMagnus Damm 5283cc000b5SPaul Mundtendchoice 5293cc000b5SPaul Mundt 5303cc000b5SPaul Mundtendif 5313cc000b5SPaul Mundt 5323cc000b5SPaul Mundtif SUPERH64 5333cc000b5SPaul Mundt 5343cc000b5SPaul Mundtchoice 5353cc000b5SPaul Mundt prompt "Processor sub-type selection" 5363cc000b5SPaul Mundt 537ea0e1a9aSPaul Mundt# SH-5 Processor Support 538ea0e1a9aSPaul Mundt 539ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_101 540ea0e1a9aSPaul Mundt bool "Support SH5-101 processor" 541ea0e1a9aSPaul Mundt select CPU_SH5 542ea0e1a9aSPaul Mundt 543ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_103 544ea0e1a9aSPaul Mundt bool "Support SH5-103 processor" 5458ef97dd7SPaul Mundt select CPU_SH5 546ea0e1a9aSPaul Mundt 547ea0e1a9aSPaul Mundtendchoice 548ea0e1a9aSPaul Mundt 5493cc000b5SPaul Mundtendif 5503cc000b5SPaul Mundt 551ea0e1a9aSPaul Mundtsource "arch/sh/mm/Kconfig" 552939a24a6SPaul Mundt 553ea0e1a9aSPaul Mundtsource "arch/sh/Kconfig.cpu" 554ea0e1a9aSPaul Mundt 555939a24a6SPaul Mundtsource "arch/sh/boards/Kconfig" 556ea0e1a9aSPaul Mundt 557ea0e1a9aSPaul Mundtmenu "Timer and clock configuration" 558ea0e1a9aSPaul Mundt 559ea0e1a9aSPaul Mundtconfig SH_PCLK_FREQ 560ea0e1a9aSPaul Mundt int "Peripheral clock frequency (in Hz)" 5618152a74bSPaul Mundt depends on SH_CLK_CPG_LEGACY 562ea0e1a9aSPaul Mundt default "31250000" if CPU_SUBTYPE_SH7619 5638152a74bSPaul Mundt default "33333333" if CPU_SUBTYPE_SH7770 || \ 5648152a74bSPaul Mundt CPU_SUBTYPE_SH7760 || \ 5658152a74bSPaul Mundt CPU_SUBTYPE_SH7705 || \ 5668152a74bSPaul Mundt CPU_SUBTYPE_SH7203 || \ 5678152a74bSPaul Mundt CPU_SUBTYPE_SH7206 || \ 5688152a74bSPaul Mundt CPU_SUBTYPE_SH7263 || \ 56943a1839cSPaul Mundt CPU_SUBTYPE_MXG 570ea0e1a9aSPaul Mundt default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R 571ea0e1a9aSPaul Mundt default "66000000" if CPU_SUBTYPE_SH4_202 572ea0e1a9aSPaul Mundt default "50000000" 573ea0e1a9aSPaul Mundt help 574ea0e1a9aSPaul Mundt This option is used to specify the peripheral clock frequency. 575ea0e1a9aSPaul Mundt This is necessary for determining the reference clock value on 576ea0e1a9aSPaul Mundt platforms lacking an RTC. 577ea0e1a9aSPaul Mundt 57836aa1e32SPaul Mundtconfig SH_CLK_CPG 57936aa1e32SPaul Mundt def_bool y 58036aa1e32SPaul Mundt 581253b0887SPaul Mundtconfig SH_CLK_CPG_LEGACY 58236aa1e32SPaul Mundt depends on SH_CLK_CPG 58343a1839cSPaul Mundt def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \ 58451ce3068SPhil Edworthy !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \ 585bcb86e0aSPaul Mundt !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \ 586bcb86e0aSPaul Mundt !CPU_SUBTYPE_SH7269 587253b0887SPaul Mundt 588ea0e1a9aSPaul Mundtendmenu 589ea0e1a9aSPaul Mundt 590ea0e1a9aSPaul Mundtmenu "CPU Frequency scaling" 591ea0e1a9aSPaul Mundtsource "drivers/cpufreq/Kconfig" 592ea0e1a9aSPaul Mundtendmenu 593ea0e1a9aSPaul Mundt 594ea0e1a9aSPaul Mundtsource "arch/sh/drivers/Kconfig" 595ea0e1a9aSPaul Mundt 596ea0e1a9aSPaul Mundtendmenu 597ea0e1a9aSPaul Mundt 598ea0e1a9aSPaul Mundtmenu "Kernel features" 599ea0e1a9aSPaul Mundt 6008636a1f9SMasahiro Yamadasource "kernel/Kconfig.hz" 601ea0e1a9aSPaul Mundt 602ea0e1a9aSPaul Mundtconfig KEXEC 603ea0e1a9aSPaul Mundt bool "kexec system call (EXPERIMENTAL)" 6040d57af1eSKees Cook depends on SUPERH32 && MMU 6052965faa5SDave Young select KEXEC_CORE 606ea0e1a9aSPaul Mundt help 607ea0e1a9aSPaul Mundt kexec is a system call that implements the ability to shutdown your 608ea0e1a9aSPaul Mundt current kernel, and to start another kernel. It is like a reboot 609ea0e1a9aSPaul Mundt but it is independent of the system firmware. And like a reboot 610ea0e1a9aSPaul Mundt you can start any kernel with it, not just Linux. 611ea0e1a9aSPaul Mundt 612ea0e1a9aSPaul Mundt The name comes from the similarity to the exec system call. 613ea0e1a9aSPaul Mundt 614ea0e1a9aSPaul Mundt It is an ongoing process to be certain the hardware in a machine 615ea0e1a9aSPaul Mundt is properly shutdown, so do not be surprised if this code does not 616bf220695SGeert Uytterhoeven initially work for you. As of this writing the exact hardware 617bf220695SGeert Uytterhoeven interface is strongly in flux, so no good recommendation can be 618bf220695SGeert Uytterhoeven made. 619ea0e1a9aSPaul Mundt 620ea0e1a9aSPaul Mundtconfig CRASH_DUMP 621ea0e1a9aSPaul Mundt bool "kernel crash dumps (EXPERIMENTAL)" 6220d57af1eSKees Cook depends on SUPERH32 && BROKEN_ON_SMP 623ea0e1a9aSPaul Mundt help 624ea0e1a9aSPaul Mundt Generate crash dump after being started by kexec. 625ea0e1a9aSPaul Mundt This should be normally only set in special crash dump kernels 626ea0e1a9aSPaul Mundt which are loaded in the main kernel with kexec-tools into 627ea0e1a9aSPaul Mundt a specially reserved region and then later executed after 628ea0e1a9aSPaul Mundt a crash by kdump/kexec. The crash dump kernel must be compiled 629ea0e1a9aSPaul Mundt to a memory address not used by the main kernel using 630e66ac3f2SSimon Horman PHYSICAL_START. 631ea0e1a9aSPaul Mundt 632ea0e1a9aSPaul Mundt For more details see Documentation/kdump/kdump.txt 633ea0e1a9aSPaul Mundt 634b7cf6ddcSMagnus Dammconfig KEXEC_JUMP 635b7cf6ddcSMagnus Damm bool "kexec jump (EXPERIMENTAL)" 6360d57af1eSKees Cook depends on SUPERH32 && KEXEC && HIBERNATION 637b7cf6ddcSMagnus Damm help 638b7cf6ddcSMagnus Damm Jump between original kernel and kexeced kernel and invoke 639b7cf6ddcSMagnus Damm code via KEXEC 640b7cf6ddcSMagnus Damm 641e66ac3f2SSimon Hormanconfig PHYSICAL_START 642e66ac3f2SSimon Horman hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP) 643e66ac3f2SSimon Horman default MEMORY_START 644e66ac3f2SSimon Horman ---help--- 645e66ac3f2SSimon Horman This gives the physical address where the kernel is loaded 646e66ac3f2SSimon Horman and is ordinarily the same as MEMORY_START. 647e66ac3f2SSimon Horman 648e66ac3f2SSimon Horman Different values are primarily used in the case of kexec on panic 649e66ac3f2SSimon Horman where the fail safe kernel needs to run at a different address 650e66ac3f2SSimon Horman than the panic-ed kernel. 651e66ac3f2SSimon Horman 652c4637d47SPaul Mundtconfig SECCOMP 653c4637d47SPaul Mundt bool "Enable seccomp to safely compute untrusted bytecode" 654c4637d47SPaul Mundt depends on PROC_FS 655c4637d47SPaul Mundt help 656c4637d47SPaul Mundt This kernel feature is useful for number crunching applications 657c4637d47SPaul Mundt that may need to compute untrusted bytecode during their 658c4637d47SPaul Mundt execution. By using pipes or other transports made available to 659c4637d47SPaul Mundt the process as file descriptors supporting the read/write 660c4637d47SPaul Mundt syscalls, it's possible to isolate those applications in 661c4637d47SPaul Mundt their own address space using seccomp. Once seccomp is 662c4637d47SPaul Mundt enabled via prctl, it cannot be disabled and the task is only 663c4637d47SPaul Mundt allowed to execute a few safe syscalls defined by each seccomp 664c4637d47SPaul Mundt mode. 665c4637d47SPaul Mundt 666c4637d47SPaul Mundt If unsure, say N. 667c4637d47SPaul Mundt 668ea0e1a9aSPaul Mundtconfig SMP 669ea0e1a9aSPaul Mundt bool "Symmetric multi-processing support" 670ea0e1a9aSPaul Mundt depends on SYS_SUPPORTS_SMP 671ea0e1a9aSPaul Mundt ---help--- 672ea0e1a9aSPaul Mundt This enables support for systems with more than one CPU. If you have 6734a474157SRobert Graffham a system with only one CPU, say N. If you have a system with more 6744a474157SRobert Graffham than one CPU, say Y. 675ea0e1a9aSPaul Mundt 6764a474157SRobert Graffham If you say N here, the kernel will run on uni- and multiprocessor 677ea0e1a9aSPaul Mundt machines, but will use only one CPU of a multiprocessor machine. If 678ea0e1a9aSPaul Mundt you say Y here, the kernel will run on many, but not all, 6794a474157SRobert Graffham uniprocessor machines. On a uniprocessor machine, the kernel 680ea0e1a9aSPaul Mundt will run faster if you say N here. 681ea0e1a9aSPaul Mundt 682ea0e1a9aSPaul Mundt People using multiprocessor machines who say Y here should also say 683ea0e1a9aSPaul Mundt Y to "Enhanced Real Time Clock Support", below. 684ea0e1a9aSPaul Mundt 685ecf38679SMauro Carvalho Chehab See also <file:Documentation/lockup-watchdogs.txt> and the SMP-HOWTO 68603502faaSAdrian Bunk available at <http://www.tldp.org/docs.html#howto>. 687ea0e1a9aSPaul Mundt 688ea0e1a9aSPaul Mundt If you don't know what to do here, say N. 689ea0e1a9aSPaul Mundt 690ea0e1a9aSPaul Mundtconfig NR_CPUS 691ea0e1a9aSPaul Mundt int "Maximum number of CPUs (2-32)" 692ea0e1a9aSPaul Mundt range 2 32 693ea0e1a9aSPaul Mundt depends on SMP 6942eb2a436SPaul Mundt default "4" if CPU_SUBTYPE_SHX3 695ea0e1a9aSPaul Mundt default "2" 696ea0e1a9aSPaul Mundt help 697ea0e1a9aSPaul Mundt This allows you to specify the maximum number of CPUs which this 698ea0e1a9aSPaul Mundt kernel will support. The maximum supported value is 32 and the 699ea0e1a9aSPaul Mundt minimum value which makes sense is 2. 700ea0e1a9aSPaul Mundt 701ea0e1a9aSPaul Mundt This is purely to save memory - each supported CPU adds 702ea0e1a9aSPaul Mundt approximately eight kilobytes to the kernel image. 703ea0e1a9aSPaul Mundt 704763142d1SPaul Mundtconfig HOTPLUG_CPU 705763142d1SPaul Mundt bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 70640b31360SStephen Rothwell depends on SMP 707763142d1SPaul Mundt help 708763142d1SPaul Mundt Say Y here to experiment with turning CPUs off and on. CPUs 709763142d1SPaul Mundt can be controlled through /sys/devices/system/cpu. 710763142d1SPaul Mundt 711ea0e1a9aSPaul Mundtconfig GUSA 712ea0e1a9aSPaul Mundt def_bool y 7131efe4ce3SStuart Menefy depends on !SMP && SUPERH32 714ea0e1a9aSPaul Mundt help 715ea0e1a9aSPaul Mundt This enables support for gUSA (general UserSpace Atomicity). 716ea0e1a9aSPaul Mundt This is the default implementation for both UP and non-ll/sc 717ea0e1a9aSPaul Mundt CPUs, and is used by the libc, amongst others. 718ea0e1a9aSPaul Mundt 719ea0e1a9aSPaul Mundt For additional information, design information can be found 720ea0e1a9aSPaul Mundt in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>. 721ea0e1a9aSPaul Mundt 722ea0e1a9aSPaul Mundt This should only be disabled for special cases where alternate 723ea0e1a9aSPaul Mundt atomicity implementations exist. 724ea0e1a9aSPaul Mundt 7251efe4ce3SStuart Menefyconfig GUSA_RB 7261efe4ce3SStuart Menefy bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)" 7271efe4ce3SStuart Menefy depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A) 7281efe4ce3SStuart Menefy help 7291efe4ce3SStuart Menefy Enabling this option will allow the kernel to implement some 730692105b8SMatt LaPlante atomic operations using a software implementation of load-locked/ 7311efe4ce3SStuart Menefy store-conditional (LLSC). On machines which do not have hardware 7321efe4ce3SStuart Menefy LLSC, this should be more efficient than the other alternative of 733692105b8SMatt LaPlante disabling interrupts around the atomic sequence. 7341efe4ce3SStuart Menefy 73586c8c047SMatt Flemingconfig HW_PERF_EVENTS 73686c8c047SMatt Fleming bool "Enable hardware performance counter support for perf events" 73786c8c047SMatt Fleming depends on PERF_EVENTS && CPU_HAS_PMU 73886c8c047SMatt Fleming default y 73986c8c047SMatt Fleming help 74086c8c047SMatt Fleming Enable hardware performance counter support for perf events. If 74186c8c047SMatt Fleming disabled, perf events will use software events only. 74286c8c047SMatt Fleming 74343b8774dSPaul Mundtsource "drivers/sh/Kconfig" 74443b8774dSPaul Mundt 745ea0e1a9aSPaul Mundtendmenu 746ea0e1a9aSPaul Mundt 747ea0e1a9aSPaul Mundtmenu "Boot options" 748ea0e1a9aSPaul Mundt 749190fe191SRich Felkerconfig USE_BUILTIN_DTB 750190fe191SRich Felker bool "Use builtin DTB" 751190fe191SRich Felker default n 752190fe191SRich Felker depends on SH_DEVICE_TREE 753190fe191SRich Felker help 754190fe191SRich Felker Link a device tree blob for particular hardware into the kernel, 755190fe191SRich Felker suppressing use of the DTB pointer provided by the bootloader. 756190fe191SRich Felker This option should only be used with legacy bootloaders that are 757190fe191SRich Felker not capable of providing a DTB to the kernel, or for experimental 758190fe191SRich Felker hardware without stable device tree bindings. 759190fe191SRich Felker 760190fe191SRich Felkerconfig BUILTIN_DTB_SOURCE 761190fe191SRich Felker string "Source file for builtin DTB" 762190fe191SRich Felker default "" 763190fe191SRich Felker depends on USE_BUILTIN_DTB 764190fe191SRich Felker help 765190fe191SRich Felker Base name (without suffix, relative to arch/sh/boot/dts) for the 766190fe191SRich Felker a DTS file that will be used to produce the DTB linked into the 767190fe191SRich Felker kernel. 768190fe191SRich Felker 769ea0e1a9aSPaul Mundtconfig ZERO_PAGE_OFFSET 770b412a49aSPaul Mundt hex 771b412a49aSPaul Mundt default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \ 772b412a49aSPaul Mundt SH_7751_SOLUTION_ENGINE 773b412a49aSPaul Mundt default "0x00004000" if PAGE_SIZE_16KB || SH_SH03 774ea0e1a9aSPaul Mundt default "0x00002000" if PAGE_SIZE_8KB 775ea0e1a9aSPaul Mundt default "0x00001000" 776ea0e1a9aSPaul Mundt help 777ea0e1a9aSPaul Mundt This sets the default offset of zero page. 778ea0e1a9aSPaul Mundt 779ea0e1a9aSPaul Mundtconfig BOOT_LINK_OFFSET 780b412a49aSPaul Mundt hex 781b412a49aSPaul Mundt default "0x00210000" if SH_SHMIN 782a2e76c80SPaul Mundt default "0x00400000" if SH_CAYMAN 783b412a49aSPaul Mundt default "0x00810000" if SH_7780_SOLUTION_ENGINE 784b412a49aSPaul Mundt default "0x009e0000" if SH_TITAN 785b412a49aSPaul Mundt default "0x01800000" if SH_SDK7780 786b412a49aSPaul Mundt default "0x02000000" if SH_EDOSK7760 787ea0e1a9aSPaul Mundt default "0x00800000" 788ea0e1a9aSPaul Mundt help 789ea0e1a9aSPaul Mundt This option allows you to set the link address offset of the zImage. 790ea0e1a9aSPaul Mundt This can be useful if you are on a board which has a small amount of 791ea0e1a9aSPaul Mundt memory. 792ea0e1a9aSPaul Mundt 793b412a49aSPaul Mundtconfig ENTRY_OFFSET 794b412a49aSPaul Mundt hex 795b412a49aSPaul Mundt default "0x00001000" if PAGE_SIZE_4KB 796b412a49aSPaul Mundt default "0x00002000" if PAGE_SIZE_8KB 797b412a49aSPaul Mundt default "0x00004000" if PAGE_SIZE_16KB 798b412a49aSPaul Mundt default "0x00010000" if PAGE_SIZE_64KB 799b412a49aSPaul Mundt default "0x00000000" 800b412a49aSPaul Mundt 8014705b2e8SMagnus Dammconfig ROMIMAGE_MMCIF 8024705b2e8SMagnus Damm bool "Include MMCIF loader in romImage (EXPERIMENTAL)" 8030d57af1eSKees Cook depends on CPU_SUBTYPE_SH7724 8044705b2e8SMagnus Damm help 8054705b2e8SMagnus Damm Say Y here to include experimental MMCIF loading code in 8064705b2e8SMagnus Damm romImage. With this enabled it is possible to write the romImage 8074705b2e8SMagnus Damm kernel image to an MMC card and boot the kernel straight from 8084705b2e8SMagnus Damm the reset vector. At reset the processor Mask ROM will load the 8094705b2e8SMagnus Damm first part of the romImage which in turn loads the rest the kernel 8104705b2e8SMagnus Damm image to RAM using the MMCIF hardware block. 8114705b2e8SMagnus Damm 812d724a9c9SPawel Mollchoice 813d724a9c9SPawel Moll prompt "Kernel command line" 814d724a9c9SPawel Moll optional 815d724a9c9SPawel Moll default CMDLINE_OVERWRITE 816d724a9c9SPawel Moll help 817d724a9c9SPawel Moll Setting this option allows the kernel command line arguments 818d724a9c9SPawel Moll to be set. 819d724a9c9SPawel Moll 820d724a9c9SPawel Mollconfig CMDLINE_OVERWRITE 821d724a9c9SPawel Moll bool "Overwrite bootloader kernel arguments" 822d724a9c9SPawel Moll help 823d724a9c9SPawel Moll Given string will overwrite any arguments passed in by 824d724a9c9SPawel Moll a bootloader. 825d724a9c9SPawel Moll 826d724a9c9SPawel Mollconfig CMDLINE_EXTEND 827d724a9c9SPawel Moll bool "Extend bootloader kernel arguments" 828d724a9c9SPawel Moll help 829d724a9c9SPawel Moll Given string will be concatenated with arguments passed in 830d724a9c9SPawel Moll by a bootloader. 831d724a9c9SPawel Moll 832d724a9c9SPawel Mollendchoice 833ea0e1a9aSPaul Mundt 834ea0e1a9aSPaul Mundtconfig CMDLINE 835d724a9c9SPawel Moll string "Kernel command line arguments string" 836d724a9c9SPawel Moll depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND 837ea0e1a9aSPaul Mundt default "console=ttySC1,115200" 838ea0e1a9aSPaul Mundt 839ea0e1a9aSPaul Mundtendmenu 840ea0e1a9aSPaul Mundt 841ea0e1a9aSPaul Mundtmenu "Bus options" 842ea0e1a9aSPaul Mundt 843ea0e1a9aSPaul Mundtconfig SUPERHYWAY 844ea0e1a9aSPaul Mundt tristate "SuperHyway Bus support" 845ea0e1a9aSPaul Mundt depends on CPU_SUBTYPE_SH4_202 846ea0e1a9aSPaul Mundt 847ea0e1a9aSPaul Mundtconfig MAPLE 848ea0e1a9aSPaul Mundt bool "Maple Bus support" 849ea0e1a9aSPaul Mundt depends on SH_DREAMCAST 850ea0e1a9aSPaul Mundt help 851ea0e1a9aSPaul Mundt The Maple Bus is SEGA's serial communication bus for peripherals 852ea0e1a9aSPaul Mundt on the Dreamcast. Without this bus support you won't be able to 853ea0e1a9aSPaul Mundt get your Dreamcast keyboard etc to work, so most users 854ea0e1a9aSPaul Mundt probably want to say 'Y' here, unless you are only using the 855ea0e1a9aSPaul Mundt Dreamcast with a serial line terminal or a remote network 856ea0e1a9aSPaul Mundt connection. 857ea0e1a9aSPaul Mundt 858ea0e1a9aSPaul Mundtendmenu 859ea0e1a9aSPaul Mundt 860ea0e1a9aSPaul Mundtmenu "Power management options (EXPERIMENTAL)" 861f4cb5700SJohannes Berg 862c6f17cb2SMagnus Dammsource "kernel/power/Kconfig" 863c6f17cb2SMagnus Damm 864c6f17cb2SMagnus Dammsource "drivers/cpuidle/Kconfig" 865ea0e1a9aSPaul Mundt 866ea0e1a9aSPaul Mundtendmenu 867