Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 873d8898 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
  [IA64-SGI] fix prom revision checks in SN kernel
  [IA64] tiger_defconfig s/NR_CPUS=4/NR_CPUS=16/
  [IA64-SGI] - Pass OS logical cpu number to the SN prom (bios)
  [IA64] palinfo.c: s/register_cpu_notifier/register_hotcpu_notifier/
parents d9a56854 d3e5e1a1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -114,7 +114,7 @@ CONFIG_IA64_CYCLONE=y
CONFIG_IOSAPIC=y
CONFIG_FORCE_MAX_ZONEORDER=17
CONFIG_SMP=y
CONFIG_NR_CPUS=4
CONFIG_NR_CPUS=16
CONFIG_HOTPLUG_CPU=y
CONFIG_PERMIT_BSP_REMOVE=y
CONFIG_FORCE_CPEI_RETARGET=y
+1 −1
Original line number Diff line number Diff line
@@ -998,7 +998,7 @@ palinfo_init(void)
	}

	/* Register for future delivery via notify registration */
	register_cpu_notifier(&palinfo_cpu_notifier);
	register_hotcpu_notifier(&palinfo_cpu_notifier);

	return 0;
}
+9 −3
Original line number Diff line number Diff line
@@ -458,7 +458,7 @@ void __init sn_setup(char **cmdline_p)
	 * support here so we don't have to listen to failed keyboard probe
	 * messages.
	 */
	if (version <= 0x0209 && acpi_kbd_controller_present) {
	if (is_shub1() && version <= 0x0209 && acpi_kbd_controller_present) {
		printk(KERN_INFO "Disabling legacy keyboard support as prom "
		       "is too old and doesn't provide FADT\n");
		acpi_kbd_controller_present = 0;
@@ -577,7 +577,8 @@ void __init sn_cpu_init(void)
	int i;
	static int wars_have_been_checked;

	if (smp_processor_id() == 0 && IS_MEDUSA()) {
	cpuid = smp_processor_id();
	if (cpuid == 0 && IS_MEDUSA()) {
		if (ia64_sn_is_fake_prom())
			sn_prom_type = 2;
		else
@@ -596,6 +597,12 @@ void __init sn_cpu_init(void)
		BUG();
	sn_hub_info->as_shift = sn_hub_info->nasid_shift - 2;

	/*
	 * Don't check status. The SAL call is not supported on all PROMs
	 * but a failure is harmless.
	 */
	(void) ia64_sn_set_cpu_number(cpuid);

	/*
	 * The boot cpu makes this call again after platform initialization is
	 * complete.
@@ -607,7 +614,6 @@ void __init sn_cpu_init(void)
		if (ia64_sn_get_prom_feature_set(i, &sn_prom_features[i]) != 0)
			break;

	cpuid = smp_processor_id();
	cpuphyid = get_sapicid();

	if (ia64_sn_get_sapic_info(cpuphyid, &nasid, &subnode, &slice))
+1 −1
Original line number Diff line number Diff line
@@ -595,7 +595,7 @@ tioca_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont

	/* sanity check prom rev */

	if (sn_sal_rev() < 0x0406) {
	if (is_shub1() && sn_sal_rev() < 0x0406) {
		printk
		    (KERN_ERR "%s:  SGI prom rev 4.06 or greater required "
		     "for tioca support\n", __FUNCTION__);
+10 −0
Original line number Diff line number Diff line
@@ -85,6 +85,7 @@
#define  SN_SAL_GET_PROM_FEATURE_SET		   0x02000065
#define  SN_SAL_SET_OS_FEATURE_SET		   0x02000066
#define  SN_SAL_INJECT_ERROR			   0x02000067
#define  SN_SAL_SET_CPU_NUMBER			   0x02000068

/*
 * Service-specific constants
@@ -1150,4 +1151,13 @@ sn_inject_error(u64 paddr, u64 *data, u64 *ecc)
	local_irq_restore(irq_flags);
	return ret_stuff.status;
}

static inline int
ia64_sn_set_cpu_number(int cpu)
{
	struct ia64_sal_retval rv;

	SAL_CALL_NOLOCK(rv, SN_SAL_SET_CPU_NUMBER, cpu, 0, 0, 0, 0, 0, 0);
	return rv.status;
}
#endif /* _ASM_IA64_SN_SN_SAL_H */