Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp3405197pxk; Mon, 7 Sep 2020 11:57:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzDbt1y0nobiDTu8JACCz5iFd9ATpCr5G7CHoaq9MCJpyEetTEZ9Emt7wkZSRX0hbDTX14b X-Received: by 2002:aa7:d599:: with SMTP id r25mr22428387edq.238.1599505025762; Mon, 07 Sep 2020 11:57:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599505025; cv=none; d=google.com; s=arc-20160816; b=V60XDlEpf2PIYeDHSbDvrSSjjvlL3OPsF5BRXTO51C6ZEvGO6TnNQOyFU7sI28AxDl P+5qdq+/cnYxvZ25GivjQTjNE3wucHPKOHQ2g7PMfdgi9xl2EcO8IEK7hupl6yRKJQIm CumoWceWzJW9s21C24cgFovBJhDGVobO5D5xdMmqmc7SXa0tYoWrNAzIb1QyqPt/UxTj 6QjP8TUOdr67DL/3XTZirLLPhdCZxOgP3AP6U5j6CTCdWJu/lyQhw1py9YXpd9TDDKXV uIpzAMXx1XtGmpLQirVifIXBaUmQiuttwwib1z0RnYq6rrBex8ixOBFCj0zF1fRSwpdv K+IQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:references:subject:cc:to :from:date:user-agent:message-id:dkim-signature; bh=ro4ZAqeOnHR3lzQkikBbBEUFxDztTDjIlN4qdvN2XtI=; b=Kr4mjS4c0zWWCemeK7vtxnfLsOdD64Cl0yxyCu65T3dxZUdXW5yorAW9Zc6yXF8Hxx 7rOyTigRJRMvIG0DJZ5GS7EtJOKBN6iOX6XPaq8FjtIZaj6HJaFjcuF2l5HWYBPHzW2W 4uP0sZ45c1JiLU2cRFkeqJWBsapm8At56jhKTJfawsaguI8R/raeW8+qB5T1vx3nfyKt g+MudIOW3VT7pBL4AQ6CnZ9R4LB3rpAqns5uV6szift18/piAx5evATT1jMH8WKOYLC4 YuWeOcbS/4pNNKnj2xQA4lo5N9Yq9hhL9i5CFjzft806Tv6NM3Yv/tIHF/c5ReZQAS7l izHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=GfQSDiq5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=hpe.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id df7si2591072edb.271.2020.09.07.11.56.43; Mon, 07 Sep 2020 11:57:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=GfQSDiq5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=hpe.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729482AbgIGSzR (ORCPT + 99 others); Mon, 7 Sep 2020 14:55:17 -0400 Received: from mx0a-002e3701.pphosted.com ([148.163.147.86]:59492 "EHLO mx0a-002e3701.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729380AbgIGSzG (ORCPT ); Mon, 7 Sep 2020 14:55:06 -0400 Received: from pps.filterd (m0134421.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 087IoIdG010963; Mon, 7 Sep 2020 18:54:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=message-id : date : from : to : cc : subject : references : mime-version : content-type; s=pps0720; bh=ro4ZAqeOnHR3lzQkikBbBEUFxDztTDjIlN4qdvN2XtI=; b=GfQSDiq5E35Pi6hw4pIwEtuG8Bbzv3HRPyA6B94dkhbKhlDhbk3hALcfGLD/oOiZjLCt ZjcapUTzM9w4dLwU69n/1gLobkLI9t8aBIfK9L9nUMRHF02xN1aUmu3GY9CIAkhFSSkl HQR8nqQl9svoyMXE3GIJhExQLJWy+58ibnLP9MsBE+8TCYvIrI+BPWdweL/LlDLJnqtZ iw69s13VNab/0rfQZvowvh2eK0fWwpCBwonmrNGjU59sCBSRua3BIz0+HKRCYaXReBNn LFn68sjAG1kuf478eQP3vuL7U02r0z8ifghIOZDBIJq9tvs01qEreBAD2SP8o7RFnVH+ oQ== Received: from g2t2354.austin.hpe.com (g2t2354.austin.hpe.com [15.233.44.27]) by mx0b-002e3701.pphosted.com with ESMTP id 33cm1x4r5e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 07 Sep 2020 18:54:33 +0000 Received: from dog.eag.rdlabs.hpecorp.net (dog.eag.rdlabs.hpecorp.net [128.162.243.181]) by g2t2354.austin.hpe.com (Postfix) with ESMTP id D5D8DB5; Mon, 7 Sep 2020 18:54:32 +0000 (UTC) Received: by dog.eag.rdlabs.hpecorp.net (Postfix, from userid 5508) id 3CF1C30060F10; Mon, 7 Sep 2020 13:54:31 -0500 (CDT) Message-ID: <20200907185431.162991006@hpe.com> User-Agent: quilt/0.66 Date: Mon, 07 Sep 2020 13:54:38 -0500 From: Mike Travis To: Thomas Gleixner , Ingo Molnar , Borislav Petkov , x86@kernel.org, Steve Wahl , Dave Hansen , Andy Lutomirski , Peter Zijlstra , Arnd Bergmann , Greg Kroah-Hartman Cc: Dimitri Sivanich , "H. Peter Anvin" , Russ Anderson , Darren Hart , Andy Shevchenko , Alexandre Chartre , Jian Cai , Vitaly Kuznetsov , linux-kernel@vger.kernel.org, platform-driver-x86@vger.kernel.org Subject: [PATCH 08/12] x86/platform/uv: Adjust GAM MMR references affected by UV5 updates References: <20200907185430.363197758@hpe.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235,18.0.687 definitions=2020-09-07_11:2020-09-07,2020-09-07 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 phishscore=0 lowpriorityscore=0 spamscore=0 mlxlogscore=792 bulkscore=0 priorityscore=1501 adultscore=0 clxscore=1015 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009070181 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Make modifications to the GAM MMR mappings to accommodate changes for UV5. Signed-off-by: Mike Travis Reviewed-by: Dimitri Sivanich Reviewed-by: Steve Wahl --- arch/x86/kernel/apic/x2apic_uv_x.c | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) --- linux.orig/arch/x86/kernel/apic/x2apic_uv_x.c +++ linux/arch/x86/kernel/apic/x2apic_uv_x.c @@ -932,12 +932,32 @@ static __init void map_gru_high(int max_ static __init void map_mmr_high(int max_pnode) { - union uvh_rh_gam_mmr_overlay_config_u mmr; - int shift = UVH_RH_GAM_MMR_OVERLAY_CONFIG_BASE_SHFT; + unsigned long base; + int shift; + bool enable; - mmr.v = uv_read_local_mmr(UVH_RH_GAM_MMR_OVERLAY_CONFIG); - if (mmr.s.enable) - map_high("MMR", mmr.s.base, shift, shift, max_pnode, map_uc); + if (UVH_RH10_GAM_MMR_OVERLAY_CONFIG) { + union uvh_rh10_gam_mmr_overlay_config_u mmr; + + mmr.v = uv_read_local_mmr(UVH_RH10_GAM_MMR_OVERLAY_CONFIG); + enable = mmr.s.enable; + base = mmr.s.base; + shift = UVH_RH10_GAM_MMR_OVERLAY_CONFIG_BASE_SHFT; + } else if (UVH_RH_GAM_MMR_OVERLAY_CONFIG) { + union uvh_rh_gam_mmr_overlay_config_u mmr; + + mmr.v = uv_read_local_mmr(UVH_RH_GAM_MMR_OVERLAY_CONFIG); + enable = mmr.s.enable; + base = mmr.s.base; + shift = UVH_RH_GAM_MMR_OVERLAY_CONFIG_BASE_SHFT; + } else { + pr_err("UV:%s:RH_GAM_MMR_OVERLAY_CONFIG MMR undefined?\n", + __func__); + return; + } + + if (enable) + map_high("MMR", base, shift, shift, max_pnode, map_uc); else pr_info("UV: MMR disabled\n"); }