Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp106684ybx; Tue, 29 Oct 2019 15:09:05 -0700 (PDT) X-Google-Smtp-Source: APXvYqxBRMLfmH5dLCO34cxcyrjTqNuMvEw4F/XoJEo/9f+kw4iSW0irZ2ROX0AM3FkCsHNhZT5X X-Received: by 2002:a05:6402:689:: with SMTP id f9mr25836434edy.79.1572386945736; Tue, 29 Oct 2019 15:09:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572386945; cv=none; d=google.com; s=arc-20160816; b=agqRfZXnk363bHl6JsjGJNS5iQrV18YztaBpxnEUsLIuImOx93Ppb3ZHrP83JZoB1K ApU/oROmchS4+TS8R//JZtmQHClSgbdJOjXJgjwTuuoMDf2+uh3igdn4sgmDiAOI5Lvl CaDm3ewCZkAdHNtCUgV9/Ia2597hlzhTInCZNzVQ+3SsUKte1J6lPEOALYPQ4QqDGIbN bZrKQ2U42hieW41/2l06vkyZKPElisvNdCarlcITEpL9AeXfRNt7I9LPwbpkzN2xYDTf 8uUA7J/hMFI2EhN40tpCJeF9ZN0Gkwrwcs/GoNCEMEJrizxp4Vob7oPRWeYdoS2XHvt1 AbEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=D988j7nxePJvhbrARcDGhWwamnWrYkBVzSnWRIC5KfI=; b=vKsj3Zz4Hj07zHLP2JfK13Z3V+uZMwMM+bow3HdzeVSQ3aUiXBziybXBF8zy7OlIZj Pyj1bG2b1CRexhpG2xOJL8ocBP5BZ9Yibs48uNXmn7mdBEy4YFvsvAnT1zmMCCPUYS9m hMKMBWTxeAeHrQUALc6M0q/E7E3agw1dBdJhZQ6tMqr0YHQU9Vv1fKq6KQPFrLJMV2Zb 36NipYwdlfzmLXfg076dfk0ierbH5IKP6zqlwZ0lqPOzv78KhI5nqCMKqpExvRf1N4bY Uz0s+uImSPpVHv/f8m+Dl0QXtV3NYFGTtpxahBKV69ah5DnXT6FJSFdSm341k/O7SNcz VhAQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xYlRm4uk; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o21si9193168eja.318.2019.10.29.15.08.42; Tue, 29 Oct 2019 15:09:05 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xYlRm4uk; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726207AbfJ2RYg (ORCPT + 99 others); Tue, 29 Oct 2019 13:24:36 -0400 Received: from mail-pl1-f195.google.com ([209.85.214.195]:43236 "EHLO mail-pl1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725870AbfJ2RYf (ORCPT ); Tue, 29 Oct 2019 13:24:35 -0400 Received: by mail-pl1-f195.google.com with SMTP id v5so7958562ply.10 for ; Tue, 29 Oct 2019 10:24:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=D988j7nxePJvhbrARcDGhWwamnWrYkBVzSnWRIC5KfI=; b=xYlRm4ukFhyZyY8yGMyhb9fCZy4Sypc+bwJb/yS5r1Xqo8fiyDFKw295jEd1AzGhIt N2SUI+ob8lY7eJV6MMkP6s66E7w8NsTySgW/k7+uVJrFGQ3Owa8Jy0W697G0fB8+Gq3D A9lhs5D2EUmeXE4FVENWdKkFaUjRE3PAPwCoBMiuhcB5V5z87LZyFaYPPzp6TX4Dtjgb mBxP+++NODKRl1fjWLQDsR/t0mQn7uqw7zGeN9rz2D73eEvrNsD4WU0SThjGh4v+2E0N RJ/CRwTo+kdRKrI/wh81tBP+P5rGE3zXKrlhIOM8OtfbPiLx5Ih2MsBBORlozoWy6eLT JqvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=D988j7nxePJvhbrARcDGhWwamnWrYkBVzSnWRIC5KfI=; b=c9GsYtGNmPIpBhBM/oA+l8oi8EAKCNvXJerTiS4+n7GrMs8dIsShkcDjCJd2reBQ8g jMvZ2AoUB//T8/eMLppyZVMRgudFgRtOGdfOuMjr46tmcb1MBE4CCFHCK5fDMRwjjqjD rQblaa3b4L8ILuiixETyZ6+0cAGAxdkrlwT4+fnESethJnRFf+m77WIZ6n4DE9acD1xo Wowz4B/dnHM3nu1DrMIyJr3AMEOraYEtl1aJYE+JTSkrGUnn06i67HkhUEQHR3ODuNOz WRz4fGT81WJrHAnjWL375dUkQZ+FY/r6ih0/zEb4VEolwNapwABZsH/25Vo5U3RT+M25 vNSQ== X-Gm-Message-State: APjAAAW2hVzqqKQY66ALghAysZRK3mG4bjKoDa2TUU5mgyxwc1bDt/93 fSWzgtt2WeBzEQAnZkgsyX0cfR15VuA= X-Received: by 2002:a17:902:9b93:: with SMTP id y19mr5168098plp.96.1572369874655; Tue, 29 Oct 2019 10:24:34 -0700 (PDT) Received: from minitux (104-188-17-28.lightspeed.sndgca.sbcglobal.net. [104.188.17.28]) by smtp.gmail.com with ESMTPSA id t1sm4288687pgp.9.2019.10.29.10.24.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 29 Oct 2019 10:24:33 -0700 (PDT) Date: Tue, 29 Oct 2019 10:24:31 -0700 From: Bjorn Andersson To: Will Deacon Cc: Jeffrey Hugo , Catalin Marinas , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org Subject: Re: [PATCH] arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo Message-ID: <20191029172431.GY571@minitux> References: <20191029060604.1208925-1-bjorn.andersson@linaro.org> <20191029115008.GD12103@willie-the-truck> <16ccb343-8253-0224-e957-c73f51f110a1@codeaurora.org> <20191029171149.GB13281@willie-the-truck> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20191029171149.GB13281@willie-the-truck> User-Agent: Mutt/1.12.2 (2019-09-21) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue 29 Oct 10:11 PDT 2019, Will Deacon wrote: > On Tue, Oct 29, 2019 at 09:07:53AM -0600, Jeffrey Hugo wrote: > > On 10/29/2019 7:44 AM, Jeffrey Hugo wrote: > > > On 10/29/2019 4:50 AM, Will Deacon wrote: > > > > On Mon, Oct 28, 2019 at 11:06:04PM -0700, Bjorn Andersson wrote: > > > > > The Kryo cores share errata 1009 with Falkor, so add their model > > > > > definitions and enable it for them as well. > > > > > > > > > > Signed-off-by: Bjorn Andersson > > > > > --- > > > > > ? arch/arm64/include/asm/cputype.h | 4 ++++ > > > > > ? arch/arm64/kernel/cpu_errata.c?? | 2 ++ > > > > > ? 2 files changed, 6 insertions(+) > > > > > > > > > > diff --git a/arch/arm64/include/asm/cputype.h > > > > > b/arch/arm64/include/asm/cputype.h > > > > > index b1454d117cd2..8067476ea2e4 100644 > > > > > --- a/arch/arm64/include/asm/cputype.h > > > > > +++ b/arch/arm64/include/asm/cputype.h > > > > > @@ -84,6 +84,8 @@ > > > > > ? #define QCOM_CPU_PART_FALKOR_V1??????? 0x800 > > > > > ? #define QCOM_CPU_PART_FALKOR??????? 0xC00 > > > > > ? #define QCOM_CPU_PART_KRYO??????? 0x200 > > > > > +#define QCOM_CPU_PART_KRYO_GOLD??????? 0x211 > > > > > +#define QCOM_CPU_PART_KRYO_SILVER??? 0x205 > > > > > > These are not Kryo part numbers (8998+).? They are Hydra ones. > > > > > > > > > > > Can you double-check this, please? My Pixel-1 phone claims something with > > > > 0x201, but I don't know if that's what you were aiming for. It would be > > > > great if Qualcomm could document these register fields somewhere, > > > > especially > > > > since we're trying to work around their hardware errata for them. > > > > > > I wish I could point you to public documentation.? I don't happen to > > > know where it is.? As far as 8996 goes, there are quite a few part > > > numbers.? The ones I could find are: > > > 201 > > > 205 > > > 211 > > > 241 > > > 251 > > > > > > 281 happens to be QDF2432 > > > > From asking around, I found someone in the know. We don't have public > > documentation, but I can follow up to try to create something - its likely > > going to take a bit. I was given the following information to share. This > > is specific to Hydra only- > > > > MIDR[15:12] = PART[11:8] > > Hydra and technology node differentiator (0x1 = Hydra 16nm; 0x2 = Hydra > > 14nm; 0x3 = Hydra 10nm) > > > > MIDR[11:10] = PART[7:6] > > This corresponds to the cluster revision number > > > > MIDR[9:8] = PART[5:4] > > Technology variant within the node > > > > MIDR[7:6] = PART[3:2] > > 0b00 = 512KB L2 > > 0b01 = 1MB L2 > > 0b10 = 2MB L2 > > 0b11 = 4MB L2 > > > > MIDR[5:4] = PART[1:0] > > 0b00 = uni-core > > 0b01 = dual-core cluster > > 0b10 = tri-core cluster > > 0b11 = quad-core cluster > > Thanks for digging up the details, Jeffrey. As far as I can tell, our > 'is_kryo_midr()' function will return 'true' for all of these, so I think > that's what we should be using for this erratum workaround. Would that work > for you? > Yes, I agree. There's a fair amount of variants involved, so let's go for is_kryo_midr() (which should be is_hydra_midr()). Regards, Bjorn