From nobody Tue Jul 19 07:37:16 2022
X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ln9dm3Y6Wz4WbdY;
	Tue, 19 Jul 2022 07:37:16 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Ln9dm361Kz3pBq;
	Tue, 19 Jul 2022 07:37:16 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1658216236;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DAHTsORT0Pmlakx5eLUPcCUfeapmPCc75uAJg+RpjeU=;
	b=bsxJ6abf+jZ7Wqh4XSyM9GifGEXboacUh0rKS48KtrDMXY0UCJYG8OOQ0MV4QqljfuZGkd
	zVHexpnJFHPcCEOX8+WUNWrIINzc/8gk2h67hx3OyGqy5R6J0WcnNRU+GgNVWNy8qyCgxc
	0t+vpVoB6D+FTJ4IA8GsZ4IevgVpN6NaSoFEXqo0iHoFI2a2LkYuM5fb+eb/I8S0XjtZqt
	Q1CzAoypvXDv0HgZNty/8eiUXplTbz3WPnKFlpGTt2sPPpswzF7EbpB28XSAqg74bEUO+Z
	5tvoC0j98R/3xh/L3EiE+gcAhQcyjJDt0Jdci5yitAhZzSIKJEXX6RBa7kVQmw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ln9dm28Jbz19jR;
	Tue, 19 Jul 2022 07:37:16 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 26J7bGV6021379;
	Tue, 19 Jul 2022 07:37:16 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 26J7bGK3021378;
	Tue, 19 Jul 2022 07:37:16 GMT
	(envelope-from git)
Date: Tue, 19 Jul 2022 07:37:16 GMT
Message-Id: <202207190737.26J7bGK3021378@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-branches@FreeBSD.org
From: Andrew Turner <andrew@FreeBSD.org>
Subject: git: c41c04043fc6 - stable/13 - Decode all Arm GIC feature ID bits
List-Id: Commits to the stable branches of the FreeBSD src repository <dev-commits-src-branches.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches
List-Help: <mailto:dev-commits-src-branches+help@freebsd.org>
List-Post: <mailto:dev-commits-src-branches@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-branches+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-branches+unsubscribe@freebsd.org>
Sender: owner-dev-commits-src-branches@freebsd.org
X-BeenThere: dev-commits-src-branches@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: andrew
X-Git-Repository: src
X-Git-Refname: refs/heads/stable/13
X-Git-Reftype: branch
X-Git-Commit: c41c04043fc6ee9e8197ddd9e90a2325f8c4f5c1
Auto-Submitted: auto-generated
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1658216236;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DAHTsORT0Pmlakx5eLUPcCUfeapmPCc75uAJg+RpjeU=;
	b=sA9HKdbbxMMZPmuWYez1c5LQYPf07AIRd/F8e07/cpKYAzSNIuk8pJdKxvOM6xHW6OLjtN
	o2flYV3HUpwy1Rd8LhIV8vyov6zRGlN58i7We7NxfDpj2FY8YMhVsh+EhU5jxHjS47h41H
	0tNQQ/JjUfIDhMNdC6HY2KvZvonqfrbVHAgBOgDDJoSP8wc/BFWDRBnnnY8DehCNY2yiZf
	vF3lyXZ18ev7CiYq14r0Et/MghJJb8J/5wtVCepXx7H/xx1pF60d0VyQJVmHmoNeEeQmMD
	PW5WOisYAYImIi8BXFaIrC+lURmEX5NcBoGq8NXCsufDD68EsoFNOsJhtC1iBg==
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1658216236; a=rsa-sha256; cv=none;
	b=wZYziLtNWEiQxKBinNottLx0AlcjMxPDqxe4xwiqJof6Xg+wyeOVoBSNX73r97316PbOU8
	RDwOwFteuhUQbehWyJw5RS6+P8W5dyleqKOFKD1z5bHT8fXtnMjLi2KLL8dHuPfraPJSvV
	Ie+kuHfP+1yiLmo/A78Q2THuwAlguWV3v/xCFI7a88BEXqSgedA0g2G3E6RHRJ9scVOOVM
	LSbSdTo13EmG1qvUdArWwfHMnV7w31Q51+HNGatN1uXT//6InODbZ2UgHK/zhDJ8behMTm
	QBhWSBbpzhwNIVf2tvwFegqC+F28aJHMF1rz6qrKS38mG8njGkgO4XoxclNocA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
X-ThisMailContainsUnwantedMimeParts: N

The branch stable/13 has been updated by andrew:

URL: https://cgit.FreeBSD.org/src/commit/?id=c41c04043fc6ee9e8197ddd9e90a2325f8c4f5c1

commit c41c04043fc6ee9e8197ddd9e90a2325f8c4f5c1
Author:     Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2022-05-24 10:03:13 +0000
Commit:     Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2022-07-19 07:03:30 +0000

    Decode all Arm GIC feature ID bits
    
    The AWS Graviton3 CPU features a GIC 4.1 CPU Interface. Teach the CPU
    identift code to decode it.
    
    Sponsored by:   The FreeBSD Foundation
    
    (cherry picked from commit 477204e70b658c518064a02203a2050d5a0841be)
---
 sys/arm64/arm64/identcpu.c | 3 +++
 sys/arm64/include/armreg.h | 1 +
 2 files changed, 4 insertions(+)

diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c
index af5ed5dfb969..514671837015 100644
--- a/sys/arm64/arm64/identcpu.c
+++ b/sys/arm64/arm64/identcpu.c
@@ -1108,6 +1108,9 @@ static struct mrs_field_value id_aa64pfr0_ras[] = {
 
 static struct mrs_field_value id_aa64pfr0_gic[] = {
 	MRS_FIELD_VALUE_NONE_IMPL(ID_AA64PFR0, GIC, CPUIF_NONE, CPUIF_EN),
+	MRS_FIELD_VALUE(ID_AA64PFR0_GIC_CPUIF_NONE, ""),
+	MRS_FIELD_VALUE(ID_AA64PFR0_GIC_CPUIF_EN, "GIC"),
+	MRS_FIELD_VALUE(ID_AA64PFR0_GIC_CPUIF_4_1, "GIC 4.1"),
 	MRS_FIELD_VALUE_END,
 };
 
diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h
index 1e7982a101c5..4c752ea24ab6 100644
--- a/sys/arm64/include/armreg.h
+++ b/sys/arm64/include/armreg.h
@@ -828,6 +828,7 @@
 #define	ID_AA64PFR0_GIC_VAL(x)		((x) & ID_AA64PFR0_GIC_MASK)
 #define	 ID_AA64PFR0_GIC_CPUIF_NONE	(UL(0x0) << ID_AA64PFR0_GIC_SHIFT)
 #define	 ID_AA64PFR0_GIC_CPUIF_EN	(UL(0x1) << ID_AA64PFR0_GIC_SHIFT)
+#define	 ID_AA64PFR0_GIC_CPUIF_4_1	(UL(0x3) << ID_AA64PFR0_GIC_SHIFT)
 #define	ID_AA64PFR0_RAS_SHIFT		28
 #define	ID_AA64PFR0_RAS_MASK		(UL(0xf) << ID_AA64PFR0_RAS_SHIFT)
 #define	ID_AA64PFR0_RAS_VAL(x)		((x) & ID_AA64PFR0_RAS_MASK)