From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web10.56618.1675698290198131478 for ; Mon, 06 Feb 2023 07:44:50 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=dCUCATO9; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: andrei.warkentin@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1675698290; x=1707234290; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=hHUYAToxRrd4TEhgej+DbD1TlREsLQSz1+P7/O2foxA=; b=dCUCATO9YI9QzzGWCOFSiKcsv/6wp7/WXlLT1pNdAFEIl0hwc1rmVA5T TpylsyYzYROLfMEtJ7J710wy8QFOUgtocJ0ylp+HmliXEGOgha+yg6KLY O0sxfLL4SjG6cBEfli6kpnYN4euaiqPXgWlUqebMs2zv8tIlZd5NVQ9wQ r8JLCYc4YxA6wH2I7BjlIv0Qv1QztR8A3hKSKZtp1CYlEck3tGz4U04r7 tzd6cR+yLQ2JyW8/GBwsosgRpEu/vcIicYWMOmKNcscvV0rf29pDUWqNL NyysU63V7j4w9iGaiF3xWEGj2m7UmoD+2M1cyqbbF2GzUIx/OLEcOOHNA Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10613"; a="312887969" X-IronPort-AV: E=Sophos;i="5.97,276,1669104000"; d="scan'208";a="312887969" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2023 07:44:49 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10613"; a="840389170" X-IronPort-AV: E=Sophos;i="5.97,276,1669104000"; d="scan'208";a="840389170" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga005.jf.intel.com with ESMTP; 06 Feb 2023 07:44:49 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Mon, 6 Feb 2023 07:44:48 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Mon, 6 Feb 2023 07:44:48 -0800 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.100) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.16; Mon, 6 Feb 2023 07:44:48 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HOdB0salA0OYySU9SNqHOcYfeasanLUzBQpMAkUPXZSIJn0/lQOxvKxRxszzBqYLwIZElbPYfK4O9ePZxsuwr7/sOgXLBwhyodq4Wh485vwpu9TNlq6EyDqKKl5OjJoc0Lt5VHA8/J+QMb3pTgxCWynYnU9FJSXB0CpethTevUnT1/01LchrxZagWtaXJN9tas3Lcyk0VrH/vGtv/SsYTEar5VFx0HSMlWSSjzKv9WrPeJQgBiA6g7dQGsZANHzT+5XIvh8k1a9P8bjXa7L7vf96Pdh+4b0Jy1Q7MUpPa8p0ltkOVqKbyrOns05MB1uoUgOoQv+FlmCqiQzbJhdQfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=aEocbJ5cmI3mHaGK0BUGTeLwrIxHoEHmtvI4K1JsX/E=; b=ZdXWbCbqwedDwUN49DeF+lskQqJdvJsRrAHpOswrqZPXBwzQkbcMYx+nX8BcPightDDeymt3yL1JpDY0TNXeiDH/Ad1ahq0maNStoUcHeNi6BP6yIo2fI5rptg64RoU/DXYWNY0lBcIMaCyq3S4H0zQcm0uszjSjoYzkX4wsSboOvVEGRVlfzKoZCy5W8Q8jdmTI19ixbLqH5jIUg2ojOs/YqVCpqjTa3b/v6DCtZPboYsJyVQWi1a2068HXwtTafFkxQjiyNlUhsfluG4JC7hJDd4JE2rr86ZGdBkBdjeQbLOtYa1EuH+Dfbpl13FrvM2gpDn45lmZ07+gv/5e69g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from PH8PR11MB6856.namprd11.prod.outlook.com (2603:10b6:510:22b::7) by DS0PR11MB8207.namprd11.prod.outlook.com (2603:10b6:8:164::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.34; Mon, 6 Feb 2023 15:44:46 +0000 Received: from PH8PR11MB6856.namprd11.prod.outlook.com ([fe80::9dba:633a:320c:87b]) by PH8PR11MB6856.namprd11.prod.outlook.com ([fe80::9dba:633a:320c:87b%5]) with mapi id 15.20.6064.032; Mon, 6 Feb 2023 15:44:46 +0000 From: "Andrei Warkentin" To: "devel@edk2.groups.io" , "sunilvl@ventanamicro.com" CC: Daniel Schaefer , "Kinney, Michael D" , "Gao, Liming" , "Liu, Zhiguang" , Abner Chang Subject: Re: [edk2-devel] [edk2-staging/RiscV64QemuVirt PATCH V7 01/20] MdePkg/Register: Add register definition header files for RISC-V Thread-Topic: [edk2-devel] [edk2-staging/RiscV64QemuVirt PATCH V7 01/20] MdePkg/Register: Add register definition header files for RISC-V Thread-Index: AQHZM01V2GMcPbkO6UqVw5mnPM8v7q7CHRsg Date: Mon, 6 Feb 2023 15:44:45 +0000 Message-ID: References: <20230128191807.2080547-1-sunilvl@ventanamicro.com> <20230128191807.2080547-2-sunilvl@ventanamicro.com> In-Reply-To: <20230128191807.2080547-2-sunilvl@ventanamicro.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH8PR11MB6856:EE_|DS0PR11MB8207:EE_ x-ms-office365-filtering-correlation-id: cc803185-e332-40d2-0c84-08db08591294 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: RpVUu2WqgiR9HOzmiYc/rUaDUwY03OOFUGvHNJkyxXgbM3hD6R0tG4xNX+MzcVA6Vnz8IA2ovVBv3UsprKrH3W8VzHtMX2UpJ7muLE+EcyScsOdsp7XyaP6IFjEMku4KNq3MCWQ5Di2tAeNOX/E0XM8AQmS5Hzjk0g2j0RGWCxkdY/zCn5x+lozbgkCdqhWPMplliGpmx0n/HBt8dG/DQxuUxgn3VgDE2wYr9hydTTNV0BeGG5ErEbDxd6b5Gc2DVUo2LO/x9wze5eL06Ar+8KPzzYLbRlw4pVyHOP0aQrezbZudPSdIPRokYM6RgNyFTRSLP0umjC1S/HlHvXDGp1UpJsBK5XwlIuMXq3YqhuGYGAHiZ/kfQZtAbQIJ8/m5Erruu+IE7saJ/jKAm4bqwDW9L/9VP36AqVcxJOEFTyW4qmwin2+dBi4WUF5yXGyOKvcQsu3qayZB/Fi0rzFFL7VjenpJ9CkCl72UiYgA80cRstWL0VlVZq39t3zA3SoiUfWG/Trf6f6uK2xCFQG+dM12P32kKMqSzdWQndfPkkzv+ypBmltWjfwzzRBeZ/itb5dIyjgpjhgSFHNrpBYXUixZzIp8zKP8UI6rhNEEueLhJEkZEtZgR4qVZEERwBwAYO+Gt6IDV57lbPtPP1Zqo4E0l56wSVfRt23rGLJhZWYlfUJppq8+b+SaB4MQ7smr7Kuj83isl4nwxn8PKsXrR5rwAOQx3MKgjRicMQU0fGWHBYgIwEZigQzFYSeRA3LAldI+0wblEMPXexzVz82m4w== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6856.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(376002)(396003)(136003)(366004)(39860400002)(346002)(451199018)(54906003)(966005)(478600001)(7696005)(316002)(2906002)(122000001)(71200400001)(38100700002)(33656002)(55016003)(86362001)(38070700005)(82960400001)(19627235002)(53546011)(66476007)(66899018)(66556008)(66446008)(83380400001)(8676002)(4326008)(64756008)(76116006)(8936002)(52536014)(110136005)(41300700001)(5660300002)(66946007)(6506007)(186003)(26005)(9686003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?IZb4SBVuY5NmLR25tG1fMhXGfQjx9kezDQLjisvBHgfXKUfgsOLNFWk5ixSa?= =?us-ascii?Q?Xk9Xbnr3D1NOCofyV6YPIaD1chcy+aA69G8SZ7+lchm75pE6kmrJxIklQhud?= =?us-ascii?Q?y3ekSB/EZKMJbXecqjV8GCKtklDndUKKTfro2b/LGOkEdVCqjG9YLGJuNz4k?= =?us-ascii?Q?NWnqws992Qayk13LAUDuwApm9m6I90nt3rKkGCEdX8IeBjF/PKKqu0Ls+D1d?= =?us-ascii?Q?lQlXwWBwWD7R7uC8w+C9WE4lB8OZbM8N+ORVG6T0/br8ewRuPEBx0IbSQLLb?= =?us-ascii?Q?QnCrA0+Xf3VuNTJZHrHzLjFxXi568yf2wAtnp09u83nhDiTi/90THfAMn5mr?= =?us-ascii?Q?MTSFdAy72zKBz/Q1CYR5Uq7LlL102qHAxwZLd0l7VZXAeudNEbwek7qAHrsd?= =?us-ascii?Q?vP9OdP34JuVdgQEhR0PRSawmqdLFE4/VcstXWGOfoSH0ChENa2ZvLiq1SDg/?= =?us-ascii?Q?uAV9Nx2NUnjfmuQ3zXRYWHZ8DZlDZ8uC5lOYQt61kuXh2j4qE2zHhEaHWFOB?= =?us-ascii?Q?PBrx3S1E4q30nWeeYkbuuQ/omLNqv0jZL0VmrUCrepTTO/k5jqEZVdPbEMhD?= =?us-ascii?Q?TeF5+IdbUo/vRGW9z6ODsZ9NHfpo5KINnENLw2bLxCg7BOO7DxCRNVB3SDYO?= =?us-ascii?Q?1dK8+83EtxMh7RqAiRZ/ARSvIT8smv+4ph/dVD4xlDrPlHezCY2b/stQQp93?= =?us-ascii?Q?g/ocgg5yoBOXv3B1eQ2tQhM84X9/WOV7NzOGByEq0WHagyJWwia1FPXicbYl?= =?us-ascii?Q?6BMz7oGxIWtBD3GPp7RD1W1dBPnRPLzhHh9XUWo68MdkAaN9lYxBfanhhbvy?= =?us-ascii?Q?taHYMY4WuLwS9qyY4VV1395Y+4KeEMj6Ab1ZzmR8ltkF5QZdbGPnBbjSpGyv?= =?us-ascii?Q?If3OatZZDU+7zN3zbkB36WNQwdNwQQsrN+HIvK/iZn98n8UdJ2vEXW9yhtNP?= =?us-ascii?Q?otZEKroW/HpVyP/IdCmcekRDupbrpArSgyb7P0sFDsEaCGRa0K1rNhVglJMr?= =?us-ascii?Q?4sdEjfeu+UFV8V/+9bxhz3Cg+WKyJpbC941QM1j2aSbV8VeVhXkxd9RGF4ak?= =?us-ascii?Q?1xmX7pBcaII7x0WG/JX38RK2/Zh9eXYvYeCUDaB0iiePo0jJ1JN3+QiLOEuF?= =?us-ascii?Q?Jxqow1Km8Awl62cCBtzPFVMCAFHHeD7L3LlP+IPFNgLVpAefwcAgqd4/j8DF?= =?us-ascii?Q?gL9eDVZ3rJC9LpqoC105Io5xbTWRfRSAA7wp1Sh1Nf6gHGcR5S1YDnJzAlso?= =?us-ascii?Q?+jEXyxyyWBL4u1HF9ntpo0dow+qu13PD1ynrL4n5ee0yee0cwAlMPJgf03xh?= =?us-ascii?Q?8zYHJM8VuP0OTSve9jeB4sM56ghrvOjKZIATCuLlPEDAdDZcfpZl35tNVTlX?= =?us-ascii?Q?GsP1/ML9rzfzo5fRWJJJHarGOn3NNMrJYBEmO6lZzvrXiKBBvmn4JakYgNCc?= =?us-ascii?Q?XWF2FmGf2RP0Jh/UjcU9qp3mpmy4BIQGRV2sS3CgPaQhI6wSgbmCRz4NUkIw?= =?us-ascii?Q?3KHw/DRAy4d9BO6FXUbGd4ylC9j9JC1R7RZW7mqJW/4N7kCtirzzIntL3+8N?= =?us-ascii?Q?19knV3el89DIo5jKgvvv20JURQWCKWBCJl4ePn3J0x3zHDhsRawmC11E/b9C?= =?us-ascii?Q?3Q=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6856.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: cc803185-e332-40d2-0c84-08db08591294 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Feb 2023 15:44:45.9549 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: xGhkuiZ4hQZXZiegxOZqL3YfK0C52t//3duSKJKigbmLbGMvjgQLKkPp6pZqa+lwHkpgk6nFvdGRkNWW1JiB85Wdd42Ve9WlEbIxVpLCsaw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB8207 Return-Path: andrei.warkentin@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Andrei Warkentin -----Original Message----- From: devel@edk2.groups.io On Behalf Of Sunil V L Sent: Saturday, January 28, 2023 1:18 PM To: devel@edk2.groups.io Cc: Daniel Schaefer ; Kinney, Michael D ; Gao, Liming ; Liu, Zhiguang ; Abner Chang Subject: [edk2-devel] [edk2-staging/RiscV64QemuVirt PATCH V7 01/20] MdePkg/= Register: Add register definition header files for RISC-V REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4076 Add register definitions and access routines for RISC-V. These headers are = leveraged from opensbi repo. Cc: Daniel Schaefer Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Sunil V L Acked-by: Abner Chang --- MdePkg/Include/Register/RiscV64/RiscVEncoding.h | 119 ++++++++++++++++++++ MdePkg/Include/Register/RiscV64/RiscVImpl.h | 25 ++++ 2 files changed, 144 insertions(+) diff --git a/MdePkg/Include/Register/RiscV64/RiscVEncoding.h b/MdePkg/Inclu= de/Register/RiscV64/RiscVEncoding.h new file mode 100644 index 000000000000..5c2989b797bf --- /dev/null +++ b/MdePkg/Include/Register/RiscV64/RiscVEncoding.h @@ -0,0 +1,119 @@ +/** @file + RISC-V CSR encodings + + Copyright (c) 2019, Western Digital Corporation or its affiliates.=20 + All rights reserved.
Copyright (c) 2022, Ventana Micro Systems=20 + Inc. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#ifndef RISCV_ENCODING_H_ +#define RISCV_ENCODING_H_ + +#define MSTATUS_SIE 0x00000002UL +#define MSTATUS_MIE 0x00000008UL +#define MSTATUS_SPIE_SHIFT 5 +#define MSTATUS_SPIE (1UL << MSTATUS_SPIE_SHIFT) +#define MSTATUS_UBE 0x00000040UL +#define MSTATUS_MPIE 0x00000080UL +#define MSTATUS_SPP_SHIFT 8 +#define MSTATUS_SPP (1UL << MSTATUS_SPP_SHIFT) +#define MSTATUS_MPP_SHIFT 11 +#define MSTATUS_MPP (3UL << MSTATUS_MPP_SHIFT) + +#define SSTATUS_SIE MSTATUS_SIE +#define SSTATUS_SPIE_SHIFT MSTATUS_SPIE_SHIFT +#define SSTATUS_SPIE MSTATUS_SPIE +#define SSTATUS_SPP_SHIFT MSTATUS_SPP_SHIFT +#define SSTATUS_SPP MSTATUS_SPP + +#define IRQ_S_SOFT 1 +#define IRQ_VS_SOFT 2 +#define IRQ_M_SOFT 3 +#define IRQ_S_TIMER 5 +#define IRQ_VS_TIMER 6 +#define IRQ_M_TIMER 7 +#define IRQ_S_EXT 9 +#define IRQ_VS_EXT 10 +#define IRQ_M_EXT 11 +#define IRQ_S_GEXT 12 +#define IRQ_PMU_OVF 13 + +#define MIP_SSIP (1UL << IRQ_S_SOFT) +#define MIP_VSSIP (1UL << IRQ_VS_SOFT) +#define MIP_MSIP (1UL << IRQ_M_SOFT) +#define MIP_STIP (1UL << IRQ_S_TIMER) +#define MIP_VSTIP (1UL << IRQ_VS_TIMER) +#define MIP_MTIP (1UL << IRQ_M_TIMER) +#define MIP_SEIP (1UL << IRQ_S_EXT) +#define MIP_VSEIP (1UL << IRQ_VS_EXT) +#define MIP_MEIP (1UL << IRQ_M_EXT) +#define MIP_SGEIP (1UL << IRQ_S_GEXT) +#define MIP_LCOFIP (1UL << IRQ_PMU_OVF) + +#define SIP_SSIP MIP_SSIP +#define SIP_STIP MIP_STIP + +#define PRV_U 0UL +#define PRV_S 1UL +#define PRV_M 3UL + +#define SATP64_MODE 0xF000000000000000ULL #define SATP64_ASID =20 +0x0FFFF00000000000ULL +#define SATP64_PPN 0x00000FFFFFFFFFFFULL + +#define SATP_MODE_OFF 0UL +#define SATP_MODE_SV32 1UL +#define SATP_MODE_SV39 8UL +#define SATP_MODE_SV48 9UL +#define SATP_MODE_SV57 10UL +#define SATP_MODE_SV64 11UL + +#define SATP_MODE SATP64_MODE + +/* User Counters/Timers */ +#define CSR_CYCLE 0xc00 +#define CSR_TIME 0xc01 + +/* Supervisor Trap Setup */ +#define CSR_SSTATUS 0x100 +#define CSR_SEDELEG 0x102 +#define CSR_SIDELEG 0x103 +#define CSR_SIE 0x104 +#define CSR_STVEC 0x105 + +/* Supervisor Configuration */ +#define CSR_SENVCFG 0x10a + +/* Supervisor Trap Handling */ +#define CSR_SSCRATCH 0x140 +#define CSR_SEPC 0x141 +#define CSR_SCAUSE 0x142 +#define CSR_STVAL 0x143 +#define CSR_SIP 0x144 + +/* Supervisor Protection and Translation */ #define CSR_SATP 0x180 + +/* Trap/Exception Causes */ +#define CAUSE_MISALIGNED_FETCH 0x0 +#define CAUSE_FETCH_ACCESS 0x1 +#define CAUSE_ILLEGAL_INSTRUCTION 0x2 +#define CAUSE_BREAKPOINT 0x3 +#define CAUSE_MISALIGNED_LOAD 0x4 +#define CAUSE_LOAD_ACCESS 0x5 +#define CAUSE_MISALIGNED_STORE 0x6 +#define CAUSE_STORE_ACCESS 0x7 +#define CAUSE_USER_ECALL 0x8 +#define CAUSE_SUPERVISOR_ECALL 0x9 +#define CAUSE_VIRTUAL_SUPERVISOR_ECALL 0xa +#define CAUSE_MACHINE_ECALL 0xb +#define CAUSE_FETCH_PAGE_FAULT 0xc +#define CAUSE_LOAD_PAGE_FAULT 0xd +#define CAUSE_STORE_PAGE_FAULT 0xf +#define CAUSE_FETCH_GUEST_PAGE_FAULT 0x14 +#define CAUSE_LOAD_GUEST_PAGE_FAULT 0x15 +#define CAUSE_VIRTUAL_INST_FAULT 0x16 +#define CAUSE_STORE_GUEST_PAGE_FAULT 0x17 + +#endif diff --git a/MdePkg/Include/Register/RiscV64/RiscVImpl.h b/MdePkg/Include/R= egister/RiscV64/RiscVImpl.h new file mode 100644 index 000000000000..ee5c2ba60377 --- /dev/null +++ b/MdePkg/Include/Register/RiscV64/RiscVImpl.h @@ -0,0 +1,25 @@ +/** @file + RISC-V package definitions. + + Copyright (c) 2016 - 2022, Hewlett Packard Enterprise Development LP.=20 + All rights reserved.
+ + SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#ifndef RISCV_IMPL_H_ +#define RISCV_IMPL_H_ + +#include + +#define _ASM_FUNC(Name, Section) \ + .global Name ; \ + .section #Section, "ax" ; \ + .type Name, %function ; \ + .p2align 2 ; \ + Name: + +#define ASM_FUNC(Name) _ASM_FUNC(ASM_PFX(Name), .text. ## Name)=20 +#define RISCV_TIMER_COMPARE_BITS 32 + +#endif -- 2.38.0