summaryrefslogtreecommitdiff
path: root/arch/arc/Kconfig
blob: 50369d5983b0260319a88d292092b6da1f765500 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
menu "ARC architecture"
	depends on ARC

config SYS_ARCH
	default "arc"

config SYS_CPU
	default "arcv1" if ISA_ARCOMPACT
	default "arcv2" if ISA_ARCV2

choice
	prompt "ARC Instruction Set"
	default ISA_ARCOMPACT

config ISA_ARCOMPACT
	bool "ARCompact ISA"
	help
	  The original ARC ISA of ARC600/700 cores

config ISA_ARCV2
	bool "ARC ISA v2"
	help
	  ISA for the Next Generation ARC-HS cores

endchoice

choice
	prompt "CPU selection"
	default CPU_ARC770D if ISA_ARCOMPACT
	default CPU_ARCHS38 if ISA_ARCV2

config CPU_ARC750D
	bool "ARC 750D"
	depends on ISA_ARCOMPACT
	select ARC_MMU_V2
	help
	  Choose this option to build an U-Boot for ARC750D CPU.

config CPU_ARC770D
	bool "ARC 770D"
	depends on ISA_ARCOMPACT
	select ARC_MMU_V3
	help
	  Choose this option to build an U-Boot for ARC770D CPU.

config CPU_ARCEM6
	bool "ARC EM6"
	depends on ISA_ARCV2
	select ARC_MMU_ABSENT
	help
	  Next Generation ARC Core based on ISA-v2 ISA without MMU.

config CPU_ARCHS36
	bool "ARC HS36"
	depends on ISA_ARCV2
	select ARC_MMU_ABSENT
	help
	  Next Generation ARC Core based on ISA-v2 ISA without MMU.

config CPU_ARCHS38
	bool "ARC HS38"
	depends on ISA_ARCV2
	select ARC_MMU_V4
	help
	  Next Generation ARC Core based on ISA-v2 ISA with MMU.

endchoice

choice
	prompt "MMU Version"
	default ARC_MMU_V3 if CPU_ARC770D
	default ARC_MMU_V2 if CPU_ARC750D
	default ARC_MMU_ABSENT if CPU_ARCEM6
	default ARC_MMU_ABSENT if CPU_ARCHS36
	default ARC_MMU_V4 if CPU_ARCHS38

config ARC_MMU_ABSENT
	bool "No MMU"
	help
	  No MMU

config ARC_MMU_V2
	bool "MMU v2"
	depends on CPU_ARC750D
	help
	  Fixed the deficiency of v1 - possible thrashing in memcpy sceanrio
	  when 2 D-TLB and 1 I-TLB entries index into same 2way set.

config ARC_MMU_V3
	bool "MMU v3"
	depends on CPU_ARC770D
	help
	  Introduced with ARC700 4.10: New Features
	  Variable Page size (1k-16k), var JTLB size 128 x (2 or 4)
	  Shared Address Spaces (SASID)

config ARC_MMU_V4
	bool "MMU v4"
	depends on CPU_ARCHS38
	help
	  Introduced as a part of ARC HS38 release.

endchoice

config CPU_BIG_ENDIAN
	bool "Enable Big Endian Mode"
	default n
	help
	  Build kernel for Big Endian Mode of ARC CPU

config SYS_ICACHE_OFF
	bool "Do not use Instruction Cache"
	default n

config SYS_DCACHE_OFF
	bool "Do not use Data Cache"
	default n

menuconfig ARC_DBG
	bool "ARC debugging"
	default n

if ARC_DBG

config ARC_DBG_IOC_ENABLE
	bool "Enable IO coherency unit"
	depends on CPU_ARCHS38
	default n
	help
	  Enable IO coherency unit to debug problems with caches and
	  DMA peripherals.
	  NOTE: as of today linux will not work properly if this option
	  is enabled in u-boot!

endif

choice
	prompt "Target select"
	default TARGET_AXS103

config TARGET_TB100
	bool "Support tb100"

config TARGET_NSIM
	bool "Support standalone nSIM & Free nSIM"

config TARGET_AXS101
	bool "Support Synopsys Designware SDP board AXS101"
	select BOUNCE_BUFFER if CMD_NAND

config TARGET_AXS103
	bool "Support Synopsys Designware SDP board AXS103"
	select BOUNCE_BUFFER if CMD_NAND

config TARGET_EMSDP
	bool "Synopsys EM Software Development Platform"
	select CPU_ARCEM6

config TARGET_HSDK
	bool "Support Synpsys HS DevelopmentKit board"

config TARGET_IOT_DEVKIT
	bool "Synopsys Brite IoT Development kit"
	select CPU_ARCEM6

endchoice

source "board/abilis/tb100/Kconfig"
source "board/synopsys/Kconfig"
source "board/synopsys/axs10x/Kconfig"
source "board/synopsys/emsdp/Kconfig"
source "board/synopsys/hsdk/Kconfig"
source "board/synopsys/iot_devkit/Kconfig"

endmenu