Re: [PATCH 6/7] openrisc: add SMP and NR_CPUS Kconfig options

From: Stafford Horne
Date: Mon Sep 19 2016 - 10:54:34 EST




On Mon, 19 Sep 2016, Jonas Bonn wrote:

On 09/16/2016 04:43 PM, Stafford Horne wrote:
From: Stefan Kristiansson <stefan.kristiansson@xxxxxxxxxxxxx>

OpenRISC was not an SMP architecture last I looked... did the relevant spec updates get made? If not, NAK.

The issue is, the OpenRISC architecture shouldn't be a moving target defined by what the kernel supports... there's a spec that the kernel conforms to. This is important for the (few) real users of the architecture.

Hi Jonas,
I actually just added these patches to get the kernel to build without warnings as it seems the build system now depends on NR_CPUS and SMP.

However, I think think they should be exposed as options. I will rework this patch or look at my build config so these are not required to be exposed as options.

As you mention SMP is not in the spec, but Stefan has put together an SMP hardware model and ported the kernel to it. Which is where this patch came from.

-Stafford

Signed-off-by: Stefan Kristiansson <stefan.kristiansson@xxxxxxxxxxxxx>
Signed-off-by: Stafford Horne <shorne@xxxxxxxxx>
---
arch/openrisc/Kconfig | 14 ++++++++++++++
1 file changed, 14 insertions(+)

diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
index 489e7f9..2bcf8c3 100644
--- a/arch/openrisc/Kconfig
+++ b/arch/openrisc/Kconfig
@@ -98,6 +98,20 @@ config OPENRISC_HAVE_INST_DIV
Select this if your implementation has a hardware divide
instruction
endmenu

+config NR_CPUS
+ int "Maximum number of CPUs (2-32)"
+ range 2 32
+ depends on SMP
+ default "2"
+
+config SMP
+ bool "Symmetric Multi-Processing support"
+ help
+ This enables support for systems with more than one CPU. If you
have
+ a system with only one CPU, say N. If you have a system with more
+ than one CPU, say Y.
+
+ If you don't know what to do here, say N.

source kernel/Kconfig.hz
source kernel/Kconfig.preempt