blob: d59aa3ae291e021b783f0a178f7ed8d2995ee791 [file] [log] [blame]
Masahiro Yamadad3ae6782014-07-30 14:08:14 +09001menu "ARC architecture"
2 depends on ARC
3
4config SYS_ARCH
Masahiro Yamadad3ae6782014-07-30 14:08:14 +09005 default "arc"
6
Alexey Brodkin7739f9f2014-12-25 18:47:45 +03007config SYS_CPU
Alexey Brodkine41a3d52015-01-13 18:35:46 +03008 default "arcv1" if ISA_ARCOMPACT
9 default "arcv2" if ISA_ARCV2
Alexey Brodkin7739f9f2014-12-25 18:47:45 +030010
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090011choice
Alexey Brodkine41a3d52015-01-13 18:35:46 +030012 prompt "ARC Instruction Set"
13 default ISA_ARCOMPACT
14
15config ISA_ARCOMPACT
16 bool "ARCompact ISA"
17 help
18 The original ARC ISA of ARC600/700 cores
19
20config ISA_ARCV2
21 bool "ARC ISA v2"
22 help
23 ISA for the Next Generation ARC-HS cores
24
25endchoice
26
27choice
Alexey Brodkinf431e262015-02-03 13:58:11 +030028 prompt "CPU selection"
Alexey Brodkine41a3d52015-01-13 18:35:46 +030029 default CPU_ARC770D if ISA_ARCOMPACT
30 default CPU_ARCHS38 if ISA_ARCV2
Alexey Brodkinf431e262015-02-03 13:58:11 +030031
32config CPU_ARC750D
33 bool "ARC 750D"
Alexey Brodkine41a3d52015-01-13 18:35:46 +030034 depends on ISA_ARCOMPACT
Michal Simek7e7ba3b2018-07-23 15:55:15 +020035 select ARC_MMU_V2
Alexey Brodkinf431e262015-02-03 13:58:11 +030036 help
37 Choose this option to build an U-Boot for ARC750D CPU.
38
39config CPU_ARC770D
40 bool "ARC 770D"
Alexey Brodkine41a3d52015-01-13 18:35:46 +030041 depends on ISA_ARCOMPACT
Michal Simek7e7ba3b2018-07-23 15:55:15 +020042 select ARC_MMU_V3
Alexey Brodkinf431e262015-02-03 13:58:11 +030043 help
44 Choose this option to build an U-Boot for ARC770D CPU.
45
Alexey Brodkine41a3d52015-01-13 18:35:46 +030046config CPU_ARCEM6
47 bool "ARC EM6"
Alexey Brodkine41a3d52015-01-13 18:35:46 +030048 depends on ISA_ARCV2
Michal Simek7e7ba3b2018-07-23 15:55:15 +020049 select ARC_MMU_ABSENT
Alexey Brodkine41a3d52015-01-13 18:35:46 +030050 help
51 Next Generation ARC Core based on ISA-v2 ISA without MMU.
52
53config CPU_ARCHS36
54 bool "ARC HS36"
Alexey Brodkine41a3d52015-01-13 18:35:46 +030055 depends on ISA_ARCV2
Michal Simek7e7ba3b2018-07-23 15:55:15 +020056 select ARC_MMU_ABSENT
Alexey Brodkine41a3d52015-01-13 18:35:46 +030057 help
58 Next Generation ARC Core based on ISA-v2 ISA without MMU.
59
60config CPU_ARCHS38
61 bool "ARC HS38"
Alexey Brodkine41a3d52015-01-13 18:35:46 +030062 depends on ISA_ARCV2
Michal Simek7e7ba3b2018-07-23 15:55:15 +020063 select ARC_MMU_V4
Alexey Brodkine41a3d52015-01-13 18:35:46 +030064 help
65 Next Generation ARC Core based on ISA-v2 ISA with MMU.
66
Alexey Brodkinf431e262015-02-03 13:58:11 +030067endchoice
68
69choice
70 prompt "MMU Version"
71 default ARC_MMU_V3 if CPU_ARC770D
72 default ARC_MMU_V2 if CPU_ARC750D
Alexey Brodkine41a3d52015-01-13 18:35:46 +030073 default ARC_MMU_ABSENT if CPU_ARCEM6
74 default ARC_MMU_ABSENT if CPU_ARCHS36
75 default ARC_MMU_V4 if CPU_ARCHS38
76
77config ARC_MMU_ABSENT
78 bool "No MMU"
79 help
80 No MMU
Alexey Brodkinf431e262015-02-03 13:58:11 +030081
82config ARC_MMU_V2
83 bool "MMU v2"
84 depends on CPU_ARC750D
85 help
86 Fixed the deficiency of v1 - possible thrashing in memcpy sceanrio
87 when 2 D-TLB and 1 I-TLB entries index into same 2way set.
88
89config ARC_MMU_V3
90 bool "MMU v3"
91 depends on CPU_ARC770D
92 help
93 Introduced with ARC700 4.10: New Features
94 Variable Page size (1k-16k), var JTLB size 128 x (2 or 4)
95 Shared Address Spaces (SASID)
96
Alexey Brodkine41a3d52015-01-13 18:35:46 +030097config ARC_MMU_V4
98 bool "MMU v4"
99 depends on CPU_ARCHS38
100 help
101 Introduced as a part of ARC HS38 release.
102
Alexey Brodkinf431e262015-02-03 13:58:11 +0300103endchoice
104
Alexey Brodkincbd76c32015-02-03 13:58:14 +0300105config CPU_BIG_ENDIAN
106 bool "Enable Big Endian Mode"
107 default n
108 help
109 Build kernel for Big Endian Mode of ARC CPU
110
Alexey Brodkin6b95cca2015-02-03 13:58:13 +0300111config SYS_ICACHE_OFF
112 bool "Do not use Instruction Cache"
113 default n
114
115config SYS_DCACHE_OFF
116 bool "Do not use Data Cache"
117 default n
118
Eugeniy Paltsev04011ab2018-03-21 15:58:59 +0300119menuconfig ARC_DBG
120 bool "ARC debugging"
121 default n
122
123if ARC_DBG
124
125config ARC_DBG_IOC_ENABLE
126 bool "Enable IO coherency unit"
127 depends on CPU_ARCHS38
128 default n
129 help
130 Enable IO coherency unit to debug problems with caches and
131 DMA peripherals.
132 NOTE: as of today linux will not work properly if this option
133 is enabled in u-boot!
134
135endif
136
Alexey Brodkinf431e262015-02-03 13:58:11 +0300137choice
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900138 prompt "Target select"
Vlad Zakharova7a67492017-03-21 14:49:48 +0300139 default TARGET_AXS103
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900140
141config TARGET_TB100
142 bool "Support tb100"
143
Alexey Brodkin1a116372016-08-04 14:35:01 +0300144config TARGET_NSIM
145 bool "Support standalone nSIM & Free nSIM"
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900146
Vlad Zakharova7a67492017-03-21 14:49:48 +0300147config TARGET_AXS101
148 bool "Support Synopsys Designware SDP board AXS101"
149
150config TARGET_AXS103
151 bool "Support Synopsys Designware SDP board AXS103"
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900152
Alexey Brodkin4b2705b2018-05-28 15:27:43 +0300153config TARGET_EMDK
154 bool "Synopsys EM Development kit"
155 select CPU_ARCEM6
156
Alexey Brodkin88961bc2016-11-25 16:23:43 +0300157config TARGET_HSDK
158 bool "Support Synpsys HS DevelopmentKit board"
159
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900160endchoice
161
162source "board/abilis/tb100/Kconfig"
163source "board/synopsys/Kconfig"
Alexey Brodkinc3b853a2016-08-04 15:00:35 +0300164source "board/synopsys/axs10x/Kconfig"
Alexey Brodkin4b2705b2018-05-28 15:27:43 +0300165source "board/synopsys/emdk/Kconfig"
Alexey Brodkin88961bc2016-11-25 16:23:43 +0300166source "board/synopsys/hsdk/Kconfig"
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900167
168endmenu