浏览代码

sparc64: Allow chmc to be built as a module.

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 17 年之前
父节点
当前提交
41660e9ac6
共有 4 个文件被更改,包括 17 次插入2 次删除
  1. 11 0
      arch/sparc64/Kconfig
  2. 2 1
      arch/sparc64/kernel/Makefile
  3. 2 0
      arch/sparc64/kernel/sparc64_ksyms.c
  4. 2 1
      arch/sparc64/kernel/traps.c

+ 11 - 0
arch/sparc64/Kconfig

@@ -191,6 +191,17 @@ config US2E_FREQ
 
 	  If in doubt, say N.
 
+config US3_MC
+	tristate "UltraSPARC-III Memory Controller driver"
+	default y
+	help
+	  This adds a driver for the UltraSPARC-III memory controller.
+	  Loading this driver allows exact mnemonic strings to be
+	  printed in the event of a memory error, so that the faulty DIMM
+	  on the motherboard can be matched to the error.
+
+	  If in doubt, say Y, as this information can be very useful.
+
 # Global things across all Sun machines.
 config GENERIC_LOCKBREAK
 	bool

+ 2 - 1
arch/sparc64/kernel/Makefile

@@ -11,7 +11,7 @@ obj-y		:= process.o setup.o cpu.o idprom.o \
 		   traps.o auxio.o una_asm.o sysfs.o iommu.o \
 		   irq.o ptrace.o time.o sys_sparc.o signal.o \
 		   unaligned.o central.o pci.o starfire.o \
-		   power.o sbus.o sparc64_ksyms.o chmc.o \
+		   power.o sbus.o sparc64_ksyms.o \
 		   visemul.o prom.o of_device.o hvapi.o sstate.o mdesc.o
 
 obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o
@@ -25,6 +25,7 @@ obj-$(CONFIG_COMPAT) += sys32.o sys_sparc32.o signal32.o
 obj-$(CONFIG_MODULES) += module.o
 obj-$(CONFIG_US3_FREQ) += us3_cpufreq.o
 obj-$(CONFIG_US2E_FREQ) += us2e_cpufreq.o
+obj-$(CONFIG_US3_MC) += chmc.o
 obj-$(CONFIG_KPROBES) += kprobes.o
 obj-$(CONFIG_SUN_LDOMS) += ldc.o vio.o viohs.o ds.o
 obj-$(CONFIG_AUDIT) += audit.o

+ 2 - 0
arch/sparc64/kernel/sparc64_ksyms.c

@@ -299,3 +299,5 @@ EXPORT_SYMBOL(xor_niagara_2);
 EXPORT_SYMBOL(xor_niagara_3);
 EXPORT_SYMBOL(xor_niagara_4);
 EXPORT_SYMBOL(xor_niagara_5);
+
+EXPORT_SYMBOL_GPL(real_hard_smp_processor_id);

+ 2 - 1
arch/sparc64/kernel/traps.c

@@ -166,6 +166,7 @@ int register_dimm_printer(dimm_printer_t func)
 
 	return ret;
 }
+EXPORT_SYMBOL_GPL(register_dimm_printer);
 
 void unregister_dimm_printer(dimm_printer_t func)
 {
@@ -176,7 +177,7 @@ void unregister_dimm_printer(dimm_printer_t func)
 		dimm_handler = NULL;
 	spin_unlock_irqrestore(&dimm_handler_lock, flags);
 }
-
+EXPORT_SYMBOL_GPL(unregister_dimm_printer);
 
 void spitfire_insn_access_exception(struct pt_regs *regs, unsigned long sfsr, unsigned long sfar)
 {