From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 165343244821878.610177344318; Tue, 24 May 2022 15:47:28 -0700 (PDT) Received: from localhost ([::1]:43280 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdJH-0001u8-48 for importer2@patchew.org; Tue, 24 May 2022 18:47:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGd-0007OU-FO for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:43 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62470) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGb-0002Yr-Bu for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:43 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:39 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:10 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:39 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78QZ2yDSz1SVny for ; Tue, 24 May 2022 15:44:38 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id zdyBlbEavj7u for ; Tue, 24 May 2022 15:44:37 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78QW5hLBz1Rwrw; Tue, 24 May 2022 15:44:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432281; x=1684968281; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Q3zJe42AlWYKfhGcopI+NrbknplcUCXqLBX8KqDhxZM=; b=eZZkv2HkPqkxSK5xAtrZsBmHKvatCqMXbFIjomfk0t3HnHU/oCV57Ctl T6cRHQul+BmsV7SsbYL7CeeU3IhnhddnGqX9RF/hvwQ/eZUlAxQeIF4Oj vpuqrg/UqnOREkgfvfLqJ03qIbUoaqAoq8WUIJ/YYqe4XidxkD5HSPcv/ /YpiIDRiCvgmMhiEYOlpXs6sA+oe6W44oVZndGRSl8UBeb6uSgiG0oqtO 9hq1ze+aLSsKwLTMlv7/s8aKOKJPccpGHUrc8vqLAh+Ahf5y5o+NQ69I/ 4j1cJEy8c4WAZY3LXmi/ix8d8M3C6kMF3uIM9ycWDwlxJ83zUomtEPWH4 g==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566649" IronPort-SDR: BfY2gAmlmV355Lw2+7uixlniQg9IsYnz298RxtIxYC+nuHkjjwE9wbdHp7kIrPeTxcCLtyJm0b NXDHsdl7yWYIUUHGGrB9HPvMt8HEDNjFT/WusJD092UQHZlRZnoOAIQEWD5MFzyipyja4dSiNi urhE5hgLhjj8tCy/XtP839y78ZDiEZHsvQGX2vmE9etjntMvTL2+85j8jHHIuMLoUhFItpPAGA wDXYuflOYCvth2CTU1d9/yOtanEC8HojQR04RI/dNrQDOgEGgBznWht7X6A3SjQcZpk/vJd7/g 2QJIA46rFLK3qFjv0hTbPpKs IronPort-SDR: SAJ5/9/mSse21JhXIzbaC0PVlMnqje29VI42TxVQr/AOgDx1WY5k5akT3RiUSKFdqvmXmaXHt3 gxXK9aQ4ae8gpYLTl3I9GyQHAdcrKORWfuUAzdE0Q6/805lSrHwav6y/bsaaqHL/77HRmiDI/n LIGhOVI8eaz8aFOXDb8COQPy6Tv8vy10QHUvEnPq+eI6Z0aSd/BGvssY7jvHwmfZpU6PaAzMmr Jr+v0kntK3BVLa2Ct2QL++pqJR1gIDTs5R4imnwdgBFnQBftL38mDI62+vDgvZEqV9YuzE78uI yzk= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432277; x=1656024278; bh=Q3zJe42AlWYKfhGcop I+NrbknplcUCXqLBX8KqDhxZM=; b=o72cYuiuSdj4pUmVaXcr0HbfVP9mDrer5L m+tkBRdNIQDD0BoTqW1oLC8Gf2Ev1hRH2ZCcBZ5d5E05BHVzQ2S1A88xOzdYZYQh cr4CKj2rA+gv8NI6aDomYGGN/HFnSDWfEDj3OR7ozRq2msxMjh7s2fQ5Es6AtgU8 hC9EWBF+AdD/ijZAR0wTLI2btAKrnwVUE67p/7DLRnp6DFLe2gs0g+PP77OxluyQ RoNeNW+9h7stm+Qxm09EukPcwWb1bVWYeoQH2jTpwXvFEG1J2amPQzD+wv9aI9Dt ZQ2vG+N1YdwvQd0C3dSN+O836RTE22kVOSqi8eIZLapldqdd2I0A== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Dylan Reid , Dylan Reid , Alistair Francis Subject: [PULL 01/23] target/riscv: Fix VS mode hypervisor CSR access Date: Wed, 25 May 2022 08:44:06 +1000 Message-Id: <20220524224428.552334-2-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432449439100001 Content-Type: text/plain; charset="utf-8" From: Dylan Reid VS mode access to hypervisor CSRs should generate virtual, not illegal, instruction exceptions. Don't return early and indicate an illegal instruction exception when accessing a hypervisor CSR from VS mode. Instead, fall through to the `hmode` predicate to return the correct virtual instruction exception. Signed-off-by: Dylan Reid Reviewed-by: Alistair Francis Message-Id: <20220506165456.297058-1-dgreid@rivosinc.com> Signed-off-by: Alistair Francis --- target/riscv/csr.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/target/riscv/csr.c b/target/riscv/csr.c index 3500e07f92..4ea7df02c9 100644 --- a/target/riscv/csr.c +++ b/target/riscv/csr.c @@ -3141,13 +3141,13 @@ static inline RISCVException riscv_csrrw_check(CPUR= ISCVState *env, #if !defined(CONFIG_USER_ONLY) int effective_priv =3D env->priv; =20 - if (riscv_has_ext(env, RVH) && - env->priv =3D=3D PRV_S && - !riscv_cpu_virt_enabled(env)) { + if (riscv_has_ext(env, RVH) && env->priv =3D=3D PRV_S) { /* - * We are in S mode without virtualisation, therefore we are in HS= Mode. + * We are in either HS or VS mode. * Add 1 to the effective privledge level to allow us to access the - * Hypervisor CSRs. + * Hypervisor CSRs. The `hmode` predicate will determine if access + * should be allowed(HS) or if a virtual instruction exception sho= uld be + * raised(VS). */ effective_priv++; } --=20 2.35.3 From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432728619718.3180999939299; Tue, 24 May 2022 15:52:08 -0700 (PDT) Received: from localhost ([::1]:51978 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdNn-00081J-2u for importer2@patchew.org; Tue, 24 May 2022 18:52:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59744) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGe-0007Pi-HT for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:44 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGc-0002Yx-O9 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:44 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:41 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:13 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:42 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qd1YmPz1SHwl for ; Tue, 24 May 2022 15:44:41 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 82yDf_5CHKLD for ; Tue, 24 May 2022 15:44:40 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78QZ3mVgz1Rwrw; Tue, 24 May 2022 15:44:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432282; x=1684968282; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=I7x1udF8I/ScLI1v+llAAQx0Sho5uUSsM22rLMILJYE=; b=PPePZxDIA3+w7FgCvQlB60xp6YoeT4lfdFZ7DXP/rHoq4BZBYSjbrN4L 7Kq26y+okXgWOYZhrhBCDma7Ms8xHci0npSV5UAXRntyAqqrBAqzNKFUL KH4dSOuU5Ol0Q9bdtEyyo2CWkSHvDG7hHMNfnTRTp63rTSOjpscD9ZyzR /vtPlRtPkSehEAu86Ae/O3gQ32UXYMnb0qM9D4lHqMX3Bte/OxUbyZ0Vo d2i6Ks3B+dw1i7Xq25onTQklGnlw8kaltQGi4D+ScdPR2iLzEZGo1KI4x GQc58vK0GV2hQVk8Pf4k+8zXLZmgsQrLDv9ar285dA4QOJUOPUOoGDQq8 A==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566651" IronPort-SDR: VNlEfSiwRGKzAIbnflm+JqXpEErqa0yYZA4o7+4Pv0OWVmgIolKqfCmkKQChOZkoXiSC5Hrzsg y4DlKAgRz3Rjb2CrdnIURNNI/HA+bAw3+DveD3cXrZlQIpCxMj5hG+W/7Z2YDIB9nAqESvV0Jd AG4ndthWz4SQD3QEF0hg02r30D2XJS+x6wRw6mVCdeuLPujBHkobH7jfE6zAk/amdl+EL/8bpV q0mk8vaS56r1nucaiPq/6HCirSjfYlPLVi74ifBYHMD38W8KV/UeC8eVQfewnvpQ/oAcDKtq7C 2iwfGkJDk+IFPLYfR6hvmcuz IronPort-SDR: QaIEECFov+lDAsGq8PCkF6RFw4x45RJbA4nMJ5y9QejewRMBxGXO5PLltQejn3i1Az0gF7hV0g MiKMllPs9eMYkkzyggFSXNKZZb6Sd7SPt9jCSDQ1SbtjkC2gK2C5pPojvXhO/05eg0a9sHR/CL D65oX0WgqOqsPcEstYDmtfQQWJpLEXd+RRQ4CpLDoWyZihk7OMQIhCuzLdkyiEP5SGKSDdkUfn vdftSHEfa+RoC4DowcchmdTFqTtVxVjY5rDKWUyRjxO7STklxvJe27v7rirvSIOqKuvQxymhVF 1IA= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432280; x=1656024281; bh=I7x1udF8I/ScLI1v+l lAAQx0Sho5uUSsM22rLMILJYE=; b=NQEE+11DnRupfsmOz7rQzMOpANsN+s9hrb yuDN+cPz33PLyWjC8AwGnkovKf+jx7+0WjYNG5Q1K1JKcuocmCDbHlY7qG9XER5O LDVMb1r4RzgpBtR+TxwCXAW6MHj5cHH/a1gU3dhNI4xSF0k5mHI9vFEBGOkvPAeK m+gW8gcY7qrnrcGH4RxKF1AwIQ8A7I87sjA81+lLO8E93FDqbZMgXyrb7z7eITt4 o7CKvJG4+pdAXdWkkh0zY0KpWIP3yyPxhWSEeTFYZ+OZhH40naeXmn2Wqw4Fy5Dv PbMgCuTpjk37JUeFUstHUR4j9IUkYB+3pjgpOu+OciycFRMpyMCg== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, eopXD , Frank Chang , Alistair Francis Subject: [PULL 02/23] target/riscv: rvv: Fix early exit condition for whole register load/store Date: Wed, 25 May 2022 08:44:07 +1000 Message-Id: <20220524224428.552334-3-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432729157100002 Content-Type: text/plain; charset="utf-8" From: eopXD Vector whole register load instructions have EEW encoded in the opcode, so we shouldn't take SEW here. Vector whole register store instructions are always EEW=3D8. Signed-off-by: eop Chen Reviewed-by: Frank Chang Acked-by: Alistair Francis Message-Id: <165181414065.18540.14828125053334599921-0@git.sr.ht> Signed-off-by: Alistair Francis --- target/riscv/insn_trans/trans_rvv.c.inc | 58 +++++++++++++------------ 1 file changed, 31 insertions(+), 27 deletions(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_tr= ans/trans_rvv.c.inc index 90327509f7..391c61fe93 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -1118,10 +1118,10 @@ GEN_VEXT_TRANS(vle64ff_v, MO_64, r2nfvm, ldff_op, l= d_us_check) typedef void gen_helper_ldst_whole(TCGv_ptr, TCGv, TCGv_env, TCGv_i32); =20 static bool ldst_whole_trans(uint32_t vd, uint32_t rs1, uint32_t nf, - gen_helper_ldst_whole *fn, DisasContext *s, - bool is_store) + uint32_t width, gen_helper_ldst_whole *fn, + DisasContext *s, bool is_store) { - uint32_t evl =3D (s->cfg_ptr->vlen / 8) * nf / (1 << s->sew); + uint32_t evl =3D (s->cfg_ptr->vlen / 8) * nf / width; TCGLabel *over =3D gen_new_label(); tcg_gen_brcondi_tl(TCG_COND_GEU, cpu_vstart, evl, over); =20 @@ -1153,38 +1153,42 @@ static bool ldst_whole_trans(uint32_t vd, uint32_t = rs1, uint32_t nf, * load and store whole register instructions ignore vtype and vl setting. * Thus, we don't need to check vill bit. (Section 7.9) */ -#define GEN_LDST_WHOLE_TRANS(NAME, ARG_NF, IS_STORE) \ +#define GEN_LDST_WHOLE_TRANS(NAME, ARG_NF, WIDTH, IS_STORE) \ static bool trans_##NAME(DisasContext *s, arg_##NAME * a) \ { \ if (require_rvv(s) && \ QEMU_IS_ALIGNED(a->rd, ARG_NF)) { \ - return ldst_whole_trans(a->rd, a->rs1, ARG_NF, gen_helper_##NAME, \ - s, IS_STORE); \ + return ldst_whole_trans(a->rd, a->rs1, ARG_NF, WIDTH, \ + gen_helper_##NAME, s, IS_STORE); \ } \ return false; \ } =20 -GEN_LDST_WHOLE_TRANS(vl1re8_v, 1, false) -GEN_LDST_WHOLE_TRANS(vl1re16_v, 1, false) -GEN_LDST_WHOLE_TRANS(vl1re32_v, 1, false) -GEN_LDST_WHOLE_TRANS(vl1re64_v, 1, false) -GEN_LDST_WHOLE_TRANS(vl2re8_v, 2, false) -GEN_LDST_WHOLE_TRANS(vl2re16_v, 2, false) -GEN_LDST_WHOLE_TRANS(vl2re32_v, 2, false) -GEN_LDST_WHOLE_TRANS(vl2re64_v, 2, false) -GEN_LDST_WHOLE_TRANS(vl4re8_v, 4, false) -GEN_LDST_WHOLE_TRANS(vl4re16_v, 4, false) -GEN_LDST_WHOLE_TRANS(vl4re32_v, 4, false) -GEN_LDST_WHOLE_TRANS(vl4re64_v, 4, false) -GEN_LDST_WHOLE_TRANS(vl8re8_v, 8, false) -GEN_LDST_WHOLE_TRANS(vl8re16_v, 8, false) -GEN_LDST_WHOLE_TRANS(vl8re32_v, 8, false) -GEN_LDST_WHOLE_TRANS(vl8re64_v, 8, false) - -GEN_LDST_WHOLE_TRANS(vs1r_v, 1, true) -GEN_LDST_WHOLE_TRANS(vs2r_v, 2, true) -GEN_LDST_WHOLE_TRANS(vs4r_v, 4, true) -GEN_LDST_WHOLE_TRANS(vs8r_v, 8, true) +GEN_LDST_WHOLE_TRANS(vl1re8_v, 1, 1, false) +GEN_LDST_WHOLE_TRANS(vl1re16_v, 1, 2, false) +GEN_LDST_WHOLE_TRANS(vl1re32_v, 1, 4, false) +GEN_LDST_WHOLE_TRANS(vl1re64_v, 1, 8, false) +GEN_LDST_WHOLE_TRANS(vl2re8_v, 2, 1, false) +GEN_LDST_WHOLE_TRANS(vl2re16_v, 2, 2, false) +GEN_LDST_WHOLE_TRANS(vl2re32_v, 2, 4, false) +GEN_LDST_WHOLE_TRANS(vl2re64_v, 2, 8, false) +GEN_LDST_WHOLE_TRANS(vl4re8_v, 4, 1, false) +GEN_LDST_WHOLE_TRANS(vl4re16_v, 4, 2, false) +GEN_LDST_WHOLE_TRANS(vl4re32_v, 4, 4, false) +GEN_LDST_WHOLE_TRANS(vl4re64_v, 4, 8, false) +GEN_LDST_WHOLE_TRANS(vl8re8_v, 8, 1, false) +GEN_LDST_WHOLE_TRANS(vl8re16_v, 8, 2, false) +GEN_LDST_WHOLE_TRANS(vl8re32_v, 8, 4, false) +GEN_LDST_WHOLE_TRANS(vl8re64_v, 8, 8, false) + +/* + * The vector whole register store instructions are encoded similar to + * unmasked unit-stride store of elements with EEW=3D8. + */ +GEN_LDST_WHOLE_TRANS(vs1r_v, 1, 1, true) +GEN_LDST_WHOLE_TRANS(vs2r_v, 2, 1, true) +GEN_LDST_WHOLE_TRANS(vs4r_v, 4, 1, true) +GEN_LDST_WHOLE_TRANS(vs8r_v, 8, 1, true) =20 /* *** Vector Integer Arithmetic Instructions --=20 2.35.3 From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432727208449.0920783288756; Tue, 24 May 2022 15:52:07 -0700 (PDT) Received: from localhost ([::1]:51912 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdNl-0007yF-Ou for importer2@patchew.org; Tue, 24 May 2022 18:52:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59774) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGg-0007TG-O3 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:46 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGf-0002Yx-3O for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:46 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:44 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:16 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:44 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qh1NMVz1SVnx for ; Tue, 24 May 2022 15:44:44 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id efl3KC5ME5f2 for ; Tue, 24 May 2022 15:44:43 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qd20Rjz1SVny; Tue, 24 May 2022 15:44:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432284; x=1684968284; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=M3AEYFDB6hQDbT5+7pg6v3FCy06YHNWSG0CGrvKZjDs=; b=NgxK/S3XVbowINgovekh3LMejNVaEEbXxJGssXBF4f3RDpnAeTWqihwG Uk8+3talrFeBengMsNgGTbL2HHYSBcM872tI6HpprMFxWs1GeSrzMH7q+ +KbTz95h3O0snHT+iNme3KN8yju0RhqI/GaWtTerSzshfgTiaJYu8TOeD uWnJduFi2wXwEkg8YAP/LZc+swgkNPcb29O0Khy1RGNJyNGqMFPzihPIP kfDaN+Stp+FJB1KdCsPbuO2UD2niwhWpjERY5h3hO6dDEgm+dmavxlUUc bSMbKXp8sSdngEGpBuK896Xy8mKhxF78YW6yFwnybGK1E8yXxjA+3fqCP Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566654" IronPort-SDR: q7D7g265gBFJjm4Js3WD2bFDrEf93/4zknjNatFaLf7nYMe2x1qdFFEdt09cH+M2187pZMTm3g qaRAgIX5IyUMVCMiIHKvC+Dh1lc8cLAqzgH5Rr1XWYOTo/ghJtH5V3ZZEPlFyQROFR3HDuuIQu TaLgaUX8Yb6C5kSPgXeaZfYQNjvZFJmEdE2yjwZsBi5cMKRWwDcj1y0gZXPpNYCBGxNBs6ttz8 OlU7tTNzegymy09vH+V0Tu48tVGQoruzFxLVW66kd2JA4WtM57gUC3+FUM8Kh2acJx3pNVAkev k8mH9lnAmcF4cvv7NeuugJ7b IronPort-SDR: ULgCUdVJG8iF3vGAhGvXFqAdxty9zcy6cuJV7z4i85vh83Ne0zF8s00Ln8M+e4oRTanVUc8qZL oSSTiQihVDnIYPvN0NNnFRkoXpPKOF++kpYULgIqSuuGY6cTsubUStCaSd7ZXfOuVRdAldExcI o1OHsCVW+CCgPioisfv5PdmvO/2Fgb1TMsHp4vatCYgT8B5f1oXuT8oCZ0V3yxVGahfAqG03O4 oMqIbKfFvpNklIgv0fjtVsItLNPFAHDJCDHHbnSPK/F4V5iLWdi+15m04EdCKoRh9kiAaUoiyI Sqc= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432283; x=1656024284; bh=M3AEYFDB6hQDbT5+7p g6v3FCy06YHNWSG0CGrvKZjDs=; b=G04pbmDsjP8itbKMN2Eu1nEtF11Rsv7naj vIfOMClGGypoqHlckuPzOMSwkg+0K6GT1sA1ZsmFfmLuWwA/l/R/AFOAfFBAQaSM 7/OauDcBgmAHGr97JsUPSRbkLiC2yWgxvrKRQlxbHGHmt7HinFUO4DYw27EnuiHy 94KFUXASP+chw3mzsFWcA8gG2bIz525ChtHxkWtIy4CqSeZ35MyfMmTSpsmqmZNF y6eWha22dkHdwjMPPxMStV64w346uhMBwy9E68KPBWLA/qEHSESQZMW2vtn9m8pN 7KUt0UL/a7ZvRORMtYdFEashsvuZYIyupBHmHh4IrIN1+gILafaQ== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Atish Patra , Frank Chang , Anup Patel , Alistair Francis Subject: [PULL 03/23] hw/intc: Pass correct hartid while updating mtimecmp Date: Wed, 25 May 2022 08:44:08 +1000 Message-Id: <20220524224428.552334-4-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432729149100001 Content-Type: text/plain; charset="utf-8" From: Atish Patra timecmp update function should be invoked with hartid for which timecmp is being updated. The following patch passes the incorrect hartid to the update function. Fixes: e2f01f3c2e13 ("hw/intc: Make RISC-V ACLINT mtime MMIO register writa= ble") Signed-off-by: Atish Patra Reviewed-by: Frank Chang Reviewed-by: Anup Patel Reviewed-by: Alistair Francis Message-Id: <20220513221458.1192933-1-atishp@rivosinc.com> Signed-off-by: Alistair Francis --- hw/intc/riscv_aclint.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/intc/riscv_aclint.c b/hw/intc/riscv_aclint.c index 0412edc982..e6bceceefd 100644 --- a/hw/intc/riscv_aclint.c +++ b/hw/intc/riscv_aclint.c @@ -233,7 +233,8 @@ static void riscv_aclint_mtimer_write(void *opaque, hwa= ddr addr, continue; } riscv_aclint_mtimer_write_timecmp(mtimer, RISCV_CPU(cpu), - i, env->timecmp); + mtimer->hartid_base + i, + env->timecmp); } return; } --=20 2.35.3 From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432944335474.4787813615354; Tue, 24 May 2022 15:55:44 -0700 (PDT) Received: from localhost ([::1]:60412 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdRG-0005ap-LS for importer2@patchew.org; Tue, 24 May 2022 18:55:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59808) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGj-0007Za-5p for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:49 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGh-0002Yx-Dg for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:48 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:46 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:18 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:47 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qk3kmYz1SVnx for ; Tue, 24 May 2022 15:44:46 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 9GgCHJ0MkwkZ for ; Tue, 24 May 2022 15:44:46 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qh2NHBz1Rvlc; Tue, 24 May 2022 15:44:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432287; x=1684968287; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=DD4dVe9zkxuzLeIUX7LN21uNDa6PsKdrc8ZuIZwDwcI=; b=QP6eAvkzjoSLGiiNNB5FDAgLYcc9+VI3HLz4KL20gUFL+A0EE6GghUM3 DwY3meSc9w1M9YYiHqm4rH6XFjR9nGwlfl7/qW77165Vw/69BIx/dIByO 3t5O/whnunvpRgBuFGrAwuK8FkEJYMK3i4qleSVIWcpfU39p2DJbDoq2O LIApt3e24BDd+5Bxn4xfPbwi63SpdzClgSVVVkEIlDP3GxzSyAwWl/ER+ b8yW5VKJnmE3GI0Bmlc4iv+cakKptoSs7AQ7caEYthwbmMvWLnGWTW1NJ 5O/WkHexGMkhdIb5gljA1SFxOkYYrsLQQhV7ITfXwHlb88DfAHsIa2JYV g==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566656" IronPort-SDR: ujtLD1l/UN9OkcsTuiUIo7YKIITH1JrNrMxCu6Cq2BWo6ywC0/sd6tm8XKi5ltxBa6/7djywCn R5UGmSCC4yqqMeLjOy5/LQu6hjs7IGHWVVWnDp29F5q7I5gSkI+VMuuWH9To1cTUlOqxctmOoo bWEyxpw0o5uv7U//4AsO1UrizcYbcVGoHnS/edoYRQVDi0VYszrWT/4AE3kROmMz4UulaskFvD lUSCqwgO4FLVgtBUReKytICGCj3h9UoHNuizsC10w70lo4kayKfjwQSzOhAPidyan/3v66tWW8 36CTrPvAD9Biswd7587mk9e7 IronPort-SDR: wwzPxcU3wb+XCbT8cf7sN5rQm/qZgseW3DehPPaAYjR5175kY0MvRHlOAH9WBT0uekW2bWDri0 ogGboNGP9nYtfLkYxPJE84wr1JtbqzPwyjZv5At5Tre0Acfwyb1yvfFd0fn81Jmsy47Mwiic22 HBZqVw7l+eDAgPyS6inD4vuqZbl+q6CHtlV2cQkMZEXUS/bBjTLTI4jNawHKinRNQXq1z57k+a B1lGDnSpq2pgo+BkqMetbuxT5vV+zzuo6pn9opvekToT2mXtUzIT5rRt5PGw/DdztbFMUitbGA TlY= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432286; x=1656024287; bh=DD4dVe9zkxuzLeIUX7 LN21uNDa6PsKdrc8ZuIZwDwcI=; b=sfs9EoWFhQIxgurm3HHmAsESD+/dO39ALc cHmgGVNAWR2Ku8ldkKieA5kHGiUKivnpad8Y4kXtjCsmB2uvTfxZSkuHW0xUz1jO VjM47isEbABStx/I4Wh2IKCMlWXB506g0t87Vh9DfZxrd3/qy7axA9iEZaFEC9yH qEfYFxwx2u56rQYcbnC/QrNJGzFssYua0+W51yKvLIp86Td6YJLDt5bVXWbdJzee cMVz7sHIQfHapJWFMvxIgcmUyR/9bmRuvv50mUa+Qs5Xqu0Oo1KnbGXHpqd/ohVh q5DWw5vxwjOa071saVkclpqw1Kwjx89r7me9QBDZpXTOudrwfhXg== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 04/23] target/riscv: Move Zhinx* extensions on ISA string Date: Wed, 25 May 2022 08:44:09 +1000 Message-Id: <20220524224428.552334-5-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432946462100003 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI This commit moves ISA string conversion for Zhinx and Zhinxmin extensions. Because extension category ordering of "H" is going to be after "V", their ordering is going to be valid (on canonical order). Signed-off-by: Tsukasa OI Acked-by: Alistair Francis Message-Id: <7a988aedb249b6709f9ce5464ff359b60958ca54.1652181972.git.resear= ch_trasio@irq.a4lg.com> Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index ccacdee215..9f38e56316 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -999,8 +999,6 @@ static void riscv_isa_string_ext(RISCVCPU *cpu, char **= isa_str, int max_str_len) ISA_EDATA_ENTRY(zfh, ext_zfh), ISA_EDATA_ENTRY(zfhmin, ext_zfhmin), ISA_EDATA_ENTRY(zfinx, ext_zfinx), - ISA_EDATA_ENTRY(zhinx, ext_zhinx), - ISA_EDATA_ENTRY(zhinxmin, ext_zhinxmin), ISA_EDATA_ENTRY(zdinx, ext_zdinx), ISA_EDATA_ENTRY(zba, ext_zba), ISA_EDATA_ENTRY(zbb, ext_zbb), @@ -1021,6 +1019,8 @@ static void riscv_isa_string_ext(RISCVCPU *cpu, char = **isa_str, int max_str_len) ISA_EDATA_ENTRY(zkt, ext_zkt), ISA_EDATA_ENTRY(zve32f, ext_zve32f), ISA_EDATA_ENTRY(zve64f, ext_zve64f), + ISA_EDATA_ENTRY(zhinx, ext_zhinx), + ISA_EDATA_ENTRY(zhinxmin, ext_zhinxmin), ISA_EDATA_ENTRY(svinval, ext_svinval), ISA_EDATA_ENTRY(svnapot, ext_svnapot), ISA_EDATA_ENTRY(svpbmt, ext_svpbmt), --=20 2.35.3 From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432943405179.86243608187715; Tue, 24 May 2022 15:55:43 -0700 (PDT) Received: from localhost ([::1]:60548 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdRG-0005gJ-Dn for importer2@patchew.org; Tue, 24 May 2022 18:55:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59846) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGm-0007hD-42 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:52 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGk-0002Yx-CD for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:51 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:49 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:21 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:50 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qn3M9Fz1Rwrw for ; Tue, 24 May 2022 15:44:49 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 41eNTD9DrQ0L for ; Tue, 24 May 2022 15:44:49 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Ql1sLRz1Rvlc; Tue, 24 May 2022 15:44:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432290; x=1684968290; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=AR2Xo5Vgkvfi6fTgKymXOZMbwye6kSu5m9fSdAdzu6o=; b=fycpjgfrbnndeo+aIMZnpTi3fR1wprw6ePE+QsuMsRHeEBzaX0qQLlim 5RYDwuztxfN7/kOlVbxYceHc/2+348d0v62yWlRWM8IU/hJeJ/4jByVnY sOAY2uHUXyMHYGT+OYxjsGhQbQkEunfO3s0ksxBzWvkJFhIL1ULIiyTE2 pWY6xen4OFLn6QSCpUKmxxhVeUvyCQrUv2GDvHOOzkqYBjwQTDJnrfpXq uMoacXr/upZUGHVw0PwAep+meXCkm7r2oFOS4KlDS2jXJqcQGgnUUSbIr USKcI0ezeWPYEGOGEq7qXhyQ6PSb1jyPcGNik7X3TprsrK8DCLn5vDr6v A==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566657" IronPort-SDR: gjQ00WBhFUPrQXjLC47Kq7tCHz40BSBzGLduA/eQaiVlfd9HYUv1cw0+RwqexBiIJ6X+sz2Y+T PNZ7uW6SreRU/mNRZFG6+L3SHAz2u5zs8uC7qkH5meT2AWQ8Z9JH8oncmfonvAVELY5cxw3xbd PSqJuW0TJ8RNMzwP26a9GWZazKgBrGlqtXtJ/AX0sHP+nxa2ScYRMdzhcvA/wNB/udeJNYK6UB Wx12jeF1hCktuDMduhEY5ifZQ41NU/XqnyqAvPF6LSJzxj6o4E16f6SpmegR91BiPuzQBoKLWj jzeBV7O9rVuciP7mqF631/wq IronPort-SDR: 3GguGRy0miE7grIKnN4jUX0kIb78JkqergamQvhpP065W1k+ceOVcKol+Zi3lnKBlTCPeYcBaT jL9me2UeySJuTGQDJgwTRc4fVDbZOeG45JUML/qiu4WJQSWyTJ49UJdK89eRvbsfV69dhr2Tqe /uORmmOXgW+RXa7URGREHmpBxXI0od/EtkjT0R0BOJlGOFOkXaNcl9ojrlSpUbQ7gYbmvNtI/F 7Ot17/n9Kq/TB16ZWSF8FzCOYmpz5mwtGpDwxK6TJCZ5V08SP2OZiyp/y2WQmIZY0YJjn2obqj qvo= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432289; x=1656024290; bh=AR2Xo5Vgkvfi6fTgKy mXOZMbwye6kSu5m9fSdAdzu6o=; b=ffdZLpvnx5EFjd58pRoLN/JEQUApLbh86x qqdt4bXMVOeN+waN9JYMvKsywDa+LWmoz2R54PoJID8OSN5EIDDzK4S5bRetWDdd JwgxReCmDrArIflUpgGyme8eoHqi/XVyt/Bupsyhj9M1iELQx++cwwoOnXhTp2h4 RBFmTmpqZ3uVI3hs+GBrVb5/foBW8OikKQpDUCQPhc5Vs+5hF3ZZZON/s99qLguy dn90d/Tglf7bGwQERaufh1BzCEGcHEwDh0eV9iYIguUYEfQCjrXnZhK8PljY90Rt UDoj7Qm1Byw5K/cJFuPtXmdn9Czg1RkIzAArD7hZl56c6XNu3HBA== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 05/23] target/riscv: Add short-isa-string option Date: Wed, 25 May 2022 08:44:10 +1000 Message-Id: <20220524224428.552334-6-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432944484100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI Because some operating systems don't correctly parse long ISA extension string, this commit adds short-isa-string boolean option to disable generating long ISA extension strings on Device Tree. For instance, enabling Zfinx and Zdinx extensions and booting Linux (5.17 or earlier) with FPU support caused a kernel panic. Operating Systems which short-isa-string might be helpful: 1. Linux (5.17 or earlier) 2. FreeBSD (at least 14.0-CURRENT) 3. OpenBSD (at least current development version) Signed-off-by: Tsukasa OI Acked-by: Alistair Francis Message-Id: <7c1fe5f06b0a7646a47e9bcdddb1042bb60c69c8.1652181972.git.resear= ch_trasio@irq.a4lg.com> Signed-off-by: Alistair Francis --- target/riscv/cpu.h | 2 ++ target/riscv/cpu.c | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/target/riscv/cpu.h b/target/riscv/cpu.h index fe6c9a2c92..f5ff7294c6 100644 --- a/target/riscv/cpu.h +++ b/target/riscv/cpu.h @@ -425,6 +425,8 @@ struct RISCVCPUConfig { bool aia; bool debug; uint64_t resetvec; + + bool short_isa_string; }; =20 typedef struct RISCVCPUConfig RISCVCPUConfig; diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 9f38e56316..dc93412395 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -879,6 +879,8 @@ static Property riscv_cpu_properties[] =3D { DEFINE_PROP_BOOL("x-aia", RISCVCPU, cfg.aia, false), =20 DEFINE_PROP_UINT64("resetvec", RISCVCPU, cfg.resetvec, DEFAULT_RSTVEC), + + DEFINE_PROP_BOOL("short-isa-string", RISCVCPU, cfg.short_isa_string, f= alse), DEFINE_PROP_END_OF_LIST(), }; =20 @@ -1049,7 +1051,9 @@ char *riscv_isa_string(RISCVCPU *cpu) } } *p =3D '\0'; - riscv_isa_string_ext(cpu, &isa_str, maxlen); + if (!cpu->cfg.short_isa_string) { + riscv_isa_string_ext(cpu, &isa_str, maxlen); + } return isa_str; } =20 --=20 2.35.3 From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433138909731.3638466218486; Tue, 24 May 2022 15:58:58 -0700 (PDT) Received: from localhost ([::1]:39174 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdUP-0002gO-76 for importer2@patchew.org; Tue, 24 May 2022 18:58:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59880) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGo-0007kV-OV for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:55 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGn-0002Yx-0m for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:54 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:52 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:24 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:52 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qr0b2Pz1Rvlx for ; Tue, 24 May 2022 15:44:52 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id r7LhMP0FEDFb for ; Tue, 24 May 2022 15:44:51 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qn4s20z1Rvlc; Tue, 24 May 2022 15:44:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432292; x=1684968292; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=70fjyTOWmnjDkF7UHl0Z44we3+qZjsDgAiKfwoAr70Y=; b=KTCRO2Nkqpj3tk8klxFk44WE2X82bwY5pGm1t7A296xdCjbOSiulg2xI DsG1DXJxa3dCEU6QpLUh8HH0Tut4eweJtSARlEeMCjCdH2WdmW6lW315n XrW3uPKvHDV+Gw35PLHO9iI1dIVx/vOVbygFdP5uodMrHQOxCJ1rD2l/T ny2IToqAtPRDdapdp4fgxO+71e3RS0qVs3r1c7kceDsfusP4oaXvCQH3L c7EjnMLvZf4GRnR2jVcLmKblqASmzamrNlASZpOPpZLrbFOQHyuvYiCpG 191bufPUfCs13xb+K7crr1nBJEWvJAr3+PFpZU+tTH4UxIzlrLasccT3x A==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566659" IronPort-SDR: XJnolJkRPTeilvsQD5E8n3lM0E0cn75Ol/j8tTrudtDd+1yQFcuGuElIFA8bSN1z5jF7ZqxzzX OjUY14FIA53OMAeNAv9R0GsDOlDUTVfZ67l3wPGapJBKbROR6sIRJHWcOXbRcBiVlNBqylqKFr G5dmxh8SLP9aksWwr/19W9liWmdx1pMfOqq0frWS+MnJR0bK+3hb3/kEpWG98clNo7ZH4Hn2jU Ty/KvbFpoylmPmwwtleFq6suST779m0A05jsDMqCXNRs3yDTFE6ej/UYFqAZTbCT+fRaR4PlCa L0/elAn1F3DbvWW5UgH5ugqE IronPort-SDR: gBxS1y9L/VGuTci7zvaUM4K/ZeZv9Cc6JC0l5GFG0RB8Zo0dcZdpISUgf+KUEm4vpQbYn4VQlM FdpqaTHhfypcgV+StWHLXh8gEL36ldQkvojOSKsW0Dnx1x8YqJmLZPH40KgPJO+JFtOXoIpl2I aaf/PCnSSpSg+BpoD2Lj9CrXOdXe/EOThtBGgOz+fhu6bpvPIS3yAF5eiS+WF/qEsJRoNWzBoW 7BTFzRKI4ENwpAgzVlq7dLkXkqKvuIlp6U/bqdv2NoUGSgi7FN40DEaIWqj+0gQ4p82fVVp+Qf cnE= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432291; x=1656024292; bh=70fjyTOWmnjDkF7UHl 0Z44we3+qZjsDgAiKfwoAr70Y=; b=tmUyUcSp7yXQFoWydczPoW+9G8SGEIfqTz d6/83dEh7RZPR1XEEIroTv3FaGlfVor5VcgPlDob3PZx1QdeaQ+IV+UEi9Ar+vW/ Nh7GoaBpcUpuZ/p9pvAHenohMsSQe7R98Er7C9Ls0dOQ532TjhnTiG5NPgiKad9v ihBOdksvSLQrPvC25zE/Xko7T/XSjWm8qSDvAfb3D3ANX054zp8LdPhWIkxioUUT 4uUBiOyIhWb1pLaYsXB/2EVlg8oXNoWeLR2UNwq7NAIUfYuSHTAyfgvsHcBnSQrg LO6WIAlUO/MMcJDeuG+IDd1AjrPoyGQPsx5X0/z6bD5FUrTaMN5A== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 06/23] hw/riscv: Make CPU config error handling generous (virt/spike) Date: Wed, 25 May 2022 08:44:11 +1000 Message-Id: <20220524224428.552334-7-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433139352100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI If specified CPU configuration is not valid, not just it prints error message, it aborts and generates core dumps (depends on the operating system). This kind of error handling should be used only when a serious runtime error occurs. This commit makes error handling on CPU configuration more generous on virt/spike machines. It now just prints error message and quits (without coredumps and aborts). Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Message-Id: Signed-off-by: Alistair Francis --- hw/riscv/spike.c | 2 +- hw/riscv/virt.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/riscv/spike.c b/hw/riscv/spike.c index 068ba3493e..e41b6aa9f0 100644 --- a/hw/riscv/spike.c +++ b/hw/riscv/spike.c @@ -230,7 +230,7 @@ static void spike_board_init(MachineState *machine) base_hartid, &error_abort); object_property_set_int(OBJECT(&s->soc[i]), "num-harts", hart_count, &error_abort); - sysbus_realize(SYS_BUS_DEVICE(&s->soc[i]), &error_abort); + sysbus_realize(SYS_BUS_DEVICE(&s->soc[i]), &error_fatal); =20 /* Core Local Interruptor (timer and IPI) for each socket */ riscv_aclint_swi_create( diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index 3326f4db96..244d6408b5 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -1351,7 +1351,7 @@ static void virt_machine_init(MachineState *machine) base_hartid, &error_abort); object_property_set_int(OBJECT(&s->soc[i]), "num-harts", hart_count, &error_abort); - sysbus_realize(SYS_BUS_DEVICE(&s->soc[i]), &error_abort); + sysbus_realize(SYS_BUS_DEVICE(&s->soc[i]), &error_fatal); =20 if (!kvm_enabled()) { if (s->have_aclint) { --=20 2.35.3 From nobody Sat May 4 04:18:05 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433135094266.8051418376714; Tue, 24 May 2022 15:58:55 -0700 (PDT) Received: from localhost ([::1]:39024 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdUL-0002as-2s for importer2@patchew.org; Tue, 24 May 2022 18:58:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59898) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGr-0007lf-B5 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:57 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGp-0002Yx-ES for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:57 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:54 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:26 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:55 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qt43Sfz1Rvlx for ; Tue, 24 May 2022 15:44:54 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ruf70VJDkxYC for ; Tue, 24 May 2022 15:44:54 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qr2PDsz1Rvlc; Tue, 24 May 2022 15:44:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432295; x=1684968295; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=JR57HeR2olH0bmChhNxfRbTCxi6KS+tPhpEG8JNS1u0=; b=GkjjqVLqu4Yj+ZshR/JhGsZbI66scG1GXb1bbvQ9mxVMvoQWDFnRWprf +s6XWEx0azp+LMNO5jrIPK6v38i4GWA1e/QfoDvwaptw1A/Hj1vxElxBn lh4wEoI0e+RHcNfwFKKtEN5ZdhiX/kRs3ZtFlaZ8hU9qvMz7YfA0gNPjG Gs8PTFz75/jtMDRUAqcJyo6nFFw057e/vAX8WSJNJ+fnu3SIc0QiNVcvM Z3TGqZgeZh0cWIhSLglj3+Fu7hR9cWO2ZY97p6NAdkSv6Ub6Bp1J1Kkg4 C3gA5ArXQZOCBgXx4Mbr2m2n8pV5+jxtTfXVDOZPjKhYXw5nJH8101Z8S Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566663" IronPort-SDR: XFkVZpmOIIfK8LPpqf5Mp0/oHeLJexhjM8Utpv5dbmmVZ8OzHxwyPTU72fHHsDsWZ6rtwSpxtw 6DRVZdXCccrpHxLL6J87iG/nFLEGI0Z0/3En2qf3e9BfSyy7DU5E6/R4bqXePlrjp4Issaznzu UHzW48JfGXHNJdn3XGzXtl5wUefPxn5//qCL4eigy129Hbb4eef4H1J+E2VI1AbEywguJsaiLE JAgZghDOS1YNrw4UdTe9pDPfrWjddEyDnm+nZB1kNy2axStWsbdjH0XA7MiJcLKrbkv876FLzZ wenPlrTycMLiWVD09WKZGqQn IronPort-SDR: 3tV2o75DSzKMcCQkI1EhGttWuDj21jAnfV8jCA7E4vdzskN5QBXWd2YnUnBLCU8yw64mJcdl1R +Pp4MrM18mkccpJmj5uEGeSPSTB6Ls9DKtZ6s346BSJ8jnVDsYYkTHhsnbDUHvF1V+SBA5R2cW BP9Rm6qdSrOY338XK0SScZBcnBslBhWIjDK/gdBrsEymrsQhAT/EDFI9CZbYAT2sttvQvkZXpK qh5J0Ioao6QN4ikn/SzkOOBN3+LPrzKwVfIDTkLFNSSzq9Boo1LqXEvzHmV0TIClIiPV3IZpm5 jwE= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432294; x=1656024295; bh=JR57HeR2olH0bmChhN xfRbTCxi6KS+tPhpEG8JNS1u0=; b=j9Te2hl4a1apTDmkgYWobmLrEIOvlenrLj 4+KHLBmYX1xuK4J/7iLm3IIioSsOSlDSUpjEM/wsZLo8qQM+wxibTaiM7YY1xe3p 2Ok88rSiDBO7CLpW56pWIjK8WidCXwikW7paTRDXqf7yrMk38wYNandbcw4omx8V bNQpO4mi+iKa1G9el+56qW++u1E8duq1dfjvRpdgGOGdUacAYxlwr6L7n23wXfEB PishjwLS4i0OvGOGe2jzfMpDzXZ3zKe3Uzrxzy4vKXB+OWPO0ZxPjN7NycvysxOT SCNUrxMAcnQOmlegLdDrf+dcXQ8foi/WJTgy5V5cL6X7ar+Lfd2A== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 07/23] hw/riscv: Make CPU config error handling generous (sifive_e/u/opentitan) Date: Wed, 25 May 2022 08:44:12 +1000 Message-Id: <20220524224428.552334-8-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433135513100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI If specified CPU configuration is not valid, not just it prints error message, it aborts and generates core dumps (depends on the operating system). This kind of error handling should be used only when a serious runtime error occurs. This commit makes error handling on CPU configuration more generous on sifive_e/u and opentitan machines. It now just prints error message and quits (without coredumps and aborts). This is separate from spike/virt because it involves different type (TYPE_RISCV_HART_ARRAY) on sifive_e/u and opentitan machines. Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Message-Id: <09e61e58a7543da44bdb0e0f5368afc8903b4aa6.1652509778.git.resear= ch_trasio@irq.a4lg.com> Signed-off-by: Alistair Francis --- hw/riscv/opentitan.c | 2 +- hw/riscv/sifive_e.c | 2 +- hw/riscv/sifive_u.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/riscv/opentitan.c b/hw/riscv/opentitan.c index 2d401dcb23..4495a2c039 100644 --- a/hw/riscv/opentitan.c +++ b/hw/riscv/opentitan.c @@ -142,7 +142,7 @@ static void lowrisc_ibex_soc_realize(DeviceState *dev_s= oc, Error **errp) object_property_set_int(OBJECT(&s->cpus), "num-harts", ms->smp.cpus, &error_abort); object_property_set_int(OBJECT(&s->cpus), "resetvec", 0x8080, &error_a= bort); - sysbus_realize(SYS_BUS_DEVICE(&s->cpus), &error_abort); + sysbus_realize(SYS_BUS_DEVICE(&s->cpus), &error_fatal); =20 /* Boot ROM */ memory_region_init_rom(&s->rom, OBJECT(dev_soc), "riscv.lowrisc.ibex.r= om", diff --git a/hw/riscv/sifive_e.c b/hw/riscv/sifive_e.c index dcb87b6cfd..d65d2fd869 100644 --- a/hw/riscv/sifive_e.c +++ b/hw/riscv/sifive_e.c @@ -195,7 +195,7 @@ static void sifive_e_soc_realize(DeviceState *dev, Erro= r **errp) =20 object_property_set_str(OBJECT(&s->cpus), "cpu-type", ms->cpu_type, &error_abort); - sysbus_realize(SYS_BUS_DEVICE(&s->cpus), &error_abort); + sysbus_realize(SYS_BUS_DEVICE(&s->cpus), &error_fatal); =20 /* Mask ROM */ memory_region_init_rom(&s->mask_rom, OBJECT(dev), "riscv.sifive.e.mrom= ", diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index cc8c7637cb..a2495b5ae7 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -830,8 +830,8 @@ static void sifive_u_soc_realize(DeviceState *dev, Erro= r **errp) qdev_prop_set_string(DEVICE(&s->u_cpus), "cpu-type", s->cpu_type); qdev_prop_set_uint64(DEVICE(&s->u_cpus), "resetvec", 0x1004); =20 - sysbus_realize(SYS_BUS_DEVICE(&s->e_cpus), &error_abort); - sysbus_realize(SYS_BUS_DEVICE(&s->u_cpus), &error_abort); + sysbus_realize(SYS_BUS_DEVICE(&s->e_cpus), &error_fatal); + sysbus_realize(SYS_BUS_DEVICE(&s->u_cpus), &error_fatal); /* * The cluster must be realized after the RISC-V hart array container, * as the container's CPU object is only created on realize, and the --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433371399628.9329383889867; Tue, 24 May 2022 16:02:51 -0700 (PDT) Received: from localhost ([::1]:46922 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdYA-0001Ua-CW for importer2@patchew.org; Tue, 24 May 2022 19:02:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59916) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGu-0007nB-6G for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:01 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGs-0002Yx-77 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:44:59 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:57 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:29 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:44:58 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qx2JCYz1SVnx for ; Tue, 24 May 2022 15:44:57 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id RB2j8aTBwdng for ; Tue, 24 May 2022 15:44:56 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qt5Pc6z1Rvlc; Tue, 24 May 2022 15:44:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432298; x=1684968298; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=OaZEqH/Jgf/h/iHh5cHRITvnD6CrreQJbyp/cHKr9gg=; b=PfDms6pc2w0JInzgHiCiz3pRcjlUsdsLYJxjo8eiwLNqa7HOdeJsz7Ew y1Y42CksGXtrJ9Z60aRXxspBk1v+Fhqz4Lskcs/egoZ6Fzy7E3THGfrPZ 8pf+gACB6nWBnbWkLz1WUg2a8lhKDBLEFkja1C2IxPycinFNaxIKUk9tR dnANQg8RV4CZOBBo+82a+A1q/gpipWRPuh6n1QdHeJVlM/zyS4WDS3e6b bBP6TXtKxmWyq+LdTY6ysGN28notoj4LeIbdVeyh/HQ9dO+P7rihw/1rK lpyqVoQj5Q7ZLU++PFsXgWIwTMs/IF/cVH7a8d1PzvlT3vymQ7ZQbGPzR Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566666" IronPort-SDR: l8qQn7RcS9iO6RDZXzghS/gKJkYfqnt73oVloi9ZgT+0hc1lBeHDoHmQRv9wDgZ0oLUE3JHxOU H8tTxHG3iDcF3wWntg/Dc3DE0/Lt+ayGCKVfWoOks8vj6z5cjv9TAS078f4p21Pof0rsjAQvT1 wAlnnvLAtExaWWJFhVemLInUzC/rarme7LxrjicZmn0riYk1htItRPEn9j6BZv6fnqAYeky98s xS2dq7BkhQI73dONu7rwhfs4CdcTIP1MxiW23IzJtlM3PATi5Kv5lNVKcT2B/4LIKvy9hNAb5U uk5spMUkM/ue5R3BKIuDlleV IronPort-SDR: k0myKYrqS02PYlzxB5+Ykrj9XFN9XJlLsrNkpP15znZSS5w6dDEhE44AOHOH5HDVqUG0Ply0Mt IyBMn5vpdyCiuhSFwJ7ySyD3QP8/zTYik58XZ2AmaftWhUY2elzXN/65c0pCwM1PJcC97oQmkq KqjFM0aOyU/gdaeXRtrSj5KzVqHWvvBgUWWRj5YCOWtp9nrn7Qs5k2+XqltYGHWrDCWAaEAKTk pnG/2bWo66pvtzfPmZMh5Bk3q5rVg2WL0Hcp6Uc6ubWv0J8n9UaKTd0jVRM7LQn6iXqR6QqHe9 Voo= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:content-type :mime-version:references:in-reply-to:x-mailer:message-id:date :subject:to:from; s=dkim; t=1653432296; x=1656024297; bh=OaZEqH/ Jgf/h/iHh5cHRITvnD6CrreQJbyp/cHKr9gg=; b=OZdcNx0su+7oTZogVmRbnlm igvBy2pVXGLguEW8Lx9NvMlpqzkVqihDBSxNJEnxI+60Rojn7CqcblfTDk9FdwRF /2VeJ0GBng4xuexUNaykBvs2BRqCpyu7LpvkAMyBF4S2Ltd4nJ7eRvIP3or1ELmT RRraz4jJ785lhDrneHE9tfHxWRL7cMcmHlaY72rnZTPLgo13dobj2sq4iOhMCnTs Kt53HBwC2a8c05exFcCDhS7enarb7eca+3JfggvfEr2o5oyOsisatb/IEg+LS8C9 EMyXY/PQqMzY5opBtT5HkoMHn7VyrVP9uYU19OfO4w/epWy6Y+AFsUN6TpQ0o0A= = X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis , =?UTF-8?q?V=C3=ADctor=20Colombo?= Subject: [PULL 08/23] target/riscv: Fix coding style on "G" expansion Date: Wed, 25 May 2022 08:44:13 +1000 Message-Id: <20220524224428.552334-9-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433372768100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI Because ext_? members are boolean variables, operator `&&' should be used instead of `&'. Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Reviewed-by: V=C3=ADctor Colombo Message-Id: <91633f8349253656dd08bc8dc36498a9c7538b10.1652583332.git.resear= ch_trasio@irq.a4lg.com> Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index dc93412395..e439716337 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -596,8 +596,8 @@ static void riscv_cpu_realize(DeviceState *dev, Error *= *errp) return; } =20 - if (cpu->cfg.ext_g && !(cpu->cfg.ext_i & cpu->cfg.ext_m & - cpu->cfg.ext_a & cpu->cfg.ext_f & + if (cpu->cfg.ext_g && !(cpu->cfg.ext_i && cpu->cfg.ext_m && + cpu->cfg.ext_a && cpu->cfg.ext_f && cpu->cfg.ext_d)) { warn_report("Setting G will also set IMAFD"); cpu->cfg.ext_i =3D true; --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432452788582.7282105137463; Tue, 24 May 2022 15:47:32 -0700 (PDT) Received: from localhost ([::1]:43866 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdJL-0002Hv-LD for importer2@patchew.org; Tue, 24 May 2022 18:47:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59936) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGx-0007oT-QE for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:04 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGu-0002Yx-Ly for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:01 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:44:59 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:31 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:00 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Qz4lmCz1SHwl for ; Tue, 24 May 2022 15:44:59 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id rb1KlC3z2JLT for ; Tue, 24 May 2022 15:44:59 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qx3W7Bz1Rvlc; Tue, 24 May 2022 15:44:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432300; x=1684968300; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+i4hduJB6I+gwmGjd7ffF1PSWj338oxgyF4MGrnGrFY=; b=pffUfQDzfwgLUzALuQQf0MoF04yth7OzIkHo/soZi9WRzKopu+PxTmpr zRt9Th1Zzs0+rxldxxTjf1uFuqLyIMUMuBPp9LHUbx8n9heoUjWSGOI6M 1vKv10/tGjsa5fLYvZnudVLV/MiwtDpWPdP3WJvToPfBUi2Yv17yCM6Bh WcnBa79Ov6BSyEIw/OJ+/nuRJDKr4MTGAZORwDR0Frr9b6POBESDlWtCt BH0FYrZNtIBJ3qpPX2wlosjRS8AUqDDDO3SibD9vleKplJoPSBpiNQfvG aBlegVKME6FmPN7K6oyjoDRvdfL09OuoLOHwDtjuLkg3JR5AAdrX6UAAQ Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566669" IronPort-SDR: eM1WjFcnhSzV77oD5HkkZEReHAKmNEAGBnAViEfX17wTatFzgpesd6psrbTGtDHOm7YLTBDpDA TcGKK8L/+D/ftCLse6b/fZywFuIPm1KQqm17xjzFfKfyIq68smvlsYGjYmVm/f2DUPLuB1hlxg vlm1/WfSH3FQuM3XSao9bZQq7VvXKx+RdlGNl2DSShq+pSUbv9XaLSWJbj+0mTofeSiIwy42NA +GRXdxwXldXlUeuUyYhX4bSXhBbINfA4hMzGoRm2/kIBe9gmlkopyB2MLatrAEvLSdYRKWlbVk B8VhrzuztkCydOK6tTkikkla IronPort-SDR: XjQR8G/NQR2BBua4X8T5rOcLhw7iqIKciY3buW+6zOYQep1QSb7ElnR1wDIqLgdWXCLUq0dHVX H7nO+lue7jefwWcg3gS/G15r2v62O6xHsuPa517QmJLjmJ6JXeGHEMzDdmaV9rB0wQoW6ejJOX SDNvQVdKMnmjQJrA+o+VaI4ZWi2cwr9Co7dMtG0Uo6FiCUK6wBlnj5vifuZmYCGAK3NaTycR3y 8JdPP8g1Thkcw8uFu+FkkzxkP1c00wJQaLPrLt1rdlTBkqFzTD+I7fYykLc00KILjyhtSCbikb oHU= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432299; x=1656024300; bh=+i4hduJB6I+gwmGjd7 ffF1PSWj338oxgyF4MGrnGrFY=; b=SmD1BFXRhS5DQO6Kx8AgvrAaS9pnqLMyH6 7gEEFmz257YYRzeHHbreMk0h+qVQvWBtAsV7JP6sj7qn4Hdk7ozK9gsghuvU41Ab iFwsIUIXRFyVT6YH9c3kdu39hukbHusPW419YwF35xusPdAjagFQpYHGashhW2Y7 V5ZdnkXYq04rqfpjMVIk2iB0cguucVRsDx5Ue4MY8ekVmOGlSqfPhTHaIRbE0L55 dfUkoAdFqUqJMZl6qBN2JdL57jfhlXpU9evp/hGrkLFVvmmZy7SamEcBkF2Ojtzo ZXgl9S29nY5saskAl53XMtjrP0HwkjdTPO9/0ix6SzgZy6/1nf4Q== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 09/23] target/riscv: Disable "G" by default Date: Wed, 25 May 2022 08:44:14 +1000 Message-Id: <20220524224428.552334-10-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432453468100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI Because "G" virtual extension expands to "IMAFD", we cannot separately disable extensions like "F" or "D" without disabling "G". Because all "IMAFD" are enabled by default, it's harmless to disable "G" by default. Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Message-Id: Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index e439716337..1fb76b4295 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -812,7 +812,7 @@ static Property riscv_cpu_properties[] =3D { /* Defaults for standard extensions */ DEFINE_PROP_BOOL("i", RISCVCPU, cfg.ext_i, true), DEFINE_PROP_BOOL("e", RISCVCPU, cfg.ext_e, false), - DEFINE_PROP_BOOL("g", RISCVCPU, cfg.ext_g, true), + DEFINE_PROP_BOOL("g", RISCVCPU, cfg.ext_g, false), DEFINE_PROP_BOOL("m", RISCVCPU, cfg.ext_m, true), DEFINE_PROP_BOOL("a", RISCVCPU, cfg.ext_a, true), DEFINE_PROP_BOOL("f", RISCVCPU, cfg.ext_f, true), --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433366665819.5592205540684; Tue, 24 May 2022 16:02:46 -0700 (PDT) Received: from localhost ([::1]:46854 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdY5-0001RR-LE for importer2@patchew.org; Tue, 24 May 2022 19:02:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59996) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdH2-0007sN-SP for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:09 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdGx-0002Yx-42 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:07 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:02 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:34 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:02 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78R21HbTz1SVnx for ; Tue, 24 May 2022 15:45:02 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id l_sq_u1SdkLL for ; Tue, 24 May 2022 15:45:01 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Qz6XDlz1Rvlc; Tue, 24 May 2022 15:44:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432302; x=1684968302; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=9SufCANF8geHOkg1Chg5+Nle288s9EOyVpjtMhiXPNU=; b=aGJ74v0BAsUhhCgUJIjtzeFgw5M8ydJ38hSkdi8LCwX55u+Crj0i5tMa Yzw6FSWMWF1uodplAZxZn+pCFG+MsRwjsLltWb5tk0zapbhOdxa51mYJt XiegE5dxowo6oDwG/Z+dsnUTqCt2aaa9Do1dT4nCV9pJA+AtG3MvmF+LG I4SsZCV+1SKssTKFBiovRnTYamXxzWoEDBpNKoPSzcHbAxbjO0TZsPMGn CDTXitUyLhuOOmsnRmgu3g6cg2zic4QlBQoW7Ptjrr6vRq3WHbBvjCMfd lJwd1mbGcFKnJ5QyRyv18t1E1rVK3+1tyjanLcqaqwiuq82eUy0vaJEqw Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566672" IronPort-SDR: mqK4IqxSaW8hqKPiITGATkGiYGN+HP/ZuVcyW8sowTVDEXI9TxJTh0PFPVVY6lNUgilw7iqqGO oBOeTqu8B8IlHi/wyOV2UF56ZfmkVCNlH51cxlUn62aOZuwkoEd4MogDUZapVegOvArIH5KMRR bUk2pdjDEoBS7ZJmxuEIfpt4E6PSykroJAAPRNJpcsLVEuo+wC9Deo+2AkWmIN70TNygxWiri6 vYI0LV/Sg+GILhbVx63lh/NhzmjBOdQCigYsRAP3/tWP7lPAirsFPknsIW3ZwJpoNO4oVqijOp aebdyBns7T7fQR8rsr3gBBgL IronPort-SDR: 75GBmvVRNUdTNfE4VSaAMX3yO3Ez5VU1Xj31/f+N8Hf35tbLf5Cp40xBuV8UpC+XT6ojaGad4m AXX/M8+6mXFnsZHGOXrvZjoxAE+c4cbWbVqkDwhdsXAr4Ndq2KL7wllG8RXsvmc1wUV+PEming K/rhrhsaCyaEHqBVr+qD4ZRfiBjsdD3PcsGBEaHRTwfX9oid0/UIKT21l5R5vgA0AiA9NVBSJS mu/D1UKb16Oc1ZpBlWRLBn6m7wy3DOsfU3lHKEPdIaUF6PRZI1kT8HBf1/Bhzysgfdp2Y5YKlG Hvw= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432301; x=1656024302; bh=9SufCANF8geHOkg1Ch g5+Nle288s9EOyVpjtMhiXPNU=; b=QjjPPodCvc4CGlOcoUe55JZknjv+IFelrU AdvJLsrpjthZoXpr+ZHFq/3iAwFrZP3R1sRV3YmMQHdk8HCGadwEXWGtE+yl1wKi mAL8Rg7JIyFRnIR6Um30F+p5O1t57tFsLUvkqfj/GqzBHDk+AUM+AovNaACQxVP0 Os49GbvM1CSF6IsF5L4AvGxS8DRNk8oEEEcO3zXV7NtWYvnk82xHmf/WCWmH7Obu IoYUP2tiHI3Jdfga3TlkLKPiM1RlSUJJacQtyqaJsrR+zHjv4i11wE3RkiXpVdmv jqUUhJg49bnGrRPvh3d8FC7HPNU9YAT3Na/gCw1aAsw+QDaoiwYw== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 10/23] target/riscv: Change "G" expansion Date: Wed, 25 May 2022 08:44:15 +1000 Message-Id: <20220524224428.552334-11-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433368788100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI On ISA version 20190608 or later, "G" expands to "IMAFD_Zicsr_Zifencei". Both "Zicsr" and "Zifencei" are enabled by default and "G" is supposed to be (virtually) enabled as well, it should be safe to change its expansion. Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Message-Id: Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 1fb76b4295..4ca6a8623f 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -598,13 +598,16 @@ static void riscv_cpu_realize(DeviceState *dev, Error= **errp) =20 if (cpu->cfg.ext_g && !(cpu->cfg.ext_i && cpu->cfg.ext_m && cpu->cfg.ext_a && cpu->cfg.ext_f && - cpu->cfg.ext_d)) { - warn_report("Setting G will also set IMAFD"); + cpu->cfg.ext_d && + cpu->cfg.ext_icsr && cpu->cfg.ext_ifencei)= ) { + warn_report("Setting G will also set IMAFD_Zicsr_Zifencei"); cpu->cfg.ext_i =3D true; cpu->cfg.ext_m =3D true; cpu->cfg.ext_a =3D true; cpu->cfg.ext_f =3D true; cpu->cfg.ext_d =3D true; + cpu->cfg.ext_icsr =3D true; + cpu->cfg.ext_ifencei =3D true; } =20 if (cpu->cfg.ext_zdinx || cpu->cfg.ext_zhinx || --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433997769911.9091489191992; Tue, 24 May 2022 16:13:17 -0700 (PDT) Received: from localhost ([::1]:36932 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdiG-0006Hv-MT for importer2@patchew.org; Tue, 24 May 2022 19:13:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35336) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdU3-0004Yj-07 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:58:36 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:2257) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdTn-0005It-8A for qemu-devel@nongnu.org; Tue, 24 May 2022 18:58:34 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:58:17 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:17:49 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:58:18 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78R43tz2z1SHwl for ; Tue, 24 May 2022 15:45:04 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id rsFN37qFYmAx for ; Tue, 24 May 2022 15:45:04 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78R22WYLz1Rvlc; Tue, 24 May 2022 15:45:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653433099; x=1684969099; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=o33aK7IRIaR3yzkiXZGsKQ+ZxflfBO/YtB+tm9AfN88=; b=Cmo+my4eg8VsMzL/rX9jEPwOD/0Jb3fm9GcC+iA91Ldt+xYTu0C+QsZ7 Vsr8Yw+49DKK0FaIhW38Mb3g++InA7cFeZIXevF7MqRrFmsRQFXfiuOx4 Dce7qbwHikkj9to31bBUAlC7EU+H3X4gcy6d9vW2gmHRlE+58DtgN2SM7 MmdUndxLAvI7/POg9VkWgcegGIeJXCqxk+in4MUXycy1ecy+fPYvY+7ep 9sYIj8d0cUitNvtit+nMg0plxgaA9pTgc4cdjYUAgKpl5naHXosCNRTnc qbzUzbvAfgIc0EuUdrjWB+i2D9r8lF2IpcPoIGU5dpxbyd2PYOs9PKuWR Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305567222" IronPort-SDR: Yx69JYcKEcCF4GyihGiGOBzwMM+saiNPysQ2lv4SDsrTIWnMiJn6c8m3gq0N+bx9ru49hlW+pL 6BJc810ImasdoZWSILXqzVQ0/BVLbWd67Z70MVz3jOUAHfsQ3wradb/xgXlCHxlaqLrXOI+OWh 9ZSL51PjX0efqmTQ+8MasPJpQ8zl3ym2VkzfE41JXfA7/hlBEkzMcOm3bisqyQJCOqJPYPMEkh f0Kidd7oOcIB9S4kweQ6HPNnExegslYTIBuLIoxbzMq7iRhd2fU1fzM0XZsEd7GocP4GjOsIH9 qB+9nBWVbP+nSL1FHEwF9439 IronPort-SDR: NFwWIbjl1T1dm5CkZSiM5EvUH1Fbx6hACzN20S2SDBj/QLvVqwaqpdvvV3Pny0VFVX1EMDZ8gv 2PGRMWELMhTlMmjilLVF6Th2pAuPBavA+F/3NWOqzHXBQhCHveR489B6Gctk3BxtZelQ5ehsyI ZkDlgqkl3vxgX+eFFkPFdkTW0maQRL+hEdxES7iaazU4GUE4Abn+/gvXCMv+m05ZpuRF0RJQ3F LXW+TWa/5Pe/XnGg5qHWKeHvVIYsxMbfkQQKIL5YHuI0R6wnkggwAOTT3K69oPER7ct4PnkS98 OiI= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432304; x=1656024305; bh=o33aK7IRIaR3yzkiXZ GsKQ+ZxflfBO/YtB+tm9AfN88=; b=g4P9eYJYF3iCReBhjb2iWh++aAkT3MZklh zgi3XHIuW84tWS4dUmXU/53o9nCuTpZUyvCZXWZDqUaOVBHF/QNmhUcZOch2Gltq rYibZNTk2ib1SxjZk9sfBhv+U9B97J6ltR3nkTU6byreIIoHsXlcSRoFMXY645P6 UJTdoABT4Bm8wCfAB8bcUyoBbPVYs0IdC26D3HyERRYBNWip/QCcr/E93W65gqxA u1etapW3LXsni3nwBQPDXmDIsMnAf8bL14lJvuqGDCtS3kuEWdlE4sLaC04As2kq Ei0t5fAiV904oMpKo5javzFBqjFu9F0IPPsX0ureLu8zM+2VCNPw== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 11/23] target/riscv: FP extension requirements Date: Wed, 25 May 2022 08:44:16 +1000 Message-Id: <20220524224428.552334-12-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433999386100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI QEMU allowed inconsistent configurations that made floating point arithmetic effectively unusable. This commit adds certain checks for consistent FP arithmetic: - F requires Zicsr - Zfinx requires Zicsr - Zfh/Zfhmin require F - D requires F - V requires D Because F/D/Zicsr are enabled by default (and an error will not occur unless we manually disable one or more of prerequisites), this commit just enforces the user to give consistent combinations. Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Message-Id: <00e7b1c6060dab32ac7d49813b1ca84d3eb63298.1652583332.git.resear= ch_trasio@irq.a4lg.com> Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 4ca6a8623f..b960473f7d 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -610,11 +610,36 @@ static void riscv_cpu_realize(DeviceState *dev, Error= **errp) cpu->cfg.ext_ifencei =3D true; } =20 + if (cpu->cfg.ext_f && !cpu->cfg.ext_icsr) { + error_setg(errp, "F extension requires Zicsr"); + return; + } + + if ((cpu->cfg.ext_zfh || cpu->cfg.ext_zfhmin) && !cpu->cfg.ext_f) { + error_setg(errp, "Zfh/Zfhmin extensions require F extension"); + return; + } + + if (cpu->cfg.ext_d && !cpu->cfg.ext_f) { + error_setg(errp, "D extension requires F extension"); + return; + } + + if (cpu->cfg.ext_v && !cpu->cfg.ext_d) { + error_setg(errp, "V extension requires D extension"); + return; + } + if (cpu->cfg.ext_zdinx || cpu->cfg.ext_zhinx || cpu->cfg.ext_zhinxmin) { cpu->cfg.ext_zfinx =3D true; } =20 + if (cpu->cfg.ext_zfinx && !cpu->cfg.ext_icsr) { + error_setg(errp, "Zfinx extension requires Zicsr"); + return; + } + if (cpu->cfg.ext_zk) { cpu->cfg.ext_zkn =3D true; cpu->cfg.ext_zkr =3D true; --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432736219228.9880299844; Tue, 24 May 2022 15:52:16 -0700 (PDT) Received: from localhost ([::1]:52326 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdNv-0008Ge-04 for importer2@patchew.org; Tue, 24 May 2022 18:52:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60034) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdH8-0007xQ-O4 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:14 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62493) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdH2-0002oX-Ko for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:14 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:07 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:39 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:07 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78R66x3yz1Rvlx for ; Tue, 24 May 2022 15:45:06 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 2ybqTabL8IcT for ; Tue, 24 May 2022 15:45:06 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78R45VqFz1Rvlc; Tue, 24 May 2022 15:45:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432308; x=1684968308; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=/TIOY+nvX4poh/55m167fBtn+VEzcKILhkO0mLZRjj8=; b=NkZjL12yeG7V0nFqgxQTp7Ai5j8ttJNCaSRSfWqD5ihYxpm2wBz1nT48 zQqAP3SEEo3KPUO53FV3LZq38QLjSW5EzWepZCEakR3LrsOfqbGYIZOMD aHsQ5EmVHdHZHsARN6B7w01QfKfLzU6FM/IBCjyMgN5iuNghD48ZJQdMa Jd9M8oHBZFVLO2B7qLGLSkkMe2CXxTnysl179omkXuRvKSunq+BsC0x3m dHPX7SWLWu6QVKIRcZoafsP3pCAoXsCRDV8pVsxlazVonlAyXgYt454k2 1Idhnw59RZLcmUUJa7iR6L2JPbUQmSXbzWd+QVC8vcv7fzRiBC6HhwCUl w==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566678" IronPort-SDR: rJgetsfPI4y9c7RDZAOuOWa7VHGPJjQvT1AYNRx9Esja8zi7yWAuw+qL41Rrh52x8NrmR0K2ar 0C1MeP6lOBFu0bci/E5V22SAUUGeCMpRJZDP4+iFie86jF9ntHSwZ/JeBORhPndoSK7L0s56jL OZa5VUJwv/oSWNXnbZM2TNGIhDNIe8DSdgm3SrzCuUUTVMr4mYgAjiKx5dh3KFGmXlHLN+qAup akDvN8jV9z+L5MIoAcHZHWH7ISkFeXFqcDUWQp80NStZxvpFp49qgu+GA9tCQK9wtotVgbEYyr MCKuN/DPGS9LovogIWEN/1cO IronPort-SDR: h7qLj8hIAsJoEhiEMYfQmlhRGPgVedpIzXXBpOK6UY6/MkZ9a1mx6sX2ic+CdBvYx7RLhzqOvu BE9Mg5XNGbaS9PDDUs4311bioQmnDbODqReB3t9DsWGQ+xNcprXCUO7vZpBKiLKOZ5csVpeoMt +KgE2ZIr3QUKB30LRL687IhQYjie/AEII0xeJ8xpNpAnWy3ZIB+Rm+9sI7aH+SYuL3qBiq8NYv xc0h2iiocooyp7j8d8Z65OITDmIIDXJmbRCj9ZlD0T7gBK0oHdEn3IKrsMjLNRhYiNKDlFUhRo URU= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432306; x=1656024307; bh=/TIOY+nvX4poh/55m1 67fBtn+VEzcKILhkO0mLZRjj8=; b=RLRLhUFgQE1CaIw2CW5nYU+EjrcpYAAga+ Py2IoKzXqjaoKJw2vInIfbAf07TIGbZVe2DJ2IfJWOilAfLzulVsTDiUIevaznvo G3B2NtGaAdnoY3brEbwC8PqM7NP8zzkZiI2qxPBMaeS/ZaFbxVr/vPQqYhw5pRoV 5ZunLJp7BAv4Hld8UvW85VYNVM+46Mq2hStak/Z4kijzc13DQoTkDwpNqf7cMLHS /0jx2DK7r6PZFfU2fM703cyAagzHqVp94ovCEVzZxC5M4sDEefQPBf4w19udH0YQ xpW/xODyiyljVitoWg6oK5+CVbF9spGLf5bzPrxXeSkhK+AV8Zfg== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Tsukasa OI , Alistair Francis Subject: [PULL 12/23] target/riscv: Move/refactor ISA extension checks Date: Wed, 25 May 2022 08:44:17 +1000 Message-Id: <20220524224428.552334-13-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432737326100001 Content-Type: text/plain; charset="utf-8" From: Tsukasa OI We should separate "check" and "configure" steps as possible. This commit separates both steps except vector/Zfinx-related checks. Signed-off-by: Tsukasa OI Reviewed-by: Alistair Francis Message-Id: Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index b960473f7d..00a068668f 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -630,14 +630,27 @@ static void riscv_cpu_realize(DeviceState *dev, Error= **errp) return; } =20 + if ((cpu->cfg.ext_zve32f || cpu->cfg.ext_zve64f) && !cpu->cfg.ext_= f) { + error_setg(errp, "Zve32f/Zve64f extensions require F extension= "); + return; + } + + /* Set the ISA extensions, checks should have happened above */ if (cpu->cfg.ext_zdinx || cpu->cfg.ext_zhinx || cpu->cfg.ext_zhinxmin) { cpu->cfg.ext_zfinx =3D true; } =20 - if (cpu->cfg.ext_zfinx && !cpu->cfg.ext_icsr) { - error_setg(errp, "Zfinx extension requires Zicsr"); - return; + if (cpu->cfg.ext_zfinx) { + if (!cpu->cfg.ext_icsr) { + error_setg(errp, "Zfinx extension requires Zicsr"); + return; + } + if (cpu->cfg.ext_f) { + error_setg(errp, + "Zfinx cannot be supported together with F extension"); + return; + } } =20 if (cpu->cfg.ext_zk) { @@ -663,7 +676,6 @@ static void riscv_cpu_realize(DeviceState *dev, Error *= *errp) cpu->cfg.ext_zksh =3D true; } =20 - /* Set the ISA extensions, checks should have happened above */ if (cpu->cfg.ext_i) { ext |=3D RVI; } @@ -734,20 +746,9 @@ static void riscv_cpu_realize(DeviceState *dev, Error = **errp) } set_vext_version(env, vext_version); } - if ((cpu->cfg.ext_zve32f || cpu->cfg.ext_zve64f) && !cpu->cfg.ext_= f) { - error_setg(errp, "Zve32f/Zve64f extension depends upon RVF."); - return; - } if (cpu->cfg.ext_j) { ext |=3D RVJ; } - if (cpu->cfg.ext_zfinx && ((ext & (RVF | RVD)) || cpu->cfg.ext_zfh= || - cpu->cfg.ext_zfhmin)) { - error_setg(errp, - "'Zfinx' cannot be supported together with 'F', 'D', '= Zfh'," - " 'Zfhmin'"); - return; - } =20 set_misa(env, env->misa_mxl, ext); } --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433587137517.724176019048; Tue, 24 May 2022 16:06:27 -0700 (PDT) Received: from localhost ([::1]:55132 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdbe-0007YN-2S for importer2@patchew.org; Tue, 24 May 2022 19:06:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60024) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdH6-0007uf-JP for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:12 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdH4-0002Yx-QV for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:12 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:10 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:42 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:10 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78R96H3Qz1SVp1 for ; Tue, 24 May 2022 15:45:09 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ZZ4LZuk8vNAh for ; Tue, 24 May 2022 15:45:09 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78R71QtNz1Rvlc; Tue, 24 May 2022 15:45:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432310; x=1684968310; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=frUCUElYnlZVDEKPU9dR5E9rgETxXuH2w5+laAR3Q4k=; b=fOAxkU6sxkKAGUw41n8gYd+3vlod7+5vrPe0KwjcNHZax2GXmoVF0Tn9 o8U4ApBDm/kSNnsd5pZHEbEr9Q+3j7fpCzibDqw/IaZYZL0Usl83hrLhS EkaCjMLt+BNRZcyoxZf7u2ekZlDXf63cFQyhedxkGd1R5AqkAz/GSfHIG pOSW7wnJc2jq6x3FMSjvH8hSB7tffdmyOrmSm1bpxhN54fGHYCwaFuJL0 bLjkQOvYqwC5Sc9lb1IxXhzfJl/0eanvECuqpR9l03sQPwa4ubZg+TlAQ qMTw1YPpogtyJJb357CxlABzviYxo1oCOzwLEw9Rv2ikhJCFYTfUbE2Cc g==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566681" IronPort-SDR: PfhfIJ9IGNicTb8YF5tqd+zq5seAzIFkD1IdrQF+V6pCMfCBoMTsrw6c3g3YnQS4oLvyAJnKMq XfyJZZLWEY6/8KOro4YjDZcnH572CWz4gk1TaxxGkmc9ntWkIjh3a3pBz0yBF5SZ5b+n8ACLUY 3YEqQxSardJXMH1vXJMVkGyeo1dbO8CTf62OrO+PYR67QWacynDKb7vFRsOdJO4Gmh09niu2CA iYAO0V/59TAnsorBnVCNXDOkSNl0ycgMHvmMLlRNnrYt9qMbSRsFI38TFNW3HUH5BGP9QyGjmz vhE0HiibNSiLl3u35XfhjlLY IronPort-SDR: /HePEpbIsOEXWVdftDbHK2O9fiVFRtuOQ+mG5UOpCWAlPhR4c9BpT8Cpd5IGeXvmx+YvgFAgVD eykb1vInYVfq+0rWUzddqIIKDVLnmknMaLeN3T48mUWrR75MSLtuxAolcZKHhEDfb03YRrJMeC hjNaTi9zOXRw0n1yCEhdMw068SpCqi925OUZJ8mGpuQ/sjNs7kMDLVDEBRLkZ0hZnp9oT2WTr0 cKeWVdzxizgRX+YXeiLc1lylTTZkBFsh7LFFT9aBYnYREKdENz7DOPGCQECarOwuY3ijAFmPRC rCE= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:content-type :mime-version:references:in-reply-to:x-mailer:message-id:date :subject:to:from; s=dkim; t=1653432309; x=1656024310; bh=frUCUEl YnlZVDEKPU9dR5E9rgETxXuH2w5+laAR3Q4k=; b=nFoCgbaWJlDsP9r0IxQRdCY fvswPY2hrdt4/r44O80/2AGzvBV3Pne5t65ogm3PEP+Lt0FA2ddDWl+jpQcpXkBq 223rRB5itY6Y6kid9fUAuQfsQXfNm3Ma0hq48eJg98m+vD7+eWUNduLjUSNch/ru 2C+lRhtF1NEoC/CuZ7kn6QHfYc728Htj5nnqFhE816wHQhmkBJVBi/fRlpZNy4ps SzUtdmve/grZTXVVxdYYF2UuGYfBG/BXF1THCB3a9G+sBiIG1gDbu9+9DQMcxuSl Q7RMRgQhMd6hUA56olqXcyoG1I6/nMnt0GfFoF72NlfSL1JbaAXlfdVQ1aDj1HQ= = X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Bernhard Beschow , Alistair Francis , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 13/23] hw/vfio/pci-quirks: Resolve redundant property getters Date: Wed, 25 May 2022 08:44:18 +1000 Message-Id: <20220524224428.552334-14-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433587940100001 Content-Type: text/plain; charset="utf-8" From: Bernhard Beschow The QOM API already provides getters for uint64 and uint32 values, so reuse them. Signed-off-by: Bernhard Beschow Reviewed-by: Alistair Francis Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20220301225220.239065-2-shentey@gmail.com> Signed-off-by: Alistair Francis --- hw/vfio/pci-quirks.c | 34 +++++++++------------------------- 1 file changed, 9 insertions(+), 25 deletions(-) diff --git a/hw/vfio/pci-quirks.c b/hw/vfio/pci-quirks.c index 0cf69a8c6d..f0147a050a 100644 --- a/hw/vfio/pci-quirks.c +++ b/hw/vfio/pci-quirks.c @@ -1565,22 +1565,6 @@ static int vfio_add_nv_gpudirect_cap(VFIOPCIDevice *= vdev, Error **errp) return 0; } =20 -static void vfio_pci_nvlink2_get_tgt(Object *obj, Visitor *v, - const char *name, - void *opaque, Error **errp) -{ - uint64_t tgt =3D (uintptr_t) opaque; - visit_type_uint64(v, name, &tgt, errp); -} - -static void vfio_pci_nvlink2_get_link_speed(Object *obj, Visitor *v, - const char *name, - void *opaque, Error **err= p) -{ - uint32_t link_speed =3D (uint32_t)(uintptr_t) opaque; - visit_type_uint32(v, name, &link_speed, errp); -} - int vfio_pci_nvidia_v100_ram_init(VFIOPCIDevice *vdev, Error **errp) { int ret; @@ -1618,9 +1602,9 @@ int vfio_pci_nvidia_v100_ram_init(VFIOPCIDevice *vdev= , Error **errp) nv2reg->size, p); QLIST_INSERT_HEAD(&vdev->bars[0].quirks, quirk, next); =20 - object_property_add(OBJECT(vdev), "nvlink2-tgt", "uint64", - vfio_pci_nvlink2_get_tgt, NULL, NULL, - (void *) (uintptr_t) cap->tgt); + object_property_add_uint64_ptr(OBJECT(vdev), "nvlink2-tgt", + (uint64_t *) &cap->tgt, + OBJ_PROP_FLAG_READ); trace_vfio_pci_nvidia_gpu_setup_quirk(vdev->vbasedev.name, cap->tgt, nv2reg->size); free_exit: @@ -1679,15 +1663,15 @@ int vfio_pci_nvlink2_init(VFIOPCIDevice *vdev, Erro= r **errp) QLIST_INSERT_HEAD(&vdev->bars[0].quirks, quirk, next); } =20 - object_property_add(OBJECT(vdev), "nvlink2-tgt", "uint64", - vfio_pci_nvlink2_get_tgt, NULL, NULL, - (void *) (uintptr_t) captgt->tgt); + object_property_add_uint64_ptr(OBJECT(vdev), "nvlink2-tgt", + (uint64_t *) &captgt->tgt, + OBJ_PROP_FLAG_READ); trace_vfio_pci_nvlink2_setup_quirk_ssatgt(vdev->vbasedev.name, captgt-= >tgt, atsdreg->size); =20 - object_property_add(OBJECT(vdev), "nvlink2-link-speed", "uint32", - vfio_pci_nvlink2_get_link_speed, NULL, NULL, - (void *) (uintptr_t) capspeed->link_speed); + object_property_add_uint32_ptr(OBJECT(vdev), "nvlink2-link-speed", + &capspeed->link_speed, + OBJ_PROP_FLAG_READ); trace_vfio_pci_nvlink2_setup_quirk_lnkspd(vdev->vbasedev.name, capspeed->link_speed); free_exit: --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432949600168.25368234680593; Tue, 24 May 2022 15:55:49 -0700 (PDT) Received: from localhost ([::1]:60984 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdRM-0005yB-HY for importer2@patchew.org; Tue, 24 May 2022 18:55:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60134) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHJ-00088i-8U for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:25 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHH-0002Yx-Eu for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:24 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:12 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:44 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:13 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RD3cx2z1SVp1 for ; Tue, 24 May 2022 15:45:12 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id a4mt1z2Cksza for ; Tue, 24 May 2022 15:45:12 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78R96mh8z1Rvlc; Tue, 24 May 2022 15:45:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432323; x=1684968323; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=N5cF/dKhhyij4qdfnlOlBNkdhxs3pRkkLV8LA+excZE=; b=mIyt1hnQIZ/889ByUltNkajDQkTnZ8ICKFmfUS2gjSLrjZ5vpLWgKDfY C8ZlobmzVr5ey/TK3peyxlQoWNmgAF5ABfZuK49Ke9BLhxmaPuqtIyqfD 2c5aNlZdF1VsGSy2mSfQ7ywYz+mmpsFf8aseY1S7I56+zE9OxeKQwuL6y FMLiDInQuam0vKm3kyb+i/NBJzoNZa4nY30OmEplVPhMAwIOwgrv7C3Z7 oCBvQQw/xtFq2GxyIwBwqvKkETs2hFrQfsQi6KNL6FmwfYQzvor/aJZIp x2RiPPUs1CPOwz1Zmf99uYeAarn+hpRAEfHwCFGU0svq1duyjvFxU4KcL w==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566685" IronPort-SDR: 265SSAN8H8pU0OCE+sOZF3OPBtckMj7TXveYMRUqarBzbRtX1ypx/SPu/QJ5s1Y//ijr17JOEJ J471kSzk4IFQO954NHpb4kEZictidfJk3WAhRzOCFIgUxPKlueRIz62vjdX7gu8T1mRsviPzBB wzrhIWP51MlXNb/kznh8G3eTaa6JeF8V5gmFAAsHLHZYnj8qB241qz94M3J3/zxaLc8ziFlntd V/aKy7QbIDhva/PV3vwbnALwYlnOMIwhBYalyaVJvuWGk4vv7U3N1Kp6+ohEyaPi1cal5rqUud yjV79kz8MbFz8otxrr3y61ij IronPort-SDR: 6M/yJFvBV4WMbbv8JxXvLMpqG0dbQgf9a0tqdd37ecvjikD/30qpeJiLtA1Wb/WU8DsyFed4ne xgO07PdBhEB0lvb3W0f80UZWCZsCXBubGGwT+6cnVaZIJcd7MxoEIv29FZHW0FEC11k/00tCbQ FzPS8uGXrVLkcO7qvL8P+vObNzg0zSd12i9DYEnJnXl9X1gJnzcZqkOJWi3rLmvXxH4K0m7/MK 9AuKVYpdbNFwPN2Tr3q+XcXUivd1ncUtCq4XmJRkWHIkcRhE2V5ah1uxM9PXMGfP8Vvz1FRDlm p/s= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:content-type :mime-version:references:in-reply-to:x-mailer:message-id:date :subject:to:from; s=dkim; t=1653432312; x=1656024313; bh=N5cF/dK hhyij4qdfnlOlBNkdhxs3pRkkLV8LA+excZE=; b=YzmTf6q+ORRpYyJEG9jzfjn aQXu0GXVi80ylPF4a4Q28mmRu/ldjPx1DqU5lr9sttenfNDooSMSVMGEiZXTNyLZ eO9zHArLT9Wt1hIOvp2nPFDXDabtUKYZUXoopGqPIMDiUAMtsd92x4iHN5yrwTIs IBykVbo2zZMBrJ9CfvXj3RfIPnaj4t1lNbUrA3dHlAdVahgTDsM3cjbBcMXSw8AT 0E0ou4Aaf5vBlClxkxF29+yTvqHH9PdNFgKqrORsmI7Etu7fMF8W+GHONj0aPzmv GdQQ6XYHmKdlZ5aYsE0cwL9RlsKdjy5irjBqg2ExmQTKWWJQE+i4zmQ//kzMJYg= = X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Bernhard Beschow , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Alistair Francis Subject: [PULL 14/23] hw/riscv/sifive_u: Resolve redundant property accessors Date: Wed, 25 May 2022 08:44:19 +1000 Message-Id: <20220524224428.552334-15-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432950432100001 Content-Type: text/plain; charset="utf-8" From: Bernhard Beschow The QOM API already provides accessors for uint32 values, so reuse them. Signed-off-by: Bernhard Beschow Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Alistair Francis Message-Id: <20220301225220.239065-3-shentey@gmail.com> Signed-off-by: Alistair Francis --- hw/riscv/sifive_u.c | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index a2495b5ae7..e4c814a3ea 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -713,36 +713,20 @@ static void sifive_u_machine_set_start_in_flash(Objec= t *obj, bool value, Error * s->start_in_flash =3D value; } =20 -static void sifive_u_machine_get_uint32_prop(Object *obj, Visitor *v, - const char *name, void *opaqu= e, - Error **errp) -{ - visit_type_uint32(v, name, (uint32_t *)opaque, errp); -} - -static void sifive_u_machine_set_uint32_prop(Object *obj, Visitor *v, - const char *name, void *opaqu= e, - Error **errp) -{ - visit_type_uint32(v, name, (uint32_t *)opaque, errp); -} - static void sifive_u_machine_instance_init(Object *obj) { SiFiveUState *s =3D RISCV_U_MACHINE(obj); =20 s->start_in_flash =3D false; s->msel =3D 0; - object_property_add(obj, "msel", "uint32", - sifive_u_machine_get_uint32_prop, - sifive_u_machine_set_uint32_prop, NULL, &s->msel); + object_property_add_uint32_ptr(obj, "msel", &s->msel, + OBJ_PROP_FLAG_READWRITE); object_property_set_description(obj, "msel", "Mode Select (MSEL[3:0]) pin state"); =20 s->serial =3D OTP_SERIAL; - object_property_add(obj, "serial", "uint32", - sifive_u_machine_get_uint32_prop, - sifive_u_machine_set_uint32_prop, NULL, &s->serial= ); + object_property_add_uint32_ptr(obj, "serial", &s->serial, + OBJ_PROP_FLAG_READWRITE); object_property_set_description(obj, "serial", "Board serial number"); } =20 --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433141115861.2806756256462; Tue, 24 May 2022 15:59:01 -0700 (PDT) Received: from localhost ([::1]:39300 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdUR-0002rh-L5 for importer2@patchew.org; Tue, 24 May 2022 18:58:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60160) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHM-0008AP-0R for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:29 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62493) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHK-0002oX-7j for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:27 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:15 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:47 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:16 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RH1fXnz1SVp0 for ; Tue, 24 May 2022 15:45:15 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ywdpEg9-KXCl for ; Tue, 24 May 2022 15:45:14 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RD4zKRz1Rvlc; Tue, 24 May 2022 15:45:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432326; x=1684968326; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=/km2jMjpOPfQy5UybcLUCqHKpRCYx8nEX6nYcOp0r3w=; b=IdAHmKQB96ROVsd5nuTqvt7bElUyL8Zm6PXEleOFfnOkgHPx0YPvmFUd qGwX4oFk02sHBMoSnVJekr3C1uIujLXEWMUMBj8mmy+JfIm8iHn8qYOYJ VQDc2N6NvxxC+TuU5JBlXmnLcl0zMZ7Tj8G1PJWzCrbLvcNg1Vx6KjYaP xsyBv2lUk41sSJgmBG9QIJItQE+oxFOb0PGUutcS079uWDgeK4jDDvYn8 D4o8q8YxwB/RJyeqDtfa5UF9g6Ut6Q61LsaVU/QPNEcKdSwq1Yg1uy9Cg jG/L67X5WAD62NLmf0Kp/hQNKizG7jvcWZjFtlTDNltlXekrbGxUPaQFA Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566693" IronPort-SDR: JskTBFVy2btLYftrokFySjnwT8kSim0gy4Yi3K+tsuoCHsfaLdbwl2UUjIwseNKnljTrl+Rdbf 7XJJUUvcj5ahvPS1bhcen1Ypcjjn+/GtZYV2B87VDEXpAvtDWkzSoIYBh1yb4yvDQWYlafW/EH B5BlnuS4MVDFp8b9Hqu8hJe0BZi3gZARrTEb4QGZBb7ofxcTHKF+rxYsNNzjwJ5gsp18mDr5gp pDzerBfre61dZDkMysMcp3gotXRxi3dwbeefOaTtL+o2ZY3pXtRVLf6scN727MVgaCoyxZFPHG dIofYKbbzpo5Rci6CNxFpLg/ IronPort-SDR: UYkOdTzCVzQakLcPtkWUgT4XCqZUTbWNsvrdm49tjIueHt9ALOaqNtzbpEXBz59U5iRk0tR6Ta q8aTrEn8sCmfpN58sXx3WRBScWwJgCgTIhvg427S5nLX82vs4UIW5fDr7/Sel2GR6EVh5f8mre mJF9bVA1dVKo4xQaKpWZetpfhnohv7yHf8E19qIlH2Qb7eXWhl+hxNm0c64/8k4FlMGQ5x6cEv kRU2uBhZ/J1L/6fefjzNkQVmpQyeLAG5VWhxZBRlTFj7SfJC2d4fjmNFnpJrJpo4BBpGcU06lr aNs= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432314; x=1656024315; bh=/km2jMjpOPfQy5Uybc LUCqHKpRCYx8nEX6nYcOp0r3w=; b=mL8mu7QqfKu4Kk4OroWKEnRRuoEPh3wTD6 ho5jwndK/ytCWqmFJaTFe2PzVSFpEfhK2o8g3agyMHAk9JWAzLkENlXlIvZyPwe3 pn9CIA0yuUsoJLCPg2CKrq7KsBAMt03Us0ABuyGU55vRS+Ix0NV7GmsUKCgHjkgQ SJuZg/6p7lRgw8IS9sKa/MgG42f2N6qXV3Bx1LLRZVJYJOBtPn2DNqAKTed36ecE Y3dvooc+13nuRPzBpDPk+4qzeepAuR1f/NyLwpA6T1iFkCjZlNXMA4Uj6u7M0FA7 ukpFlJPSeCji3asAughoXHDrDU45XunLx4r6bBMEnm1d4ij11YXg== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Weiwei Li , Junqiang Wang , Alistair Francis Subject: [PULL 15/23] target/riscv: check 'I' and 'E' after checking 'G' in riscv_cpu_realize Date: Wed, 25 May 2022 08:44:20 +1000 Message-Id: <20220524224428.552334-16-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433141339100003 Content-Type: text/plain; charset="utf-8" From: Weiwei Li - setting ext_g will implicitly set ext_i Signed-off-by: Weiwei Li Signed-off-by: Junqiang Wang Reviewed-by: Alistair Francis Message-Id: <20220518012611.6772-1-liweiwei@iscas.ac.cn> Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 00a068668f..87e1eddce6 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -584,18 +584,6 @@ static void riscv_cpu_realize(DeviceState *dev, Error = **errp) uint32_t ext =3D 0; =20 /* Do some ISA extension error checking */ - if (cpu->cfg.ext_i && cpu->cfg.ext_e) { - error_setg(errp, - "I and E extensions are incompatible"); - return; - } - - if (!cpu->cfg.ext_i && !cpu->cfg.ext_e) { - error_setg(errp, - "Either I or E extension must be set"); - return; - } - if (cpu->cfg.ext_g && !(cpu->cfg.ext_i && cpu->cfg.ext_m && cpu->cfg.ext_a && cpu->cfg.ext_f && cpu->cfg.ext_d && @@ -610,6 +598,18 @@ static void riscv_cpu_realize(DeviceState *dev, Error = **errp) cpu->cfg.ext_ifencei =3D true; } =20 + if (cpu->cfg.ext_i && cpu->cfg.ext_e) { + error_setg(errp, + "I and E extensions are incompatible"); + return; + } + + if (!cpu->cfg.ext_i && !cpu->cfg.ext_e) { + error_setg(errp, + "Either I or E extension must be set"); + return; + } + if (cpu->cfg.ext_f && !cpu->cfg.ext_icsr) { error_setg(errp, "F extension requires Zicsr"); return; --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433380070986.7422999234361; Tue, 24 May 2022 16:03:00 -0700 (PDT) Received: from localhost ([::1]:47278 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdYJ-0001tP-2s for importer2@patchew.org; Tue, 24 May 2022 19:02:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60178) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHP-0008Hw-Ru for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:31 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62510) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHO-0002sH-2Z for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:31 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:17 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:49 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:18 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RK4bgRz1Rvlx for ; Tue, 24 May 2022 15:45:17 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id UUB_W7A0jakc for ; Tue, 24 May 2022 15:45:17 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RH35GXz1Rvlc; Tue, 24 May 2022 15:45:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432329; x=1684968329; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=01+2gQafXHXAH8DLR3SOqCtHNtEwqLBrW4OqHDOwtfY=; b=n9Ppy/9OThMru+M1LsAQyiOs7qUsAVNxGJXomEH3BAiZ6fFOW3jOrkxF DYozGCD/LhEZikd+BJASFMFZH9P/vWxMmp3yyW65bqmp0tmyBTXbPsEX7 TI7OBELRh6dKBhuAioQ4T2mOulryvvIURVdICsvEMF55+ACET3vQCSl8a qgNlS+wk4tErpqxz65EGMlXhGf1n61DDxAl3VHQXlP7V1KAzU0vXQ25K5 topOoS9zNa7DKLaMpNcJ6oyOGVBESdW34u/+HB5lVdltfhpzg/pau31Wk JQVytNN8KwCgjKpxfLZYBdOxFSRJC+SpJIboTXCcDH/m8O+TB80MEPazD w==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566696" IronPort-SDR: 1ICC2nmRIlFx2EYYBBJCbRgHZ2ezGhW99YgGSOF/SRCwrmgf0aPSNDLdiqqxQrsbx0XN/e+v3N xuhqUz3NGp8C02P53JHJAz+/3mpQWIcFqxi1t9T15WM5rMGXcmSv0gtC7u8flm7a7FMIwgZNrE vj2cHnyfyYAQu+0Vw4wvMDbRXk94GpgeEvOEdC+NZEZ7tVBxnQ/AzNaQZyJyWI/yP+BsqBMh2p 0yKlay5WAEiPAgc8xCr5HGVXOlKan3YXfU00r/WEzNU+hqGgb6KVCnUTsAH0SDo7vm7pCmqda4 YcZwXLlZWNXq09owS+Ji30n/ IronPort-SDR: 5PR9RqPBD27WGi0Bdsf9OSg5wvRHB2s4dTNwuTc9TCz+hny5eY+lCklhoct0qfcuvoev12+ChA c8dh957/gGb0vKo93VokII9jF0qvJ/kJA94OoNC1qrXaZEX62JLvhoVeFqwm70peIsgd28wXDt F8/BWV/2sSZ4QxvB2DaYkXZvICfKwdkuL9uyMZ5mW+KdJL55BVx8xdpyP7B2KVY/0yuWyGOu0p BsCWumkToosRo8WzYHQ+XWzfXTEKbuxXQe8k6g2QOTjoSPijvSCgtImuVXPEo11mvf/6v92bYl JqA= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432317; x=1656024318; bh=01+2gQafXHXAH8DLR3 SOqCtHNtEwqLBrW4OqHDOwtfY=; b=HZcdOQzDTy4yO3YTT5UH73OSTm180LNHWM HWjKCy+YhYGvOCb0AGy6+awlup+KzYgred01UHNRqVNp2kphyQyXUAyyAaqtBj00 9PjUVnJtIlTcJeyDuFrMU36rH585z3tdg2CuMagbWVZe5Iffp5o/SdDCiuJYsCub lrKCNrOi8CaIpj5auGhQyw+nIv0V9vCgSH52pHDJbxvAtDgqmZO2ramq1Sb0Pwwg wRmWi723DJaOdZu+SlwSfPRQSm9deJDdZe/HHUZfEYh0JI3RyPr35+PeLCuwOt5E eDmIfOxV5M2ij6my2nq9c+pvbYlk1VbRPWW8fT7ZcXJXTMPPV0CA== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Frank Chang , Alistair Francis Subject: [PULL 16/23] target/riscv: Fix typo of mimpid cpu option Date: Wed, 25 May 2022 08:44:21 +1000 Message-Id: <20220524224428.552334-17-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433380728100001 Content-Type: text/plain; charset="utf-8" From: Frank Chang "mimpid" cpu option was mistyped to "mipid". Fixes: 9951ba94 ("target/riscv: Support configuarable marchid, mvendorid, m= ipid CSR values") Signed-off-by: Frank Chang Reviewed-by: Alistair Francis Message-Id: <20220523153147.15371-1-frank.chang@sifive.com> Signed-off-by: Alistair Francis --- target/riscv/cpu.h | 2 +- target/riscv/cpu.c | 4 ++-- target/riscv/csr.c | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/target/riscv/cpu.h b/target/riscv/cpu.h index f5ff7294c6..44975e3e5a 100644 --- a/target/riscv/cpu.h +++ b/target/riscv/cpu.h @@ -408,7 +408,7 @@ struct RISCVCPUConfig { =20 uint32_t mvendorid; uint64_t marchid; - uint64_t mipid; + uint64_t mimpid; =20 /* Vendor-specific custom extensions */ bool ext_XVentanaCondOps; diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 87e1eddce6..fe8ceb4133 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -37,7 +37,7 @@ #define RISCV_CPU_MARCHID ((QEMU_VERSION_MAJOR << 16) | \ (QEMU_VERSION_MINOR << 8) | \ (QEMU_VERSION_MICRO)) -#define RISCV_CPU_MIPID RISCV_CPU_MARCHID +#define RISCV_CPU_MIMPID RISCV_CPU_MARCHID =20 static const char riscv_single_letter_exts[] =3D "IEMAFDQCPVH"; =20 @@ -869,7 +869,7 @@ static Property riscv_cpu_properties[] =3D { =20 DEFINE_PROP_UINT32("mvendorid", RISCVCPU, cfg.mvendorid, 0), DEFINE_PROP_UINT64("marchid", RISCVCPU, cfg.marchid, RISCV_CPU_MARCHID= ), - DEFINE_PROP_UINT64("mipid", RISCVCPU, cfg.mipid, RISCV_CPU_MIPID), + DEFINE_PROP_UINT64("mimpid", RISCVCPU, cfg.mimpid, RISCV_CPU_MIMPID), =20 DEFINE_PROP_BOOL("svinval", RISCVCPU, cfg.ext_svinval, false), DEFINE_PROP_BOOL("svnapot", RISCVCPU, cfg.ext_svnapot, false), diff --git a/target/riscv/csr.c b/target/riscv/csr.c index 4ea7df02c9..0d5bc2f41d 100644 --- a/target/riscv/csr.c +++ b/target/riscv/csr.c @@ -674,13 +674,13 @@ static RISCVException read_marchid(CPURISCVState *env= , int csrno, return RISCV_EXCP_NONE; } =20 -static RISCVException read_mipid(CPURISCVState *env, int csrno, - target_ulong *val) +static RISCVException read_mimpid(CPURISCVState *env, int csrno, + target_ulong *val) { CPUState *cs =3D env_cpu(env); RISCVCPU *cpu =3D RISCV_CPU(cs); =20 - *val =3D cpu->cfg.mipid; + *val =3D cpu->cfg.mimpid; return RISCV_EXCP_NONE; } =20 @@ -3372,7 +3372,7 @@ riscv_csr_operations csr_ops[CSR_TABLE_SIZE] =3D { /* Machine Information Registers */ [CSR_MVENDORID] =3D { "mvendorid", any, read_mvendorid }, [CSR_MARCHID] =3D { "marchid", any, read_marchid }, - [CSR_MIMPID] =3D { "mimpid", any, read_mipid }, + [CSR_MIMPID] =3D { "mimpid", any, read_mimpid }, [CSR_MHARTID] =3D { "mhartid", any, read_mhartid }, =20 [CSR_MCONFIGPTR] =3D { "mconfigptr", any, read_zero, --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433589772164.54356367590458; Tue, 24 May 2022 16:06:29 -0700 (PDT) Received: from localhost ([::1]:55190 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdbg-0007ap-Ot for importer2@patchew.org; Tue, 24 May 2022 19:06:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60208) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHX-00005T-BT for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:39 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHT-0002Yx-Ez for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:36 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:20 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:52 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:21 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RN2s4Xz1SVp1 for ; Tue, 24 May 2022 15:45:20 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id CpZhvwdbyOsQ for ; Tue, 24 May 2022 15:45:20 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RK682Dz1Rvlc; Tue, 24 May 2022 15:45:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432335; x=1684968335; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Jnl2HtZnNmgFrBR2MT4hFh8QF2tgzWiVwAm6MaBeh6g=; b=LL6FBYpyAHtKqjamz4aP9EG4CziJeXvuLCvsa3Zxpq7c6qO2Yra7/VIA IA3VfrZwZwrIytsxnyaFLR1NWtjoWtTDcaR6WXMIbIQB5Dp++O6ep6P4T BU6z1KwpfPogNwt0o+jNZlcj+FPQunZCYulAt6XWXOfwg54EQQ38lVFSE mdipcfeyXfpg1z9ztNNhID4c5UBbB+2DNvtWcHjCbXOc2lmGnMTu9bi6W nuZoStB8orBOQmc7aHoiIsCsesEqhYdlFwphbDD+QIO3RRFVONjGHXDVV uWHeuj+uoWIx44v6VouLbjbGKVb0zYjIk/2nUwfRqTC23AtDoZA7sVCMn g==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566702" IronPort-SDR: 22eHD0rkJVTwS7ZD2gI4UpDSs89Ph4gZpqIKRZSrkHAEa0u/0zWYkgOAYrMZBfXyu/xqsogBy0 jDFR8pyYgL1zPfmpieT+7fShNhl+xe3dsVLcbLCDxHNR149Uzn0EaAi6TeSYf0NY5KtJLXexug 5+a7xHk+QhfnIch24pq8Kje+b0xN4S3KeRzCK0TvYxzmfrlCXreykjaD4Wf1EMQqQRK/pLyoaQ xTH+P2SLji/kJ/vU9q87WB34bYzP8Mu4e96wpwoceu0pEUW5wX0yAK5NtKdBW+NpHOtdmRa3Qt V6UzTLBbBVUGY0Mj7OOkA973 IronPort-SDR: /xKv0QHO1wVN+0NCuuj46in5VBWjzbhGwYpuw65IfurAuW2q1Apu4GfraZPhwAOgypu0AKTsTS v8Ch2Xbq4+ZV/HtePupvxCWsF22HccoaZkEBnMzwpoeAIFLP/x7RyECWUIMT0hXQmfskNDLQlr dp7hEXTnmjz2AHaeBN/UFgdq4tvYtASGg9dBcT3jABYeyeijl4NZqMAD2WPq1/GX4sAkhoDUfq h0aAmB3iWznxhI9xb6clgE9EKLUhON/sGQZz14x+u1nSUpEZVtGB9oPaUatSkihDF491P/X5GZ ocM= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432320; x=1656024321; bh=Jnl2HtZnNmgFrBR2MT 4hFh8QF2tgzWiVwAm6MaBeh6g=; b=arCDp6US0Sv/RRiKbHWAPy+4dkeV7s6rE+ /AzQY+U13RksFHKPJ5PUs63aQcMNciJGd3Rgjzm1N3c6NshgeBUzqV5XoippGgKs qZ8bYvqrjYf8R+It9mgZ46u7GGbCLlMmm1LnCwL3yViB3HIPKQYoztHAXLFq60+U Lp97GgXSUhTqua0Fc5LsoJMC49Mid/oA5wghJSoFZPdPpj10E6wcYeHDYRFMsMbU TXloRmiub8ddPLVdXWqHpVjBawidr71YeRz27481vUwAYE7vjg2+CZ+VYgNQx5DF YmN9apP//meaYWQRfwMnk+/rqTyZvrCTu+85GG1/mtLVYn69fMfQ== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Anup Patel , Alistair Francis , Frank Chang Subject: [PULL 17/23] target/riscv: Fix csr number based privilege checking Date: Wed, 25 May 2022 08:44:22 +1000 Message-Id: <20220524224428.552334-18-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433589925100003 Content-Type: text/plain; charset="utf-8" From: Anup Patel When hypervisor and VS CSRs are accessed from VS-mode or VU-mode, the riscv_csrrw_check() function should generate virtual instruction trap instead illegal instruction trap. Fixes: 0a42f4c44088 (" target/riscv: Fix CSR perm checking for HS mode") Signed-off-by: Anup Patel Reviewed-by: Alistair Francis Reviewed-by: Frank Chang Message-Id: <20220511144528.393530-2-apatel@ventanamicro.com> Signed-off-by: Alistair Francis --- target/riscv/csr.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/target/riscv/csr.c b/target/riscv/csr.c index 0d5bc2f41d..6dbe9b541f 100644 --- a/target/riscv/csr.c +++ b/target/riscv/csr.c @@ -3139,7 +3139,7 @@ static inline RISCVException riscv_csrrw_check(CPURIS= CVState *env, int read_only =3D get_field(csrno, 0xC00) =3D=3D 3; int csr_min_priv =3D csr_ops[csrno].min_priv_ver; #if !defined(CONFIG_USER_ONLY) - int effective_priv =3D env->priv; + int csr_priv, effective_priv =3D env->priv; =20 if (riscv_has_ext(env, RVH) && env->priv =3D=3D PRV_S) { /* @@ -3152,7 +3152,11 @@ static inline RISCVException riscv_csrrw_check(CPURI= SCVState *env, effective_priv++; } =20 - if (!env->debugger && (effective_priv < get_field(csrno, 0x300))) { + csr_priv =3D get_field(csrno, 0x300); + if (!env->debugger && (effective_priv < csr_priv)) { + if (csr_priv =3D=3D (PRV_S + 1) && riscv_cpu_virt_enabled(env)) { + return RISCV_EXCP_VIRT_INSTRUCTION_FAULT; + } return RISCV_EXCP_ILLEGAL_INST; } #endif --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653432520583838.2053867419316; Tue, 24 May 2022 15:48:40 -0700 (PDT) Received: from localhost ([::1]:46178 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdKR-0003pd-Ah for importer2@patchew.org; Tue, 24 May 2022 18:48:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60240) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHZ-0000Ai-2d for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:41 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62493) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHX-0002oX-AE for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:40 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:22 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:54 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:23 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RQ5nFSz1SVny for ; Tue, 24 May 2022 15:45:22 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id UNNPstkddhlb for ; Tue, 24 May 2022 15:45:22 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RN4HtZz1Rvlc; Tue, 24 May 2022 15:45:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432339; x=1684968339; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=6NkxVoKV+MyZURRtDEFl/naZ0w3j4SzRqRi1vZAomWQ=; b=kGv1RNXe7nW8wa64qAj/thDKSXpeBaMjmwWvlGZboR7pm71XdflXGZNR ZnfXOr8+XuyiadhFvIuOdluv56FD/0nCS0BfoJatCqkCfK+SUKdQQbVTw B2sa1Quob48D41P5czOKW8YIUDDuuTM3gFeYmrNJbPKxPypF6joBCwkGW eBjs0PveyBggTwjr0Sjow/pmgc7+Y9rmawNKK0B+HjelzY07FF8rqk3i2 2cOZ1oi8Hg4mu9OFseAtbYwP0tCv+jZ8cLD7l66T9L/dXXlK5WQpc5WHm jRz5JusDr/IGRbVtGJ1IKjAr8Pdr3mqEWXXEJtiB7bviy+mldR/YfIY8W Q==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566705" IronPort-SDR: p0D7LtBZfNNlgFTewVDnAsxWNidddtd8WL5ownUBSV1WmTigcJtCRO8eIHQ1k2p0c33e51n4q6 tzbR5HpxjO7zZmV3uh2MnmSV3ROhpOt7AThxuxYQQJ64Nr69K8zjkMAjcWT2hXGNeAloaJ0fK6 MFycAswlnStj90DmTZaW8U3wxQNF5XmFeuS+S3eia068HOF4lBFsg2hT0ogB1OIdOkNnZ59O/f mog3kcen0VW9MW6wCZODXoFZ/k3wuKs+Du8dSCUqZoNDBfgzrJLRJGjrQalYxuZvas1OpyHDfh Mx5o5VlGDb4Ume+zwGFZB3w2 IronPort-SDR: TAOy85bVYjdHl94iuHMobmFtBUzxSKSc0lVi4U04jpWZLpGNFRNPvJoRkxdce4HGWLHpwnePN9 I/rFtSncW01MsctjIrKr2lm3ClCSmhVQCAIZJMIvaM6bLcwOIrEOrqtAnJ3o42Eq7SzQLf5qV3 NerILPB9XaunAEXZ4+G1gHWJW56PyCW/GZZmaXyvJcrpMspWFaJZVj1YNUKD7kd90dOuKlhZV0 WWQmVNs6tApE1bITIIc51FjTd0sgZYi2xbt9k5UJ4d8cKmHsl13pn6NG0PzGs1z6AZ2c1Tb3B3 HpQ= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432322; x=1656024323; bh=6NkxVoKV+MyZURRtDE Fl/naZ0w3j4SzRqRi1vZAomWQ=; b=ABfupcybOY1eoXvzpFhwp9N7m6WfciEt5/ 2CwwJFq5CGpILwuTT8ozLDR53VnEkX4X9gYc62dHAWKUZQ6aZu9R/xks6kTv6sYp lrrX1gYBqGvKpeWk/q1BuypzlEzBwrjsSnb2H4wIGkKtL7PiLeaMEl/rGd5wE6A6 CdXEsxFwWF43/0pURRNAfPZ/0TnxwTfrPFDpIJKlGzfzUaU90h4PXK8H4YmSF8KV 8kwhDTwC6llF6eD6jZKvfCg0cmR8pdaODQf99scDs+uvDp7lbXPa/fEr84Ub9uty gYIzxlGKlUt+Dx7I6oGZXg7dqISuCEphztILbDQOEuP8hyz8RC1A== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Anup Patel , Alistair Francis Subject: [PULL 18/23] target/riscv: Fix hstatus.GVA bit setting for traps taken from HS-mode Date: Wed, 25 May 2022 08:44:23 +1000 Message-Id: <20220524224428.552334-19-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432521857100001 Content-Type: text/plain; charset="utf-8" From: Anup Patel Currently, QEMU does not set hstatus.GVA bit for traps taken from HS-mode into HS-mode which breaks the Xvisor nested MMU test suite on QEMU. This was working previously. This patch updates riscv_cpu_do_interrupt() to fix the above issue. Fixes: 86d0c457396b ("target/riscv: Fixup setting GVA") Signed-off-by: Anup Patel Reviewed-by: Alistair Francis Message-Id: <20220511144528.393530-3-apatel@ventanamicro.com> Signed-off-by: Alistair Francis --- target/riscv/cpu_helper.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/target/riscv/cpu_helper.c b/target/riscv/cpu_helper.c index e1aa4f2097..b16bfe0182 100644 --- a/target/riscv/cpu_helper.c +++ b/target/riscv/cpu_helper.c @@ -1367,7 +1367,7 @@ void riscv_cpu_do_interrupt(CPUState *cs) case RISCV_EXCP_INST_PAGE_FAULT: case RISCV_EXCP_LOAD_PAGE_FAULT: case RISCV_EXCP_STORE_PAGE_FAULT: - write_gva =3D true; + write_gva =3D env->two_stage_lookup; tval =3D env->badaddr; break; case RISCV_EXCP_ILLEGAL_INST: @@ -1434,7 +1434,6 @@ void riscv_cpu_do_interrupt(CPUState *cs) /* Trap into HS mode */ env->hstatus =3D set_field(env->hstatus, HSTATUS_SPV, fals= e); htval =3D env->guest_phys_fault_addr; - write_gva =3D false; } env->hstatus =3D set_field(env->hstatus, HSTATUS_GVA, write_gv= a); } --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 165343278065063.83610092783249; Tue, 24 May 2022 15:53:00 -0700 (PDT) Received: from localhost ([::1]:54774 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdOd-0001em-Il for importer2@patchew.org; Tue, 24 May 2022 18:52:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60282) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHc-0000Mf-I7 for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:44 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62510) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHa-0002sH-5D for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:44 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:25 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:04:57 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:26 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RT4ZPCz1Rwrw for ; Tue, 24 May 2022 15:45:25 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id J345bUTKQk3f for ; Tue, 24 May 2022 15:45:25 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RR0J3qz1Rvlc; Tue, 24 May 2022 15:45:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432341; x=1684968341; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=97ze1V/foFHLxGP9QD0ydPibxN4CgnPuVY9vtotPoGE=; b=I9IMPZ/ZxN+Rd23tGnO5vxeYQpyySAGHdlHvUZqc9q2s/kbqUj5mnb+k r63VFN7taWH8aZ/bG5u3sHkRREZu/veeb1MN3yd16SuDBgEKhrtr9Pe2n OTpjEk1CqVb6MbC+jHOwwYGvfM4Xvv2DEhZCRt6YqjEGr56rzgjHgHp7h wHJNTclza5l55lnMTqX+fTZf/pwhPs2upt8RJqUWmdJJKLRcxCGUvExuI How9LhDpSziWbPdsXApZU3rRkwZV544huXZZw+F3aHR43LTbo2bOkw/RP blUPt4Y2adT6O7ARA7DFEb+aoQCg3iEGlJgyNTO59vKd0EMVOO1hsW7e4 A==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566708" IronPort-SDR: v/XHwLFV/FhW76V51EEYZe85pCovulVm8AnceKzOLKza9dW4Ozk9Rd65DkmaHorNhmkuC1ykHY 2iCY9cS8D2LMq/O/N0eYmf1N99Ch0IiHIsK/WljDbo66OHhU5WhnB1EoaLa8AYTPoYJUbY9KNW 0DzUV8+4EsZxlRTf4/WMJnssBr7uHv5HcjTLV0U9x9QHmRSJZDZvN+0JbbN6Sl7p3YIEM9YvCp pKyfpSDbxe+HyhHQN2FMIEH4gy5ig1ror1KvXy8vgTy1zQ6hV+8cfZBZ4b3ndKNnsaqHESmOMe IDY8lLkNAZsm2uwnnvn2elNR IronPort-SDR: GDb0xU6JrraJxnNZZVyPJgzXmgTl/K/FSTIu6vf9FHjk791J9zp5JjTVwPzDXJsmYDmQGYkkwI qaqatjs2PDtH76g/cDW+bRhOYzWywJSKuupSQY+rlGSlPdhLLo6FYXAHpOFzsL+aFj9SMRWGvQ 7kOlFp+0sWVFSQGcAlAopy0P5HKg0lF119sX1WUnSK8qHA7EJjPVzozbdkDynDDJO6V1omm6R8 3Wyi8iI0JEyAy9nIx5I3cdxFFuBRSCDbyUZC1MYoy9Vni9VxKHAcuj2CpsA/3vudObpDs6e0vj oZQ= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432325; x=1656024326; bh=97ze1V/foFHLxGP9QD 0ydPibxN4CgnPuVY9vtotPoGE=; b=AlWG+qDRptBE0Vq8L1rmd0Rdan7NTO8EW5 aL8BLfN01zrq8rzYMjcTbh07vMEYHETI+tJEy7YAn+0LW15ElFTqhDU8QzFU6ONf YTRxScNqGQkiuaV7GgasuVHZysk/w0ZovM8xwrVhnbgEInoIUC5rbfyqYLbK1DWe r1YJVlQzmnuoQyg/wlBYnLmj5zIQKZPpvTFZ80IXrcDBgO6uPsGH7r/IdgauFUVs O/c/7zGWAYRy6I5jEas5yl6Bzjt52jVRrXIJKjiptd/rb4OivZGw9/o2nEkytLki 0ISe3zfHW8xX+tNDix8cSPDJ5Y414lhGlOg54WRvIx7+/zrpUwuw== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Anup Patel , Frank Chang , Alistair Francis Subject: [PULL 19/23] target/riscv: Set [m|s]tval for both illegal and virtual instruction traps Date: Wed, 25 May 2022 08:44:24 +1000 Message-Id: <20220524224428.552334-20-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653432781512100001 Content-Type: text/plain; charset="utf-8" From: Anup Patel Currently, the [m|s]tval CSRs are set with trapping instruction encoding only for illegal instruction traps taken at the time of instruction decoding. In RISC-V world, a valid instructions might also trap as illegal or virtual instruction based to trapping bits in various CSRs (such as mstatus.TVM or hstatus.VTVM). We improve setting of [m|s]tval CSRs for all types of illegal and virtual instruction traps. Signed-off-by: Anup Patel Reviewed-by: Frank Chang Reviewed-by: Alistair Francis Message-Id: <20220511144528.393530-4-apatel@ventanamicro.com> Signed-off-by: Alistair Francis --- target/riscv/cpu.h | 8 +++++++- target/riscv/cpu.c | 2 ++ target/riscv/cpu_helper.c | 1 + target/riscv/translate.c | 17 +++++++++++++---- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/target/riscv/cpu.h b/target/riscv/cpu.h index 44975e3e5a..f08c3e8813 100644 --- a/target/riscv/cpu.h +++ b/target/riscv/cpu.h @@ -30,6 +30,12 @@ =20 #define TCG_GUEST_DEFAULT_MO 0 =20 +/* + * RISC-V-specific extra insn start words: + * 1: Original instruction opcode + */ +#define TARGET_INSN_START_EXTRA_WORDS 1 + #define TYPE_RISCV_CPU "riscv-cpu" =20 #define RISCV_CPU_TYPE_SUFFIX "-" TYPE_RISCV_CPU @@ -140,7 +146,7 @@ struct CPUArchState { target_ulong frm; =20 target_ulong badaddr; - uint32_t bins; + target_ulong bins; =20 target_ulong guest_phys_fault_addr; =20 diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index fe8ceb4133..ce1c257eef 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -406,6 +406,7 @@ void restore_state_to_opc(CPURISCVState *env, Translati= onBlock *tb, } else { env->pc =3D data[0]; } + env->bins =3D data[1]; } =20 static void riscv_cpu_reset(DeviceState *dev) @@ -445,6 +446,7 @@ static void riscv_cpu_reset(DeviceState *dev) env->mcause =3D 0; env->miclaim =3D MIP_SGEIP; env->pc =3D env->resetvec; + env->bins =3D 0; env->two_stage_lookup =3D false; =20 /* Initialized default priorities of local interrupts. */ diff --git a/target/riscv/cpu_helper.c b/target/riscv/cpu_helper.c index b16bfe0182..d99fac9d2d 100644 --- a/target/riscv/cpu_helper.c +++ b/target/riscv/cpu_helper.c @@ -1371,6 +1371,7 @@ void riscv_cpu_do_interrupt(CPUState *cs) tval =3D env->badaddr; break; case RISCV_EXCP_ILLEGAL_INST: + case RISCV_EXCP_VIRT_INSTRUCTION_FAULT: tval =3D env->bins; break; default: diff --git a/target/riscv/translate.c b/target/riscv/translate.c index 0cd1d9ee94..55a4713af2 100644 --- a/target/riscv/translate.c +++ b/target/riscv/translate.c @@ -107,6 +107,8 @@ typedef struct DisasContext { /* PointerMasking extension */ bool pm_mask_enabled; bool pm_base_enabled; + /* TCG of the current insn_start */ + TCGOp *insn_start; } DisasContext; =20 static inline bool has_ext(DisasContext *ctx, uint32_t ext) @@ -236,9 +238,6 @@ static void generate_exception_mtval(DisasContext *ctx,= int excp) =20 static void gen_exception_illegal(DisasContext *ctx) { - tcg_gen_st_i32(tcg_constant_i32(ctx->opcode), cpu_env, - offsetof(CPURISCVState, bins)); - generate_exception(ctx, RISCV_EXCP_ILLEGAL_INST); } =20 @@ -1017,6 +1016,13 @@ static uint32_t opcode_at(DisasContextBase *dcbase, = target_ulong pc) /* Include decoders for factored-out extensions */ #include "decode-XVentanaCondOps.c.inc" =20 +static inline void decode_save_opc(DisasContext *ctx, target_ulong opc) +{ + assert(ctx->insn_start !=3D NULL); + tcg_set_insn_start_param(ctx->insn_start, 1, opc); + ctx->insn_start =3D NULL; +} + static void decode_opc(CPURISCVState *env, DisasContext *ctx, uint16_t opc= ode) { /* @@ -1033,6 +1039,7 @@ static void decode_opc(CPURISCVState *env, DisasConte= xt *ctx, uint16_t opcode) =20 /* Check for compressed insn */ if (extract16(opcode, 0, 2) !=3D 3) { + decode_save_opc(ctx, opcode); if (!has_ext(ctx, RVC)) { gen_exception_illegal(ctx); } else { @@ -1047,6 +1054,7 @@ static void decode_opc(CPURISCVState *env, DisasConte= xt *ctx, uint16_t opcode) opcode32 =3D deposit32(opcode32, 16, 16, translator_lduw(env, &ctx->base, ctx->base.pc_next + 2)); + decode_save_opc(ctx, opcode32); ctx->opcode =3D opcode32; ctx->pc_succ_insn =3D ctx->base.pc_next + 4; =20 @@ -1113,7 +1121,8 @@ static void riscv_tr_insn_start(DisasContextBase *dcb= ase, CPUState *cpu) { DisasContext *ctx =3D container_of(dcbase, DisasContext, base); =20 - tcg_gen_insn_start(ctx->base.pc_next); + tcg_gen_insn_start(ctx->base.pc_next, 0); + ctx->insn_start =3D tcg_last_op(); } =20 static void riscv_tr_translate_insn(DisasContextBase *dcbase, CPUState *cp= u) --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433595691855.170554243376; Tue, 24 May 2022 16:06:35 -0700 (PDT) Received: from localhost ([::1]:55604 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdbm-0007rf-Lq for importer2@patchew.org; Tue, 24 May 2022 19:06:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60308) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHl-0000cO-GS for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:53 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHh-0002Yx-NR for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:51 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:28 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:05:00 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:28 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RW6shFz1Rwrw for ; Tue, 24 May 2022 15:45:27 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id WBHHUvNnSwc1 for ; Tue, 24 May 2022 15:45:27 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RT5Pzrz1SVp1; Tue, 24 May 2022 15:45:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432349; x=1684968349; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=2in1ZYlwj8ufywlVgOnwd3niFo2pOS1FCdvDvCNnzJI=; b=h7/1fnsJOKlsusc5k2Sdjj9yQgdhoR5NfqmB78ED3izdEIslbHf7bZyp nhw1Qpb/puO5iW1Zrh+TGB3GogSLs/8UEesUE1sxMA5kAfz/i84Tmzer8 HU4F78NYrMaJ4W5uCGS7czr0dhHcZPZpxrPtAqtIehsF6FMVzy1ZVnWAx n7nBakZF1q4dkYeWIglwrdqe/OTcurtUl6PTKNgfJ1E4VUMPfBsW8mhdE HNdf2qysAwhT6oD3RTqmLzs1qOaauPDdHGCtfscwEvkUwxAodi1alMDZP 30wJxEt8KgYxcriXbuF8F40fSfh9Bo8KdGjnv6lCHcD0K28MVnN0aheS1 g==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566710" IronPort-SDR: 3aw5TzJ3/mRsIGJUyM4Mkk5op4Fx9zlB83mbntj7DqU7775caFoS2kt2xhB5NGyKWjf2sOtAM4 aBXIWap6FkRzRBJ/SqAjLDpMXuZa5osWxRAWENLSjuVl5qOUKQ+8yrM/jQEe2j+l8RTxT03W1a 3OWfA9wLVRrud/8cNlYsVmer8XeSuMcc6O+IkKt5eD4LolxKb1wq7UcNcM30BP4Zu/VevMpYFP LcFzmQSt8cwlFkO4NH1FVGcrPHrTifgQ+/BjGQ579Cr+WZ79DyZCob4au/h8fiE2jmszCUVD/b 4w3hCK2aBhGGvHrjnTEIqysb IronPort-SDR: 7S33fcZZctK3fYbyYOU/usgT05s0CyYAUvrMFeaZKlwNj/lZwNo1tlwLafBgvqOHT/hj4b0n8J YVg2TA/HWw4C92iW9QdK+ov85rsh1E1bLFdFk8QDgBWx3xlJMP0/8ca7CsyqgH+Bi0C5F8G+db nmvclvTuPaOalQIy+NDrjUSAdzdoEUCT2r5x/p3mFy+xiJoBscKdgBIP+jvHZdHccohe0s8Efw 1Qy8vUHlWbhWTuS7h836f1wyeBZqGaIsEPGm0W6mtrnkcy2vf1k2xHrr2y5fG1jHlYyTfy0CI6 gJ8= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432327; x=1656024328; bh=2in1ZYlwj8ufywlVgO nwd3niFo2pOS1FCdvDvCNnzJI=; b=cCCQLnKwjMlYKabGVDhFCZ8PuUn+SMwYti EKyyVVSR6fNMqbVJNVBYEnj+f3juAQDxTv2Yirn0jvMVBIw/hS2/wI2YvBwvtmAn BqQ9Es/BLPR/fLuSfRsx8QG2LQN1k8rRqY4yUniuo3vTNsZtJVM7sadciiSgclGD YSPIQ1Jy/R8JWt42C3saiydgcG2PBogXrfBxQGwzfRq4Ic1N8FmNarS940Dk/WMj F1hN43q3cvXC4F4ZX65jbn6lMTmw9lYFFmDO3fvNkhcZ/o0HZpkRBP5lN2QVWYPl ZQdY2iOss1A9Mu5DDlpfi6n+jSxFYdYR4lqkaJ7sG+QKwCzyCzUA== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Anup Patel , Alistair Francis Subject: [PULL 20/23] hw/riscv: virt: Fix interrupt parent for dynamic platform devices Date: Wed, 25 May 2022 08:44:25 +1000 Message-Id: <20220524224428.552334-21-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433595988100001 Content-Type: text/plain; charset="utf-8" From: Anup Patel When both APLIC and IMSIC are present in virt machine, the APLIC should be used as parent interrupt controller for dynamic platform devices. In case of multiple sockets, we should prefer interrupt controller of socket0 for dynamic platform devices. Fixes: 3029fab64309 ("hw/riscv: virt: Add support for generating platform FDT entries") Signed-off-by: Anup Patel Reviewed-by: Alistair Francis Message-Id: <20220511144528.393530-9-apatel@ventanamicro.com> Signed-off-by: Alistair Francis --- hw/riscv/virt.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index 244d6408b5..293e9c95b7 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -478,10 +478,12 @@ static void create_fdt_socket_plic(RISCVVirtState *s, qemu_fdt_setprop_cell(mc->fdt, plic_name, "phandle", plic_phandles[socket]); =20 - platform_bus_add_all_fdt_nodes(mc->fdt, plic_name, - memmap[VIRT_PLATFORM_BUS].base, - memmap[VIRT_PLATFORM_BUS].size, - VIRT_PLATFORM_BUS_IRQ); + if (!socket) { + platform_bus_add_all_fdt_nodes(mc->fdt, plic_name, + memmap[VIRT_PLATFORM_BUS].base, + memmap[VIRT_PLATFORM_BUS].size, + VIRT_PLATFORM_BUS_IRQ); + } =20 g_free(plic_name); =20 @@ -561,11 +563,6 @@ static void create_fdt_imsic(RISCVVirtState *s, const = MemMapEntry *memmap, } qemu_fdt_setprop_cell(mc->fdt, imsic_name, "phandle", *msi_m_phandle); =20 - platform_bus_add_all_fdt_nodes(mc->fdt, imsic_name, - memmap[VIRT_PLATFORM_BUS].base, - memmap[VIRT_PLATFORM_BUS].size, - VIRT_PLATFORM_BUS_IRQ); - g_free(imsic_name); =20 /* S-level IMSIC node */ @@ -704,10 +701,12 @@ static void create_fdt_socket_aplic(RISCVVirtState *s, riscv_socket_fdt_write_id(mc, mc->fdt, aplic_name, socket); qemu_fdt_setprop_cell(mc->fdt, aplic_name, "phandle", aplic_s_phandle); =20 - platform_bus_add_all_fdt_nodes(mc->fdt, aplic_name, - memmap[VIRT_PLATFORM_BUS].base, - memmap[VIRT_PLATFORM_BUS].size, - VIRT_PLATFORM_BUS_IRQ); + if (!socket) { + platform_bus_add_all_fdt_nodes(mc->fdt, aplic_name, + memmap[VIRT_PLATFORM_BUS].base, + memmap[VIRT_PLATFORM_BUS].size, + VIRT_PLATFORM_BUS_IRQ); + } =20 g_free(aplic_name); =20 --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653433922238393.72009979371853; Tue, 24 May 2022 16:12:02 -0700 (PDT) Received: from localhost ([::1]:34292 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdh2-0004Iq-EX for importer2@patchew.org; Tue, 24 May 2022 19:12:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60352) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHp-0000ll-HO for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:57 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62493) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHj-0002oX-Bp for qemu-devel@nongnu.org; Tue, 24 May 2022 18:45:57 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:30 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:05:02 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:31 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78RZ52kxz1SVny for ; Tue, 24 May 2022 15:45:30 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id iJnfcENddNLz for ; Tue, 24 May 2022 15:45:30 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RX1M3Fz1Rvlc; Tue, 24 May 2022 15:45:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432351; x=1684968351; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=bmtKxYnoULXbt3IKBXBwJL2/mOux+7FD0WrfghcE8MY=; b=aWdKeN+6I1H7m3Asilzvx5txKg+FFq8lVBzT6/WLFRGSQPJDx4Uv5sps kNfkPGrGqQDvuZCBYBQxbsqvxH5v59FZkLsx4BvvOwrNM/pu7qrL1ankk eBl7ZhgkFge4v4fjanhpZrEtpGLTIq5yaZGHQXutBEV1bv3iDPCYlnRj3 wNZ/fLYqi8NDNX9W5ldHlwnu9PyXpiVgHD2xkyPs18V9nfwBFz/rnO88w Qo3zbRvdqfLMJR67Qrs2sGgACnnjWp0qvEL4h0GTSIpiQOxVgAUhR+cob EINkw8DEQmr+vCbWCIYnjFfwfZffOoDebwH5YaoyTIkGFNA7KvIsB0W/q A==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566712" IronPort-SDR: XxuhKL8EMQDdI4nm/ZtXxj4JBsP2nah5IDoRNzGHeR9j3zliqqJ5dAoNo45mUuIKB9zv+JyqXh 7rimJKJ5FX8w7Jc8ST92tHvTeBIH3CCGgXT6Cggomnm8GkCNXOLLitRoMlVBpJvdOXV2xe3H2F acdBdPpdUFLu5T5EhGTSSTX0K+pk0v1sguBfR01mnPF6i8HPgv1gL/ry8byeiwNUlDx1cYMm1N RelRXrsVBC/ZTvUcGPoPes0PKlAVvNW+W/Auv8sbItYE9uOPkFQkpVzQl+k71EpplZRlVRT1M3 lyHVYFmJCsX/WXjjz88Yhhxh IronPort-SDR: a7rD8CMHMkrrCrWEzbc1Wkrrz496Qn/sWmAKeM4vFjsnXR+JZ0W4q9NLoSa1gFoIwhYT1gyvKN TCyVpwXT215wUi2fjDRm0I4GiDMku/RBM596MTUC3/g6i07WBp+g13TGi1uafog0W95JVyyCuV Zupbugj5MxQZ7Xh/G6sRYz4xlJAB+LlHkNtvPsSVN1CMChOhM6HIJ6GeE8FanTET2nsIMmIMHc rJa93p9hWF7CdsngCPctN2/8vnc5GYS+LOpMeFbRpVQzA6F5IcKpehkG5i69i3yqBzROZG11/y XOE= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432330; x=1656024331; bh=bmtKxYnoULXbt3IKBX BwJL2/mOux+7FD0WrfghcE8MY=; b=i0yXuKhgriSrgFbuSUwgLeASesTdkXmfa9 uSJ1FmhU6c47Nvzd5UFjS/IZSHtzm7yuF5t2V4T667ix7wZzfpQk/LOiyJfLKoCZ lZKNrKnIj4C+mykK9cwH8Kbjrl7fQwc+uqgcCnVvhN4tq8feTm8s0THlWHPGS1O1 n+F5a7aLOWFZdoQjtX78VUIFef3D4t21ENdc4BPrKEuZodcovXqN1B6FaWFhVvn6 gvW1ujFbbfYD6EofChl2qex19XZISTeekiz5Sjk0UvXvSJ/s8AaBzDyO4ijH8Wos RXQ5klUHerDnBMFHAgvFuSA24K1gZhKeK/MYeZmGcf7weYjJCmBQ== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, "Hongren (Zenithal) Zheng" , Jiatai He , Alistair Francis Subject: [PULL 21/23] target/riscv: add zicsr/zifencei to isa_string Date: Wed, 25 May 2022 08:44:26 +1000 Message-Id: <20220524224428.552334-22-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653433923938100001 Content-Type: text/plain; charset="utf-8" From: "Hongren (Zenithal) Zheng" Zicsr/Zifencei is not in 'I' since ISA version 20190608, thus to fully express the capability of the CPU, they should be exposed in isa_string. Signed-off-by: Hongren (Zenithal) Zheng Tested-by: Jiatai He Reviewed-by: Alistair Francis Message-Id: Signed-off-by: Alistair Francis --- target/riscv/cpu.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index ce1c257eef..a91253d4bd 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -1029,6 +1029,8 @@ static void riscv_isa_string_ext(RISCVCPU *cpu, char = **isa_str, int max_str_len) * extensions by an underscore. */ struct isa_ext_data isa_edata_arr[] =3D { + ISA_EDATA_ENTRY(zicsr, ext_icsr), + ISA_EDATA_ENTRY(zifencei, ext_ifencei), ISA_EDATA_ENTRY(zfh, ext_zfh), ISA_EDATA_ENTRY(zfhmin, ext_zfhmin), ISA_EDATA_ENTRY(zfinx, ext_zfinx), --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653434072373891.1615875319706; Tue, 24 May 2022 16:14:32 -0700 (PDT) Received: from localhost ([::1]:40834 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdjT-0000Vt-AB for importer2@patchew.org; Tue, 24 May 2022 19:14:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60372) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHs-0000tq-Ku for qemu-devel@nongnu.org; Tue, 24 May 2022 18:46:00 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62510) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHn-0002sH-QR for qemu-devel@nongnu.org; Tue, 24 May 2022 18:46:00 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:34 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:05:06 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:34 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Rd738kz1Rwrw for ; Tue, 24 May 2022 15:45:33 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id UCGsc5FKe1Xx for ; Tue, 24 May 2022 15:45:33 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78RZ6gykz1Rvlc; Tue, 24 May 2022 15:45:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432355; x=1684968355; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=fNUT1P5NvEeO/P7dZC8V7Z4rGMs3oqY4M4kiC4EP43Y=; b=QSRojfcZ7+/vub4ok0Aa1l0t429QjrmDtpM6fAAG3YROGI3GNsqzmBDd K3hoRWNI7RkDOFRteUkKw6e7ghRTx+kg+93KGemJxg4EMigywsp5M0v4R AYc6U6lfHfM0gkjRMhk6MUBzW8mDIeAkGO+1Acxb+HdElLfptl+1yDG8E 8huy2w4jgjBKCjCGbjVVafwMY3on3RUEIJCAuw0SKsCs0lh88kdsdgIDF 8bLIMpcujrBfODvF/jvzSmwT5gQGz3HHhporfxsUh/M2P/hnx39AKuBPA vv/1z243Zy/wfFT3F1nA3FO7JMs0YyDWj6DZxs5QyLGPcabpWq/Ct1atT g==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566722" IronPort-SDR: ICx/FHiwsbQlwM0RT2P9Kt7J9qTv8GPBOTeSm86YmHVIj8zVWFOKr/VFYe3BeUOXV66o92n2Iv sptuqvBt9zGKrH5RGIa43CNbRLz7F4Fsxy/Ou9ndVeTNwgj32tVy4vrF4XzrbyayMjfH+S96tg ba/FVVjivwUJhq4zEuHlCiRkMNUl2qxmGl3xXVyhHloT45miFl5WsbYkuqPcnJ76sXuJIixzHl 7zQ5bQJSDtc1bkKOyq9lQqs+JBhP/x+JUh0nGrcQBi7hWZBzkUi1e3Y7TtjQFC8GTmZsUgxi3o z5cxa08zk3tdWgNzZVmTlfFU IronPort-SDR: lmmiipIdMmTbH5y983bNLFeJ34pVv2if7aJrqf2ojAS6jnTDSyzOaBQs8hFjrycCV2oX0AW2Td UdS9WDGaVM9Xwo6zJh9YBmfyatZ65hMe2OFqeQRMlamo4ZPGeGa06jGcTlPlA7YrgBHpJB/soP AaYkWU9tzhuuIqRNMvxWWroth+P17r7i60DtdmAtMY9C+Ppte6Kk8nnKmM7VxDghwVC3K/zJde QzI9/3XgNNStOfz4gii65zfjoHu2Zl1PJozlAgetJwaHsx7470llp/JUkXL57BmT3yBMqbrHyp HW8= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:mime-version :references:in-reply-to:x-mailer:message-id:date:subject:to :from; s=dkim; t=1653432333; x=1656024334; bh=fNUT1P5NvEeO/P7dZC 8V7Z4rGMs3oqY4M4kiC4EP43Y=; b=JeYaxSTL+GmA9bcMQ1Z9oVYmRu+e7C3nTL z8pNySoHH8fQoW6FCJkGc79mZpWzbaVSIp+Z5xwpC6Rag6qD2WNtVhrF11C0+QAq /4sRJWg3xVTINpT+nCy0vmOQNMiQ46jdRwvqODEOWTm6nH4ueMzpcoD5qPAO8f8O zqOhoXnhb2rG5Vx4WkFr1St0kdP8PPqixF9CzIfSxrQPiLIksDmC1DER7xpekmlm pWkAVWR0rgBB5lS5xUHVqpAyOtU23yc9639P3LX5FMNdjJwzrhgSHr4TC8JH8r2T XN3H+zRLhea1CtFjJP99GHyt5gWe4KI29hN4YMpyea7u49kyVt+w== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Bin Meng , Alistair Francis Subject: [PULL 22/23] hw/core: Sync uboot_image.h from U-Boot v2022.01 Date: Wed, 25 May 2022 08:44:27 +1000 Message-Id: <20220524224428.552334-23-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653434073819100001 Content-Type: text/plain; charset="utf-8" From: Bin Meng Sync uboot_image.h from upstream U-Boot v2022.01 release [1]. [1] https://source.denx.de/u-boot/u-boot/-/blob/v2022.01/include/image.h Signed-off-by: Bin Meng Reviewed-by: Alistair Francis Message-Id: <20220324134812.541274-1-bmeng.cn@gmail.com> Signed-off-by: Alistair Francis --- hw/core/uboot_image.h | 213 ++++++++++++++++++++++++++++-------------- 1 file changed, 142 insertions(+), 71 deletions(-) diff --git a/hw/core/uboot_image.h b/hw/core/uboot_image.h index 608022de6e..18ac293359 100644 --- a/hw/core/uboot_image.h +++ b/hw/core/uboot_image.h @@ -1,23 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* + * (C) Copyright 2008 Semihalf + * * (C) Copyright 2000-2005 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, see . - * ******************************************************************** * NOTE: This header file defines an interface to U-Boot. Including * this (unmodified) header file in another file is considered normal @@ -31,50 +17,83 @@ =20 /* * Operating System Codes + * + * The following are exposed to uImage header. + * New IDs *MUST* be appended at the end of the list and *NEVER* + * inserted for backward compatibility. */ -#define IH_OS_INVALID 0 /* Invalid OS */ -#define IH_OS_OPENBSD 1 /* OpenBSD */ -#define IH_OS_NETBSD 2 /* NetBSD */ -#define IH_OS_FREEBSD 3 /* FreeBSD */ -#define IH_OS_4_4BSD 4 /* 4.4BSD */ -#define IH_OS_LINUX 5 /* Linux */ -#define IH_OS_SVR4 6 /* SVR4 */ -#define IH_OS_ESIX 7 /* Esix */ -#define IH_OS_SOLARIS 8 /* Solaris */ -#define IH_OS_IRIX 9 /* Irix */ -#define IH_OS_SCO 10 /* SCO */ -#define IH_OS_DELL 11 /* Dell */ -#define IH_OS_NCR 12 /* NCR */ -#define IH_OS_LYNXOS 13 /* LynxOS */ -#define IH_OS_VXWORKS 14 /* VxWorks */ -#define IH_OS_PSOS 15 /* pSOS */ -#define IH_OS_QNX 16 /* QNX */ -#define IH_OS_U_BOOT 17 /* Firmware */ -#define IH_OS_RTEMS 18 /* RTEMS */ -#define IH_OS_ARTOS 19 /* ARTOS */ -#define IH_OS_UNITY 20 /* Unity OS */ +enum { + IH_OS_INVALID =3D 0, /* Invalid OS */ + IH_OS_OPENBSD, /* OpenBSD */ + IH_OS_NETBSD, /* NetBSD */ + IH_OS_FREEBSD, /* FreeBSD */ + IH_OS_4_4BSD, /* 4.4BSD */ + IH_OS_LINUX, /* Linux */ + IH_OS_SVR4, /* SVR4 */ + IH_OS_ESIX, /* Esix */ + IH_OS_SOLARIS, /* Solaris */ + IH_OS_IRIX, /* Irix */ + IH_OS_SCO, /* SCO */ + IH_OS_DELL, /* Dell */ + IH_OS_NCR, /* NCR */ + IH_OS_LYNXOS, /* LynxOS */ + IH_OS_VXWORKS, /* VxWorks */ + IH_OS_PSOS, /* pSOS */ + IH_OS_QNX, /* QNX */ + IH_OS_U_BOOT, /* Firmware */ + IH_OS_RTEMS, /* RTEMS */ + IH_OS_ARTOS, /* ARTOS */ + IH_OS_UNITY, /* Unity OS */ + IH_OS_INTEGRITY, /* INTEGRITY */ + IH_OS_OSE, /* OSE */ + IH_OS_PLAN9, /* Plan 9 */ + IH_OS_OPENRTOS, /* OpenRTOS */ + IH_OS_ARM_TRUSTED_FIRMWARE, /* ARM Trusted Firmware */ + IH_OS_TEE, /* Trusted Execution Environment */ + IH_OS_OPENSBI, /* RISC-V OpenSBI */ + IH_OS_EFI, /* EFI Firmware (e.g. GRUB2) */ + + IH_OS_COUNT, +}; =20 /* * CPU Architecture Codes (supported by Linux) + * + * The following are exposed to uImage header. + * New IDs *MUST* be appended at the end of the list and *NEVER* + * inserted for backward compatibility. */ -#define IH_CPU_INVALID 0 /* Invalid CPU */ -#define IH_CPU_ALPHA 1 /* Alpha */ -#define IH_CPU_ARM 2 /* ARM */ -#define IH_CPU_I386 3 /* Intel x86 */ -#define IH_CPU_IA64 4 /* IA64 */ -#define IH_CPU_MIPS 5 /* MIPS */ -#define IH_CPU_MIPS64 6 /* MIPS 64 Bit */ -#define IH_CPU_PPC 7 /* PowerPC */ -#define IH_CPU_S390 8 /* IBM S390 */ -#define IH_CPU_SH 9 /* SuperH */ -#define IH_CPU_SPARC 10 /* Sparc */ -#define IH_CPU_SPARC64 11 /* Sparc 64 Bit */ -#define IH_CPU_M68K 12 /* M68K */ -#define IH_CPU_NIOS 13 /* Nios-32 */ -#define IH_CPU_MICROBLAZE 14 /* MicroBlaze */ -#define IH_CPU_NIOS2 15 /* Nios-II */ -#define IH_CPU_BLACKFIN 16 /* Blackfin */ -#define IH_CPU_AVR32 17 /* AVR32 */ +enum { + IH_ARCH_INVALID =3D 0, /* Invalid CPU */ + IH_ARCH_ALPHA, /* Alpha */ + IH_ARCH_ARM, /* ARM */ + IH_ARCH_I386, /* Intel x86 */ + IH_ARCH_IA64, /* IA64 */ + IH_ARCH_MIPS, /* MIPS */ + IH_ARCH_MIPS64, /* MIPS 64 Bit */ + IH_ARCH_PPC, /* PowerPC */ + IH_ARCH_S390, /* IBM S390 */ + IH_ARCH_SH, /* SuperH */ + IH_ARCH_SPARC, /* Sparc */ + IH_ARCH_SPARC64, /* Sparc 64 Bit */ + IH_ARCH_M68K, /* M68K */ + IH_ARCH_NIOS, /* Nios-32 */ + IH_ARCH_MICROBLAZE, /* MicroBlaze */ + IH_ARCH_NIOS2, /* Nios-II */ + IH_ARCH_BLACKFIN, /* Blackfin */ + IH_ARCH_AVR32, /* AVR32 */ + IH_ARCH_ST200, /* STMicroelectronics ST200 */ + IH_ARCH_SANDBOX, /* Sandbox architecture (test only) */ + IH_ARCH_NDS32, /* ANDES Technology - NDS32 */ + IH_ARCH_OPENRISC, /* OpenRISC 1000 */ + IH_ARCH_ARM64, /* ARM64 */ + IH_ARCH_ARC, /* Synopsys DesignWare ARC */ + IH_ARCH_X86_64, /* AMD x86_64, Intel and Via */ + IH_ARCH_XTENSA, /* Xtensa */ + IH_ARCH_RISCV, /* RISC-V */ + + IH_ARCH_COUNT, +}; =20 /* * Image Types @@ -113,33 +132,85 @@ * U-Boot's command interpreter; this feature is especially * useful when you configure U-Boot to use a real shell (hush) * as command interpreter (=3D> Shell Scripts). + * + * The following are exposed to uImage header. + * New IDs *MUST* be appended at the end of the list and *NEVER* + * inserted for backward compatibility. */ =20 -#define IH_TYPE_INVALID 0 /* Invalid Image */ -#define IH_TYPE_STANDALONE 1 /* Standalone Program */ -#define IH_TYPE_KERNEL 2 /* OS Kernel Image */ -#define IH_TYPE_RAMDISK 3 /* RAMDisk Image */ -#define IH_TYPE_MULTI 4 /* Multi-File Image */ -#define IH_TYPE_FIRMWARE 5 /* Firmware Image */ -#define IH_TYPE_SCRIPT 6 /* Script file */ -#define IH_TYPE_FILESYSTEM 7 /* Filesystem Image (any type) */ -#define IH_TYPE_FLATDT 8 /* Binary Flat Device Tree Blob */ -#define IH_TYPE_KERNEL_NOLOAD 14 /* OS Kernel Image (noload) */ +enum { + IH_TYPE_INVALID =3D 0, /* Invalid Image */ + IH_TYPE_STANDALONE, /* Standalone Program */ + IH_TYPE_KERNEL, /* OS Kernel Image */ + IH_TYPE_RAMDISK, /* RAMDisk Image */ + IH_TYPE_MULTI, /* Multi-File Image */ + IH_TYPE_FIRMWARE, /* Firmware Image */ + IH_TYPE_SCRIPT, /* Script file */ + IH_TYPE_FILESYSTEM, /* Filesystem Image (any type) */ + IH_TYPE_FLATDT, /* Binary Flat Device Tree Blob */ + IH_TYPE_KWBIMAGE, /* Kirkwood Boot Image */ + IH_TYPE_IMXIMAGE, /* Freescale IMXBoot Image */ + IH_TYPE_UBLIMAGE, /* Davinci UBL Image */ + IH_TYPE_OMAPIMAGE, /* TI OMAP Config Header Image */ + IH_TYPE_AISIMAGE, /* TI Davinci AIS Image */ + /* OS Kernel Image, can run from any load address */ + IH_TYPE_KERNEL_NOLOAD, + IH_TYPE_PBLIMAGE, /* Freescale PBL Boot Image */ + IH_TYPE_MXSIMAGE, /* Freescale MXSBoot Image */ + IH_TYPE_GPIMAGE, /* TI Keystone GPHeader Image */ + IH_TYPE_ATMELIMAGE, /* ATMEL ROM bootable Image */ + IH_TYPE_SOCFPGAIMAGE, /* Altera SOCFPGA CV/AV Preloader */ + IH_TYPE_X86_SETUP, /* x86 setup.bin Image */ + IH_TYPE_LPC32XXIMAGE, /* x86 setup.bin Image */ + IH_TYPE_LOADABLE, /* A list of typeless images */ + IH_TYPE_RKIMAGE, /* Rockchip Boot Image */ + IH_TYPE_RKSD, /* Rockchip SD card */ + IH_TYPE_RKSPI, /* Rockchip SPI image */ + IH_TYPE_ZYNQIMAGE, /* Xilinx Zynq Boot Image */ + IH_TYPE_ZYNQMPIMAGE, /* Xilinx ZynqMP Boot Image */ + IH_TYPE_ZYNQMPBIF, /* Xilinx ZynqMP Boot Image (bif) */ + IH_TYPE_FPGA, /* FPGA Image */ + IH_TYPE_VYBRIDIMAGE, /* VYBRID .vyb Image */ + IH_TYPE_TEE, /* Trusted Execution Environment OS Image */ + IH_TYPE_FIRMWARE_IVT, /* Firmware Image with HABv4 IVT */ + IH_TYPE_PMMC, /* TI Power Management Micro-Controller Firmware= */ + IH_TYPE_STM32IMAGE, /* STMicroelectronics STM32 Image */ + IH_TYPE_SOCFPGAIMAGE_V1, /* Altera SOCFPGA A10 Preloader */ + IH_TYPE_MTKIMAGE, /* MediaTek BootROM loadable Image */ + IH_TYPE_IMX8MIMAGE, /* Freescale IMX8MBoot Image */ + IH_TYPE_IMX8IMAGE, /* Freescale IMX8Boot Image */ + IH_TYPE_COPRO, /* Coprocessor Image for remoteproc*/ + IH_TYPE_SUNXI_EGON, /* Allwinner eGON Boot Image */ + + IH_TYPE_COUNT, /* Number of image types */ +}; =20 /* * Compression Types + * + * The following are exposed to uImage header. + * New IDs *MUST* be appended at the end of the list and *NEVER* + * inserted for backward compatibility. */ -#define IH_COMP_NONE 0 /* No Compression Used */ -#define IH_COMP_GZIP 1 /* gzip Compression Used */ -#define IH_COMP_BZIP2 2 /* bzip2 Compression Used */ +enum { + IH_COMP_NONE =3D 0, /* No Compression Used */ + IH_COMP_GZIP, /* gzip Compression Used */ + IH_COMP_BZIP2, /* bzip2 Compression Used */ + IH_COMP_LZMA, /* lzma Compression Used */ + IH_COMP_LZO, /* lzo Compression Used */ + IH_COMP_LZ4, /* lz4 Compression Used */ + IH_COMP_ZSTD, /* zstd Compression Used */ + + IH_COMP_COUNT, +}; =20 #define IH_MAGIC 0x27051956 /* Image Magic Number */ #define IH_NMLEN 32 /* Image Name Length */ =20 /* - * all data in network byte order (aka natural aka bigendian) + * Legacy format image header, + * all data in network byte order (aka natural aka bigendian). */ - typedef struct uboot_image_header { uint32_t ih_magic; /* Image Header Magic Number */ uint32_t ih_hcrc; /* Image Header CRC Checksum */ --=20 2.35.3 From nobody Sat May 4 04:18:06 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=fail(p=quarantine dis=quarantine) header.from=opensource.wdc.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1653434208682808.451329402173; Tue, 24 May 2022 16:16:48 -0700 (PDT) Received: from localhost ([::1]:46030 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ntdlf-00047y-K2 for importer2@patchew.org; Tue, 24 May 2022 19:16:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60394) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHw-00012A-HR for qemu-devel@nongnu.org; Tue, 24 May 2022 18:46:04 -0400 Received: from esa2.hgst.iphmx.com ([68.232.143.124]:62474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ntdHu-0002Yx-SR for qemu-devel@nongnu.org; Tue, 24 May 2022 18:46:04 -0400 Received: from uls-op-cesaip02.wdc.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 25 May 2022 06:45:36 +0800 Received: from uls-op-cesaip02.wdc.com ([10.248.3.37]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:05:08 -0700 Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 24 May 2022 15:45:37 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4L78Rh1kp2z1SVny for ; Tue, 24 May 2022 15:45:36 -0700 (PDT) Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 2VlSQvtiyRQh for ; Tue, 24 May 2022 15:45:35 -0700 (PDT) Received: from toolbox.alistair23.me (unknown [10.225.165.5]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4L78Rd55sLz1Rvlx; Tue, 24 May 2022 15:45:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1653432362; x=1684968362; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=z5mvFJDO7RctCYzvCTnX4xr/5unVBTXp2SdqigfVvZs=; b=AL3smv68uKJv3ToaXTqd89Lg5jWyqQBhDpD4F1c+3NQulpxexNIRiDTt ux3KgFKqIJprXLH75QZhGX9FrfLn4BKtsFooyxVs1nT8Bliwky7L3bDgN 13Iod9fUfSzBArov0LiZye9Mdk8//SBUIg9TKTEqr40pjaRqyfRoDi70l Y9BuSZQ1UTvuDmSch99JTMRm6mpnsTNCnsioN1tiat5hOH8+cdHMMO8Lt RZrmQ3jCTb+z11+B0GhwIAXMmKVUN7u2aPHgsWQY24v6y42rFFCJzsejZ iHJRHaicK1ajprBXGlZdxAFwltkbM2/2NbqVuiIndWTOYZn7xqFDUUwVe w==; X-IronPort-AV: E=Sophos;i="5.91,250,1647273600"; d="scan'208";a="305566725" IronPort-SDR: K2jVX0PO+bEg5hRQQRfX42x0MNIh58yZhAsmFF38XW4I6wM8mTX3kVPRcMUEt0II19xSHK+j5S q1V7o0RdZQP1KHZmLtP1ojnLIiVQ2b8bxTkEFK4uxbJRngk2vxjnc0zDczBeCSZ70BSFSecC40 1sDOoLCj5EwYEls5A0KVfd7U7Lm7iH8PqPyzwxjN7AZNOIbokavuazxQpSJSdqlQ2TK/Bm+I1B xKCZGn7I3rCKYsv4r74BKfcc0vha+poN9N/gS8dDySEVHu+RxIQNbp/BocMbYBP7HG5O+u+pJM mWDVoDCqiMsMiUCt1vKN0WDX IronPort-SDR: Ddz66a+Y65rfYsAgs0LKUruFcEZ0UUFAum/Jf4ZbKNt0IMf9JHqaQ9/eMLcp4W8kpwHpS+Slk9 0EqBN/RTEqvir3M67fBgGc+agax9EhMu6fx+EALr1PGGGraa0BWfY1qOZFP0z5QO4Pyf+78kLp yzJ94Qm29Pg2UGVHch3JNTeFg7k5nmpTTjTIgzLNRV1upqM0vCzaoDZWu7SaEq04qrKLmb7PD1 wImXnhz7PcWsoGB9hePH7ytRMhBU/RoTrWTdWD1mn8AjJRTVGiYhE/kxON2Z+sCqO2RmS8Ga/U izQ= WDCIronportException: Internal Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:content-type :mime-version:references:in-reply-to:x-mailer:message-id:date :subject:to:from; s=dkim; t=1653432335; x=1656024336; bh=z5mvFJD O7RctCYzvCTnX4xr/5unVBTXp2SdqigfVvZs=; b=odDXu+hGONGAPjK1DFGM5p4 PFMyNGjwrwIbJHdwiGQFPjbjhwyBgT/bwzwI9uR1vSZe0ve52nOESex6PxG5cOon X1f0dn6MzNsVa2/x+LiSjiLk7I6AsVKEAD7JdL1W0WCqB5qDdxywenMV/05nHkgn HRRCdMfaHnykHNoSoQOp+ve+FQc9RfE8dkZ1fPWwUFesb/Cd9Pt/iHUsJlLzXk/Z PUAPmsL13MSm3IkkGHEllyrrgAuBr80sllUeKhT9ZpiPzysGvQHpBH0coq0omm2T qr1aDw6VQCL+NzFBGPBNR9ZW/5Mq2rl5iat7IfjjR6TOSfRdaQ+SaZlk/97UfIQ= = X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com From: Alistair Francis To: qemu-devel@nongnu.org Cc: alistair23@gmail.com, Bin Meng , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Alistair Francis Subject: [PULL 23/23] hw/core: loader: Set is_linux to true for VxWorks uImage Date: Wed, 25 May 2022 08:44:28 +1000 Message-Id: <20220524224428.552334-24-alistair.francis@opensource.wdc.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> References: <20220524224428.552334-1-alistair.francis@opensource.wdc.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=68.232.143.124; envelope-from=prvs=1363756b6=alistair.francis@opensource.wdc.com; helo=esa2.hgst.iphmx.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1653434210313100001 Content-Type: text/plain; charset="utf-8" From: Bin Meng VxWorks 7 uses the same boot interface as the Linux kernel on Arm (64-bit only), PowerPC and RISC-V architectures. Add logic to set is_linux to true for VxWorks uImage for these architectures in load_uboot_image(). Signed-off-by: Bin Meng Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Alistair Francis Message-Id: <20220324134812.541274-2-bmeng.cn@gmail.com> Signed-off-by: Alistair Francis --- hw/core/loader.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/hw/core/loader.c b/hw/core/loader.c index 8167301f04..edde657ac3 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -696,6 +696,21 @@ static int load_uboot_image(const char *filename, hwad= dr *ep, hwaddr *loadaddr, if (is_linux) { if (hdr->ih_os =3D=3D IH_OS_LINUX) { *is_linux =3D 1; + } else if (hdr->ih_os =3D=3D IH_OS_VXWORKS) { + /* + * VxWorks 7 uses the same boot interface as the Linux ker= nel + * on Arm (64-bit only), PowerPC and RISC-V architectures. + */ + switch (hdr->ih_arch) { + case IH_ARCH_ARM64: + case IH_ARCH_PPC: + case IH_ARCH_RISCV: + *is_linux =3D 1; + break; + default: + *is_linux =3D 0; + break; + } } else { *is_linux =3D 0; } --=20 2.35.3