aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arc
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2013-03-30 05:37:47 -0400
committerVineet Gupta <vgupta@synopsys.com>2013-04-09 07:57:00 -0400
commitfbf8e13d31bafd1fd1135627b1eaaf70520cb8ab (patch)
treebb25980836831934977a6d72ad856292ee9bc8ce /arch/arc
parent30ecee8cdd05415e5602bd755d9210e1c5a5b64d (diff)
ARC: [kbuild] Allow platforms to disable LLSC for !SMP as well
Currently ARC_HAS_LLSC can be influenced by platform for SMP only using ARC_HAS_COH_LLSC. For !SMP it defaults to "y". It turns out that some customers can't support it all, even in UP. So we change the semantics, and use a negative dependency ARC_CANT_LLSC. Any platform (independent of SMP or !SMP) can select it to disable LLSC. Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc')
-rw-r--r--arch/arc/Kconfig10
1 files changed, 4 insertions, 6 deletions
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index e6f4eca09ee3..44541f14c692 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -134,9 +134,6 @@ if SMP
134config ARC_HAS_COH_CACHES 134config ARC_HAS_COH_CACHES
135 def_bool n 135 def_bool n
136 136
137config ARC_HAS_COH_LLSC
138 def_bool n
139
140config ARC_HAS_COH_RTSC 137config ARC_HAS_COH_RTSC
141 def_bool n 138 def_bool n
142 139
@@ -304,6 +301,9 @@ config ARC_FPU_SAVE_RESTORE
304 based on actual usage of FPU by a task. Thus our implemn does 301 based on actual usage of FPU by a task. Thus our implemn does
305 this for all tasks in system. 302 this for all tasks in system.
306 303
304config ARC_CANT_LLSC
305 def_bool n
306
307menuconfig ARC_CPU_REL_4_10 307menuconfig ARC_CPU_REL_4_10
308 bool "Enable support for Rel 4.10 features" 308 bool "Enable support for Rel 4.10 features"
309 default n 309 default n
@@ -314,9 +314,7 @@ menuconfig ARC_CPU_REL_4_10
314config ARC_HAS_LLSC 314config ARC_HAS_LLSC
315 bool "Insn: LLOCK/SCOND (efficient atomic ops)" 315 bool "Insn: LLOCK/SCOND (efficient atomic ops)"
316 default y 316 default y
317 depends on ARC_CPU_770 317 depends on ARC_CPU_770 && !ARC_CANT_LLSC
318 # if SMP, enable LLSC ONLY if ARC implementation has coherent atomics
319 depends on !SMP || ARC_HAS_COH_LLSC
320 318
321config ARC_HAS_SWAPE 319config ARC_HAS_SWAPE
322 bool "Insn: SWAPE (endian-swap)" 320 bool "Insn: SWAPE (endian-swap)"