diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2013-10-16 18:42:26 -0400 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2014-01-14 13:19:58 -0500 |
commit | f615136c06a791364f5afa8b8ba965315a6440f1 (patch) | |
tree | d9ced4cfdfd13438ce23384fbd64006bb74fd8b6 /arch/xtensa/Kconfig | |
parent | 26a8e96a8b37e8070fa9dcb1b7490cf4d4492d50 (diff) |
xtensa: add SMP support
This is largely based on SMP code from the xtensa-2.6.29-smp tree by
Piet Delaney, Marc Gauthier, Joe Taylor, Christian Zankel (and possibly
other Tensilica folks).
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
Diffstat (limited to 'arch/xtensa/Kconfig')
-rw-r--r-- | arch/xtensa/Kconfig | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig index fb140ae3860d..4b09c60b6b30 100644 --- a/arch/xtensa/Kconfig +++ b/arch/xtensa/Kconfig | |||
@@ -9,7 +9,6 @@ config XTENSA | |||
9 | select GENERIC_CLOCKEVENTS | 9 | select GENERIC_CLOCKEVENTS |
10 | select VIRT_TO_BUS | 10 | select VIRT_TO_BUS |
11 | select GENERIC_IRQ_SHOW | 11 | select GENERIC_IRQ_SHOW |
12 | select GENERIC_CPU_DEVICES | ||
13 | select GENERIC_SCHED_CLOCK | 12 | select GENERIC_SCHED_CLOCK |
14 | select MODULES_USE_ELF_RELA | 13 | select MODULES_USE_ELF_RELA |
15 | select GENERIC_PCI_IOMAP | 14 | select GENERIC_PCI_IOMAP |
@@ -65,6 +64,9 @@ config MMU | |||
65 | config VARIANT_IRQ_SWITCH | 64 | config VARIANT_IRQ_SWITCH |
66 | def_bool n | 65 | def_bool n |
67 | 66 | ||
67 | config MAY_HAVE_SMP | ||
68 | def_bool n | ||
69 | |||
68 | menu "Processor type and features" | 70 | menu "Processor type and features" |
69 | 71 | ||
70 | choice | 72 | choice |
@@ -105,6 +107,39 @@ config XTENSA_UNALIGNED_USER | |||
105 | 107 | ||
106 | source "kernel/Kconfig.preempt" | 108 | source "kernel/Kconfig.preempt" |
107 | 109 | ||
110 | config HAVE_SMP | ||
111 | bool "System Supports SMP (MX)" | ||
112 | depends on MAY_HAVE_SMP | ||
113 | select XTENSA_MX | ||
114 | help | ||
115 | This option is use to indicate that the system-on-a-chip (SOC) | ||
116 | supports Multiprocessing. Multiprocessor support implemented above | ||
117 | the CPU core definition and currently needs to be selected manually. | ||
118 | |||
119 | Multiprocessor support in implemented with external cache and | ||
120 | interrupt controlers. | ||
121 | |||
122 | The MX interrupt distributer adds Interprocessor Interrupts | ||
123 | and causes the IRQ numbers to be increased by 4 for devices | ||
124 | like the open cores ethernet driver and the serial interface. | ||
125 | |||
126 | You still have to select "Enable SMP" to enable SMP on this SOC. | ||
127 | |||
128 | config SMP | ||
129 | bool "Enable Symmetric multi-processing support" | ||
130 | depends on HAVE_SMP | ||
131 | select USE_GENERIC_SMP_HELPERS | ||
132 | select GENERIC_SMP_IDLE_THREAD | ||
133 | help | ||
134 | Enabled SMP Software; allows more than one CPU/CORE | ||
135 | to be activated during startup. | ||
136 | |||
137 | config NR_CPUS | ||
138 | depends on SMP | ||
139 | int "Maximum number of CPUs (2-32)" | ||
140 | range 2 32 | ||
141 | default "4" | ||
142 | |||
108 | config MATH_EMULATION | 143 | config MATH_EMULATION |
109 | bool "Math emulation" | 144 | bool "Math emulation" |
110 | help | 145 | help |