From nobody Sun Feb 8 07:07:35 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+100699+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100699+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1677866668; cv=none; d=zohomail.com; s=zohoarc; b=Tjke8HBOpteJRwA+Hq7X/gYkyS+YHH9as69h5SH3xVkQShB5kWrgb3/+ryET/WKZlePHtUbec4M7kcJc5J/Y5Xq1DyYBUb7DD/SPLO7UXZZA9N1AdJDoIHDvwCGtplu9o3EHZyjIEqKo7rGS6Nu3DDINaNxqtXG//GR5mqvrXY8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677866668; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=lrwBKccZi8iHkvtPifzsm6JNajNpazLuAYiB+Y/q4gw=; b=b+Gnlj5GEaKHLRhmA7x0Jox+Hzv8pjxZtOksrUSgRijA3PLbKkc1Av4njkHyG7/DUV1/Gprro7a8REvkaAwM6bfNCIHco1P31N8eHEm2a4Z1UslHwT/xKwgdharG6cVrq1DZwM2rxTQbWt1F+e3K3Qg/vTOBx7OqsEHojrL3Qtg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100699+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1677866668240587.1022190159899; Fri, 3 Mar 2023 10:04:28 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id BousYY1788612xsTcSCsOEI9; Fri, 03 Mar 2023 10:04:27 -0800 X-Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mx.groups.io with SMTP id smtpd.web10.30787.1677866666579516306 for ; Fri, 03 Mar 2023 10:04:27 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10638"; a="332593486" X-IronPort-AV: E=Sophos;i="5.98,231,1673942400"; d="scan'208";a="332593486" X-Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Mar 2023 10:04:21 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10638"; a="849541893" X-IronPort-AV: E=Sophos;i="5.98,231,1673942400"; d="scan'208";a="849541893" X-Received: from snainar-mobl1.amr.corp.intel.com (HELO awarkent-mobl1.amr.corp.intel.com) ([10.212.75.200]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Mar 2023 10:04:20 -0800 From: "Andrei Warkentin" To: devel@edk2.groups.io Cc: Andrei Warkentin , Daniel Schaefer , Sunil V L , Gerd Hoffmann Subject: [edk2-devel] [edk2 1/3] MdePkg: BaseRiscVSbiLib: make more useful to consumers Date: Fri, 3 Mar 2023 12:04:08 -0600 Message-Id: <20230303180410.6344-2-andrei.warkentin@intel.com> In-Reply-To: <20230303180410.6344-1-andrei.warkentin@intel.com> References: <20230303180410.6344-1-andrei.warkentin@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,andrei.warkentin@intel.com X-Gm-Message-State: V50Tt5O8NmH6p5wfBOCuAHivx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1677866667; bh=cKDLpPHtQl7Z+r3SwSAx2cCtwSD/kMMYyzB2rG+U1BE=; h=Cc:Date:From:Reply-To:Subject:To; b=k0SYHfSRzZjji1SzLgnZO/7OpHS4+5s/hp/uqNEcdkHvwkfnUTyGJZNNS9R2XwxPy+k KoMMioHESdBrA6qcQIy5iYdkCo2YOK3ucVr8TKvYXLMahxF4m1L7oGYPUiqoK+yZafUVG i6Kme0mRAWoi6zzqxM+ReU2pTHspIdPgd2E= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1677866669082100004 Content-Type: text/plain; charset="utf-8" Add a few more definitions and make SbiCall and TranslateError usable (not static) by library users. Cc: Daniel Schaefer Cc: Sunil V L Acked-by: Gerd Hoffmann Signed-off-by: Andrei Warkentin Reviewed-by: Sunil V L --- MdePkg/Include/Library/BaseRiscVSbiLib.h | 40 ++++++++++++++++++-- MdePkg/Library/BaseRiscVSbiLib/BaseRiscVSbiLib.c | 3 +- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/MdePkg/Include/Library/BaseRiscVSbiLib.h b/MdePkg/Include/Libr= ary/BaseRiscVSbiLib.h index e75520b4b888..2244165a6b6a 100644 --- a/MdePkg/Include/Library/BaseRiscVSbiLib.h +++ b/MdePkg/Include/Library/BaseRiscVSbiLib.h @@ -2,6 +2,7 @@ Library to call the RISC-V SBI ecalls =20 Copyright (c) 2021-2022, Hewlett Packard Development LP. All rights rese= rved.
+ Copyright (c) 2023, Intel Corporation. All rights reserved.
=20 SPDX-License-Identifier: BSD-2-Clause-Patent =20 @@ -18,10 +19,28 @@ #include =20 /* SBI Extension IDs */ -#define SBI_EXT_TIME 0x54494D45 -#define SBI_EXT_SRST 0x53525354 +#define SBI_EXT_0_1_CONSOLE_PUTCHAR 0x1 +#define SBI_EXT_0_1_CONSOLE_GETCHAR 0x2 +#define SBI_EXT_BASE 0x10 +#define SBI_EXT_DBCN 0x4442434E +#define SBI_EXT_TIME 0x54494D45 +#define SBI_EXT_SRST 0x53525354 =20 -/* SBI function IDs for TIME extension*/ +/* SBI function IDs for base extension */ +#define SBI_EXT_BASE_SPEC_VERSION 0x0 +#define SBI_EXT_BASE_IMPL_ID 0x1 +#define SBI_EXT_BASE_IMPL_VERSION 0x2 +#define SBI_EXT_BASE_PROBE_EXT 0x3 +#define SBI_EXT_BASE_GET_MVENDORID 0x4 +#define SBI_EXT_BASE_GET_MARCHID 0x5 +#define SBI_EXT_BASE_GET_MIMPID 0x6 + +/* SBI function IDs for DBCN extension */ +#define SBI_EXT_DBCN_WRITE 0x0 +#define SBI_EXT_DBCN_READ 0x1 +#define SBI_EXT_DBCN_WRITE_BYTE 0x2 + +/* SBI function IDs for TIME extension */ #define SBI_EXT_TIME_SET_TIMER 0x0 =20 /* SBI function IDs for SRST extension */ @@ -62,6 +81,21 @@ typedef struct { UINTN Value; ///< Value returned } SBI_RET; =20 +SBI_RET +EFIAPI +SbiCall ( + IN UINTN ExtId, + IN UINTN FuncId, + IN UINTN NumArgs, + ... + ); + +EFI_STATUS +EFIAPI +TranslateError ( + IN UINTN SbiError + ); + VOID EFIAPI SbiSetTimer ( diff --git a/MdePkg/Library/BaseRiscVSbiLib/BaseRiscVSbiLib.c b/MdePkg/Libr= ary/BaseRiscVSbiLib/BaseRiscVSbiLib.c index 2ba8f5ed366a..1141abfab9d0 100644 --- a/MdePkg/Library/BaseRiscVSbiLib/BaseRiscVSbiLib.c +++ b/MdePkg/Library/BaseRiscVSbiLib/BaseRiscVSbiLib.c @@ -4,6 +4,7 @@ It allows calling an SBI function via an ecall from S-Mode. =20 Copyright (c) 2021-2022, Hewlett Packard Development LP. All rights rese= rved.
+ Copyright (c) 2023, Intel Corporation. All rights reserved.
=20 SPDX-License-Identifier: BSD-2-Clause-Patent =20 @@ -31,7 +32,6 @@ @retval Returns SBI_RET structure with value and error code. =20 **/ -STATIC SBI_RET EFIAPI SbiCall ( @@ -88,7 +88,6 @@ SbiCall ( @param[in] SbiError SBI error code @retval EFI_STATUS **/ -STATIC EFI_STATUS EFIAPI TranslateError ( --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#100699): https://edk2.groups.io/g/devel/message/100699 Mute This Topic: https://groups.io/mt/97368167/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-