xref: /linux/arch/sh/mm/Kconfig (revision e7bd34a15b85655f24d1b45edbe3bdfebf9d027e)
1cad82448SPaul Mundt#
2cad82448SPaul Mundt# Processor families
3cad82448SPaul Mundt#
4cad82448SPaul Mundtconfig CPU_SH2
5cad82448SPaul Mundt	bool
69d4436a6SYoshinori Sato
79d4436a6SYoshinori Satoconfig CPU_SH2A
89d4436a6SYoshinori Sato	bool
99d4436a6SYoshinori Sato	select CPU_SH2
10cad82448SPaul Mundt
11cad82448SPaul Mundtconfig CPU_SH3
12cad82448SPaul Mundt	bool
13cad82448SPaul Mundt	select CPU_HAS_INTEVT
14cad82448SPaul Mundt	select CPU_HAS_SR_RB
15cad82448SPaul Mundt
16cad82448SPaul Mundtconfig CPU_SH4
17cad82448SPaul Mundt	bool
18cad82448SPaul Mundt	select CPU_HAS_INTEVT
19cad82448SPaul Mundt	select CPU_HAS_SR_RB
2026b7a78cSPaul Mundt	select CPU_HAS_PTEA if (!CPU_SUBTYPE_ST40 && !CPU_SH4A) || CPU_SHX2
21cad82448SPaul Mundt
22cad82448SPaul Mundtconfig CPU_SH4A
23cad82448SPaul Mundt	bool
24cad82448SPaul Mundt	select CPU_SH4
25cad82448SPaul Mundt
26e5723e0eSPaul Mundtconfig CPU_SH4AL_DSP
27e5723e0eSPaul Mundt	bool
28e5723e0eSPaul Mundt	select CPU_SH4A
29ac79fd58SPaul Mundt	select CPU_HAS_DSP
30e5723e0eSPaul Mundt
31cad82448SPaul Mundtconfig CPU_SUBTYPE_ST40
32cad82448SPaul Mundt	bool
33cad82448SPaul Mundt	select CPU_SH4
34cad82448SPaul Mundt	select CPU_HAS_INTC2_IRQ
35cad82448SPaul Mundt
3641504c39SPaul Mundtconfig CPU_SHX2
3741504c39SPaul Mundt	bool
3841504c39SPaul Mundt
392b1bd1acSPaul Mundtconfig CPU_SHX3
402b1bd1acSPaul Mundt	bool
412b1bd1acSPaul Mundt
42f3d22298SPaul Mundtchoice
43f3d22298SPaul Mundt	prompt "Processor sub-type selection"
44f3d22298SPaul Mundt
45cad82448SPaul Mundt#
46cad82448SPaul Mundt# Processor subtypes
47cad82448SPaul Mundt#
48cad82448SPaul Mundt
49f3d22298SPaul Mundt# SH-2 Processor Support
50cad82448SPaul Mundt
519d4436a6SYoshinori Satoconfig CPU_SUBTYPE_SH7619
529d4436a6SYoshinori Sato	bool "Support SH7619 processor"
539d4436a6SYoshinori Sato	select CPU_SH2
54357d5946SPaul Mundt	select CPU_HAS_IPR_IRQ
559d4436a6SYoshinori Sato
56f3d22298SPaul Mundt# SH-2A Processor Support
579d4436a6SYoshinori Sato
589d4436a6SYoshinori Satoconfig CPU_SUBTYPE_SH7206
599d4436a6SYoshinori Sato	bool "Support SH7206 processor"
609d4436a6SYoshinori Sato	select CPU_SH2A
61fa1ec92eSPaul Mundt	select CPU_HAS_IPR_IRQ
629d4436a6SYoshinori Sato
63f3d22298SPaul Mundt# SH-3 Processor Support
64cad82448SPaul Mundt
65cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7705
66cad82448SPaul Mundt	bool "Support SH7705 processor"
67cad82448SPaul Mundt	select CPU_SH3
6870e8be0aSMagnus Damm	select CPU_HAS_INTC_IRQ
69cad82448SPaul Mundt
70e5723e0eSPaul Mundtconfig CPU_SUBTYPE_SH7706
71e5723e0eSPaul Mundt	bool "Support SH7706 processor"
72e5723e0eSPaul Mundt	select CPU_SH3
73ec58f1f3SMagnus Damm	select CPU_HAS_INTC_IRQ
74e5723e0eSPaul Mundt	help
75e5723e0eSPaul Mundt	  Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
76e5723e0eSPaul Mundt
77cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7707
78cad82448SPaul Mundt	bool "Support SH7707 processor"
79cad82448SPaul Mundt	select CPU_SH3
80ec58f1f3SMagnus Damm	select CPU_HAS_INTC_IRQ
81cad82448SPaul Mundt	help
82cad82448SPaul Mundt	  Select SH7707 if you have a  60 Mhz SH-3 HD6417707 CPU.
83cad82448SPaul Mundt
84cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7708
85cad82448SPaul Mundt	bool "Support SH7708 processor"
86cad82448SPaul Mundt	select CPU_SH3
87ec58f1f3SMagnus Damm	select CPU_HAS_INTC_IRQ
88cad82448SPaul Mundt	help
89cad82448SPaul Mundt	  Select SH7708 if you have a  60 Mhz SH-3 HD6417708S or
90cad82448SPaul Mundt	  if you have a 100 Mhz SH-3 HD6417708R CPU.
91cad82448SPaul Mundt
92cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7709
93cad82448SPaul Mundt	bool "Support SH7709 processor"
94cad82448SPaul Mundt	select CPU_SH3
95ec58f1f3SMagnus Damm	select CPU_HAS_INTC_IRQ
96cad82448SPaul Mundt	help
97cad82448SPaul Mundt	  Select SH7709 if you have a  80 Mhz SH-3 HD6417709 CPU.
98cad82448SPaul Mundt
99e5723e0eSPaul Mundtconfig CPU_SUBTYPE_SH7710
100e5723e0eSPaul Mundt	bool "Support SH7710 processor"
101e5723e0eSPaul Mundt	select CPU_SH3
10228b146c8SMagnus Damm	select CPU_HAS_INTC_IRQ
103ac79fd58SPaul Mundt	select CPU_HAS_DSP
104e5723e0eSPaul Mundt	help
105e5723e0eSPaul Mundt	  Select SH7710 if you have a SH3-DSP SH7710 CPU.
106e5723e0eSPaul Mundt
1079465a54fSNobuhiro Iwamatsuconfig CPU_SUBTYPE_SH7712
1089465a54fSNobuhiro Iwamatsu	bool "Support SH7712 processor"
1099465a54fSNobuhiro Iwamatsu	select CPU_SH3
11028b146c8SMagnus Damm	select CPU_HAS_INTC_IRQ
111ac79fd58SPaul Mundt	select CPU_HAS_DSP
1129465a54fSNobuhiro Iwamatsu	help
1139465a54fSNobuhiro Iwamatsu	  Select SH7712 if you have a SH3-DSP SH7712 CPU.
1149465a54fSNobuhiro Iwamatsu
115f3d22298SPaul Mundt# SH-4 Processor Support
116cad82448SPaul Mundt
117cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7750
118cad82448SPaul Mundt	bool "Support SH7750 processor"
119cad82448SPaul Mundt	select CPU_SH4
12056386f64SMagnus Damm	select CPU_HAS_INTC_IRQ
121cad82448SPaul Mundt	help
122cad82448SPaul Mundt	  Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
123cad82448SPaul Mundt
124cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7091
125cad82448SPaul Mundt	bool "Support SH7091 processor"
126cad82448SPaul Mundt	select CPU_SH4
12756386f64SMagnus Damm	select CPU_HAS_INTC_IRQ
128cad82448SPaul Mundt	help
129cad82448SPaul Mundt	  Select SH7091 if you have an SH-4 based Sega device (such as
130cad82448SPaul Mundt	  the Dreamcast, Naomi, and Naomi 2).
131cad82448SPaul Mundt
132cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7750R
133cad82448SPaul Mundt	bool "Support SH7750R processor"
134cad82448SPaul Mundt	select CPU_SH4
13556386f64SMagnus Damm	select CPU_HAS_INTC_IRQ
136cad82448SPaul Mundt
137cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7750S
138cad82448SPaul Mundt	bool "Support SH7750S processor"
139cad82448SPaul Mundt	select CPU_SH4
14056386f64SMagnus Damm	select CPU_HAS_INTC_IRQ
141cad82448SPaul Mundt
142cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7751
143cad82448SPaul Mundt	bool "Support SH7751 processor"
144cad82448SPaul Mundt	select CPU_SH4
14556386f64SMagnus Damm	select CPU_HAS_INTC_IRQ
146cad82448SPaul Mundt	help
147cad82448SPaul Mundt	  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
148cad82448SPaul Mundt	  or if you have a HD6417751R CPU.
149cad82448SPaul Mundt
150cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7751R
151cad82448SPaul Mundt	bool "Support SH7751R processor"
152cad82448SPaul Mundt	select CPU_SH4
15356386f64SMagnus Damm	select CPU_HAS_INTC_IRQ
154cad82448SPaul Mundt
155cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7760
156cad82448SPaul Mundt	bool "Support SH7760 processor"
157cad82448SPaul Mundt	select CPU_SH4
158cad82448SPaul Mundt	select CPU_HAS_INTC2_IRQ
1596dcda6f1SManuel Lauss	select CPU_HAS_IPR_IRQ
160cad82448SPaul Mundt
161cad82448SPaul Mundtconfig CPU_SUBTYPE_SH4_202
162cad82448SPaul Mundt	bool "Support SH4-202 processor"
163cad82448SPaul Mundt	select CPU_SH4
164cad82448SPaul Mundt
165f3d22298SPaul Mundt# ST40 Processor Support
166cad82448SPaul Mundt
167cad82448SPaul Mundtconfig CPU_SUBTYPE_ST40STB1
168cad82448SPaul Mundt	bool "Support ST40STB1/ST40RA processors"
169cad82448SPaul Mundt	select CPU_SUBTYPE_ST40
170cad82448SPaul Mundt	help
171cad82448SPaul Mundt	  Select ST40STB1 if you have a ST40RA CPU.
172cad82448SPaul Mundt	  This was previously called the ST40STB1, hence the option name.
173cad82448SPaul Mundt
174cad82448SPaul Mundtconfig CPU_SUBTYPE_ST40GX1
175cad82448SPaul Mundt	bool "Support ST40GX1 processor"
176cad82448SPaul Mundt	select CPU_SUBTYPE_ST40
177cad82448SPaul Mundt	help
178cad82448SPaul Mundt	  Select ST40GX1 if you have a ST40GX1 CPU.
179cad82448SPaul Mundt
180f3d22298SPaul Mundt# SH-4A Processor Support
181cad82448SPaul Mundt
182cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7770
183cad82448SPaul Mundt	bool "Support SH7770 processor"
184cad82448SPaul Mundt	select CPU_SH4A
185cad82448SPaul Mundt
186cad82448SPaul Mundtconfig CPU_SUBTYPE_SH7780
187cad82448SPaul Mundt	bool "Support SH7780 processor"
188cad82448SPaul Mundt	select CPU_SH4A
18939c7aa9eSMagnus Damm	select CPU_HAS_INTC_IRQ
190cad82448SPaul Mundt
191b552c7e8SPaul Mundtconfig CPU_SUBTYPE_SH7785
192b552c7e8SPaul Mundt	bool "Support SH7785 processor"
193b552c7e8SPaul Mundt	select CPU_SH4A
19441504c39SPaul Mundt	select CPU_SHX2
195b552c7e8SPaul Mundt	select CPU_HAS_INTC2_IRQ
196b552c7e8SPaul Mundt
1972b1bd1acSPaul Mundtconfig CPU_SUBTYPE_SHX3
1982b1bd1acSPaul Mundt	bool "Support SH-X3 processor"
1992b1bd1acSPaul Mundt	select CPU_SH4A
2002b1bd1acSPaul Mundt	select CPU_SHX3
2012b1bd1acSPaul Mundt	select CPU_HAS_INTC2_IRQ
2022b1bd1acSPaul Mundt
203f3d22298SPaul Mundt# SH4AL-DSP Processor Support
204e5723e0eSPaul Mundt
205e5723e0eSPaul Mundtconfig CPU_SUBTYPE_SH7343
206e5723e0eSPaul Mundt	bool "Support SH7343 processor"
207e5723e0eSPaul Mundt	select CPU_SH4AL_DSP
208e5723e0eSPaul Mundt
20941504c39SPaul Mundtconfig CPU_SUBTYPE_SH7722
21041504c39SPaul Mundt	bool "Support SH7722 processor"
21141504c39SPaul Mundt	select CPU_SH4AL_DSP
21241504c39SPaul Mundt	select CPU_SHX2
2131b06428eSMagnus Damm	select CPU_HAS_INTC_IRQ
214520588f4SPaul Mundt	select ARCH_SPARSEMEM_ENABLE
215357d5946SPaul Mundt	select SYS_SUPPORTS_NUMA
21641504c39SPaul Mundt
217f3d22298SPaul Mundtendchoice
218cad82448SPaul Mundt
219cad82448SPaul Mundtmenu "Memory management options"
220cad82448SPaul Mundt
2215f8c9908SPaul Mundtconfig QUICKLIST
2225f8c9908SPaul Mundt	def_bool y
2235f8c9908SPaul Mundt
224cad82448SPaul Mundtconfig MMU
225cad82448SPaul Mundt        bool "Support for memory management hardware"
226cad82448SPaul Mundt	depends on !CPU_SH2
227cad82448SPaul Mundt	default y
228cad82448SPaul Mundt	help
229cad82448SPaul Mundt	  Some SH processors (such as SH-2/SH-2A) lack an MMU. In order to
230cad82448SPaul Mundt	  boot on these systems, this option must not be set.
231cad82448SPaul Mundt
232cad82448SPaul Mundt	  On other systems (such as the SH-3 and 4) where an MMU exists,
233cad82448SPaul Mundt	  turning this off will boot the kernel on these machines with the
234cad82448SPaul Mundt	  MMU implicitly switched off.
235cad82448SPaul Mundt
236e7f93a35SPaul Mundtconfig PAGE_OFFSET
237e7f93a35SPaul Mundt	hex
238e7f93a35SPaul Mundt	default "0x80000000" if MMU
239e7f93a35SPaul Mundt	default "0x00000000"
240e7f93a35SPaul Mundt
241e7f93a35SPaul Mundtconfig MEMORY_START
242e7f93a35SPaul Mundt	hex "Physical memory start address"
243e7f93a35SPaul Mundt	default "0x08000000"
244e7f93a35SPaul Mundt	---help---
245e7f93a35SPaul Mundt	  Computers built with Hitachi SuperH processors always
246e7f93a35SPaul Mundt	  map the ROM starting at address zero.  But the processor
247e7f93a35SPaul Mundt	  does not specify the range that RAM takes.
248e7f93a35SPaul Mundt
249e7f93a35SPaul Mundt	  The physical memory (RAM) start address will be automatically
250e7f93a35SPaul Mundt	  set to 08000000. Other platforms, such as the Solution Engine
251e7f93a35SPaul Mundt	  boards typically map RAM at 0C000000.
252e7f93a35SPaul Mundt
253e7f93a35SPaul Mundt	  Tweak this only when porting to a new machine which does not
254e7f93a35SPaul Mundt	  already have a defconfig. Changing it from the known correct
255e7f93a35SPaul Mundt	  value on any of the known systems will only lead to disaster.
256e7f93a35SPaul Mundt
257e7f93a35SPaul Mundtconfig MEMORY_SIZE
258e7f93a35SPaul Mundt	hex "Physical memory size"
259e7f93a35SPaul Mundt	default "0x00400000"
260e7f93a35SPaul Mundt	help
261e7f93a35SPaul Mundt	  This sets the default memory size assumed by your SH kernel. It can
262e7f93a35SPaul Mundt	  be overridden as normal by the 'mem=' argument on the kernel command
263e7f93a35SPaul Mundt	  line. If unsure, consult your board specifications or just leave it
264e7f93a35SPaul Mundt	  as 0x00400000 which was the default value before this became
265e7f93a35SPaul Mundt	  configurable.
266e7f93a35SPaul Mundt
267cad82448SPaul Mundtconfig 32BIT
268cad82448SPaul Mundt	bool "Support 32-bit physical addressing through PMB"
26950f63f25SPaul Mundt	depends on MMU && (CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785)
270cad82448SPaul Mundt	default y
271cad82448SPaul Mundt	help
272cad82448SPaul Mundt	  If you say Y here, physical addressing will be extended to
273cad82448SPaul Mundt	  32-bits through the SH-4A PMB. If this is not set, legacy
274cad82448SPaul Mundt	  29-bit physical addressing will be used.
275cad82448SPaul Mundt
27621440cf0SPaul Mundtconfig X2TLB
27721440cf0SPaul Mundt	bool "Enable extended TLB mode"
27841504c39SPaul Mundt	depends on CPU_SHX2 && MMU && EXPERIMENTAL
27921440cf0SPaul Mundt	help
28021440cf0SPaul Mundt	  Selecting this option will enable the extended mode of the SH-X2
28121440cf0SPaul Mundt	  TLB. For legacy SH-X behaviour and interoperability, say N. For
28221440cf0SPaul Mundt	  all of the fun new features and a willingless to submit bug reports,
28321440cf0SPaul Mundt	  say Y.
28421440cf0SPaul Mundt
28519f9a34fSPaul Mundtconfig VSYSCALL
28619f9a34fSPaul Mundt	bool "Support vsyscall page"
28719f9a34fSPaul Mundt	depends on MMU
28819f9a34fSPaul Mundt	default y
28919f9a34fSPaul Mundt	help
29019f9a34fSPaul Mundt	  This will enable support for the kernel mapping a vDSO page
29119f9a34fSPaul Mundt	  in process space, and subsequently handing down the entry point
29219f9a34fSPaul Mundt	  to the libc through the ELF auxiliary vector.
29319f9a34fSPaul Mundt
29419f9a34fSPaul Mundt	  From the kernel side this is used for the signal trampoline.
29519f9a34fSPaul Mundt	  For systems with an MMU that can afford to give up a page,
29619f9a34fSPaul Mundt	  (the default value) say Y.
29719f9a34fSPaul Mundt
298b241cb0cSPaul Mundtconfig NUMA
299b241cb0cSPaul Mundt	bool "Non Uniform Memory Access (NUMA) Support"
300357d5946SPaul Mundt	depends on MMU && SYS_SUPPORTS_NUMA && EXPERIMENTAL
301b241cb0cSPaul Mundt	default n
302b241cb0cSPaul Mundt	help
303b241cb0cSPaul Mundt	  Some SH systems have many various memories scattered around
304b241cb0cSPaul Mundt	  the address space, each with varying latencies. This enables
305b241cb0cSPaul Mundt	  support for these blocks by binding them to nodes and allowing
306b241cb0cSPaul Mundt	  memory policies to be used for prioritizing and controlling
307b241cb0cSPaul Mundt	  allocation behaviour.
308b241cb0cSPaul Mundt
30901066625SPaul Mundtconfig NODES_SHIFT
31001066625SPaul Mundt	int
31101066625SPaul Mundt	default "1"
31201066625SPaul Mundt	depends on NEED_MULTIPLE_NODES
31301066625SPaul Mundt
31401066625SPaul Mundtconfig ARCH_FLATMEM_ENABLE
31501066625SPaul Mundt	def_bool y
316357d5946SPaul Mundt	depends on !NUMA
31701066625SPaul Mundt
318dfbb9042SPaul Mundtconfig ARCH_SPARSEMEM_ENABLE
319dfbb9042SPaul Mundt	def_bool y
320dfbb9042SPaul Mundt	select SPARSEMEM_STATIC
321dfbb9042SPaul Mundt
322dfbb9042SPaul Mundtconfig ARCH_SPARSEMEM_DEFAULT
323dfbb9042SPaul Mundt	def_bool y
324dfbb9042SPaul Mundt
3251ce7ddd5SPaul Mundtconfig MAX_ACTIVE_REGIONS
3261ce7ddd5SPaul Mundt	int
327520588f4SPaul Mundt	default "2" if (CPU_SUBTYPE_SH7722 && SPARSEMEM)
3281ce7ddd5SPaul Mundt	default "1"
3291ce7ddd5SPaul Mundt
33001066625SPaul Mundtconfig ARCH_POPULATES_NODE_MAP
33101066625SPaul Mundt	def_bool y
33201066625SPaul Mundt
333dfbb9042SPaul Mundtconfig ARCH_SELECT_MEMORY_MODEL
334dfbb9042SPaul Mundt	def_bool y
335dfbb9042SPaul Mundt
33633d63bd8SPaul Mundtconfig ARCH_ENABLE_MEMORY_HOTPLUG
33733d63bd8SPaul Mundt	def_bool y
33833d63bd8SPaul Mundt	depends on SPARSEMEM
33933d63bd8SPaul Mundt
34033d63bd8SPaul Mundtconfig ARCH_MEMORY_PROBE
34133d63bd8SPaul Mundt	def_bool y
34233d63bd8SPaul Mundt	depends on MEMORY_HOTPLUG
34333d63bd8SPaul Mundt
344cad82448SPaul Mundtchoice
34521440cf0SPaul Mundt	prompt "Kernel page size"
34621440cf0SPaul Mundt	default PAGE_SIZE_4KB
34721440cf0SPaul Mundt
34821440cf0SPaul Mundtconfig PAGE_SIZE_4KB
34921440cf0SPaul Mundt	bool "4kB"
35021440cf0SPaul Mundt	help
35121440cf0SPaul Mundt	  This is the default page size used by all SuperH CPUs.
35221440cf0SPaul Mundt
35321440cf0SPaul Mundtconfig PAGE_SIZE_8KB
35421440cf0SPaul Mundt	bool "8kB"
35521440cf0SPaul Mundt	depends on EXPERIMENTAL && X2TLB
35621440cf0SPaul Mundt	help
35721440cf0SPaul Mundt	  This enables 8kB pages as supported by SH-X2 and later MMUs.
35821440cf0SPaul Mundt
35921440cf0SPaul Mundtconfig PAGE_SIZE_64KB
36021440cf0SPaul Mundt	bool "64kB"
36121440cf0SPaul Mundt	depends on EXPERIMENTAL && CPU_SH4
36221440cf0SPaul Mundt	help
36321440cf0SPaul Mundt	  This enables support for 64kB pages, possible on all SH-4
36421440cf0SPaul Mundt	  CPUs and later. Highly experimental, not recommended.
36521440cf0SPaul Mundt
36621440cf0SPaul Mundtendchoice
36721440cf0SPaul Mundt
36821440cf0SPaul Mundtchoice
369cad82448SPaul Mundt	prompt "HugeTLB page size"
370cad82448SPaul Mundt	depends on HUGETLB_PAGE && CPU_SH4 && MMU
371cad82448SPaul Mundt	default HUGETLB_PAGE_SIZE_64K
372cad82448SPaul Mundt
373cad82448SPaul Mundtconfig HUGETLB_PAGE_SIZE_64K
37421440cf0SPaul Mundt	bool "64kB"
37521440cf0SPaul Mundt
37621440cf0SPaul Mundtconfig HUGETLB_PAGE_SIZE_256K
37721440cf0SPaul Mundt	bool "256kB"
37821440cf0SPaul Mundt	depends on X2TLB
379cad82448SPaul Mundt
380cad82448SPaul Mundtconfig HUGETLB_PAGE_SIZE_1MB
381cad82448SPaul Mundt	bool "1MB"
382cad82448SPaul Mundt
38321440cf0SPaul Mundtconfig HUGETLB_PAGE_SIZE_4MB
38421440cf0SPaul Mundt	bool "4MB"
38521440cf0SPaul Mundt	depends on X2TLB
38621440cf0SPaul Mundt
38721440cf0SPaul Mundtconfig HUGETLB_PAGE_SIZE_64MB
38821440cf0SPaul Mundt	bool "64MB"
38921440cf0SPaul Mundt	depends on X2TLB
39021440cf0SPaul Mundt
391cad82448SPaul Mundtendchoice
392cad82448SPaul Mundt
393cad82448SPaul Mundtsource "mm/Kconfig"
394cad82448SPaul Mundt
395cad82448SPaul Mundtendmenu
396cad82448SPaul Mundt
397cad82448SPaul Mundtmenu "Cache configuration"
398cad82448SPaul Mundt
399cad82448SPaul Mundtconfig SH7705_CACHE_32KB
400cad82448SPaul Mundt	bool "Enable 32KB cache size for SH7705"
401cad82448SPaul Mundt	depends on CPU_SUBTYPE_SH7705
402cad82448SPaul Mundt	default y
403cad82448SPaul Mundt
404cad82448SPaul Mundtconfig SH_DIRECT_MAPPED
405cad82448SPaul Mundt	bool "Use direct-mapped caching"
406cad82448SPaul Mundt	default n
407cad82448SPaul Mundt	help
408cad82448SPaul Mundt	  Selecting this option will configure the caches to be direct-mapped,
409cad82448SPaul Mundt	  even if the cache supports a 2 or 4-way mode. This is useful primarily
410cad82448SPaul Mundt	  for debugging on platforms with 2 and 4-way caches (SH7750R/SH7751R,
411cad82448SPaul Mundt	  SH4-202, SH4-501, etc.)
412cad82448SPaul Mundt
413cad82448SPaul Mundt	  Turn this option off for platforms that do not have a direct-mapped
414cad82448SPaul Mundt	  cache, and you have no need to run the caches in such a configuration.
415cad82448SPaul Mundt
416*e7bd34a1SPaul Mundtchoice
417*e7bd34a1SPaul Mundt	prompt "Cache mode"
418*e7bd34a1SPaul Mundt	default CACHE_WRITEBACK if CPU_SH2A || CPU_SH3 || CPU_SH4
419*e7bd34a1SPaul Mundt	default CACHE_WRITETHROUGH if (CPU_SH2 && !CPU_SH2A)
420*e7bd34a1SPaul Mundt
421*e7bd34a1SPaul Mundtconfig CACHE_WRITEBACK
422*e7bd34a1SPaul Mundt	bool "Write-back"
423*e7bd34a1SPaul Mundt	depends on CPU_SH2A || CPU_SH3 || CPU_SH4
424*e7bd34a1SPaul Mundt
425*e7bd34a1SPaul Mundtconfig CACHE_WRITETHROUGH
426*e7bd34a1SPaul Mundt	bool "Write-through"
427cad82448SPaul Mundt	help
428cad82448SPaul Mundt	  Selecting this option will configure the caches in write-through
429cad82448SPaul Mundt	  mode, as opposed to the default write-back configuration.
430cad82448SPaul Mundt
431cad82448SPaul Mundt	  Since there's sill some aliasing issues on SH-4, this option will
432cad82448SPaul Mundt	  unfortunately still require the majority of flushing functions to
433cad82448SPaul Mundt	  be implemented to deal with aliasing.
434cad82448SPaul Mundt
435cad82448SPaul Mundt	  If unsure, say N.
436cad82448SPaul Mundt
437*e7bd34a1SPaul Mundtconfig CACHE_OFF
438*e7bd34a1SPaul Mundt	bool "Off"
439*e7bd34a1SPaul Mundt
440*e7bd34a1SPaul Mundtendchoice
441*e7bd34a1SPaul Mundt
442cad82448SPaul Mundtendmenu
443