[PATCH] x86, uv: More Westmere support on SGI UV

From: Russ Anderson
Date: Thu Oct 28 2010 - 18:41:47 EST


x86, uv: More Westmere support on SGI UV

Enable Westmere support on all apic modes on SGI UV.

Signed-off-by: Russ Anderson <rja@xxxxxxx>

---

arch/x86/kernel/apic/x2apic_uv_x.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

Index: linux/arch/x86/kernel/apic/x2apic_uv_x.c
===================================================================
--- linux.orig/arch/x86/kernel/apic/x2apic_uv_x.c 2010-10-28 16:39:23.771774569 -0500
+++ linux/arch/x86/kernel/apic/x2apic_uv_x.c 2010-10-28 16:45:52.295342718 -0500
@@ -71,7 +71,7 @@ static int early_get_nodeid(void)
return node_id.s.node_id;
}

-static int __init early_get_apic_pnode_shift(void)
+static void __init early_get_apic_pnode_shift(void)
{
unsigned long *mmr;

@@ -83,8 +83,6 @@ static int __init early_get_apic_pnode_s
* Old bios, use default value
*/
uvh_apicid.s.pnode_shift = UV_APIC_PNODE_SHIFT;
-
- return uvh_apicid.s.pnode_shift;
}

static int __init uv_acpi_madt_oem_check(char *oem_id, char *oem_table_id)
@@ -93,6 +91,7 @@ static int __init uv_acpi_madt_oem_check

if (!strcmp(oem_id, "SGI")) {
nodeid = early_get_nodeid();
+ early_get_apic_pnode_shift();
x86_platform.is_untracked_pat_range = uv_is_untracked_pat_range;
x86_platform.nmi_init = uv_nmi_init;
if (!strcmp(oem_table_id, "UVL"))
@@ -101,7 +100,7 @@ static int __init uv_acpi_madt_oem_check
uv_system_type = UV_X2APIC;
else if (!strcmp(oem_table_id, "UVH")) {
__get_cpu_var(x2apic_extra_bits) =
- nodeid << (early_get_apic_pnode_shift() - 1);
+ nodeid << (uvh_apicid.s.pnode_shift - 1);
uv_system_type = UV_NON_UNIQUE_APIC;
return 1;
}
--
Russ Anderson, OS RAS/Partitioning Project Lead
SGI - Silicon Graphics Inc rja@xxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/