From nobody Fri May 17 06:54:20 2024 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+113093+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+113093+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1704290347; cv=none; d=zohomail.com; s=zohoarc; b=P5z+Ft/qyOAiJms+lb0SCszbeZgdIHeZ6swuRlGKeqiMhMtPNgFey9T7mJCP+rLxMWAUDj9xHDaIM7jLCjXoJHtijVv4bFjzrehx6C5eoYSCW9LIHlEufG8q6xUujGWiQf2TdeUdCwoAxoVpSHaWILk4tfuUeHNIir2A3jlPqnw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1704290347; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=DJMrVIkWFy4kmpq5Zc79/nPTr2z0dcXK9expQQ3wnxs=; b=kR9ssrXdyqgjAfulSqyETubT6sbo/BOL8hrKGL5gIQHoApPtoskV4/M5tBcC4Hdpjg4RipJ4u3kETiQ0lZ8lVzJMm+aLDroAy5OJHR1/xjSbe/90KJNZ/nwnP4WX6/bX2z9n82O8aFJpgv48YQzj5162L2dQwzKjbVW2ekXGpy0= 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+113093+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1704290347177868.4932673013017; Wed, 3 Jan 2024 05:59:07 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=LeKr/SdvsfscGl8wXwfjcHdCQLOfYJ0i7jTnI0zDNaE=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1704290346; v=1; b=RLZ3wtdDh3RYJYbBQ5FOVXYgXJ0TzXWCg8Wp44XcruAHUjdASa074zjKZuahyAJOnnBofkls e2uacl3tsiyBAmEc3PORIfiRBNGXHZy5jAujjns6fT5/ahT0ZbW5F7hskrOeH34nYBbNS9I0dKH HEcAzTkpC4KY7Y7sTw/+YUR8= X-Received: by 127.0.0.2 with SMTP id to5nYY1788612xEY4lx5SvNc; Wed, 03 Jan 2024 05:59:06 -0800 X-Received: from mail-io1-f44.google.com (mail-io1-f44.google.com [209.85.166.44]) by mx.groups.io with SMTP id smtpd.web11.17765.1704290346172605157 for ; Wed, 03 Jan 2024 05:59:06 -0800 X-Received: by mail-io1-f44.google.com with SMTP id ca18e2360f4ac-7ba84a3cc96so528360339f.3 for ; Wed, 03 Jan 2024 05:59:06 -0800 (PST) X-Gm-Message-State: 04drfm0dK0PKvTMCKFi4ss9Bx1787277AA= X-Google-Smtp-Source: AGHT+IGk/KCG1Gap38Asf5A7BgRjg1vwQmXb19e2aZB5KSfUWotS30D+xdmAKFo6OxKAhXtZLbhTCg== X-Received: by 2002:a05:6602:2a54:b0:7bb:ba50:dd2f with SMTP id k20-20020a0566022a5400b007bbba50dd2fmr3343581iov.9.1704290344592; Wed, 03 Jan 2024 05:59:04 -0800 (PST) X-Received: from sunil-laptop.dc1.ventanamicro.com ([106.51.188.200]) by smtp.gmail.com with ESMTPSA id w6-20020a056638378600b0046dcaba1adesm1213393jal.62.2024.01.03.05.59.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jan 2024 05:59:04 -0800 (PST) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Liming Gao , Michael D Kinney , Zhiguang Liu , Andrei Warkentin Subject: [edk2-devel] [PATCH 1/4] MdePkg.dec: RISC-V: Define override bit for Sstc extension Date: Wed, 3 Jan 2024 19:28:46 +0530 Message-Id: <20240103135849.127251-2-sunilvl@ventanamicro.com> In-Reply-To: <20240103135849.127251-1-sunilvl@ventanamicro.com> References: <20240103135849.127251-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 Precedence: Bulk 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,sunilvl@ventanamicro.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1704290349302100003 Content-Type: text/plain; charset="utf-8" Define the BIT 1 as the override bit for Sstc extension. This will be used by the timer driver to decide whether to use SBI calls or direct CSR access to configure the timer. Cc: Liming Gao Cc: Michael D Kinney Cc: Zhiguang Liu Cc: Andrei Warkentin Signed-off-by: Sunil V L --- MdePkg/MdePkg.dec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec index 2ee112cc087a..0459418906f8 100644 --- a/MdePkg/MdePkg.dec +++ b/MdePkg/MdePkg.dec @@ -2405,6 +2405,8 @@ [PcdsFixedAtBuild.RISCV64, PcdsPatchableInModule.RISC= V64] # Configurability to override RISC-V CPU Features # BIT 0 =3D Cache Management Operations. This bit is relevant only if # previous stage has feature enabled and user wants to disable it. + # BIT 1 =3D Supervisor Time Compare (Sstc). This bit is relevant only if + # previous stage has feature enabled and user wants to disable it. # gEfiMdePkgTokenSpaceGuid.PcdRiscVFeatureOverride|0xFFFFFFFFFFFFFFFF|UINT= 64|0x69 =20 --=20 2.34.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 (#113093): https://edk2.groups.io/g/devel/message/113093 Mute This Topic: https://groups.io/mt/103501838/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- From nobody Fri May 17 06:54:20 2024 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+113094+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+113094+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1704290350; cv=none; d=zohomail.com; s=zohoarc; b=W8h8/0Tyoxsn8Xs2v+amFBvKWvLgChSN/LKfJSYVoTsoCDw9T3SN85nZgFfUPDi5lO3FjTxrn8W+rxwO+HBNyAKPT/Fm4KML/qbR3CwNXfJ+deAjihFamHwt+7WXpDEDdutOE9vMil+nMLelr+0tMmbZJuy+tQv/+rXBwwnTdVs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1704290350; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=rmMRLmu6BAAi2wzBIxPHfdGW64X/WAHjYOVFBApIKZg=; b=SnWrOsKyOJsIxoF2/y5JXtSbhmylAAZ0V4sbOHuvp71lcDB8Pcpi9Ymh/HCEzsOut+eljURS0eB9QPnKMhcc+d5XqRGUIt8Fia6llaW0FwtOUlaRLaNFAP36dpbsk6ja3PskUUvaJdtuoK6Wrz3JKgAPOgEZz9zyC710/auIrSs= 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+113094+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1704290350316394.5824326495788; Wed, 3 Jan 2024 05:59:10 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=dihytsI8OmHOnSDPJdQtVU+ub+Q1VgVHk0bryfbV+v4=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1704290350; v=1; b=K8c4WnJ0jlPGEEZBE4FoijOIbiiwUK1LAvu3BDqPJuv70/8csDW3DST+ummxk4WXfwKziPY+ wHlRkck1YwwU9NLER15lAOZbozeGpWmtuSSj1r+OM7/BY3GdJgn+ssmdVeMR8kytJ5ipH+4/dbM MIrPYfqcB/fgPtSwjutoBtLc= X-Received: by 127.0.0.2 with SMTP id O5pJYY1788612x0F6AJybsCS; Wed, 03 Jan 2024 05:59:10 -0800 X-Received: from mail-io1-f51.google.com (mail-io1-f51.google.com [209.85.166.51]) by mx.groups.io with SMTP id smtpd.web10.17859.1704290349430462077 for ; Wed, 03 Jan 2024 05:59:09 -0800 X-Received: by mail-io1-f51.google.com with SMTP id ca18e2360f4ac-7b7fdde8b98so519988539f.1 for ; Wed, 03 Jan 2024 05:59:09 -0800 (PST) X-Gm-Message-State: gJtQ7utczMPEa4UYaOit9ihHx1787277AA= X-Google-Smtp-Source: AGHT+IHqGT6ltqv2pdQpAR52GDYbUoj1/sbmfiwNlnMW7glNaIPfE2VVQlR/2fj0qWVXWITwpvYEeQ== X-Received: by 2002:a05:6602:158f:b0:7b7:c981:1002 with SMTP id e15-20020a056602158f00b007b7c9811002mr27999434iow.19.1704290347923; Wed, 03 Jan 2024 05:59:07 -0800 (PST) X-Received: from sunil-laptop.dc1.ventanamicro.com ([106.51.188.200]) by smtp.gmail.com with ESMTPSA id w6-20020a056638378600b0046dcaba1adesm1213393jal.62.2024.01.03.05.59.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jan 2024 05:59:07 -0800 (PST) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Michael D Kinney , Liming Gao , Zhiguang Liu , Andrei Warkentin Subject: [edk2-devel] [PATCH 2/4] MdePkg/BaseLib: RISC-V: Add function to update stimecmp register Date: Wed, 3 Jan 2024 19:28:47 +0530 Message-Id: <20240103135849.127251-3-sunilvl@ventanamicro.com> In-Reply-To: <20240103135849.127251-1-sunilvl@ventanamicro.com> References: <20240103135849.127251-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 Precedence: Bulk 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,sunilvl@ventanamicro.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1704290351474100001 Content-Type: text/plain; charset="utf-8" stimecmp is a CSR supported only when Sstc extension is supported by the platform. This register can be used to set the timer interrupt directly in S-mode instead of going via SBI call. Add a function to update this register. Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Cc: Andrei Warkentin Signed-off-by: Sunil V L --- MdePkg/Include/Library/BaseLib.h | 5 +++++ MdePkg/Include/Register/RiscV64/RiscVEncoding.h | 3 +++ MdePkg/Library/BaseLib/RiscV64/ReadTimer.S | 7 +++++++ 3 files changed, 15 insertions(+) diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/Base= Lib.h index b71e47f41b7f..ca0d06c7f335 100644 --- a/MdePkg/Include/Library/BaseLib.h +++ b/MdePkg/Include/Library/BaseLib.h @@ -191,6 +191,11 @@ RiscVReadTimer ( VOID ); =20 +VOID +RiscVSetSupervisorTimeCompareRegister ( + IN UINT64 + ); + VOID RiscVEnableTimerInterrupt ( VOID diff --git a/MdePkg/Include/Register/RiscV64/RiscVEncoding.h b/MdePkg/Inclu= de/Register/RiscV64/RiscVEncoding.h index 2bde8db478ff..8ccdea2f4fcd 100644 --- a/MdePkg/Include/Register/RiscV64/RiscVEncoding.h +++ b/MdePkg/Include/Register/RiscV64/RiscVEncoding.h @@ -96,6 +96,9 @@ /* Supervisor Protection and Translation */ #define CSR_SATP 0x180 =20 +/* Sstc extension */ +#define CSR_STIMECMP 0x14D + /* Trap/Exception Causes */ #define CAUSE_MISALIGNED_FETCH 0x0 #define CAUSE_FETCH_ACCESS 0x1 diff --git a/MdePkg/Library/BaseLib/RiscV64/ReadTimer.S b/MdePkg/Library/Ba= seLib/RiscV64/ReadTimer.S index 39a06efa51ef..36781c29c0b9 100644 --- a/MdePkg/Library/BaseLib/RiscV64/ReadTimer.S +++ b/MdePkg/Library/BaseLib/RiscV64/ReadTimer.S @@ -21,3 +21,10 @@ ASM_FUNC (RiscVReadTimer) csrr a0, CSR_TIME ret + +// +// Set Supervisor Time Compare Register +// +ASM_FUNC (RiscVSetSupervisorTimeCompareRegister) + csrw CSR_STIMECMP, a0 + ret --=20 2.34.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 (#113094): https://edk2.groups.io/g/devel/message/113094 Mute This Topic: https://groups.io/mt/103501841/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- From nobody Fri May 17 06:54:20 2024 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+113095+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+113095+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1704290354; cv=none; d=zohomail.com; s=zohoarc; b=oLmmK7ilGFr0QKhPw0a49U45dgwIvdtNK5T6TKXS1TzSXsVcwDw7vNOMBcPhv8/z34/+fkh1T5TPxRJBFrkjETvPw8oQh4ywl6fzw67gUxdAnmWsL3REQABkfFuNbk8FA2zTz1rqZlWD3c3NrRx7DzdpOA2Iz1lU29MSTWJiBhc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1704290354; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=aK1x8S7kmr6T+HFxpSD5+xdq96dfqjMQoB/BpeIXGds=; b=SsnphCzzFB8V+PWk5V97iDaMo0iE9x7/ebzMAJlse/hcx5iw9aM2KWjqWlqRbqmH5/O9FaTdkimompCBKiYAZbaxAnbdcK2iMTQa9H69qj47GqrKbH4YYKrcbLbacosWQ35xJMTiMDNGYzR7FkHRHiOj6FyyVy1Ol3P2Gw92ado= 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+113095+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1704290354077974.5332630009104; Wed, 3 Jan 2024 05:59:14 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=WzzvapGfyctOjsQeyJmUcuidnvmx4mxeoBFVROE+saE=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1704290353; v=1; b=VdE+1WK7HoPtZ452Ttd3eoFLUEL8aFaaUpx4LCGL3yLdeU7dZkO/EJCTOSIxDCCaVHI5PtHq YDwN2gV32i8VgWej4dph0YXNZmkMp9baCFVuF7NPhOwqKxVbDEwD990yQBCpWU5vjZjT8HpYR7i J40XqKH5k7mz3mUg33GqR8i8= X-Received: by 127.0.0.2 with SMTP id 7I64YY1788612xFU38ipv5xt; Wed, 03 Jan 2024 05:59:13 -0800 X-Received: from mail-il1-f170.google.com (mail-il1-f170.google.com [209.85.166.170]) by mx.groups.io with SMTP id smtpd.web10.17862.1704290353152579750 for ; Wed, 03 Jan 2024 05:59:13 -0800 X-Received: by mail-il1-f170.google.com with SMTP id e9e14a558f8ab-35fe456b94cso51210165ab.3 for ; Wed, 03 Jan 2024 05:59:13 -0800 (PST) X-Gm-Message-State: gDQQXnN0waF6VawS3fSZEWK9x1787277AA= X-Google-Smtp-Source: AGHT+IHFtANIJMge4DngBARt97RKbcR5e4kbGrEdT28qDTgJIqWKcvJQEKardppEGx/l+rQUDJB5+A== X-Received: by 2002:a5d:9c4b:0:b0:7ba:9b64:88fe with SMTP id 11-20020a5d9c4b000000b007ba9b6488femr26638610iof.17.1704290351599; Wed, 03 Jan 2024 05:59:11 -0800 (PST) X-Received: from sunil-laptop.dc1.ventanamicro.com ([106.51.188.200]) by smtp.gmail.com with ESMTPSA id w6-20020a056638378600b0046dcaba1adesm1213393jal.62.2024.01.03.05.59.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jan 2024 05:59:11 -0800 (PST) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Gerd Hoffmann , Rahul Kumar , Laszlo Ersek , Ray Ni , Andrei Warkentin Subject: [edk2-devel] [PATCH 3/4] UefiCpuPkg/CpuTimerDxeRiscV64: Add support for Sstc Date: Wed, 3 Jan 2024 19:28:48 +0530 Message-Id: <20240103135849.127251-4-sunilvl@ventanamicro.com> In-Reply-To: <20240103135849.127251-1-sunilvl@ventanamicro.com> References: <20240103135849.127251-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 Precedence: Bulk 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,sunilvl@ventanamicro.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1704290355201100007 Content-Type: text/plain; charset="utf-8" Sstc extension allows to program the timer and receive the interrupt without using an SBI call. This reduces the latency to generate the timer interrupt. So, detect whether Sstc extension is supported and use the stimecmp register directly to program the timer interrupt. Cc: Gerd Hoffmann Cc: Rahul Kumar Cc: Laszlo Ersek Cc: Ray Ni Cc: Andrei Warkentin Signed-off-by: Sunil V L --- .../CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf | 1 + UefiCpuPkg/CpuTimerDxeRiscV64/Timer.h | 2 ++ UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c | 30 +++++++++++++++++-- 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf b/UefiCpu= Pkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf index aba660186dc0..f2a2cf12caef 100644 --- a/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf +++ b/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf @@ -41,6 +41,7 @@ [Sources.RISCV64] Timer.c =20 [Pcd] + gEfiMdePkgTokenSpaceGuid.PcdRiscVFeatureOverride ## CONSUMES gUefiCpuPkgTokenSpaceGuid.PcdCpuCoreCrystalClockFrequency ## CONSUMES =20 [Protocols] diff --git a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.h b/UefiCpuPkg/CpuTimerDxe= RiscV64/Timer.h index 9b3542230cb5..5e5071b3f0b2 100644 --- a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.h +++ b/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.h @@ -26,6 +26,8 @@ // #define DEFAULT_TIMER_TICK_DURATION 100000 =20 +#define RISCV_CPU_FEATURE_SSTC_BITMASK 0x2 + extern VOID RiscvSetTimerPeriod ( UINT32 TimerPeriod diff --git a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c b/UefiCpuPkg/CpuTimerDxe= RiscV64/Timer.c index 30e48061cd06..4babfb4bfc60 100644 --- a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c +++ b/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c @@ -44,6 +44,19 @@ STATIC EFI_TIMER_NOTIFY mTimerNotifyFunction; STATIC UINT64 mTimerPeriod =3D 0; STATIC UINT64 mLastPeriodStart =3D 0; =20 +/** + Check whether Sstc is enabled in PCD. + +**/ +STATIC +BOOLEAN +RiscVIsSstcEnabled ( + VOID + ) +{ + return ((PcdGet64 (PcdRiscVFeatureOverride) & RISCV_CPU_FEATURE_SSTC_BIT= MASK) !=3D 0); +} + /** Timer Interrupt Handler. =20 @@ -94,7 +107,12 @@ TimerInterruptHandler ( ), 1000000u ); // convert to tick - SbiSetTimer (PeriodStart); + if (RiscVIsSstcEnabled ()) { + RiscVSetSupervisorTimeCompareRegister (PeriodStart); + } else { + SbiSetTimer (PeriodStart); + } + RiscVEnableTimerInterrupt (); // enable SMode timer int gBS->RestoreTPL (OriginalTPL); } @@ -197,7 +215,11 @@ TimerDriverSetTimerPeriod ( ), 1000000u ); // convert to tick - SbiSetTimer (PeriodStart); + if (RiscVIsSstcEnabled ()) { + RiscVSetSupervisorTimeCompareRegister (PeriodStart); + } else { + SbiSetTimer (PeriodStart); + } =20 mCpu->EnableInterrupt (mCpu); RiscVEnableTimerInterrupt (); // enable SMode timer int @@ -282,6 +304,10 @@ TimerDriverInitialize ( // mTimerNotifyFunction =3D NULL; =20 + if (RiscVIsSstcEnabled ()) { + DEBUG ((DEBUG_INFO, "%a: Timer interrupt is via Sstc extension\n", __f= unc__)); + } + // // Make sure the Timer Architectural Protocol is not already installed i= n the system // --=20 2.34.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 (#113095): https://edk2.groups.io/g/devel/message/113095 Mute This Topic: https://groups.io/mt/103501843/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- From nobody Fri May 17 06:54:20 2024 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+113096+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+113096+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1704290362; cv=none; d=zohomail.com; s=zohoarc; b=a/2f+TQjgcMcOBGJZThu7E7QQDV/agCyOsoL3hCFsu6UbNMV+XafNSBX1xY0VTuA+wi/P74TSwPiPmnD38fV0yV00W5Qj1yOsQQ3k3ZFiK/CqWwAyoK9/zmsxP+Wom7/ZzrZCvSaa+2DOfz11WFvul8Act2Nj+wc2bLmjcD+Ojg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1704290362; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=Azi/Ywdc7K0P9NA6meA2xkiHFHt3HHNqDlI4T7QIT2Q=; b=DMmi9XnMLmkh+/UYYgxHWISzc6ZzsJjFLpdxhpdSqxt7w3Lm16iwM5PFsVAawPgOEI30WnG9mK0fzUFJzvkWmiacvZ7kJxNcNt863QO3qRXi830MhtzU9e/ePOwFeXE4uY6NcRkkodD4UnBalR4sd5rv2QV/LHVD44U8SVxT2Pw= 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+113096+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 170429036288681.1312674634014; Wed, 3 Jan 2024 05:59:22 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=9q8616+BQuQR5Exbht31phYXTZWIKF0DtpSeZO6sBk8=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1704290362; v=1; b=iFoq/Vk8uxApJl1Fu5H/oM0mBp2VIBqtZi6QBgwS9epX+OLGnkFZPxUliZaCs1nsu/zxh1fV bm/wwPQKDyhUZzabNU90et3oNmVavKtLuKOo2NWo8tnCl1c3isNZZ/Sb1CeUIW8a9PPCAb/C8vK kCoQZXS6E2zpWcsM9dUJXPMI= X-Received: by 127.0.0.2 with SMTP id bfIZYY1788612xoeKKZoHLBJ; Wed, 03 Jan 2024 05:59:22 -0800 X-Received: from mail-io1-f53.google.com (mail-io1-f53.google.com [209.85.166.53]) by mx.groups.io with SMTP id smtpd.web10.17864.1704290356997425058 for ; Wed, 03 Jan 2024 05:59:17 -0800 X-Received: by mail-io1-f53.google.com with SMTP id ca18e2360f4ac-7b913830d8eso495135339f.1 for ; Wed, 03 Jan 2024 05:59:16 -0800 (PST) X-Gm-Message-State: nS3k1TCnEWMwYImXXcTYlGTix1787277AA= X-Google-Smtp-Source: AGHT+IHait9IbVZ8zjaiEv1IXOP/YM1mhQFLhlVgojkKD8zJARwlqEp1rgvEKpE43C1UoJGfpckZyw== X-Received: by 2002:a6b:fc16:0:b0:7bb:41bb:facb with SMTP id r22-20020a6bfc16000000b007bb41bbfacbmr10012626ioh.33.1704290355514; Wed, 03 Jan 2024 05:59:15 -0800 (PST) X-Received: from sunil-laptop.dc1.ventanamicro.com ([106.51.188.200]) by smtp.gmail.com with ESMTPSA id w6-20020a056638378600b0046dcaba1adesm1213393jal.62.2024.01.03.05.59.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jan 2024 05:59:15 -0800 (PST) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Andrei Warkentin , Ard Biesheuvel , Gerd Hoffmann , Jiewen Yao , Laszlo Ersek Subject: [edk2-devel] [PATCH 4/4] OvmfPkg/RiscVVirt: Override Sstc extension Date: Wed, 3 Jan 2024 19:28:49 +0530 Message-Id: <20240103135849.127251-5-sunilvl@ventanamicro.com> In-Reply-To: <20240103135849.127251-1-sunilvl@ventanamicro.com> References: <20240103135849.127251-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 Precedence: Bulk 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,sunilvl@ventanamicro.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1704290363253100001 Content-Type: text/plain; charset="utf-8" Override Sstc extension and use SBI calls itself by default for RISC-V qemu virt platform. Cc: Andrei Warkentin Cc: Ard Biesheuvel Cc: Gerd Hoffmann Cc: Jiewen Yao Cc: Laszlo Ersek Signed-off-by: Sunil V L Reviewed-by: Laszlo Ersek --- OvmfPkg/RiscVVirt/RiscVVirt.dsc.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OvmfPkg/RiscVVirt/RiscVVirt.dsc.inc b/OvmfPkg/RiscVVirt/RiscVV= irt.dsc.inc index d3624e899e8d..6bc7c90f31dc 100644 --- a/OvmfPkg/RiscVVirt/RiscVVirt.dsc.inc +++ b/OvmfPkg/RiscVVirt/RiscVVirt.dsc.inc @@ -203,7 +203,7 @@ [PcdsFeatureFlag] gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE =20 [PcdsFixedAtBuild.common] - gEfiMdePkgTokenSpaceGuid.PcdRiscVFeatureOverride|0xFFFFFFFFFFFFFFFE + gEfiMdePkgTokenSpaceGuid.PcdRiscVFeatureOverride|0xFFFFFFFFFFFFFFFC gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|0 --=20 2.34.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 (#113096): https://edk2.groups.io/g/devel/message/113096 Mute This Topic: https://groups.io/mt/103501846/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-