summaryrefslogtreecommitdiffstats
path: root/arch/arc/plat-arcfpga/smp.c
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2014-02-28 16:13:44 +0800
committerVineet Gupta <vgupta@synopsys.com>2014-05-05 14:22:12 +0530
commit9a091d9e8450a4cec76bd208bbbb017a12795416 (patch)
tree8514ab63d65757e3827c90006fb3bf1c9b295e81 /arch/arc/plat-arcfpga/smp.c
parent89ca3b881987f5a4be4c5dbaa7f0df12bbdde2fd (diff)
downloadop-kernel-dev-9a091d9e8450a4cec76bd208bbbb017a12795416.zip
op-kernel-dev-9a091d9e8450a4cec76bd208bbbb017a12795416.tar.gz
ARC: [SMP] ISS SMP extension bitrot
* Move extension specific code out of common SMP code * Don't enable it by default for SMP Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc/plat-arcfpga/smp.c')
-rw-r--r--arch/arc/plat-arcfpga/smp.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arc/plat-arcfpga/smp.c b/arch/arc/plat-arcfpga/smp.c
index 8a12741..92bad91 100644
--- a/arch/arc/plat-arcfpga/smp.c
+++ b/arch/arc/plat-arcfpga/smp.c
@@ -42,6 +42,24 @@ static void iss_model_smp_wakeup_cpu(int cpu, unsigned long pc)
}
+static inline int get_hw_config_num_irq(void)
+{
+ uint32_t val = read_aux_reg(ARC_REG_VECBASE_BCR);
+
+ switch (val & 0x03) {
+ case 0:
+ return 16;
+ case 1:
+ return 32;
+ case 2:
+ return 8;
+ default:
+ return 0;
+ }
+
+ return 0;
+}
+
/*
* Any SMP specific init any CPU does when it comes up.
* Here we setup the CPU to enable Inter-Processor-Interrupts
OpenPOWER on IntegriCloud