1ea0e1a9aSPaul Mundtconfig SUPERH 2ea0e1a9aSPaul Mundt def_bool y 36a108a14SDavid Rientjes select EXPERT 46d803ba7SJean-Christop PLAGNIOL-VILLARD select CLKDEV_LOOKUP 586e4dd5aSPaul Mundt select HAVE_IDE if HAS_IOPORT 695f72d1eSYinghai Lu select HAVE_MEMBLOCK 7534cfbeeSTejun Heo select HAVE_MEMBLOCK_NODE_MAP 8adaf7fd2SPaul Mundt select ARCH_DISCARD_MEMBLOCK 942d4b839SMathieu Desnoyers select HAVE_OPROFILE 109de90ac2SDmitry Baryshkov select HAVE_GENERIC_DMA_COHERENT 11d7b01f78SPaul Mundt select HAVE_ARCH_TRACEHOOK 12f802d969SPaul Mundt select HAVE_DMA_API_DEBUG 1373c926beSPaul Mundt select HAVE_DMA_ATTRS 14e360adbeSPeter Zijlstra select HAVE_IRQ_WORK 15cdd6c482SIngo Molnar select HAVE_PERF_EVENTS 169b2a60c4SCatalin Marinas select HAVE_DEBUG_BUGVERBOSE 177563bbf8SMark Brown select ARCH_HAVE_CUSTOM_GPIO_H 18df013ffbSHuang Ying select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A) 1972f0c137SPaul Mundt select PERF_USE_VMALLOC 20b69ec42bSCatalin Marinas select HAVE_DEBUG_KMEMLEAK 21df8ce259SPaul Mundt select HAVE_KERNEL_GZIP 2207e88e1bSPaul Mundt select HAVE_KERNEL_BZIP2 2307e88e1bSPaul Mundt select HAVE_KERNEL_LZMA 2450cfa79dSPaul Mundt select HAVE_KERNEL_XZ 25c7b16efbSPaul Mundt select HAVE_KERNEL_LZO 26af1839ebSCatalin Marinas select HAVE_UID16 27c1d7e01dSWill Deacon select ARCH_WANT_IPC_PARSE_VERSION 28a74f7e04SPaul Mundt select HAVE_SYSCALL_TRACEPOINTS 29eaaaeef3SPaul Mundt select HAVE_REGS_AND_STACK_ACCESS_API 3057b81330SPaul Mundt select HAVE_GENERIC_HARDIRQS 312ed86b16SRob Herring select MAY_HAVE_SPARSE_IRQ 32ed170924SPaul Mundt select IRQ_FORCED_THREADING 336eac1af0SPaul Mundt select RTC_LIB 34f01789c6SPaul Mundt select GENERIC_ATOMIC64 353d44ae40SPaul Mundt select GENERIC_IRQ_SHOW 36ea0588cbSThomas Gleixner select GENERIC_SMP_IDLE_THREAD 378cf200d8SAnna-Maria Gleixner select GENERIC_CLOCKEVENTS 388cf200d8SAnna-Maria Gleixner select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST 390e100e11SPaul Mundt select GENERIC_STRNCPY_FROM_USER 40cba8df4bSPaul Mundt select GENERIC_STRNLEN_USER 41786d35d4SDavid Howells select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER 42786d35d4SDavid Howells select MODULES_USE_ELF_RELA 437a879a94SAl Viro select GENERIC_SIGALTSTACK 44881e252dSAl Viro select OLD_SIGSUSPEND 45ea0e1a9aSPaul Mundt help 46ea0e1a9aSPaul Mundt The SuperH is a RISC processor targeted for use in embedded systems 47ea0e1a9aSPaul Mundt and consumer electronics; it was also used in the Sega Dreamcast 48ea0e1a9aSPaul Mundt gaming console. The SuperH port has a home page at 49ea0e1a9aSPaul Mundt <http://www.linux-sh.org/>. 50ea0e1a9aSPaul Mundt 51ea0e1a9aSPaul Mundtconfig SUPERH32 523cc000b5SPaul Mundt def_bool ARCH = "sh" 53d39f5450SChris Smith select HAVE_KPROBES 54d39f5450SChris Smith select HAVE_KRETPROBES 556d63e73dSPaul Mundt select HAVE_IOREMAP_PROT if MMU && !X2TLB 56694f94f2SPaul Mundt select HAVE_FUNCTION_TRACER 57fad57febSMatt Fleming select HAVE_FTRACE_MCOUNT_RECORD 58fad57febSMatt Fleming select HAVE_DYNAMIC_FTRACE 59c1340c05SMatt Fleming select HAVE_FUNCTION_TRACE_MCOUNT_TEST 60e4b053d9SPaul Mundt select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE 61c1d7e01dSWill Deacon select ARCH_WANT_IPC_PARSE_VERSION 62327933f5SMatt Fleming select HAVE_FUNCTION_GRAPH_TRACER 63ab6e570bSPaul Mundt select HAVE_ARCH_KGDB 646fbfe8d7SPaul Mundt select HAVE_HW_BREAKPOINT 650102752eSFrederic Weisbecker select HAVE_MIXED_BREAKPOINTS_REGS 66e583d6b3SSam Ravnborg select PERF_EVENTS 678dafc346SPaul Mundt select ARCH_HIBERNATION_POSSIBLE if MMU 6857b81330SPaul Mundt select SPARSE_IRQ 69ea0e1a9aSPaul Mundt 70ea0e1a9aSPaul Mundtconfig SUPERH64 713cc000b5SPaul Mundt def_bool ARCH = "sh64" 723a898c0fSPaul Mundt select KALLSYMS 73ea0e1a9aSPaul Mundt 74f42b7e3dSPaul Mundtconfig ARCH_DEFCONFIG 75f42b7e3dSPaul Mundt string 76f42b7e3dSPaul Mundt default "arch/sh/configs/shx3_defconfig" if SUPERH32 77f42b7e3dSPaul Mundt default "arch/sh/configs/cayman_defconfig" if SUPERH64 78f42b7e3dSPaul Mundt 79ea0e1a9aSPaul Mundtconfig RWSEM_GENERIC_SPINLOCK 80d7ef4fb3SHarvey Harrison def_bool y 81ea0e1a9aSPaul Mundt 82ea0e1a9aSPaul Mundtconfig RWSEM_XCHGADD_ALGORITHM 83ea0e1a9aSPaul Mundt bool 84ea0e1a9aSPaul Mundt 85ea0e1a9aSPaul Mundtconfig GENERIC_BUG 86ea0e1a9aSPaul Mundt def_bool y 87a82d53ecSPaul Mundt depends on BUG && SUPERH32 88ea0e1a9aSPaul Mundt 893767f3f1SPaul Mundtconfig GENERIC_CSUM 903767f3f1SPaul Mundt def_bool y 913767f3f1SPaul Mundt depends on SUPERH64 923767f3f1SPaul Mundt 93ea0e1a9aSPaul Mundtconfig GENERIC_HWEIGHT 94d7ef4fb3SHarvey Harrison def_bool y 95ea0e1a9aSPaul Mundt 962eb2a436SPaul Mundtconfig IRQ_PER_CPU 972eb2a436SPaul Mundt def_bool y 982eb2a436SPaul Mundt 992967dab1SMagnus Dammconfig GENERIC_GPIO 1002967dab1SMagnus Damm def_bool n 1012967dab1SMagnus Damm 102ea0e1a9aSPaul Mundtconfig GENERIC_CALIBRATE_DELAY 103cf204fa7SPaul Mundt bool 104ea0e1a9aSPaul Mundt 105bdcab87bSPaul Mundtconfig GENERIC_LOCKBREAK 106bdcab87bSPaul Mundt def_bool y 107bdcab87bSPaul Mundt depends on SMP && PREEMPT 108bdcab87bSPaul Mundt 109af998a9aSMagnus Dammconfig ARCH_SUSPEND_POSSIBLE 110af998a9aSMagnus Damm def_bool n 111af998a9aSMagnus Damm 112af998a9aSMagnus Dammconfig ARCH_HIBERNATION_POSSIBLE 113af998a9aSMagnus Damm def_bool n 114ea0e1a9aSPaul Mundt 115ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_APM_EMULATION 116ea0e1a9aSPaul Mundt bool 117af998a9aSMagnus Damm select ARCH_SUSPEND_POSSIBLE 118ea0e1a9aSPaul Mundt 119ffb4a73dSPaul Mundtconfig SYS_SUPPORTS_HUGETLBFS 120ffb4a73dSPaul Mundt bool 121ffb4a73dSPaul Mundt 122ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_SMP 123ea0e1a9aSPaul Mundt bool 124ea0e1a9aSPaul Mundt 125ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_NUMA 126ea0e1a9aSPaul Mundt bool 127ea0e1a9aSPaul Mundt 128ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_PCI 129ea0e1a9aSPaul Mundt bool 130ea0e1a9aSPaul Mundt 131f5ad881bSPaul Mundtconfig SYS_SUPPORTS_CMT 132f5ad881bSPaul Mundt bool 133f5ad881bSPaul Mundt 134d5ed4c2eSMagnus Dammconfig SYS_SUPPORTS_MTU2 135d5ed4c2eSMagnus Damm bool 136d5ed4c2eSMagnus Damm 1379570ef20SMagnus Dammconfig SYS_SUPPORTS_TMU 1389570ef20SMagnus Damm bool 1399570ef20SMagnus Damm 140ea0e1a9aSPaul Mundtconfig STACKTRACE_SUPPORT 141d7ef4fb3SHarvey Harrison def_bool y 142ea0e1a9aSPaul Mundt 143ea0e1a9aSPaul Mundtconfig LOCKDEP_SUPPORT 144d7ef4fb3SHarvey Harrison def_bool y 145ea0e1a9aSPaul Mundt 1465a89f1adSPaul Mundtconfig HAVE_LATENCYTOP_SUPPORT 1475a89f1adSPaul Mundt def_bool y 1485a89f1adSPaul Mundt 149ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U32 150d7ef4fb3SHarvey Harrison def_bool n 151ea0e1a9aSPaul Mundt 152ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U64 153d7ef4fb3SHarvey Harrison def_bool n 154ea0e1a9aSPaul Mundt 155ea0e1a9aSPaul Mundtconfig ARCH_NO_VIRT_TO_BUS 156ea0e1a9aSPaul Mundt def_bool y 157ea0e1a9aSPaul Mundt 158e869a90eSPaul Mundtconfig ARCH_HAS_DEFAULT_IDLE 159e869a90eSPaul Mundt def_bool y 160e869a90eSPaul Mundt 16186e4dd5aSPaul Mundtconfig NO_IOPORT 16237b7a978SPaul Mundt def_bool !PCI 163c30b9c43SPaul Mundt depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \ 164c30b9c43SPaul Mundt !SH_HP6XX && !SH_SOLUTION_ENGINE 16586e4dd5aSPaul Mundt 166e7cc9a73SMagnus Dammconfig IO_TRAPPED 167e7cc9a73SMagnus Damm bool 168e7cc9a73SMagnus Damm 169b7e68d68SPaul Mundtconfig SWAP_IO_SPACE 170b7e68d68SPaul Mundt bool 171b7e68d68SPaul Mundt 17201be5d63SPaul Mundtconfig DMA_COHERENT 17301be5d63SPaul Mundt bool 17401be5d63SPaul Mundt 17501be5d63SPaul Mundtconfig DMA_NONCOHERENT 17601be5d63SPaul Mundt def_bool !DMA_COHERENT 17701be5d63SPaul Mundt 1785cabbb62SFUJITA Tomonoriconfig NEED_DMA_MAP_STATE 1795cabbb62SFUJITA Tomonori def_bool DMA_NONCOHERENT 1805cabbb62SFUJITA Tomonori 18118e98307SFUJITA Tomonoriconfig NEED_SG_DMA_LENGTH 18218e98307SFUJITA Tomonori def_bool y 18318e98307SFUJITA Tomonori 184ea0e1a9aSPaul Mundtsource "init/Kconfig" 185ea0e1a9aSPaul Mundt 186dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer" 187dc52ddc0SMatt Helsley 188ea0e1a9aSPaul Mundtmenu "System type" 189ea0e1a9aSPaul Mundt 190ea0e1a9aSPaul Mundt# 191ea0e1a9aSPaul Mundt# Processor families 192ea0e1a9aSPaul Mundt# 193ea0e1a9aSPaul Mundtconfig CPU_SH2 194ea0e1a9aSPaul Mundt bool 195ea0e1a9aSPaul Mundt 196ea0e1a9aSPaul Mundtconfig CPU_SH2A 197ea0e1a9aSPaul Mundt bool 198ea0e1a9aSPaul Mundt select CPU_SH2 199e2fcf74fSPaul Mundt select UNCACHED_MAPPING 200ea0e1a9aSPaul Mundt 201ea0e1a9aSPaul Mundtconfig CPU_SH3 202ea0e1a9aSPaul Mundt bool 203ea0e1a9aSPaul Mundt select CPU_HAS_INTEVT 204ea0e1a9aSPaul Mundt select CPU_HAS_SR_RB 2054fa48e17SPaul Mundt select SYS_SUPPORTS_TMU 206ea0e1a9aSPaul Mundt 207ea0e1a9aSPaul Mundtconfig CPU_SH4 208ea0e1a9aSPaul Mundt bool 209ea0e1a9aSPaul Mundt select CPU_HAS_INTEVT 210ea0e1a9aSPaul Mundt select CPU_HAS_SR_RB 211ea0e1a9aSPaul Mundt select CPU_HAS_FPU if !CPU_SH4AL_DSP 2124fa48e17SPaul Mundt select SYS_SUPPORTS_TMU 213ffb4a73dSPaul Mundt select SYS_SUPPORTS_HUGETLBFS if MMU 214ea0e1a9aSPaul Mundt 215ea0e1a9aSPaul Mundtconfig CPU_SH4A 216ea0e1a9aSPaul Mundt bool 217ea0e1a9aSPaul Mundt select CPU_SH4 218ea0e1a9aSPaul Mundt 219ea0e1a9aSPaul Mundtconfig CPU_SH4AL_DSP 220ea0e1a9aSPaul Mundt bool 221ea0e1a9aSPaul Mundt select CPU_SH4A 222ea0e1a9aSPaul Mundt select CPU_HAS_DSP 223ea0e1a9aSPaul Mundt 224ea0e1a9aSPaul Mundtconfig CPU_SH5 225ea0e1a9aSPaul Mundt bool 226ea0e1a9aSPaul Mundt select CPU_HAS_FPU 227add47067SPaul Mundt select SYS_SUPPORTS_TMU 228ffb4a73dSPaul Mundt select SYS_SUPPORTS_HUGETLBFS if MMU 229ea0e1a9aSPaul Mundt 230ea0e1a9aSPaul Mundtconfig CPU_SHX2 231ea0e1a9aSPaul Mundt bool 232ea0e1a9aSPaul Mundt 233ea0e1a9aSPaul Mundtconfig CPU_SHX3 234ea0e1a9aSPaul Mundt bool 23501be5d63SPaul Mundt select DMA_COHERENT 2364b478ee2SPaul Mundt select SYS_SUPPORTS_SMP 2374b478ee2SPaul Mundt select SYS_SUPPORTS_NUMA 238ea0e1a9aSPaul Mundt 239dc65a977SPaul Mundtconfig ARCH_SHMOBILE 240dc65a977SPaul Mundt bool 24177594912SMagnus Damm select ARCH_SUSPEND_POSSIBLE 242ac2c596bSMagnus Damm select PM 243ac2c596bSMagnus Damm select PM_RUNTIME 244dc65a977SPaul Mundt 24586c8c047SMatt Flemingconfig CPU_HAS_PMU 24686c8c047SMatt Fleming depends on CPU_SH4 || CPU_SH4A 24786c8c047SMatt Fleming default y 24886c8c047SMatt Fleming bool 24986c8c047SMatt Fleming 2503cc000b5SPaul Mundtif SUPERH32 2513cc000b5SPaul Mundt 252ea0e1a9aSPaul Mundtchoice 253ea0e1a9aSPaul Mundt prompt "Processor sub-type selection" 254ea0e1a9aSPaul Mundt 255ea0e1a9aSPaul Mundt# 256ea0e1a9aSPaul Mundt# Processor subtypes 257ea0e1a9aSPaul Mundt# 258ea0e1a9aSPaul Mundt 259ea0e1a9aSPaul Mundt# SH-2 Processor Support 260ea0e1a9aSPaul Mundt 261ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7619 262ea0e1a9aSPaul Mundt bool "Support SH7619 processor" 263ea0e1a9aSPaul Mundt select CPU_SH2 264f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 265ea0e1a9aSPaul Mundt 266ea0e1a9aSPaul Mundt# SH-2A Processor Support 267ea0e1a9aSPaul Mundt 2682825999eSPeter Griffinconfig CPU_SUBTYPE_SH7201 2692825999eSPeter Griffin bool "Support SH7201 processor" 2702825999eSPeter Griffin select CPU_SH2A 2712825999eSPeter Griffin select CPU_HAS_FPU 272da107c6eSMagnus Damm select SYS_SUPPORTS_MTU2 2732825999eSPeter Griffin 2746d01f510SPaul Mundtconfig CPU_SUBTYPE_SH7203 2756d01f510SPaul Mundt bool "Support SH7203 processor" 2766d01f510SPaul Mundt select CPU_SH2A 27774d99a5eSPaul Mundt select CPU_HAS_FPU 278f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 279da107c6eSMagnus Damm select SYS_SUPPORTS_MTU2 280f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 2816d01f510SPaul Mundt 282ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7206 283ea0e1a9aSPaul Mundt bool "Support SH7206 processor" 284ea0e1a9aSPaul Mundt select CPU_SH2A 285f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 286da107c6eSMagnus Damm select SYS_SUPPORTS_MTU2 287ea0e1a9aSPaul Mundt 288a8f67f4bSPaul Mundtconfig CPU_SUBTYPE_SH7263 289a8f67f4bSPaul Mundt bool "Support SH7263 processor" 290a8f67f4bSPaul Mundt select CPU_SH2A 29174d99a5eSPaul Mundt select CPU_HAS_FPU 292f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 293da107c6eSMagnus Damm select SYS_SUPPORTS_MTU2 294a8f67f4bSPaul Mundt 29551ce3068SPhil Edworthyconfig CPU_SUBTYPE_SH7264 29651ce3068SPhil Edworthy bool "Support SH7264 processor" 29751ce3068SPhil Edworthy select CPU_SH2A 29851ce3068SPhil Edworthy select CPU_HAS_FPU 29951ce3068SPhil Edworthy select SYS_SUPPORTS_CMT 30051ce3068SPhil Edworthy select SYS_SUPPORTS_MTU2 30151ce3068SPhil Edworthy 3020b25b7c8SPhil Edworthyconfig CPU_SUBTYPE_SH7269 3030b25b7c8SPhil Edworthy bool "Support SH7269 processor" 3040b25b7c8SPhil Edworthy select CPU_SH2A 3050b25b7c8SPhil Edworthy select CPU_HAS_FPU 3060b25b7c8SPhil Edworthy select SYS_SUPPORTS_CMT 3070b25b7c8SPhil Edworthy select SYS_SUPPORTS_MTU2 3080b25b7c8SPhil Edworthy 3092ad69908SPaul Mundtconfig CPU_SUBTYPE_MXG 3102ad69908SPaul Mundt bool "Support MX-G processor" 3112ad69908SPaul Mundt select CPU_SH2A 312da107c6eSMagnus Damm select SYS_SUPPORTS_MTU2 3132ad69908SPaul Mundt help 3142ad69908SPaul Mundt Select MX-G if running on an R8A03022BG part. 3152ad69908SPaul Mundt 316ea0e1a9aSPaul Mundt# SH-3 Processor Support 317ea0e1a9aSPaul Mundt 318ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7705 319ea0e1a9aSPaul Mundt bool "Support SH7705 processor" 320ea0e1a9aSPaul Mundt select CPU_SH3 321ea0e1a9aSPaul Mundt 322ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7706 323ea0e1a9aSPaul Mundt bool "Support SH7706 processor" 324ea0e1a9aSPaul Mundt select CPU_SH3 325ea0e1a9aSPaul Mundt help 326ea0e1a9aSPaul Mundt Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. 327ea0e1a9aSPaul Mundt 328ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7707 329ea0e1a9aSPaul Mundt bool "Support SH7707 processor" 330ea0e1a9aSPaul Mundt select CPU_SH3 331ea0e1a9aSPaul Mundt help 332ea0e1a9aSPaul Mundt Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU. 333ea0e1a9aSPaul Mundt 334ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7708 335ea0e1a9aSPaul Mundt bool "Support SH7708 processor" 336ea0e1a9aSPaul Mundt select CPU_SH3 337ea0e1a9aSPaul Mundt help 338ea0e1a9aSPaul Mundt Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or 339ea0e1a9aSPaul Mundt if you have a 100 Mhz SH-3 HD6417708R CPU. 340ea0e1a9aSPaul Mundt 341ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7709 342ea0e1a9aSPaul Mundt bool "Support SH7709 processor" 343ea0e1a9aSPaul Mundt select CPU_SH3 344ea0e1a9aSPaul Mundt help 345ea0e1a9aSPaul Mundt Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. 346ea0e1a9aSPaul Mundt 347ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7710 348ea0e1a9aSPaul Mundt bool "Support SH7710 processor" 349ea0e1a9aSPaul Mundt select CPU_SH3 350ea0e1a9aSPaul Mundt select CPU_HAS_DSP 351ea0e1a9aSPaul Mundt help 352ea0e1a9aSPaul Mundt Select SH7710 if you have a SH3-DSP SH7710 CPU. 353ea0e1a9aSPaul Mundt 354ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7712 355ea0e1a9aSPaul Mundt bool "Support SH7712 processor" 356ea0e1a9aSPaul Mundt select CPU_SH3 357ea0e1a9aSPaul Mundt select CPU_HAS_DSP 358ea0e1a9aSPaul Mundt help 359ea0e1a9aSPaul Mundt Select SH7712 if you have a SH3-DSP SH7712 CPU. 360ea0e1a9aSPaul Mundt 361ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7720 362ea0e1a9aSPaul Mundt bool "Support SH7720 processor" 363ea0e1a9aSPaul Mundt select CPU_SH3 364ea0e1a9aSPaul Mundt select CPU_HAS_DSP 3652b23a882SMagnus Damm select SYS_SUPPORTS_CMT 366f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 367e3e9887eSPaul Mundt select USB_ARCH_HAS_OHCI 3687b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 369ea0e1a9aSPaul Mundt help 370ea0e1a9aSPaul Mundt Select SH7720 if you have a SH3-DSP SH7720 CPU. 371ea0e1a9aSPaul Mundt 37231a49c4bSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7721 37331a49c4bSYoshihiro Shimoda bool "Support SH7721 processor" 37431a49c4bSYoshihiro Shimoda select CPU_SH3 37531a49c4bSYoshihiro Shimoda select CPU_HAS_DSP 3762b23a882SMagnus Damm select SYS_SUPPORTS_CMT 377e3e9887eSPaul Mundt select USB_ARCH_HAS_OHCI 3787b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 37931a49c4bSYoshihiro Shimoda help 38031a49c4bSYoshihiro Shimoda Select SH7721 if you have a SH3-DSP SH7721 CPU. 38131a49c4bSYoshihiro Shimoda 382ea0e1a9aSPaul Mundt# SH-4 Processor Support 383ea0e1a9aSPaul Mundt 384ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750 385ea0e1a9aSPaul Mundt bool "Support SH7750 processor" 386ea0e1a9aSPaul Mundt select CPU_SH4 387ea0e1a9aSPaul Mundt help 388ea0e1a9aSPaul Mundt Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. 389ea0e1a9aSPaul Mundt 390ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7091 391ea0e1a9aSPaul Mundt bool "Support SH7091 processor" 392ea0e1a9aSPaul Mundt select CPU_SH4 393ea0e1a9aSPaul Mundt help 394ea0e1a9aSPaul Mundt Select SH7091 if you have an SH-4 based Sega device (such as 395ea0e1a9aSPaul Mundt the Dreamcast, Naomi, and Naomi 2). 396ea0e1a9aSPaul Mundt 397ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750R 398ea0e1a9aSPaul Mundt bool "Support SH7750R processor" 399ea0e1a9aSPaul Mundt select CPU_SH4 400ea0e1a9aSPaul Mundt 401ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750S 402ea0e1a9aSPaul Mundt bool "Support SH7750S processor" 403ea0e1a9aSPaul Mundt select CPU_SH4 404ea0e1a9aSPaul Mundt 405ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751 406ea0e1a9aSPaul Mundt bool "Support SH7751 processor" 407ea0e1a9aSPaul Mundt select CPU_SH4 408ea0e1a9aSPaul Mundt help 409ea0e1a9aSPaul Mundt Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, 410ea0e1a9aSPaul Mundt or if you have a HD6417751R CPU. 411ea0e1a9aSPaul Mundt 412ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751R 413ea0e1a9aSPaul Mundt bool "Support SH7751R processor" 414ea0e1a9aSPaul Mundt select CPU_SH4 415ea0e1a9aSPaul Mundt 416ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7760 417ea0e1a9aSPaul Mundt bool "Support SH7760 processor" 418ea0e1a9aSPaul Mundt select CPU_SH4 419ea0e1a9aSPaul Mundt 420ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH4_202 421ea0e1a9aSPaul Mundt bool "Support SH4-202 processor" 422ea0e1a9aSPaul Mundt select CPU_SH4 423ea0e1a9aSPaul Mundt 424ea0e1a9aSPaul Mundt# SH-4A Processor Support 425ea0e1a9aSPaul Mundt 426178dd0cdSPaul Mundtconfig CPU_SUBTYPE_SH7723 427178dd0cdSPaul Mundt bool "Support SH7723 processor" 428178dd0cdSPaul Mundt select CPU_SH4A 429178dd0cdSPaul Mundt select CPU_SHX2 430dc65a977SPaul Mundt select ARCH_SHMOBILE 431178dd0cdSPaul Mundt select ARCH_SPARSEMEM_ENABLE 432f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 433f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 434178dd0cdSPaul Mundt help 435178dd0cdSPaul Mundt Select SH7723 if you have an SH-MobileR2 CPU. 436178dd0cdSPaul Mundt 4370207a2efSKuninori Morimotoconfig CPU_SUBTYPE_SH7724 4380207a2efSKuninori Morimoto bool "Support SH7724 processor" 4390207a2efSKuninori Morimoto select CPU_SH4A 4400207a2efSKuninori Morimoto select CPU_SHX2 44159fe700dSPaul Mundt select ARCH_SHMOBILE 4420207a2efSKuninori Morimoto select ARCH_SPARSEMEM_ENABLE 4430207a2efSKuninori Morimoto select SYS_SUPPORTS_CMT 444f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 4450207a2efSKuninori Morimoto help 4460207a2efSKuninori Morimoto Select SH7724 if you have an SH-MobileR2R CPU. 4470207a2efSKuninori Morimoto 448fea88a0cSNobuhiro Iwamatsuconfig CPU_SUBTYPE_SH7734 449fea88a0cSNobuhiro Iwamatsu bool "Support SH7734 processor" 450fea88a0cSNobuhiro Iwamatsu select CPU_SH4A 451fea88a0cSNobuhiro Iwamatsu select CPU_SHX2 452fea88a0cSNobuhiro Iwamatsu select ARCH_WANT_OPTIONAL_GPIOLIB 453fea88a0cSNobuhiro Iwamatsu select USB_ARCH_HAS_OHCI 454fea88a0cSNobuhiro Iwamatsu select USB_ARCH_HAS_EHCI 455fea88a0cSNobuhiro Iwamatsu help 456fea88a0cSNobuhiro Iwamatsu Select SH7734 if you have a SH4A SH7734 CPU. 457fea88a0cSNobuhiro Iwamatsu 458c01f0f1aSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7757 459c01f0f1aSYoshihiro Shimoda bool "Support SH7757 processor" 460c01f0f1aSYoshihiro Shimoda select CPU_SH4A 461c01f0f1aSYoshihiro Shimoda select CPU_SHX2 462f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 4630fe48601SYoshihiro Shimoda select USB_ARCH_HAS_OHCI 4640fe48601SYoshihiro Shimoda select USB_ARCH_HAS_EHCI 465c01f0f1aSYoshihiro Shimoda help 466c01f0f1aSYoshihiro Shimoda Select SH7757 if you have a SH4A SH7757 CPU. 467c01f0f1aSYoshihiro Shimoda 4687d740a06SYoshihiro Shimodaconfig CPU_SUBTYPE_SH7763 4697d740a06SYoshihiro Shimoda bool "Support SH7763 processor" 4707d740a06SYoshihiro Shimoda select CPU_SH4A 471e3e9887eSPaul Mundt select USB_ARCH_HAS_OHCI 4727b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 4737d740a06SYoshihiro Shimoda help 4747d740a06SYoshihiro Shimoda Select SH7763 if you have a SH4A SH7763(R5S77631) CPU. 4757d740a06SYoshihiro Shimoda 476ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7770 477ea0e1a9aSPaul Mundt bool "Support SH7770 processor" 478ea0e1a9aSPaul Mundt select CPU_SH4A 479ea0e1a9aSPaul Mundt 480ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7780 481ea0e1a9aSPaul Mundt bool "Support SH7780 processor" 482ea0e1a9aSPaul Mundt select CPU_SH4A 483ea0e1a9aSPaul Mundt 484ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7785 485ea0e1a9aSPaul Mundt bool "Support SH7785 processor" 486ea0e1a9aSPaul Mundt select CPU_SH4A 487ea0e1a9aSPaul Mundt select CPU_SHX2 488ea0e1a9aSPaul Mundt select ARCH_SPARSEMEM_ENABLE 489ea0e1a9aSPaul Mundt select SYS_SUPPORTS_NUMA 490f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 491ea0e1a9aSPaul Mundt 49255ba99ebSKuninori Morimotoconfig CPU_SUBTYPE_SH7786 49355ba99ebSKuninori Morimoto bool "Support SH7786 processor" 49455ba99ebSKuninori Morimoto select CPU_SH4A 49537042fbdSPaul Mundt select CPU_SHX3 4968263a67eSPaul Mundt select CPU_HAS_PTEAEX 4972eb2a436SPaul Mundt select GENERIC_CLOCKEVENTS_BROADCAST if SMP 498f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 499e3e9887eSPaul Mundt select USB_ARCH_HAS_OHCI 5007b61ca5dSPaul Mundt select USB_OHCI_SH if USB_OHCI_HCD 501e3e9887eSPaul Mundt select USB_ARCH_HAS_EHCI 5027b61ca5dSPaul Mundt select USB_EHCI_SH if USB_EHCI_HCD 50355ba99ebSKuninori Morimoto 504ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SHX3 505ea0e1a9aSPaul Mundt bool "Support SH-X3 processor" 506ea0e1a9aSPaul Mundt select CPU_SH4A 507ea0e1a9aSPaul Mundt select CPU_SHX3 5085840263eSPaul Mundt select GENERIC_CLOCKEVENTS_BROADCAST if SMP 509742759eaSPaul Mundt select ARCH_REQUIRE_GPIOLIB 510ea0e1a9aSPaul Mundt 511ea0e1a9aSPaul Mundt# SH4AL-DSP Processor Support 512ea0e1a9aSPaul Mundt 513ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7343 514ea0e1a9aSPaul Mundt bool "Support SH7343 processor" 515ea0e1a9aSPaul Mundt select CPU_SH4AL_DSP 516dc65a977SPaul Mundt select ARCH_SHMOBILE 517f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 518ea0e1a9aSPaul Mundt 519ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7722 520ea0e1a9aSPaul Mundt bool "Support SH7722 processor" 521ea0e1a9aSPaul Mundt select CPU_SH4AL_DSP 522ea0e1a9aSPaul Mundt select CPU_SHX2 523dc65a977SPaul Mundt select ARCH_SHMOBILE 524ea0e1a9aSPaul Mundt select ARCH_SPARSEMEM_ENABLE 525ea0e1a9aSPaul Mundt select SYS_SUPPORTS_NUMA 526f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 527f020c92dSPaul Mundt select ARCH_WANT_OPTIONAL_GPIOLIB 528ea0e1a9aSPaul Mundt 5299109a30eSMagnus Dammconfig CPU_SUBTYPE_SH7366 5309109a30eSMagnus Damm bool "Support SH7366 processor" 5319109a30eSMagnus Damm select CPU_SH4AL_DSP 5329109a30eSMagnus Damm select CPU_SHX2 533dc65a977SPaul Mundt select ARCH_SHMOBILE 5349109a30eSMagnus Damm select ARCH_SPARSEMEM_ENABLE 5359109a30eSMagnus Damm select SYS_SUPPORTS_NUMA 536f5ad881bSPaul Mundt select SYS_SUPPORTS_CMT 5379109a30eSMagnus Damm 5383cc000b5SPaul Mundtendchoice 5393cc000b5SPaul Mundt 5403cc000b5SPaul Mundtendif 5413cc000b5SPaul Mundt 5423cc000b5SPaul Mundtif SUPERH64 5433cc000b5SPaul Mundt 5443cc000b5SPaul Mundtchoice 5453cc000b5SPaul Mundt prompt "Processor sub-type selection" 5463cc000b5SPaul Mundt 547ea0e1a9aSPaul Mundt# SH-5 Processor Support 548ea0e1a9aSPaul Mundt 549ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_101 550ea0e1a9aSPaul Mundt bool "Support SH5-101 processor" 551ea0e1a9aSPaul Mundt select CPU_SH5 552ea0e1a9aSPaul Mundt 553ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_103 554ea0e1a9aSPaul Mundt bool "Support SH5-103 processor" 5558ef97dd7SPaul Mundt select CPU_SH5 556ea0e1a9aSPaul Mundt 557ea0e1a9aSPaul Mundtendchoice 558ea0e1a9aSPaul Mundt 5593cc000b5SPaul Mundtendif 5603cc000b5SPaul Mundt 561ea0e1a9aSPaul Mundtsource "arch/sh/mm/Kconfig" 562939a24a6SPaul Mundt 563ea0e1a9aSPaul Mundtsource "arch/sh/Kconfig.cpu" 564ea0e1a9aSPaul Mundt 565939a24a6SPaul Mundtsource "arch/sh/boards/Kconfig" 566ea0e1a9aSPaul Mundt 567ea0e1a9aSPaul Mundtmenu "Timer and clock configuration" 568ea0e1a9aSPaul Mundt 5699570ef20SMagnus Dammconfig SH_TIMER_TMU 5709570ef20SMagnus Damm bool "TMU timer driver" 571f19900b2SMagnus Damm depends on SYS_SUPPORTS_TMU 5729570ef20SMagnus Damm default y 5739570ef20SMagnus Damm help 5749570ef20SMagnus Damm This enables the build of the TMU timer driver. 5759570ef20SMagnus Damm 576f5ad881bSPaul Mundtconfig SH_TIMER_CMT 577f425752fSMagnus Damm bool "CMT timer driver" 578f425752fSMagnus Damm depends on SYS_SUPPORTS_CMT 579f425752fSMagnus Damm default y 580f425752fSMagnus Damm help 581f425752fSMagnus Damm This enables build of the CMT timer driver. 582f5ad881bSPaul Mundt 583d5ed4c2eSMagnus Dammconfig SH_TIMER_MTU2 584d5ed4c2eSMagnus Damm bool "MTU2 timer driver" 5853280c886SMagnus Damm depends on SYS_SUPPORTS_MTU2 586d5ed4c2eSMagnus Damm default y 587d5ed4c2eSMagnus Damm help 588d5ed4c2eSMagnus Damm This enables build of the MTU2 timer driver. 589d5ed4c2eSMagnus Damm 590ea0e1a9aSPaul Mundtconfig SH_PCLK_FREQ 591ea0e1a9aSPaul Mundt int "Peripheral clock frequency (in Hz)" 5928152a74bSPaul Mundt depends on SH_CLK_CPG_LEGACY 593ea0e1a9aSPaul Mundt default "31250000" if CPU_SUBTYPE_SH7619 5948152a74bSPaul Mundt default "33333333" if CPU_SUBTYPE_SH7770 || \ 5958152a74bSPaul Mundt CPU_SUBTYPE_SH7760 || \ 5968152a74bSPaul Mundt CPU_SUBTYPE_SH7705 || \ 5978152a74bSPaul Mundt CPU_SUBTYPE_SH7203 || \ 5988152a74bSPaul Mundt CPU_SUBTYPE_SH7206 || \ 5998152a74bSPaul Mundt CPU_SUBTYPE_SH7263 || \ 60043a1839cSPaul Mundt CPU_SUBTYPE_MXG 601ea0e1a9aSPaul Mundt default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R 602ea0e1a9aSPaul Mundt default "66000000" if CPU_SUBTYPE_SH4_202 603ea0e1a9aSPaul Mundt default "50000000" 604ea0e1a9aSPaul Mundt help 605ea0e1a9aSPaul Mundt This option is used to specify the peripheral clock frequency. 606ea0e1a9aSPaul Mundt This is necessary for determining the reference clock value on 607ea0e1a9aSPaul Mundt platforms lacking an RTC. 608ea0e1a9aSPaul Mundt 60936aa1e32SPaul Mundtconfig SH_CLK_CPG 61036aa1e32SPaul Mundt def_bool y 61136aa1e32SPaul Mundt 612253b0887SPaul Mundtconfig SH_CLK_CPG_LEGACY 61336aa1e32SPaul Mundt depends on SH_CLK_CPG 61443a1839cSPaul Mundt def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \ 61551ce3068SPhil Edworthy !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \ 616bcb86e0aSPaul Mundt !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \ 617bcb86e0aSPaul Mundt !CPU_SUBTYPE_SH7269 618253b0887SPaul Mundt 619ea0e1a9aSPaul Mundtendmenu 620ea0e1a9aSPaul Mundt 621ea0e1a9aSPaul Mundtmenu "CPU Frequency scaling" 622ea0e1a9aSPaul Mundt 623ea0e1a9aSPaul Mundtsource "drivers/cpufreq/Kconfig" 624ea0e1a9aSPaul Mundt 625ea0e1a9aSPaul Mundtconfig SH_CPU_FREQ 626ea0e1a9aSPaul Mundt tristate "SuperH CPU Frequency driver" 627ea0e1a9aSPaul Mundt depends on CPU_FREQ 628ea0e1a9aSPaul Mundt select CPU_FREQ_TABLE 629ea0e1a9aSPaul Mundt help 6308a655053SPaul Mundt This adds the cpufreq driver for SuperH. Any CPU that supports 6318a655053SPaul Mundt clock rate rounding through the clock framework can use this 6328a655053SPaul Mundt driver. While it will make the kernel slightly larger, this is 6338a655053SPaul Mundt harmless for CPUs that don't support rate rounding. The driver 6348a655053SPaul Mundt will also generate a notice in the boot log before disabling 6358a655053SPaul Mundt itself if the CPU in question is not capable of rate rounding. 636ea0e1a9aSPaul Mundt 637ea0e1a9aSPaul Mundt For details, take a look at <file:Documentation/cpu-freq>. 638ea0e1a9aSPaul Mundt 639ea0e1a9aSPaul Mundt If unsure, say N. 640ea0e1a9aSPaul Mundt 641ea0e1a9aSPaul Mundtendmenu 642ea0e1a9aSPaul Mundt 643ea0e1a9aSPaul Mundtsource "arch/sh/drivers/Kconfig" 644ea0e1a9aSPaul Mundt 645ea0e1a9aSPaul Mundtendmenu 646ea0e1a9aSPaul Mundt 647ea0e1a9aSPaul Mundtmenu "Kernel features" 648ea0e1a9aSPaul Mundt 649ea0e1a9aSPaul Mundtsource kernel/Kconfig.hz 650ea0e1a9aSPaul Mundt 651ea0e1a9aSPaul Mundtconfig KEXEC 652ea0e1a9aSPaul Mundt bool "kexec system call (EXPERIMENTAL)" 653f36b59d1SNobuhiro Iwamatsu depends on SUPERH32 && EXPERIMENTAL && MMU 654ea0e1a9aSPaul Mundt help 655ea0e1a9aSPaul Mundt kexec is a system call that implements the ability to shutdown your 656ea0e1a9aSPaul Mundt current kernel, and to start another kernel. It is like a reboot 657ea0e1a9aSPaul Mundt but it is independent of the system firmware. And like a reboot 658ea0e1a9aSPaul Mundt you can start any kernel with it, not just Linux. 659ea0e1a9aSPaul Mundt 660ea0e1a9aSPaul Mundt The name comes from the similarity to the exec system call. 661ea0e1a9aSPaul Mundt 662ea0e1a9aSPaul Mundt It is an ongoing process to be certain the hardware in a machine 663ea0e1a9aSPaul Mundt is properly shutdown, so do not be surprised if this code does not 664ea0e1a9aSPaul Mundt initially work for you. It may help to enable device hotplugging 665ea0e1a9aSPaul Mundt support. As of this writing the exact hardware interface is 666ea0e1a9aSPaul Mundt strongly in flux, so no good recommendation can be made. 667ea0e1a9aSPaul Mundt 668ea0e1a9aSPaul Mundtconfig CRASH_DUMP 669ea0e1a9aSPaul Mundt bool "kernel crash dumps (EXPERIMENTAL)" 670d523e1aeSPaul Mundt depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP 671ea0e1a9aSPaul Mundt help 672ea0e1a9aSPaul Mundt Generate crash dump after being started by kexec. 673ea0e1a9aSPaul Mundt This should be normally only set in special crash dump kernels 674ea0e1a9aSPaul Mundt which are loaded in the main kernel with kexec-tools into 675ea0e1a9aSPaul Mundt a specially reserved region and then later executed after 676ea0e1a9aSPaul Mundt a crash by kdump/kexec. The crash dump kernel must be compiled 677ea0e1a9aSPaul Mundt to a memory address not used by the main kernel using 678e66ac3f2SSimon Horman PHYSICAL_START. 679ea0e1a9aSPaul Mundt 680ea0e1a9aSPaul Mundt For more details see Documentation/kdump/kdump.txt 681ea0e1a9aSPaul Mundt 682b7cf6ddcSMagnus Dammconfig KEXEC_JUMP 683b7cf6ddcSMagnus Damm bool "kexec jump (EXPERIMENTAL)" 684b7cf6ddcSMagnus Damm depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL 685b7cf6ddcSMagnus Damm help 686b7cf6ddcSMagnus Damm Jump between original kernel and kexeced kernel and invoke 687b7cf6ddcSMagnus Damm code via KEXEC 688b7cf6ddcSMagnus Damm 689e66ac3f2SSimon Hormanconfig PHYSICAL_START 690e66ac3f2SSimon Horman hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP) 691e66ac3f2SSimon Horman default MEMORY_START 692e66ac3f2SSimon Horman ---help--- 693e66ac3f2SSimon Horman This gives the physical address where the kernel is loaded 694e66ac3f2SSimon Horman and is ordinarily the same as MEMORY_START. 695e66ac3f2SSimon Horman 696e66ac3f2SSimon Horman Different values are primarily used in the case of kexec on panic 697e66ac3f2SSimon Horman where the fail safe kernel needs to run at a different address 698e66ac3f2SSimon Horman than the panic-ed kernel. 699e66ac3f2SSimon Horman 700c4637d47SPaul Mundtconfig SECCOMP 701c4637d47SPaul Mundt bool "Enable seccomp to safely compute untrusted bytecode" 702c4637d47SPaul Mundt depends on PROC_FS 703c4637d47SPaul Mundt help 704c4637d47SPaul Mundt This kernel feature is useful for number crunching applications 705c4637d47SPaul Mundt that may need to compute untrusted bytecode during their 706c4637d47SPaul Mundt execution. By using pipes or other transports made available to 707c4637d47SPaul Mundt the process as file descriptors supporting the read/write 708c4637d47SPaul Mundt syscalls, it's possible to isolate those applications in 709c4637d47SPaul Mundt their own address space using seccomp. Once seccomp is 710c4637d47SPaul Mundt enabled via prctl, it cannot be disabled and the task is only 711c4637d47SPaul Mundt allowed to execute a few safe syscalls defined by each seccomp 712c4637d47SPaul Mundt mode. 713c4637d47SPaul Mundt 714c4637d47SPaul Mundt If unsure, say N. 715c4637d47SPaul Mundt 7165d920bb9SFilippo Arcidiaconoconfig CC_STACKPROTECTOR 7175d920bb9SFilippo Arcidiacono bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" 7185d920bb9SFilippo Arcidiacono depends on SUPERH32 && EXPERIMENTAL 7195d920bb9SFilippo Arcidiacono help 7205d920bb9SFilippo Arcidiacono This option turns on the -fstack-protector GCC feature. This 7215d920bb9SFilippo Arcidiacono feature puts, at the beginning of functions, a canary value on 7225d920bb9SFilippo Arcidiacono the stack just before the return address, and validates 7235d920bb9SFilippo Arcidiacono the value just before actually returning. Stack based buffer 7245d920bb9SFilippo Arcidiacono overflows (that need to overwrite this return address) now also 7255d920bb9SFilippo Arcidiacono overwrite the canary, which gets detected and the attack is then 7265d920bb9SFilippo Arcidiacono neutralized via a kernel panic. 7275d920bb9SFilippo Arcidiacono 7285d920bb9SFilippo Arcidiacono This feature requires gcc version 4.2 or above. 7295d920bb9SFilippo Arcidiacono 730ea0e1a9aSPaul Mundtconfig SMP 731ea0e1a9aSPaul Mundt bool "Symmetric multi-processing support" 732ea0e1a9aSPaul Mundt depends on SYS_SUPPORTS_SMP 733490f5de5SJens Axboe select USE_GENERIC_SMP_HELPERS 734ea0e1a9aSPaul Mundt ---help--- 735ea0e1a9aSPaul Mundt This enables support for systems with more than one CPU. If you have 736ea0e1a9aSPaul Mundt a system with only one CPU, like most personal computers, say N. If 737ea0e1a9aSPaul Mundt you have a system with more than one CPU, say Y. 738ea0e1a9aSPaul Mundt 739ea0e1a9aSPaul Mundt If you say N here, the kernel will run on single and multiprocessor 740ea0e1a9aSPaul Mundt machines, but will use only one CPU of a multiprocessor machine. If 741ea0e1a9aSPaul Mundt you say Y here, the kernel will run on many, but not all, 742ea0e1a9aSPaul Mundt singleprocessor machines. On a singleprocessor machine, the kernel 743ea0e1a9aSPaul Mundt will run faster if you say N here. 744ea0e1a9aSPaul Mundt 745ea0e1a9aSPaul Mundt People using multiprocessor machines who say Y here should also say 746ea0e1a9aSPaul Mundt Y to "Enhanced Real Time Clock Support", below. 747ea0e1a9aSPaul Mundt 74803502faaSAdrian Bunk See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO 74903502faaSAdrian Bunk available at <http://www.tldp.org/docs.html#howto>. 750ea0e1a9aSPaul Mundt 751ea0e1a9aSPaul Mundt If you don't know what to do here, say N. 752ea0e1a9aSPaul Mundt 753ea0e1a9aSPaul Mundtconfig NR_CPUS 754ea0e1a9aSPaul Mundt int "Maximum number of CPUs (2-32)" 755ea0e1a9aSPaul Mundt range 2 32 756ea0e1a9aSPaul Mundt depends on SMP 7572eb2a436SPaul Mundt default "4" if CPU_SUBTYPE_SHX3 758ea0e1a9aSPaul Mundt default "2" 759ea0e1a9aSPaul Mundt help 760ea0e1a9aSPaul Mundt This allows you to specify the maximum number of CPUs which this 761ea0e1a9aSPaul Mundt kernel will support. The maximum supported value is 32 and the 762ea0e1a9aSPaul Mundt minimum value which makes sense is 2. 763ea0e1a9aSPaul Mundt 764ea0e1a9aSPaul Mundt This is purely to save memory - each supported CPU adds 765ea0e1a9aSPaul Mundt approximately eight kilobytes to the kernel image. 766ea0e1a9aSPaul Mundt 767763142d1SPaul Mundtconfig HOTPLUG_CPU 768763142d1SPaul Mundt bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 769763142d1SPaul Mundt depends on SMP && HOTPLUG && EXPERIMENTAL 770763142d1SPaul Mundt help 771763142d1SPaul Mundt Say Y here to experiment with turning CPUs off and on. CPUs 772763142d1SPaul Mundt can be controlled through /sys/devices/system/cpu. 773763142d1SPaul Mundt 774ea0e1a9aSPaul Mundtsource "kernel/Kconfig.preempt" 775ea0e1a9aSPaul Mundt 776ea0e1a9aSPaul Mundtconfig GUSA 777ea0e1a9aSPaul Mundt def_bool y 7781efe4ce3SStuart Menefy depends on !SMP && SUPERH32 779ea0e1a9aSPaul Mundt help 780ea0e1a9aSPaul Mundt This enables support for gUSA (general UserSpace Atomicity). 781ea0e1a9aSPaul Mundt This is the default implementation for both UP and non-ll/sc 782ea0e1a9aSPaul Mundt CPUs, and is used by the libc, amongst others. 783ea0e1a9aSPaul Mundt 784ea0e1a9aSPaul Mundt For additional information, design information can be found 785ea0e1a9aSPaul Mundt in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>. 786ea0e1a9aSPaul Mundt 787ea0e1a9aSPaul Mundt This should only be disabled for special cases where alternate 788ea0e1a9aSPaul Mundt atomicity implementations exist. 789ea0e1a9aSPaul Mundt 7901efe4ce3SStuart Menefyconfig GUSA_RB 7911efe4ce3SStuart Menefy bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)" 7921efe4ce3SStuart Menefy depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A) 7931efe4ce3SStuart Menefy help 7941efe4ce3SStuart Menefy Enabling this option will allow the kernel to implement some 795692105b8SMatt LaPlante atomic operations using a software implementation of load-locked/ 7961efe4ce3SStuart Menefy store-conditional (LLSC). On machines which do not have hardware 7971efe4ce3SStuart Menefy LLSC, this should be more efficient than the other alternative of 798692105b8SMatt LaPlante disabling interrupts around the atomic sequence. 7991efe4ce3SStuart Menefy 80086c8c047SMatt Flemingconfig HW_PERF_EVENTS 80186c8c047SMatt Fleming bool "Enable hardware performance counter support for perf events" 80286c8c047SMatt Fleming depends on PERF_EVENTS && CPU_HAS_PMU 80386c8c047SMatt Fleming default y 80486c8c047SMatt Fleming help 80586c8c047SMatt Fleming Enable hardware performance counter support for perf events. If 80686c8c047SMatt Fleming disabled, perf events will use software events only. 80786c8c047SMatt Fleming 80843b8774dSPaul Mundtsource "drivers/sh/Kconfig" 80943b8774dSPaul Mundt 810ea0e1a9aSPaul Mundtendmenu 811ea0e1a9aSPaul Mundt 812ea0e1a9aSPaul Mundtmenu "Boot options" 813ea0e1a9aSPaul Mundt 814ea0e1a9aSPaul Mundtconfig ZERO_PAGE_OFFSET 815b412a49aSPaul Mundt hex 816b412a49aSPaul Mundt default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \ 817b412a49aSPaul Mundt SH_7751_SOLUTION_ENGINE 818b412a49aSPaul Mundt default "0x00004000" if PAGE_SIZE_16KB || SH_SH03 819ea0e1a9aSPaul Mundt default "0x00002000" if PAGE_SIZE_8KB 820ea0e1a9aSPaul Mundt default "0x00001000" 821ea0e1a9aSPaul Mundt help 822ea0e1a9aSPaul Mundt This sets the default offset of zero page. 823ea0e1a9aSPaul Mundt 824ea0e1a9aSPaul Mundtconfig BOOT_LINK_OFFSET 825b412a49aSPaul Mundt hex 826b412a49aSPaul Mundt default "0x00210000" if SH_SHMIN 827a2e76c80SPaul Mundt default "0x00400000" if SH_CAYMAN 828b412a49aSPaul Mundt default "0x00810000" if SH_7780_SOLUTION_ENGINE 829b412a49aSPaul Mundt default "0x009e0000" if SH_TITAN 830b412a49aSPaul Mundt default "0x01800000" if SH_SDK7780 831b412a49aSPaul Mundt default "0x02000000" if SH_EDOSK7760 832ea0e1a9aSPaul Mundt default "0x00800000" 833ea0e1a9aSPaul Mundt help 834ea0e1a9aSPaul Mundt This option allows you to set the link address offset of the zImage. 835ea0e1a9aSPaul Mundt This can be useful if you are on a board which has a small amount of 836ea0e1a9aSPaul Mundt memory. 837ea0e1a9aSPaul Mundt 838b412a49aSPaul Mundtconfig ENTRY_OFFSET 839b412a49aSPaul Mundt hex 840b412a49aSPaul Mundt default "0x00001000" if PAGE_SIZE_4KB 841b412a49aSPaul Mundt default "0x00002000" if PAGE_SIZE_8KB 842b412a49aSPaul Mundt default "0x00004000" if PAGE_SIZE_16KB 843b412a49aSPaul Mundt default "0x00010000" if PAGE_SIZE_64KB 844b412a49aSPaul Mundt default "0x00000000" 845b412a49aSPaul Mundt 8464705b2e8SMagnus Dammconfig ROMIMAGE_MMCIF 8474705b2e8SMagnus Damm bool "Include MMCIF loader in romImage (EXPERIMENTAL)" 8484705b2e8SMagnus Damm depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL 8494705b2e8SMagnus Damm help 8504705b2e8SMagnus Damm Say Y here to include experimental MMCIF loading code in 8514705b2e8SMagnus Damm romImage. With this enabled it is possible to write the romImage 8524705b2e8SMagnus Damm kernel image to an MMC card and boot the kernel straight from 8534705b2e8SMagnus Damm the reset vector. At reset the processor Mask ROM will load the 8544705b2e8SMagnus Damm first part of the romImage which in turn loads the rest the kernel 8554705b2e8SMagnus Damm image to RAM using the MMCIF hardware block. 8564705b2e8SMagnus Damm 857d724a9c9SPawel Mollchoice 858d724a9c9SPawel Moll prompt "Kernel command line" 859d724a9c9SPawel Moll optional 860d724a9c9SPawel Moll default CMDLINE_OVERWRITE 861d724a9c9SPawel Moll help 862d724a9c9SPawel Moll Setting this option allows the kernel command line arguments 863d724a9c9SPawel Moll to be set. 864d724a9c9SPawel Moll 865d724a9c9SPawel Mollconfig CMDLINE_OVERWRITE 866d724a9c9SPawel Moll bool "Overwrite bootloader kernel arguments" 867d724a9c9SPawel Moll help 868d724a9c9SPawel Moll Given string will overwrite any arguments passed in by 869d724a9c9SPawel Moll a bootloader. 870d724a9c9SPawel Moll 871d724a9c9SPawel Mollconfig CMDLINE_EXTEND 872d724a9c9SPawel Moll bool "Extend bootloader kernel arguments" 873d724a9c9SPawel Moll help 874d724a9c9SPawel Moll Given string will be concatenated with arguments passed in 875d724a9c9SPawel Moll by a bootloader. 876d724a9c9SPawel Moll 877d724a9c9SPawel Mollendchoice 878ea0e1a9aSPaul Mundt 879ea0e1a9aSPaul Mundtconfig CMDLINE 880d724a9c9SPawel Moll string "Kernel command line arguments string" 881d724a9c9SPawel Moll depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND 882ea0e1a9aSPaul Mundt default "console=ttySC1,115200" 883ea0e1a9aSPaul Mundt 884ea0e1a9aSPaul Mundtendmenu 885ea0e1a9aSPaul Mundt 886ea0e1a9aSPaul Mundtmenu "Bus options" 887ea0e1a9aSPaul Mundt 888ea0e1a9aSPaul Mundtconfig SUPERHYWAY 889ea0e1a9aSPaul Mundt tristate "SuperHyway Bus support" 890ea0e1a9aSPaul Mundt depends on CPU_SUBTYPE_SH4_202 891ea0e1a9aSPaul Mundt 892ea0e1a9aSPaul Mundtconfig MAPLE 893ea0e1a9aSPaul Mundt bool "Maple Bus support" 894ea0e1a9aSPaul Mundt depends on SH_DREAMCAST 895ea0e1a9aSPaul Mundt help 896ea0e1a9aSPaul Mundt The Maple Bus is SEGA's serial communication bus for peripherals 897ea0e1a9aSPaul Mundt on the Dreamcast. Without this bus support you won't be able to 898ea0e1a9aSPaul Mundt get your Dreamcast keyboard etc to work, so most users 899ea0e1a9aSPaul Mundt probably want to say 'Y' here, unless you are only using the 900ea0e1a9aSPaul Mundt Dreamcast with a serial line terminal or a remote network 901ea0e1a9aSPaul Mundt connection. 902ea0e1a9aSPaul Mundt 9037693465dSPaul Mundtconfig PCI 9047693465dSPaul Mundt bool "PCI support" 9057693465dSPaul Mundt depends on SYS_SUPPORTS_PCI 906320e68daSPaul Mundt select PCI_DOMAINS 90743db595eSMichael S. Tsirkin select GENERIC_PCI_IOMAP 9081e05b62aSMichael S. Tsirkin select NO_GENERIC_PCI_IOPORT_MAP 9097693465dSPaul Mundt help 9107693465dSPaul Mundt Find out whether you have a PCI motherboard. PCI is the name of a 9117693465dSPaul Mundt bus system, i.e. the way the CPU talks to the other stuff inside 9127693465dSPaul Mundt your box. If you have PCI, say Y, otherwise N. 913ea0e1a9aSPaul Mundt 914320e68daSPaul Mundtconfig PCI_DOMAINS 915320e68daSPaul Mundt bool 916320e68daSPaul Mundt 917e16038abSPaul Mundtsource "drivers/pci/pcie/Kconfig" 918e16038abSPaul Mundt 919ea0e1a9aSPaul Mundtsource "drivers/pci/Kconfig" 920ea0e1a9aSPaul Mundt 921ea0e1a9aSPaul Mundtsource "drivers/pcmcia/Kconfig" 922ea0e1a9aSPaul Mundt 923ea0e1a9aSPaul Mundtsource "drivers/pci/hotplug/Kconfig" 924ea0e1a9aSPaul Mundt 925ea0e1a9aSPaul Mundtendmenu 926ea0e1a9aSPaul Mundt 927ea0e1a9aSPaul Mundtmenu "Executable file formats" 928ea0e1a9aSPaul Mundt 929ea0e1a9aSPaul Mundtsource "fs/Kconfig.binfmt" 930ea0e1a9aSPaul Mundt 931ea0e1a9aSPaul Mundtendmenu 932ea0e1a9aSPaul Mundt 933ea0e1a9aSPaul Mundtmenu "Power management options (EXPERIMENTAL)" 934af998a9aSMagnus Dammdepends on EXPERIMENTAL 935f4cb5700SJohannes Berg 936c6f17cb2SMagnus Dammsource "kernel/power/Kconfig" 937c6f17cb2SMagnus Damm 938c6f17cb2SMagnus Dammsource "drivers/cpuidle/Kconfig" 939ea0e1a9aSPaul Mundt 940ea0e1a9aSPaul Mundtendmenu 941ea0e1a9aSPaul Mundt 942ea0e1a9aSPaul Mundtsource "net/Kconfig" 943ea0e1a9aSPaul Mundt 944ea0e1a9aSPaul Mundtsource "drivers/Kconfig" 945ea0e1a9aSPaul Mundt 946ea0e1a9aSPaul Mundtsource "fs/Kconfig" 947ea0e1a9aSPaul Mundt 948ea0e1a9aSPaul Mundtsource "arch/sh/Kconfig.debug" 949ea0e1a9aSPaul Mundt 950ea0e1a9aSPaul Mundtsource "security/Kconfig" 951ea0e1a9aSPaul Mundt 952ea0e1a9aSPaul Mundtsource "crypto/Kconfig" 953ea0e1a9aSPaul Mundt 954ea0e1a9aSPaul Mundtsource "lib/Kconfig" 955