From patchwork Wed Feb 5 01:22:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Deepak Gupta X-Patchwork-Id: 13960381 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B9F59C02193 for ; Wed, 5 Feb 2025 01:22:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C1301280021; Tue, 4 Feb 2025 20:22:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B989D280016; Tue, 4 Feb 2025 20:22:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 99EEC280021; Tue, 4 Feb 2025 20:22:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 75B4A280016 for ; Tue, 4 Feb 2025 20:22:35 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 24D8F140410 for ; Wed, 5 Feb 2025 01:22:35 +0000 (UTC) X-FDA: 83084141070.19.53EEB99 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by imf03.hostedemail.com (Postfix) with ESMTP id 32E6920002 for ; Wed, 5 Feb 2025 01:22:33 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=rivosinc-com.20230601.gappssmtp.com header.s=20230601 header.b="boEJcp/p"; spf=pass (imf03.hostedemail.com: domain of debug@rivosinc.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=debug@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738718553; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=a5uI84SXblQRDID2BHNWhhHsRc7xVUDdoiei4kS9c/0=; b=vAl9J04gYdMKaU+Ygqf5hpzF6+J5/BmVYpQMbkJE8e4GX8ZxcXJlrp3CsWbGc9Vel/bbvq Il7QwDyFKP6MKb/tdNAfE64xUNLryYjlEj1prE2wrdNgksEzJ4ZI/FqsyV+zyHdhCikUfQ 6ZCIHgjszXwTQqYizKOv7++Uo2RB3gs= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=rivosinc-com.20230601.gappssmtp.com header.s=20230601 header.b="boEJcp/p"; spf=pass (imf03.hostedemail.com: domain of debug@rivosinc.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=debug@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738718553; a=rsa-sha256; cv=none; b=SBc2LvaS03KYpy/7sF2mCkGTVGT2JQZ+wb67uV/Vzyp722CGGiPODcNX/sT1ghFKtVOTnF RgF+ajybey390LbgpBeydKbPtUnkHDhCKkP+CIzW1CJTX2ID38OCM3ZbcAOKtJWEXoJzjl 8nmOUbN0X+PO67v+KMwhdqrIQzhTqLk= Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-21ddab8800bso88860245ad.3 for ; Tue, 04 Feb 2025 17:22:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1738718552; x=1739323352; darn=kvack.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=a5uI84SXblQRDID2BHNWhhHsRc7xVUDdoiei4kS9c/0=; b=boEJcp/p5I3J+x3AZRsOHFdc4r//HZPtWDjZC+swiC/PPZgctT7Buk4IttKYjmfGus 4xgV591A35xT4whbMZiJvVSxjIAWxkcAoPBShArHIeVbgYVMdQy1ouFRk26DlS+g1+Ga YhJtximbLzsGYGKycaZAar/eDKg7Scvt5CH+fHY/YE9Sau1J4cnWu7M8+xR8lcGBsSjc 4y1Wme7Wl8lrnAf5aGBahp3SPxHm1PLH25toYRJDU1LO5iq+PR/zJKq2r/vOoJ6DiMob Gc6eU3pDW140X1dO4bBoaajTUZGK+sg5yKUa6TY8t/MpkEA38gfNprDbMuUrfhU6VZ6J VbYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738718552; x=1739323352; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=a5uI84SXblQRDID2BHNWhhHsRc7xVUDdoiei4kS9c/0=; b=w9Qt6ulfXFLx/86Mwq/cj1E1JV9F9d9XIXUNyNgQcUzlLP0nwe7txM5zI279on1dUc iYnH4tIzx9fXav1LfZxJB8fcK2UcW543CEPhxvyLBEiskk9o8X5+5y2XRfCoVsj5vUmT nyXPAqmuWSKtNUlzXIa+BmOuD/Qnca60g96/jL2JvdyT8CzknrCsdtelbTBlfinxrb6O mE0NhD7t6Ymv4qO6xyTuAGPBNA3vwpyFQoXt0I9pgOgzdoK25msuPAyP2itz5Kas7hDt ZsTtqArTW/mX/eLkm+PPTvd5prSTHOKB30MNM3xsFnU5eMlGKwHo1z0eOsKOMu5WSd01 AwJQ== X-Forwarded-Encrypted: i=1; AJvYcCXIgfUekuPQx8uv3ISa9MIiKYruRn6a02AmzfXsjbmJrh4+SU2/yi/MuoMqtu0FLUlGQQynYoI++g==@kvack.org X-Gm-Message-State: AOJu0YwqK59dw9dOIVt8xuU5ABbXASiVMIi0wqiH8F6za0NPSWpvdP6v nf6FAOtr/uTlWFqhJeCz2XveRHxr10SeP8zVRrJ0RhEVzWkvIP88M6+Wy7J5qNM= X-Gm-Gg: ASbGncuz8m5skYEHl2vMCr0ZvY8y/wFmv/8b+uwGTl/4bmYV06Id2ONSwqOaYaZj6Ud 3QKH5O07P0Cz7qWz/dnpPZ3VIXNicMYsOY9dXSFL03TtJ4mVyXUS3Gpv4N8z1N+BaGWWSl24GaU Cdjrakj4BLcLmVgFBu/dvpShaoXsnNo3zxzOGFucnRAq3Z5CjWXlCDPvRf01vHlGQK4tdoEhP// GGuCTG06zv7GIbms82NuA11aL9qrwugARhtenWsl+Ba7VyQDfTpVtk+/z/uONLmHj03/hmD3ISK oa+d1C1GxyxMQu/jeIgGVke6Fw== X-Google-Smtp-Source: AGHT+IFCF6Qyo3q2G3dGEoXnovMcbEOll06APDlJ/baKR1lUf1tJ5kFaxAt+4U15uatvwIepGIzY3g== X-Received: by 2002:a05:6a21:6da4:b0:1d9:2705:699e with SMTP id adf61e73a8af0-1ede88106d4mr1669830637.7.1738718552107; Tue, 04 Feb 2025 17:22:32 -0800 (PST) Received: from debug.ba.rivosinc.com ([64.71.180.162]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69cec0fsm11457202b3a.137.2025.02.04.17.22.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Feb 2025 17:22:31 -0800 (PST) From: Deepak Gupta Date: Tue, 04 Feb 2025 17:22:07 -0800 Subject: [PATCH v9 20/26] riscv: Add Firmware Feature SBI extensions definitions MIME-Version: 1.0 Message-Id: <20250204-v5_user_cfi_series-v9-20-b37a49c5205c@rivosinc.com> References: <20250204-v5_user_cfi_series-v9-0-b37a49c5205c@rivosinc.com> In-Reply-To: <20250204-v5_user_cfi_series-v9-0-b37a49c5205c@rivosinc.com> To: Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Andrew Morton , "Liam R. Howlett" , Vlastimil Babka , Lorenzo Stoakes , Paul Walmsley , Palmer Dabbelt , Albert Ou , Conor Dooley , Rob Herring , Krzysztof Kozlowski , Arnd Bergmann , Christian Brauner , Peter Zijlstra , Oleg Nesterov , Eric Biederman , Kees Cook , Jonathan Corbet , Shuah Khan , Jann Horn , Conor Dooley Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, linux-arch@vger.kernel.org, linux-doc@vger.kernel.org, linux-kselftest@vger.kernel.org, alistair.francis@wdc.com, richard.henderson@linaro.org, jim.shu@sifive.com, andybnac@gmail.com, kito.cheng@sifive.com, charlie@rivosinc.com, atishp@rivosinc.com, evan@rivosinc.com, cleger@rivosinc.com, alexghiti@rivosinc.com, samitolvanen@google.com, broonie@kernel.org, rick.p.edgecombe@intel.com X-Mailer: b4 0.14.0 X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 32E6920002 X-Stat-Signature: ueb5w8z75mjdpgbxyus6dty1qhsrgzmi X-HE-Tag: 1738718553-148950 X-HE-Meta: U2FsdGVkX18QVFtnmFb+wXG+dTuZH0FJsMw+ZXJrYA1iVyD0lbkUrvUZjQn9Od2RIim55qsLg76Up8tooXmBNKXhB4DNxvd57+yQLazRJ8t/16UaeYLMt9Hit79gtU15OKG4aHFLUTpDh5jyfJxLSN87+eyt0COonG3cmihl4GtWxNm5htzMZTn91bGS+8P6TYeBvB5YuVXZE4ImjNaMbMR8CCJQrR2Z18EJOLPO/L85JkIlXudTx84n3nDYnrPrlG6B2Xuf5W4kc2ff1hkgAbSSVtu6ZVY61zgE9gxGsN2O9HuvxoWvdquykNUk//+c0x5M2nNtFFymP/KYAUW6gShY5WS4d2loHfBlSBg3Nv5P/uaxRPeoO2ZjVX7B77Hqzp22INWx2DNXZT02Cc+5Z7uhUEgEFsTxQgrvGTXT8OokTbec+PvwVsZVMO5J1RUbnUpIH+iFzXSLBka83LJ7A2PsBQgHUcD/b3+IeuDWZFntxHbgMXS1U2faVJ3aDeuqpwQ45zwd1wK2aPpmqsj06uAVK1EJaCI/u/CIxQkzhecSAIBFa6xvtI/IO2brjVYzjiWbVN4aySpXAu/AFxBfG3Jo4taD8w8PR6i1bt4lNCz0yrIJS7z5OnwJsbOlUoHle5LzP4R6QDdmVNb8/sdtTZorTn1jTk7iI4eHZ/7Dmas9I9fpoZURjn1VxZjfNq0n8kD0DFw3nCqgAWqslCrDwqssEwJJhj3P/5KULCW/gNWCMPOMuNo4c/yLKQ2IxzpFFI9StsHYGWgGuq/1UPswxBIskz4Q2vt5jzqIqAz3sp3GU/gIFRvNzPTOQyhd+IaBjPm2q8b+CpbsupoAaucslelC1PVLG89gxzbizfbIb6zMn5WsiN6WVLlC3r7oLoNG6Wgi3lSIveHAbJtyIj/JoeFVAGp9FPcR6gqJhjvuf7W3ATfurGNAnd08ELNGFe+3mr7zI3tBIYX7wH1NIoh idTEawT9 wXOKMnyIcw9OPDToL1J4wjTAEox1gf62B/xKzziNqY6H/7qNnozvTbsZwJcYTpl2sU2unRgFRA338gFORo+yQVcyvYBFz/yFkDGqI+MQZAeQfYIYnO1kP6V4FEKU3j6qPb6aYQCfnMvRIggQ7H4Gq53C3X0GfjMxMPrFFb6rsbn2+0lzIjEKF3QL1s05+bKpmHbL8Pe3OKVqUUJcitnieBYjaLPjatRnykdZ+52iBTVbw1no8w+ysDxAQPI8EhHVht3o9A/bkz3p6SAKlP40p5/dQlS3NcGcEeWX0Ueqsq+5CIBqBAw/+icIvfGsYzFavruuPnKB7y0vqcLdeNdqQ/S895gU1nV7qBlNvbgGs4GD+IOUydXeoVenpnPY3Y+1bNiMdCKkQdTTVjdDOOVp6EXJT5pIKLp2BMVKzo3TDcyivx8f9j8TQP5+/1EvWLgMfI4Z2n2uxkz6YC8VeT5QsOmCFdQceW0eMQLL47rBJuubkktg= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Clément Léger Add necessary SBI definitions to use the FWFT extension. Signed-off-by: Clément Léger --- arch/riscv/include/asm/sbi.h | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/riscv/include/asm/sbi.h b/arch/riscv/include/asm/sbi.h index 3d250824178b..23bfb254e3f4 100644 --- a/arch/riscv/include/asm/sbi.h +++ b/arch/riscv/include/asm/sbi.h @@ -35,6 +35,7 @@ enum sbi_ext_id { SBI_EXT_DBCN = 0x4442434E, SBI_EXT_STA = 0x535441, SBI_EXT_NACL = 0x4E41434C, + SBI_EXT_FWFT = 0x46574654, /* Experimentals extensions must lie within this range */ SBI_EXT_EXPERIMENTAL_START = 0x08000000, @@ -401,6 +402,31 @@ enum sbi_ext_nacl_feature { #define SBI_NACL_SHMEM_SRET_X(__i) ((__riscv_xlen / 8) * (__i)) #define SBI_NACL_SHMEM_SRET_X_LAST 31 +/* SBI function IDs for FW feature extension */ +#define SBI_EXT_FWFT_SET 0x0 +#define SBI_EXT_FWFT_GET 0x1 + +enum sbi_fwft_feature_t { + SBI_FWFT_MISALIGNED_EXC_DELEG = 0x0, + SBI_FWFT_LANDING_PAD = 0x1, + SBI_FWFT_SHADOW_STACK = 0x2, + SBI_FWFT_DOUBLE_TRAP = 0x3, + SBI_FWFT_PTE_AD_HW_UPDATING = 0x4, + SBI_FWFT_LOCAL_RESERVED_START = 0x5, + SBI_FWFT_LOCAL_RESERVED_END = 0x3fffffff, + SBI_FWFT_LOCAL_PLATFORM_START = 0x40000000, + SBI_FWFT_LOCAL_PLATFORM_END = 0x7fffffff, + + SBI_FWFT_GLOBAL_RESERVED_START = 0x80000000, + SBI_FWFT_GLOBAL_RESERVED_END = 0xbfffffff, + SBI_FWFT_GLOBAL_PLATFORM_START = 0xc0000000, + SBI_FWFT_GLOBAL_PLATFORM_END = 0xffffffff, +}; + +#define SBI_FWFT_GLOBAL_FEATURE_BIT (1 << 31) +#define SBI_FWFT_PLATFORM_FEATURE_BIT (1 << 30) + +#define SBI_FWFT_SET_FLAG_LOCK (1 << 0) /* SBI spec version fields */ #define SBI_SPEC_VERSION_DEFAULT 0x1