From patchwork Tue Sep 12 14:16:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 13381805 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5675ACA0EEC for ; Tue, 12 Sep 2023 14:20:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: References:Mime-Version:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=Y0rb2VeZIDVJBxDHfiQL0fsoAgfYFT7iRwzGRpgsiz4=; b=DFbP3enQse2I/n5kGcgcTL5iO0 /dJGUGBN48x/zv7FtrC1Sl0misIZbnwQpenNNBgJSq7JVLd1zHvzZL2ouZ2VYkmr3rumUARn1y6wl 5PncOFm2OVKzAgDefZQ659vp+LC/sdgJ0/cVdip+cZOGb1GWYeZEN5m4m6Kzxbi9e7Uv6GRrnHgmY FLAVa39J2BL1b4Cs6Vs5eD/QYCJPk8bVp4otseOhpikBPY3hVlRJGf0pRKgwNbmaLhu2BB8IQAZZv lh5294DldoYBFdk1wigpSTZMxH3P6MxMMTZsxBjle0se+MXn91RjWGPK07UCHj4rPEIuawBuuuG5H g/CQSqQw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qg4FU-003Y9d-0O; Tue, 12 Sep 2023 14:20:16 +0000 Received: from mail-yw1-x1149.google.com ([2607:f8b0:4864:20::1149]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qg4EF-003X60-33 for linux-arm-kernel@lists.infradead.org; Tue, 12 Sep 2023 14:19:11 +0000 Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-58cb845f2f2so62109827b3.1 for ; Tue, 12 Sep 2023 07:18:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1694528338; x=1695133138; darn=lists.infradead.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=NmxYtpZy7xid9+3ZXEZ7J6YHnsxvGYTkj2THnUNOVfw=; b=2IL6Jcs/F7qouhQemy/WPmPvKvejeSgMSm5uAXtqXSUMtOQQTPYp+3v1m3f2waDg0N IiGJZVHN5UIL0LTgEv63SS/JMsnV6oHe7M0x5gnWGNDz4eYmffdE5TlNB5BMNuvkZd3f pLFCR+3T71wTEW01jeXhBpC4ucT1UzF0Pg+CbF5MZkVEogb1zhJA4mT6OE9EY7QlPiyG TqMc0vjBx3jKj25ag2vsALaEod50eZM1tmre+t2Lhsx17BmlVVIqLtG7SHz+kxTLUTpW kp3lwCRMwA1Hc17FP8ISMPMJsCYqJWH73SPrIV0pe/t8WVYmZQlU/0shNtJJX0iy+IgW yATg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694528338; x=1695133138; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=NmxYtpZy7xid9+3ZXEZ7J6YHnsxvGYTkj2THnUNOVfw=; b=FZpaDTvGz7BsdF52zrEycVQJeo3A14ASMCZcdm9wp/8ooDogiY5qbzvu7dXE61sRtg 9R/gYO/tXjeGkyHSPWFkgpTA+8FISla8sRsor8dsLBJNt7VNm6YAczXDEheuPW+LvsZP 9ky1fTwSMz+AMCjBgsuBDWrTHbiHFzp7JauAaJE44G7x7OebuiTIQ24hdCLLlGjyhE3Y GS9bxFAs8bUc9bzr4K5MvMnKwh1jbsvyAbxvGEhjD/FOLBJWNYr9Tj2x75uIpwpBHMv9 7g5WNRzBgBsvAkX1+kdtmI65xE66Rr2zRttAYn4ZdTfsC8AS0rwaWkFIa4c1MmgY6I1p GyuA== X-Gm-Message-State: AOJu0Yzulu/YFp57RQ9ygtCreV+/6inGoSQLZGIexD+p88glXzAB1loz 4NeCK86eV5X97SI/MfpwUjv85joakeuo+Y4PhPs0kGpe3yNRBPHfV8H84hzWbnqjlaM4y4auIEB 50eWVziBNb3fS+vcwGr00+IyppXTz0Z2E5QmVjFrUqg6unqxkAIk1Tqp0LMEuKYeOW0t50iWmOn 4= X-Google-Smtp-Source: AGHT+IG/hCVt/iMkYf9UOLEx6RANZb0fn3OzFjD9H/1MyJhDJJgZaoS7l7Y97AIDBnrjhEN+ZUZ43W4q X-Received: from palermo.c.googlers.com ([fda3:e722:ac3:cc00:28:9cb1:c0a8:118a]) (user=ardb job=sendgmr) by 2002:a81:ed01:0:b0:589:a935:b13 with SMTP id k1-20020a81ed01000000b00589a9350b13mr322197ywm.5.1694528338152; Tue, 12 Sep 2023 07:18:58 -0700 (PDT) Date: Tue, 12 Sep 2023 14:16:32 +0000 In-Reply-To: <20230912141549.278777-63-ardb@google.com> Mime-Version: 1.0 References: <20230912141549.278777-63-ardb@google.com> X-Developer-Key: i=ardb@kernel.org; a=openpgp; fpr=F43D03328115A198C90016883D200E9CA6329909 X-Developer-Signature: v=1; a=openpgp-sha256; l=1741; i=ardb@kernel.org; h=from:subject; bh=1zwjYCdptLGI5sQYr1Z4N+eAr5O5DnPs7MuLg236ZgE=; b=owGbwMvMwCFmkMcZplerG8N4Wi2JIZWh6JBgiUm+n9NaG50PORO/tvP4nml7sKW2Jm5bhS7rR P+4h0c7SlkYxDgYZMUUWQRm/3238/REqVrnWbIwc1iZQIYwcHEKwER+rGL4H/t+R+iG6arr9p4p Cd388M3mdTuXl8zMDuC9s+Joi2x/cj/Df6fZ0/Zofyub4384c0q5r/S+svO5Vs+OnDlheHZpxuS NjxgA X-Mailer: git-send-email 2.42.0.283.g2d96d420d3-goog Message-ID: <20230912141549.278777-105-ardb@google.com> Subject: [PATCH v4 42/61] arm64/mm: Add FEAT_LPA2 specific ID_AA64MMFR0.TGRAN[2] From: Ard Biesheuvel To: linux-arm-kernel@lists.infradead.org Cc: Ard Biesheuvel , Catalin Marinas , Will Deacon , Marc Zyngier , Mark Rutland , Ryan Roberts , Anshuman Khandual , Kees Cook , Joey Gouly X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230912_071900_014565_BD706CED X-CRM114-Status: GOOD ( 10.91 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Anshuman Khandual PAGE_SIZE support is tested against possible minimum and maximum values for its respective ID_AA64MMFR0.TGRAN field, depending on whether it is signed or unsigned. But then FEAT_LPA2 implementation needs to be validated for 4K and 16K page sizes via feature specific ID_AA64MMFR0.TGRAN values. Hence it adds FEAT_LPA2 specific ID_AA64MMFR0.TGRAN[2] values per ARM ARM (0487G.A). Acked-by: Catalin Marinas Signed-off-by: Anshuman Khandual Signed-off-by: Ard Biesheuvel --- arch/arm64/include/asm/sysreg.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/include/asm/sysreg.h b/arch/arm64/include/asm/sysreg.h index 38296579a4fd..a567add35301 100644 --- a/arch/arm64/include/asm/sysreg.h +++ b/arch/arm64/include/asm/sysreg.h @@ -847,11 +847,13 @@ #if defined(CONFIG_ARM64_4K_PAGES) #define ID_AA64MMFR0_EL1_TGRAN_SHIFT ID_AA64MMFR0_EL1_TGRAN4_SHIFT +#define ID_AA64MMFR0_EL1_TGRAN_LPA2 ID_AA64MMFR0_EL1_TGRAN4_52_BIT #define ID_AA64MMFR0_EL1_TGRAN_SUPPORTED_MIN ID_AA64MMFR0_EL1_TGRAN4_SUPPORTED_MIN #define ID_AA64MMFR0_EL1_TGRAN_SUPPORTED_MAX ID_AA64MMFR0_EL1_TGRAN4_SUPPORTED_MAX #define ID_AA64MMFR0_EL1_TGRAN_2_SHIFT ID_AA64MMFR0_EL1_TGRAN4_2_SHIFT #elif defined(CONFIG_ARM64_16K_PAGES) #define ID_AA64MMFR0_EL1_TGRAN_SHIFT ID_AA64MMFR0_EL1_TGRAN16_SHIFT +#define ID_AA64MMFR0_EL1_TGRAN_LPA2 ID_AA64MMFR0_EL1_TGRAN16_52_BIT #define ID_AA64MMFR0_EL1_TGRAN_SUPPORTED_MIN ID_AA64MMFR0_EL1_TGRAN16_SUPPORTED_MIN #define ID_AA64MMFR0_EL1_TGRAN_SUPPORTED_MAX ID_AA64MMFR0_EL1_TGRAN16_SUPPORTED_MAX #define ID_AA64MMFR0_EL1_TGRAN_2_SHIFT ID_AA64MMFR0_EL1_TGRAN16_2_SHIFT