From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898102; cv=none; d=zohomail.com; s=zohoarc; b=XgW8R4LYHrY4DcxaFF8dNRBoJq4uy52mnWeGlJGLWH3tshjn6ZAdKYJ6MWzEhNjp9UUC4z9ZiGHeyDgXcZGOAKY3V7SuGntUy2uA76PvTWQAxrBbMvzPqOWHf0sElQp8piZJPCOS/sAa7Bbr3cCMYEclunR5XTm2WzD8ZRCGaBw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898102; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=cva5ZBoYoUhj+fm1vLQwcvS1IsAUupqHklY5+6VEThg=; b=YGOreSnPlnOLa+NZMaOaEIqnZhwJ9g6z/pAfgAqQB034yra13dufMUoYQo8JT8qIdm2hYfjcFWppCkyilnuw+msPX+0O2UbGgE3g4LgAzKm0Gru5h72dxOIVuCsrIBIFQQ4psqB42CiJkuc5zkHSTpbuTTDhxCSOWEjzfq8x4cU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1765898102865542.6037584019605; Tue, 16 Dec 2025 07:15:02 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWkk-0006nK-5i; Tue, 16 Dec 2025 10:14:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkh-0006m3-4x; Tue, 16 Dec 2025 10:14:15 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkf-0006sa-6Y; Tue, 16 Dec 2025 10:14:14 -0500 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BG9S1Eu015202; Tue, 16 Dec 2025 15:14:09 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0wjpyepq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:09 +0000 (GMT) Received: from m0356516.ppops.net (m0356516.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGFCogo001449; Tue, 16 Dec 2025 15:14:09 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0wjpyepk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:09 +0000 (GMT) Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGCS4U8026786; Tue, 16 Dec 2025 15:14:08 GMT Received: from smtprelay06.dal12v.mail.ibm.com ([172.16.1.8]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 4b1jfsd26h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:08 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay06.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFE7Et18023070 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:07 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 226DB58059; Tue, 16 Dec 2025 15:14:07 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 481FA58053; Tue, 16 Dec 2025 15:14:06 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:06 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=cva5ZBoYoUhj+fm1v LQwcvS1IsAUupqHklY5+6VEThg=; b=ROlgWvyRdffaN8mJI/+8vZwazK5HUMdfM lGXt9NRmdOE0Zfn4YU8FEU3cEW2EKZivKU07V9aDBgbeindK94YzeNqWQOjnsYhx nmIkZXIHieVKbUasZxTwq39p0eNSeHxLr/JnK6/S3tzFwNVGZKFxKAZYX7zpCFjh Tefla9Y4qP6wEBBRlu5VOQ1zAWkhu62B21LNoGz+aW9+DjMDO1ccaKZCA+0Wemeu w5/SLgTMBsCiOdW5H19NHuETPX7c5IJAlZDkCh6QvPg1YkUmO8HEpEtddEPgC+he ewuT7Mungoov/icXBtQ0x6clkAdCteV8FttY92PKc4i/VlFLb1hbA== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 1/7] hw/ppc: Add VMSTATE information for LPC model Date: Tue, 16 Dec 2025 09:13:53 -0600 Message-ID: <20251216151359.418708-2-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAwMSBTYWx0ZWRfX4IYaDUtRoAYI vbcnp6azCMjggZcsUcbTbR0yn++Wko3HXXg6MFPQnFPcMUoAfkIwMkxuOCe01URnpzCGXCoKP/T XlwzJfz6y1Spo8qauf20lY4JAdfdNW5kBVNMe2eVG8exHl5e1+11UlVv0D5UM5vKxszP3P/u5/A 2LDz4Z4zBOhbDRU7x3wUDA3sJgdU/XWTG0uUuWweg0iXX1Qqx1clNMoGrgXZSB+amGEBIRYJJKV AiO8FkZUzf3VIT1Sb7d7djxhwGji9ke0ngCOgKmRbrKppuX4AoJ8eVQxr4+vHCxr6FtOxupYYjr 9HxDIlIIN+1XF8arM2ORisi/wclprj2vz6rTQzAAAzHLEJeK5v6cPVZa8LKBS6KiQGB7ZkKQ8J6 d+phfjqC4n/joDy2hdgedExKoKVZJQ== X-Proofpoint-GUID: 1jozaf5xHLVq3yb_ly-8vHwgPXraJjxR X-Proofpoint-ORIG-GUID: r6xhfa6QJGDjRn4EYlA-3hBzGpCOu5BA X-Authority-Analysis: v=2.4 cv=Kq5AGGWN c=1 sm=1 tr=0 ts=69417741 cx=c_pps a=bLidbwmWQ0KltjZqbj+ezA==:117 a=bLidbwmWQ0KltjZqbj+ezA==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=GMd5MdSob7TKo89JhDQA:9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 malwarescore=0 impostorscore=0 clxscore=1015 spamscore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 phishscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130001 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=calebs@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898103609158500 Content-Type: text/plain; charset="utf-8" The PNV LPC model needs snapshot/migration support. Added a VMSTATE descriptor to save model data and an associated post_load() method. Snapshot support added for Power8, Power9, and Power10. Signed-off-by: Michael Kowal Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Michael Kowal --- hw/ppc/pnv_lpc.c | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/hw/ppc/pnv_lpc.c b/hw/ppc/pnv_lpc.c index f6beba0917..e52a062181 100644 --- a/hw/ppc/pnv_lpc.c +++ b/hw/ppc/pnv_lpc.c @@ -30,6 +30,7 @@ #include "hw/ppc/pnv_lpc.h" #include "hw/ppc/pnv_xscom.h" #include "hw/ppc/fdt.h" +#include "migration/vmstate.h" =20 #include =20 @@ -696,6 +697,43 @@ static const MemoryRegionOps opb_master_ops =3D { }, }; =20 +static int vmstate_pnv_lpc_post_load(void *opaque, int version_id) +{ + PnvLpcController *lpc =3D PNV_LPC(opaque); + + memory_region_set_alias_offset(&lpc->opb_isa_fw, + lpc->lpc_hc_fw_seg_idsel * LPC_FW_OPB_S= IZE); + pnv_lpc_eval_serirq_routes(lpc); + + pnv_lpc_eval_irqs(lpc); + return 0; +} + +static const VMStateDescription vmstate_pnv_lpc =3D { + .name =3D TYPE_PNV_LPC, + .version_id =3D 1, + .minimum_version_id =3D 1, + .post_load =3D vmstate_pnv_lpc_post_load, + .fields =3D (const VMStateField[]) { + VMSTATE_UINT64(eccb_stat_reg, PnvLpcController), + VMSTATE_UINT32(eccb_data_reg, PnvLpcController), + VMSTATE_UINT32(opb_irq_route0, PnvLpcController), + VMSTATE_UINT32(opb_irq_route1, PnvLpcController), + VMSTATE_UINT32(opb_irq_stat, PnvLpcController), + VMSTATE_UINT32(opb_irq_mask, PnvLpcController), + VMSTATE_UINT32(opb_irq_pol, PnvLpcController), + VMSTATE_UINT32(opb_irq_input, PnvLpcController), + VMSTATE_UINT32(lpc_hc_irq_inputs, PnvLpcController), + VMSTATE_UINT32(lpc_hc_fw_seg_idsel, PnvLpcController), + VMSTATE_UINT32(lpc_hc_irqser_ctrl, PnvLpcController), + VMSTATE_UINT32(lpc_hc_irqmask, PnvLpcController), + VMSTATE_UINT32(lpc_hc_irqstat, PnvLpcController), + VMSTATE_UINT32(lpc_hc_error_addr, PnvLpcController), + VMSTATE_UINT32(lpc_hc_fw_rd_acc_size, PnvLpcController), + VMSTATE_END_OF_LIST() + } +}; + static void pnv_lpc_power8_realize(DeviceState *dev, Error **errp) { PnvLpcController *lpc =3D PNV_LPC(dev); @@ -721,6 +759,7 @@ static void pnv_lpc_power8_class_init(ObjectClass *klas= s, const void *data) PnvLpcClass *plc =3D PNV_LPC_CLASS(klass); =20 dc->desc =3D "PowerNV LPC Controller POWER8"; + dc->vmsd =3D &vmstate_pnv_lpc; =20 xdc->dt_xscom =3D pnv_lpc_dt_xscom; =20 @@ -766,6 +805,7 @@ static void pnv_lpc_power9_class_init(ObjectClass *klas= s, const void *data) PnvLpcClass *plc =3D PNV_LPC_CLASS(klass); =20 dc->desc =3D "PowerNV LPC Controller POWER9"; + dc->vmsd =3D &vmstate_pnv_lpc; =20 device_class_set_parent_realize(dc, pnv_lpc_power9_realize, &plc->parent_realize); @@ -782,6 +822,7 @@ static void pnv_lpc_power10_class_init(ObjectClass *kla= ss, const void *data) DeviceClass *dc =3D DEVICE_CLASS(klass); =20 dc->desc =3D "PowerNV LPC Controller POWER10"; + dc->vmsd =3D &vmstate_pnv_lpc; } =20 static const TypeInfo pnv_lpc_power10_info =3D { --=20 2.47.3 From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898123; cv=none; d=zohomail.com; s=zohoarc; b=AoegIqRPkp5iFOPosKmL3A0f/8GusjurewggsR0MMiA16r6VGMV/acZl5wa+CM2wSbuI3MAgphJdAVVESmUeGKjSuZaFWrfgNt1OPAi1hzQfaeh7JBkFKxs0sLgAaOi2hoEkPGdmqPb2HMWvfJMpAcfjViW8jLPvSnRYDJSbQWY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898123; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=rj+Bv/ZDTNuzXDenrKI5me9VuCCuFuGX+EqeVL+6lhI=; b=BEiIKXC56TdU6J7cCVeGqWpp2wEKJBUT65lBn7reCtNGo0ZTDy/y8ZWqk+RMusPEMAYkiH5inhps95Ff6lefiUXRf5cQCf1RMqP+nopKsbwBXGgEBualnTpoAkDYuXqftyon5GiD1TZKgaaqk58OoQBX5b2rUBsVeFwuaEtgKRQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 176589812386383.99218572222708; Tue, 16 Dec 2025 07:15:23 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWkl-0006oU-KH; Tue, 16 Dec 2025 10:14:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWki-0006mk-8j; Tue, 16 Dec 2025 10:14:16 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkg-0006tS-2U; Tue, 16 Dec 2025 10:14:15 -0500 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BG7eELm021469; Tue, 16 Dec 2025 15:14:11 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0wjpyepw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:11 +0000 (GMT) Received: from m0356516.ppops.net (m0356516.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGF43sH013822; Tue, 16 Dec 2025 15:14:10 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0wjpyeps-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:10 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGEbQsL014318; Tue, 16 Dec 2025 15:14:10 GMT Received: from smtprelay07.dal12v.mail.ibm.com ([172.16.1.9]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4b1mpjvg2d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:10 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay07.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFE8Bu29623018 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:09 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C977958053; Tue, 16 Dec 2025 15:14:08 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0334758061; Tue, 16 Dec 2025 15:14:08 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:07 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=rj+Bv/ZDTNuzXDenr KI5me9VuCCuFuGX+EqeVL+6lhI=; b=B6y9j3LmK74bMHSaqkbl6vU8t8Lc+yO9w A+4hzgnYUTjDOhGDrwHGc77bj8sopuc1cqCLQK2lb7MUud6sBnJrxJiMS8ba+cKx uvipFVGBtmCcz4Bx14Z0jxj+WjNNfO/uHd7jgrAHCieVUYGoi5e/ec/xol7yuZ77 FVbxD4YaUBwUUq8f3uWZKPU99AMiIqS9sCdjSPgxrE1hHwLTGWMAuGoHrdJzjW64 R0t5oRpY3p9SpUq87CUXE38RmIei/v3RZdZ4vS1m5ppkM+CnbpRquOGyRgYZB77Q Y+Ux19qBT0IMrmf+VBTtpY20KL340trqFRvoXlEeOr5UFzr68tzqg== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 2/7] hw/ppc: Add pnv_spi vmstate support Date: Tue, 16 Dec 2025 09:13:54 -0600 Message-ID: <20251216151359.418708-3-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAwMSBTYWx0ZWRfXwGpXq4/nT5m4 ozdtOhkPB4NJft13sldzvRlIcJIsE7gyTjWAm94eDsqLIUV/LqtkU1f9MOhb69Gr94L1llfCAM4 inyCNuTFRzx2FEARtimPMIYKeOinKdRu6z3IsI4TSiRtjL1t6pqjJdDBT0mBl8jTZWvkchDLAHn OFvea/saq5SKLzPXHYbrc3QeD9YznSaNs0XX8713KsjGLMBsABnBBNN9GmfdZxEZ/c+xyBtNe/N 7f+PEhMtp86wE/1Ans9pcYtfKWqZEDG2yLvE7qLNmY98mzTSuKKXRtOWiHstGpcExXr4oCjAqfE HtXjiqABTVSysy7pFbbYERR7TZAj6F/U2eq0b6eEcHpJb8EIj3UT+q17WP+tmaK72PKsAN20sYs 2yvUHx5FxlTj5Pr91qHq6KCxCmTRXQ== X-Proofpoint-GUID: GXqHPSi9i7MtF8VfoXypmjwhdyaqcLa8 X-Proofpoint-ORIG-GUID: 7yuowEONEKmdiWrBCbsrTmLq0BsMNfzH X-Authority-Analysis: v=2.4 cv=Kq5AGGWN c=1 sm=1 tr=0 ts=69417743 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=zPJzuvo3V7OF8ZkWVCkA:9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 malwarescore=0 impostorscore=0 clxscore=1015 spamscore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 phishscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130001 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=calebs@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898128192154100 Content-Type: text/plain; charset="utf-8" - Add support for needed PnvSpi structure variables Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Michael Kowal --- hw/ssi/pnv_spi.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/hw/ssi/pnv_spi.c b/hw/ssi/pnv_spi.c index f40e8836b9..389a2cca6b 100644 --- a/hw/ssi/pnv_spi.c +++ b/hw/ssi/pnv_spi.c @@ -13,6 +13,7 @@ #include "hw/ssi/pnv_spi.h" #include "hw/ssi/pnv_spi_regs.h" #include "hw/ssi/ssi.h" +#include "migration/vmstate.h" #include #include "hw/irq.h" #include "trace.h" @@ -1199,6 +1200,31 @@ static int pnv_spi_dt_xscom(PnvXScomInterface *dev, = void *fdt, return 0; } =20 +static const VMStateDescription pnv_spi_vmstate =3D { + .name =3D TYPE_PNV_SPI, + .version_id =3D 1, + .fields =3D (const VMStateField[]) { + VMSTATE_UINT8(fail_count, PnvSpi), + VMSTATE_UINT8(transfer_len, PnvSpi), + VMSTATE_UINT8(responder_select, PnvSpi), + VMSTATE_BOOL(shift_n1_done, PnvSpi), + VMSTATE_UINT8(loop_counter_1, PnvSpi), + VMSTATE_UINT8(loop_counter_2, PnvSpi), + VMSTATE_UINT8(N1_bits, PnvSpi), + VMSTATE_UINT8(N2_bits, PnvSpi), + VMSTATE_UINT8(N1_bytes, PnvSpi), + VMSTATE_UINT8(N2_bytes, PnvSpi), + VMSTATE_UINT8(N1_tx, PnvSpi), + VMSTATE_UINT8(N2_tx, PnvSpi), + VMSTATE_UINT8(N1_rx, PnvSpi), + VMSTATE_UINT8(N2_rx, PnvSpi), + VMSTATE_UINT64_ARRAY(regs, PnvSpi, PNV_SPI_REGS), + VMSTATE_UINT8_ARRAY(seq_op, PnvSpi, PNV_SPI_REG_SIZE), + VMSTATE_UINT64(status, PnvSpi), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_spi_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -1209,6 +1235,7 @@ static void pnv_spi_class_init(ObjectClass *klass, co= nst void *data) dc->desc =3D "PowerNV SPI"; dc->realize =3D pnv_spi_realize; device_class_set_legacy_reset(dc, do_reset); + dc->vmsd =3D &pnv_spi_vmstate; device_class_set_props(dc, pnv_spi_properties); } =20 --=20 2.47.3 From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898158; cv=none; d=zohomail.com; s=zohoarc; b=KMOrA6wYxzNHST6Zf+PGrLXeb7b5SgeeYVuymomidGkYHy9mCf/IxPzjWAU4nVyeIjVIh1HVDy+/3Su454fl4AjwAhMoyW7edduQi/HIXVOHEoWVi3kQuqH/5N9q+WsoRDSk9h21cSmHvtP/8eYyjqLW5copTo9V5XbdQs4W47g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898158; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=44fHeX7l2wlwmfL+5d4CWL4ReGvcYhZ6mdi5DIEcxz0=; b=BmVNPt95jSolikCyM05Jt4BTQ+U4drHNgIWjUVKN2d0dRorZC0MN23RNMnsMQmcyB7EDvV/udVTy/JFlZA0hwYHRpfgszP280DPVPy/+KDtzqv6t30fKXWETI80/XI+2UIn3oVD869p8UfRDMT1shRbQqfXvnluJW5X25s1rp0M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1765898158446940.1736867609916; Tue, 16 Dec 2025 07:15:58 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWkm-0006op-DK; Tue, 16 Dec 2025 10:14:20 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkk-0006nj-Dk; Tue, 16 Dec 2025 10:14:18 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWki-0006vR-8Q; Tue, 16 Dec 2025 10:14:17 -0500 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BG7veit009416; Tue, 16 Dec 2025 15:14:13 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0wjpyeq2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:13 +0000 (GMT) Received: from m0356516.ppops.net (m0356516.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGEuUHs027938; Tue, 16 Dec 2025 15:14:12 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0wjpyeq0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:12 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGCxZQc012810; Tue, 16 Dec 2025 15:14:12 GMT Received: from smtprelay02.wdc07v.mail.ibm.com ([172.16.1.69]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4b1juy4x63-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:12 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay02.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFEAA39700042 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:10 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9D3F258043; Tue, 16 Dec 2025 15:14:10 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C0EC658053; Tue, 16 Dec 2025 15:14:09 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:09 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=44fHeX7l2wlwmfL+5 d4CWL4ReGvcYhZ6mdi5DIEcxz0=; b=YQ3R+QUiSuKlHYaYh31BFl5q6CxH0fji8 z9HjqDy4vWhWuNDOUzSIVIE3wORNIgP9hQWHuMe42MHXL6HC073Ot4LxDPNANEhG HVEQP8R3iRfS5tLBTEWxhqkzNDnaImrO3F7HwmHO08f9H3uG0h8SryVNp128QGax FNH37ElwZIGc8DjMEB29HKjgAQ9lq4UnO4b8EiPQsuSzw9nP2NPQ0d4N42vrY2xW UZisk28QHgCx4m+Znb+fqgDMfzLkY73h9EyXzmsZ+xruUCEWlXKnekfcrMgOo74T E/18DMw9HuaIYSkjL62etfBnK0QLFxa40IjyxTM29hEnBWB+PEZVQ== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 3/7] hw/ppc: Add pnv_i2c vmstate support Date: Tue, 16 Dec 2025 09:13:55 -0600 Message-ID: <20251216151359.418708-4-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAwMSBTYWx0ZWRfX6wFsmUuFTBUj BuRpkdDxBg5uG0UJLnxUJtotrCyXIttMGbMZ4SjkkG3vPnui8N+FQAuMkig0uGuuzi6FC+6p2Ab 94kjSTePJjz419Uggs8auxsCeaTvvCRUetWDu0yiCwDzFYmn/8XuwKSUmKpYv5r/zC+T1WS7ozd awbgSJcyiXewOLpOq0IXzdhTd9kR9yPUm710Dtqf8xAy0YleXpaOPQQmSQqYZNYYMFxweTi6ArL w9YwHgjOkSFvT0pnyJs+mBwaqCt2jxZI78tKADWmGatdozIpCVJ+Y75M+cWZ38E1PSDgmxACnZa 6cA1SzP4184BfamGUXBa9Unbkhf62vn28zl6Rc2RhPTRZRVgAlIsmO1Xazjnen1Mro9fJUCy+Nm pEfCcBz6uK1zb4BznqEkTPXkp3i+nA== X-Proofpoint-GUID: zJ6OV_QSCUgzr3OKjfH4dCgdlIRvKZ6q X-Proofpoint-ORIG-GUID: 8t78qDLeaHshAndLMQLjHcgoFqJ5Y_wR X-Authority-Analysis: v=2.4 cv=Kq5AGGWN c=1 sm=1 tr=0 ts=69417745 cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=DGM2Vrrcx73IGRt511UA:9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 malwarescore=0 impostorscore=0 clxscore=1015 spamscore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 phishscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130001 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=calebs@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898159646158500 Content-Type: text/plain; charset="utf-8" - Add vmstate support for i2c registers Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Michael Kowal --- hw/ppc/pnv_i2c.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/hw/ppc/pnv_i2c.c b/hw/ppc/pnv_i2c.c index 60de479491..1018078228 100644 --- a/hw/ppc/pnv_i2c.c +++ b/hw/ppc/pnv_i2c.c @@ -19,6 +19,7 @@ #include "hw/ppc/pnv_i2c.h" #include "hw/ppc/pnv_xscom.h" #include "hw/ppc/fdt.h" +#include "migration/vmstate.h" =20 #include =20 @@ -549,6 +550,15 @@ static const Property pnv_i2c_properties[] =3D { DEFINE_PROP_UINT32("num-busses", PnvI2C, num_busses, 1), }; =20 +static const VMStateDescription pnv_i2c_vmstate =3D { + .name =3D TYPE_PNV_I2C, + .version_id =3D 1, + .fields =3D (const VMStateField[]) { + VMSTATE_UINT64_ARRAY(regs, PnvI2C, PNV_I2C_REGS), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_i2c_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -561,6 +571,7 @@ static void pnv_i2c_class_init(ObjectClass *klass, cons= t void *data) =20 dc->desc =3D "PowerNV I2C"; dc->realize =3D pnv_i2c_realize; + dc->vmsd =3D &pnv_i2c_vmstate; device_class_set_props(dc, pnv_i2c_properties); } =20 --=20 2.47.3 From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898160; cv=none; d=zohomail.com; s=zohoarc; b=WyOuadVwYzLs1v2CfahLWGNLJHQu8EH6KYJnrJMeIvZpjKYNDfq2M1EQmaTdCiT1ZoDnL7Sc0H6eZFHbbTA/IDvvXuEtmQlHPbnBnmZeVZ2FvB/fb+a5D7l/uFtsz7eijKpAgPBFzX+OL5utUnlkXlgbcsXCH0yBYvYqGGYRQS0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898160; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=UXGPJgqGe4SMmBhzjkw2ibPeM4RYnUTKtGy7LaGhK0I=; b=ekLTfB1kri/uzakBzV7JXx3Kiizb5YaDoWQSOQR76KiOSTOL5W/QZmzz4Zq/6H9q4M37mL8r8hZIDHygoHpccUTCaH00rClb+j1VSoTFI/jN3wTkOJtVJugzpGu7ZI7qCNfE0ci9z9+dndyK4r1K5CfQVB6HzrU7HPeN6/PRElc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1765898160804526.4432685561885; Tue, 16 Dec 2025 07:16:00 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWko-0006qT-Sj; Tue, 16 Dec 2025 10:14:22 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkn-0006pO-A2; Tue, 16 Dec 2025 10:14:21 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkl-0006xK-AE; Tue, 16 Dec 2025 10:14:21 -0500 Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BG9pFHY003617; Tue, 16 Dec 2025 15:14:15 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0ytv7rbv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:15 +0000 (GMT) Received: from m0353729.ppops.net (m0353729.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGFEEbl026764; Tue, 16 Dec 2025 15:14:14 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0ytv7rbs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:14 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGC5ZBL005971; Tue, 16 Dec 2025 15:14:13 GMT Received: from smtprelay04.wdc07v.mail.ibm.com ([172.16.1.71]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4b1tgnudfr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:13 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay04.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFECXx41419506 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:12 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 396415805D; Tue, 16 Dec 2025 15:14:12 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 6720558043; Tue, 16 Dec 2025 15:14:11 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:11 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=UXGPJgqGe4SMmBhzj kw2ibPeM4RYnUTKtGy7LaGhK0I=; b=Ixt3IEFXxZSyxMqgwe2wewEI3USNHtoRN zZvttdOHc0PQ5WFmIxcBh9gxiwU1Lv6p/VED0b7EO4Ft9DdUfoJZNx00HfsVW0Xe bq31QIYR+9FdJjcW9Ummm943ICpItE63VmT7FugKRbYpFPBfamZyg6C3W1CRFK78 QjMDZC2EHd7OFvSP/pO1aU4WXlzZe6+CCsDB+ckdWTNY3a2Dl26nmZbQh3SY8pL6 3Ao/UREKUfPriaFpeLngCB72LjXdbHZVaNud0N9UN0+Mres5EVgWHvoRUTs+92TB inWjBBMqgxY9F8/eZB8zNxUlrNo0a+oJV3lgPsOpzU78N21v4Z4Uw== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 4/7] hw/ppc: pnv_adu.c added vmstate support Date: Tue, 16 Dec 2025 09:13:56 -0600 Message-ID: <20251216151359.418708-5-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAyMyBTYWx0ZWRfX8DdJc0E1KbiR iNIs5ANenadCSIUkRXqtQ/BT+nGNZIXu4rulpSqtTjLtdYXT+TeRcCHs+bYL7hDlNKDSqGYggqD Fs3Qd86rgzKgucm7+fKYbFiw152ln5EamnkWbL/cCOfNUBZXoVCo5LGL3zw3EfLePxSnjFxRK2f P89JHcppiSYQ7RJwWlnq6jGwgdbnjjET06ZzeIyeikeQ9ZKCI0GVSJgyX+cA83bOoYB30KR5fi0 YUe/JM+2+89xQyJe8TblMKqqh/O/0M+rmZOLUq2RVHKTvTxAo2CXd0JxAakxBcKeUFfHzIegvfR FOR+jRyS3k0KqKkplT/XHviemKsp3XuFzmHZEsuvtoTbkJ6qGDMzQrRi4hOfwRNn+hpEw74xDwp wPb81MwDMXeszjrmO9aRXpk/svF8aw== X-Proofpoint-ORIG-GUID: EAaghSScP9O8dn6xJTNAVrSGtntkjHSq X-Authority-Analysis: v=2.4 cv=QtRTHFyd c=1 sm=1 tr=0 ts=69417747 cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=PgXMhBZ8xRIDpNHfNDEA:9 X-Proofpoint-GUID: h_K-szidJaZcU0n_eL5efbQfist84GGY X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 adultscore=0 malwarescore=0 lowpriorityscore=0 spamscore=0 priorityscore=1501 bulkscore=0 suspectscore=0 impostorscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130023 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=calebs@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898161616158500 Content-Type: text/plain; charset="utf-8" - Added vmstate support for ADU model Signed-off-by: Angelo Jaramillo Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Michael Kowal --- hw/ppc/pnv_adu.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/hw/ppc/pnv_adu.c b/hw/ppc/pnv_adu.c index 005fbda475..bd2a9e233a 100644 --- a/hw/ppc/pnv_adu.c +++ b/hw/ppc/pnv_adu.c @@ -23,6 +23,7 @@ #include "hw/ppc/pnv_chip.h" #include "hw/ppc/pnv_lpc.h" #include "hw/ppc/pnv_xscom.h" +#include "migration/vmstate.h" #include "trace.h" =20 #define ADU_LPC_BASE_REG 0x40 @@ -189,6 +190,16 @@ static const Property pnv_adu_properties[] =3D { DEFINE_PROP_LINK("lpc", PnvADU, lpc, TYPE_PNV_LPC, PnvLpcController *), }; =20 +static const VMStateDescription pnv_adu_vmstate =3D { + .name =3D TYPE_PNV_ADU, + .version_id =3D 1, + .fields =3D (const VMStateField[]) { + VMSTATE_UINT64(lpc_cmd_reg, PnvADU), + VMSTATE_UINT64(lpc_data_reg, PnvADU), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_adu_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -197,6 +208,7 @@ static void pnv_adu_class_init(ObjectClass *klass, cons= t void *data) dc->desc =3D "PowerNV ADU"; device_class_set_props(dc, pnv_adu_properties); dc->user_creatable =3D false; + dc->vmsd =3D &pnv_adu_vmstate; } =20 static const TypeInfo pnv_adu_type_info =3D { --=20 2.47.3 From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898149; cv=none; d=zohomail.com; s=zohoarc; b=Mi5o1RLoeNwEHVVppAu0Lr18rPo0bvqNXunPKfOssKNMCFU20TQPu0xOsFkWlDTg43YBkxheOQw9o2//2cGxr4ION6QDe36bSJDTlzmWWF5JJUqHz2bL//BlGcZ3VrbA4yQpeaoo0WUC4E/dhwkdtSyt8hoQvYk/5v6wTA1sA9M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898149; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=vakf4KS5jvKAayUTjS8UDZ/c6IzELYhdEzAawdQnx2c=; b=JVY1CaB2KStelLW8Ot7a5BZjT00Vi/wBLYgYalt8dW2D7XDCmGUOh1WnW9reCmwHdYFgQN+8wkdNSFIBHJgL0dX5mM9v9XKhHBucBM2VoGOCzeikCNqOWOfo/G36zZ4GZDC+cY+blhvQph2vHLAVMLRTZG/O8hVNFTRHE5//cIU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1765898149722415.2081464328918; Tue, 16 Dec 2025 07:15:49 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWkp-0006qq-77; Tue, 16 Dec 2025 10:14:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkn-0006pP-9t; Tue, 16 Dec 2025 10:14:21 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkl-0006xz-AF; Tue, 16 Dec 2025 10:14:21 -0500 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BG7hmMD022380; Tue, 16 Dec 2025 15:14:16 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0xjky6e9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:16 +0000 (GMT) Received: from m0353725.ppops.net (m0353725.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGFDoRg012862; Tue, 16 Dec 2025 15:14:15 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0xjky6e7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:15 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGDq3H7002752; Tue, 16 Dec 2025 15:14:15 GMT Received: from smtprelay06.wdc07v.mail.ibm.com ([172.16.1.73]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4b1kfn4run-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:15 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay06.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFEEie30474848 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:14 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id EB5C85805D; Tue, 16 Dec 2025 15:14:13 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2448258043; Tue, 16 Dec 2025 15:14:13 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:13 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=vakf4KS5jvKAayUTj S8UDZ/c6IzELYhdEzAawdQnx2c=; b=RN1Lw+prQ2SoFxlYeovFZwshu2NIvY398 nxCLSHTXJxDHdkLvkmFGSPFmwms+n2HQ8VhQqDk9iLzet/FZ7stL78M/DOMslhlr c2kKvC7E4x0zpYn0+irI1rnczVr8sYlVc2TY1LN4tP6AX08dIIyE5/jOa7q66HxE CVah66KcmuUGtpGPvSLf9hi+eaGKq0r5zCoM4FLj6ouHotQK8xjBTPhJFP/gou9A 1md7Lyo7dLE66dL5vqWRKZGZePr+d00OIRZOn81B0e/9YvdZ3ddjGkWivlbIvsdN K30pwi9CHpSR21CV/sI6R/QBJX0QZ6TGrTpyGK+frHIftYmmqhwRw== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 5/7] hw/ppc: pnv_core.c add vmstate support Date: Tue, 16 Dec 2025 09:13:57 -0600 Message-ID: <20251216151359.418708-6-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: jkQx_cBFs1o6JYsrfdYp74ExDtNKTtkt X-Authority-Analysis: v=2.4 cv=CLgnnBrD c=1 sm=1 tr=0 ts=69417748 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=QXuC7XpKZ5phjoL22fcA:9 X-Proofpoint-GUID: aWuacPAutrUul9NLcNOZx6pGlCdAWC8I X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAwOSBTYWx0ZWRfX3oFFSTKcjiMt nNP3Zr/WZMbfTur0YVLo1mtL3Y74qZHv8JeVTvcr/SgFHbIkRPDwrc1RTG1dKgFEks6VuanwMiK TLBfJcTjS5av1yjDaTs6DCM/pxfFvhSSKhWjRva+qKu6aIrzAl0r9D+MRW8GPw0RJnD7lsOfI// wgExO8oiPkvzoiVOiXDGx3G4X38xlTGL4u1vC5+Tq8P8rKqHECDdqAHZxoW54k4bAX5vVDdHfbj FEqpcOAsS21V0KCXwanbEBQnLcdJteSFGSIpD22X50UJB5/rWIBa2KTsghenGVlvUlcTwygJ8Dp KJlbwXjOzKRCzbDrZMPXNj4JXiB/G10WyHVoT3YQ73XfCdhg58dKZMVEq4N+AKP/NuBU9WuGuul P6SbYdBT6fTJKmdqD8ogwotk7t8lDw== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 clxscore=1015 lowpriorityscore=0 malwarescore=0 suspectscore=0 phishscore=0 priorityscore=1501 bulkscore=0 impostorscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130009 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=calebs@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898152406154100 Content-Type: text/plain; charset="utf-8" - Add vmstate support PnvCore and PnvQuad capturing scratch registers and special wakeup registers Signed-off-by: Angelo Jaramillo Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Glenn Miles --- hw/ppc/pnv_core.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/hw/ppc/pnv_core.c b/hw/ppc/pnv_core.c index fb2dfc7ba2..03b64f0013 100644 --- a/hw/ppc/pnv_core.c +++ b/hw/ppc/pnv_core.c @@ -31,6 +31,7 @@ #include "hw/ppc/xics.h" #include "hw/qdev-properties.h" #include "helper_regs.h" +#include "migration/vmstate.h" =20 static const char *pnv_core_cpu_typename(PnvCore *pc) { @@ -478,6 +479,15 @@ static void pnv_core_power11_class_init(ObjectClass *o= c, const void *data) pnv_core_power10_class_init(oc, data); } =20 +static const VMStateDescription pnv_core_vmstate =3D { + .name =3D TYPE_PNV_CORE, + .version_id =3D 1, + .fields =3D (const VMStateField[]) { + VMSTATE_UINT64_ARRAY(scratch, PnvCore, 8), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_core_class_init(ObjectClass *oc, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(oc); @@ -486,6 +496,7 @@ static void pnv_core_class_init(ObjectClass *oc, const = void *data) dc->unrealize =3D pnv_core_unrealize; device_class_set_props(dc, pnv_core_properties); dc->user_creatable =3D false; + dc->vmsd =3D &pnv_core_vmstate; } =20 #define DEFINE_PNV_CORE_TYPE(family, cpu_model) \ @@ -737,12 +748,23 @@ static void pnv_quad_power11_class_init(ObjectClass *= oc, const void *data) pnv_quad_power10_class_init(oc, data); } =20 +static const VMStateDescription pnv_quad_vmstate =3D { + .name =3D TYPE_PNV_QUAD, + .version_id =3D 1, + .fields =3D (const VMStateField[]) { + VMSTATE_BOOL(special_wakeup_done, PnvQuad), + VMSTATE_BOOL_ARRAY(special_wakeup, PnvQuad, 4), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_quad_class_init(ObjectClass *oc, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(oc); =20 device_class_set_props(dc, pnv_quad_properties); dc->user_creatable =3D false; + dc->vmsd =3D &pnv_quad_vmstate; } =20 static const TypeInfo pnv_quad_infos[] =3D { --=20 2.47.3 From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898096; cv=none; d=zohomail.com; s=zohoarc; b=cMQhgKGR9ED/OAu7vJzsGQ0qkHDaMtOFbxPqw2RhNnRlLbr7JWhU5JzrqNJ1Lj/TFfCmyK4WTi3fY54qJwf9we6FGXzdxLlGwF8GnTFUCnBnJE5J1Ng3HF2Ci82uGYc4wJCZZyrls+ge4slSEfm7SpxqwjGEF65oXqgIHZAdO1g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898096; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=jcAN7q4Px4l/w7XdI+IIyXW1K41nZmGak05mxyr+J5o=; b=G6o7MsHOJVjkIyvU0l6xtB00Sy7iROlIZS+/O7Yus/2+f/2strflT7XtLKutS02WGTHn5aZ4KBNeul34X2cep8RWa4DD4dllhynw6rJ9dlUcxwtF/ua+f7muXNH4RJdZz3Qi866q71XQjayjMBZTrUVzuD8hkj1W1wpIoPRB2Fs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 176589809695671.14409999451539; Tue, 16 Dec 2025 07:14:56 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWkq-0006rO-G3; Tue, 16 Dec 2025 10:14:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWko-0006qL-Fg; Tue, 16 Dec 2025 10:14:22 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkm-00070H-T4; Tue, 16 Dec 2025 10:14:22 -0500 Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGDCLau022048; Tue, 16 Dec 2025 15:14:18 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0yt1f2fv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:18 +0000 (GMT) Received: from m0360072.ppops.net (m0360072.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGF8kLO008542; Tue, 16 Dec 2025 15:14:17 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0yt1f2ft-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:17 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGDvu2C002755; Tue, 16 Dec 2025 15:14:17 GMT Received: from smtprelay07.wdc07v.mail.ibm.com ([172.16.1.74]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4b1kfn4rur-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:17 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay07.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFEFvU29426338 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:15 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C28F258059; Tue, 16 Dec 2025 15:14:15 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F04E858053; Tue, 16 Dec 2025 15:14:14 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:14 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=jcAN7q4Px4l/w7XdI +IIyXW1K41nZmGak05mxyr+J5o=; b=mji73KhfeoeELysJIjWQJm9LTXUnyLiRU xPkXNzfgxUhcRrkbXT7DYdpHAx22u+21/AnCDwI1PwMO3YtdKGhWM31fkgToHzsb Wumj1VLTHE/Xc2n+TNWDv229cAdzWaiFli+YD5V6KJHnr0lZIT4EptVJUIKpJSUH A+zTnb7ABAwNTGm8EmEnJADYtOqBC3gFg3bImFOk8LvlKPdTj9J6Vmayfimk6ABI 7vSTAWmLH09iW/xY/bH98t9N7YBIbtRcr43k3Dge4MomVQglWVOQlTcc4uvH3mIR W4DSFDv7eT6D1LLnoa31myzSGm2PFg9WfZih1JHEuPrhXpZDClZGA== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 6/7] hw/ppc: pnv_chiptod.c add vmstate support Date: Tue, 16 Dec 2025 09:13:58 -0600 Message-ID: <20251216151359.418708-7-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-GUID: bnpxc4dKcoyN5D4c4v10WcvetApakY8S X-Proofpoint-ORIG-GUID: Ao0LF4S04T-Pid1S_uH-87X6I4GMIzzt X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAyMyBTYWx0ZWRfX1P5zR6lPSfeN dl3HdLiDawOhpGBoM+Rgsat40pfq21qabrGdxk3G7Kgb/3In/u7+51Xr5Ka31aRCSm/HWPb5oLt CWPDiAx+p6jangbk8CtRZMGk4s1+hmwPx8lFQA1wqZcJ4Il3kTPN8Ec1WS+YO5tyK7Lecbk7cX2 XdRqFcJiBHmyXEQkJhnkSFP6ElocSHej+WumFddcWcFenNPfvqhHTQbUPWwo+74ST0AX+saHN/7 HTIFthl9yeE6q2LWh8N5nGn9OX7X/NH2dIZyvG80E5Bx5rFKaDJZSM+h7lkRqkdcobEhZwX/wSy 98RagEbX1FGoec+ljYAbb8JFHQY2TI/eAUcowkCyLAl2exIpAbdBAuWDwqe54B+R5jFFvqbYUnm 3r4964G5G5AsKBLXC3fLsIAxWa8mdQ== X-Authority-Analysis: v=2.4 cv=L/MQguT8 c=1 sm=1 tr=0 ts=6941774a cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=2tKvrj9r5tddppBGlX0A:9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0 malwarescore=0 adultscore=0 priorityscore=1501 clxscore=1015 lowpriorityscore=0 bulkscore=0 spamscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130023 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=calebs@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898117634158500 Content-Type: text/plain; charset="utf-8" - Added pre_save and post_load methods to handle slave_pc_target and tod_st= ate Signed-off-by: Angelo Jaramillo Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Michael Kowal --- hw/ppc/pnv_chiptod.c | 38 ++++++++++++++++++++++++++++++++++++ include/hw/ppc/pnv_chiptod.h | 2 ++ 2 files changed, 40 insertions(+) diff --git a/hw/ppc/pnv_chiptod.c b/hw/ppc/pnv_chiptod.c index f887a18cde..9dc5942ca0 100644 --- a/hw/ppc/pnv_chiptod.c +++ b/hw/ppc/pnv_chiptod.c @@ -37,6 +37,7 @@ #include "hw/ppc/pnv_core.h" #include "hw/ppc/pnv_xscom.h" #include "hw/ppc/pnv_chiptod.h" +#include "migration/vmstate.h" #include "trace.h" =20 #include @@ -341,6 +342,8 @@ static void pnv_chiptod_xscom_write(void *opaque, hwadd= r addr, " TOD_TX_TTYPE_CTRL_REG val 0x%" PRIx64 " invalid slave address\n", val); } + /* Write slave_pc_target to a uint64_t variable for vmstate suppor= t. */ + chiptod->tx_ttype_ctrl =3D val; break; case TOD_ERROR_REG: chiptod->tod_error &=3D ~val; @@ -613,6 +616,40 @@ static void pnv_chiptod_unrealize(DeviceState *dev) qemu_unregister_reset(pnv_chiptod_reset, chiptod); } =20 +static int vmstate_pnv_chiptod_pre_save(void *opaque) +{ + PnvChipTOD *chiptod =3D PNV_CHIPTOD(opaque); + chiptod->tod_state_val =3D (uint8_t)chiptod->tod_state; + return 0; +} + +static int vmstate_pnv_chiptod_post_load(void *opaque) +{ + PnvChipTOD *chiptod =3D PNV_CHIPTOD(opaque); + if (chiptod->tx_ttype_ctrl !=3D 0) { + pnv_chiptod_xscom_write(chiptod, TOD_TX_TTYPE_CTRL_REG << 3, + chiptod->tx_ttype_ctrl, 8); + } + chiptod->tod_state =3D (enum tod_state)chiptod->tod_state_val; + return 0; +} + +static const VMStateDescription pnv_chiptod_vmstate =3D { + .name =3D TYPE_PNV_CHIPTOD, + .version_id =3D 1, + .pre_save =3D vmstate_pnv_chiptod_pre_save, + .pre_load =3D vmstate_pnv_chiptod_post_load, + .fields =3D (const VMStateField[]) { + VMSTATE_BOOL(primary, PnvChipTOD), + VMSTATE_BOOL(secondary, PnvChipTOD), + VMSTATE_UINT64(tod_error, PnvChipTOD), + VMSTATE_UINT64(pss_mss_ctrl_reg, PnvChipTOD), + VMSTATE_UINT64(tx_ttype_ctrl, PnvChipTOD), + VMSTATE_UINT8(tod_state_val, PnvChipTOD), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_chiptod_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -621,6 +658,7 @@ static void pnv_chiptod_class_init(ObjectClass *klass, = const void *data) dc->unrealize =3D pnv_chiptod_unrealize; dc->desc =3D "PowerNV ChipTOD Controller"; dc->user_creatable =3D false; + dc->vmsd =3D &pnv_chiptod_vmstate; } =20 static const TypeInfo pnv_chiptod_type_info =3D { diff --git a/include/hw/ppc/pnv_chiptod.h b/include/hw/ppc/pnv_chiptod.h index 466b06560a..3e5e3b02b2 100644 --- a/include/hw/ppc/pnv_chiptod.h +++ b/include/hw/ppc/pnv_chiptod.h @@ -41,6 +41,8 @@ struct PnvChipTOD { uint64_t tod_error; uint64_t pss_mss_ctrl_reg; PnvCore *slave_pc_target; + uint64_t tx_ttype_ctrl; + uint8_t tod_state_val; }; =20 struct PnvChipTODClass { --=20 2.47.3 From nobody Thu Dec 18 02:38:48 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1765898124; cv=none; d=zohomail.com; s=zohoarc; b=VaAPqteu3/QG4GtLjao3zaCHSPayDgLY1v93elLHwClssoyZo59U8FAyab12E5U33QYD4P6i3ng8Kn1SyLJkPGxsomf18AYEhw2rMh2E5l0+J7uBuvVgtzlnRNHP7o1kv54KZYUi7LVYhqOGedppeVCPRKBFdqTDEBrNxC0ERjk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1765898124; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=CwHtwHqF9QeIHgO8OlLt6uppBDL9NUgMv9GjjLAy+/o=; b=J7luMM0u1qHom4poyQiXDOWDJNBedw5HqT6iFEGV9NynuX5qPT+fnyu7h4cXYiwRrFPmEzBtl29YgOoxO9+3xMkk2NmWtUQ9VZU4GMEMVF+YLZK/2etd3+o+JcmtviSKwhrbCiXx6nxBMq9FCcLvxgW6UzgHtKFhxm+Fk16PiC4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1765898124051348.7255258676465; Tue, 16 Dec 2025 07:15:24 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vVWku-0006t6-Ue; Tue, 16 Dec 2025 10:14:29 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkt-0006sL-3V; Tue, 16 Dec 2025 10:14:27 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vVWkq-000719-Fx; Tue, 16 Dec 2025 10:14:26 -0500 Received: from pps.filterd (m0360083.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5BG54Q19011903; Tue, 16 Dec 2025 15:14:21 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0yn8fvru-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:20 +0000 (GMT) Received: from m0360083.ppops.net (m0360083.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 5BGF8q72011811; Tue, 16 Dec 2025 15:14:20 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4b0yn8fvrr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:20 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5BGDGxku012783; Tue, 16 Dec 2025 15:14:19 GMT Received: from smtprelay03.dal12v.mail.ibm.com ([172.16.1.5]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4b1juy4x6j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 16 Dec 2025 15:14:19 +0000 Received: from smtpav05.wdc07v.mail.ibm.com (smtpav05.wdc07v.mail.ibm.com [10.39.53.232]) by smtprelay03.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5BGFEHQo33620592 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Dec 2025 15:14:18 GMT Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id AE18058043; Tue, 16 Dec 2025 15:14:17 +0000 (GMT) Received: from smtpav05.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DB1CE58053; Tue, 16 Dec 2025 15:14:16 +0000 (GMT) Received: from gfwr532.rchland.ibm.com (unknown [9.10.239.133]) by smtpav05.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 16 Dec 2025 15:14:16 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=CwHtwHqF9QeIHgO8O lLt6uppBDL9NUgMv9GjjLAy+/o=; b=BzIGwXovIcfAEJykIDH00z63gef8KAuuc KhG2g1sCEkq/YYlN9fn2lguhQHxprdZ2o4dJ1Mw1tIX5RuKEcNVj0wCb4Cx96Vcz 1FROT/S2HZFb9vlk5wwinpYT3OevzLBL6x8B+lkUGZqCivNotAWE1ymbuaKmJBLH WQg3Hzb//lVpHBOE6iZO7wBesCqiFmCkYY81cu5kOY6UcBMJbHaxx4PRrohF0UQ5 qN88ijlurMoI930pwTpS1cUhUBnhcZZ3v2i7iNvSQSk7DPgGc+QQ1HW8n6AdJvkT eljs40UlatgQXuz7wejRDg7Fbq5Q4E974bdv1OAwfDKe6j+SA+bBw== From: Caleb Schlossin To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, npiggin@gmail.com, adityag@linux.ibm.com, milesg@linux.ibm.com, alistair@alistair23.me, kowal@linux.ibm.com, chalapathi.v@linux.ibm.com, calebs@linux.ibm.com, angeloj@linux.ibm.com Subject: [PATCH v3 7/7] hw/ppc: Add VMSTATE information to PnvPsi Date: Tue, 16 Dec 2025 09:13:59 -0600 Message-ID: <20251216151359.418708-8-calebs@linux.ibm.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251216151359.418708-1-calebs@linux.ibm.com> References: <20251216151359.418708-1-calebs@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEzMDAxOCBTYWx0ZWRfX8K2aFOWhnkoE I9Gkvjj3SioiDKNfZ+4RLa36FaHtwTrnmYu4Te6qR7Q7biZZFSK+3W1UB3VAn69y6k/AWL7fjZ7 3XnMwqTxbPzwwrVHTSaExz1o60fvNQQqcSXED3y/TsgULZw3sXQKd3Q9wN/9YiwjaZrE24NUkmQ D3C6JCuaOerRQ47Q4kS5H5VNO7whBPn+7zgxNv7rDhBxuz5T4dkYtzuCmSzff8+Yt7BARsSH932 BiCbvJRU0EsbIFv38zafy+lse2/OeRzd/0ceZEWdCw+KOr4cX4ZQZ0dV9lEk1ynaOF/uO3jbR1W YjBfSj3IqwAONg81++u0NoVUHAeqBYEyyerHXN3bys71ZghUytJVzpb0ewikTlcVAFpve39SUZT R4xtPlqej380O7rIf6lRzvYl5VJkmw== X-Proofpoint-GUID: RwfimJuFqmEnWK5lYJh5aQp8Ae9jiPcA X-Proofpoint-ORIG-GUID: lOvrLQ6UCrFPqLISahYGcMi71yNQ8U9l X-Authority-Analysis: v=2.4 cv=LbYxKzfi c=1 sm=1 tr=0 ts=6941774c cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=VnNF1IyMAAAA:8 a=oruG57yO5g4gZiaFByIA:9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-16_02,2025-12-16_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 spamscore=0 phishscore=0 clxscore=1015 suspectscore=0 adultscore=0 malwarescore=0 priorityscore=1501 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2510240000 definitions=main-2512130018 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=calebs@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1765898125486158500 Content-Type: text/plain; charset="utf-8" PnvPsi needs to be able to save/load snapshots. Add VMSTATE information to the device class and a post_load() method to restore dynamic data items = and memory region mappings. Signed-off-by: Michael Kowal Signed-off-by: Caleb Schlossin Reviewed-by: Aditya Gupta Reviewed-by: Glenn Miles Reviewed-by: Michael Kowal --- hw/ppc/pnv_psi.c | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/hw/ppc/pnv_psi.c b/hw/ppc/pnv_psi.c index 5d947d8b52..67bc911e4b 100644 --- a/hw/ppc/pnv_psi.c +++ b/hw/ppc/pnv_psi.c @@ -25,6 +25,7 @@ #include "qemu/module.h" #include "system/reset.h" #include "qapi/error.h" +#include "migration/vmstate.h" =20 =20 #include "hw/ppc/fdt.h" @@ -130,12 +131,11 @@ static void pnv_psi_set_bar(PnvPsi *psi, uint64_t bar) { PnvPsiClass *ppc =3D PNV_PSI_GET_CLASS(psi); MemoryRegion *sysmem =3D get_system_memory(); - uint64_t old =3D psi->regs[PSIHB_XSCOM_BAR]; =20 psi->regs[PSIHB_XSCOM_BAR] =3D bar & (ppc->bar_mask | PSIHB_BAR_EN); =20 /* Update MR, always remove it first */ - if (old & PSIHB_BAR_EN) { + if (memory_region_is_mapped(&psi->regs_mr)) { memory_region_del_subregion(sysmem, &psi->regs_mr); } =20 @@ -919,6 +919,37 @@ static const TypeInfo pnv_psi_power9_info =3D { }, }; =20 +static int vmstate_pnv_psi_post_load(void *opaque, int version_id) +{ + PnvPsi *psi =3D PNV_PSI(opaque); + Pnv9Psi *psi9 =3D PNV9_PSI(psi); + MemoryRegion *sysmem =3D get_system_memory(); + uint64_t esb_bar; + hwaddr esb_addr; + + /* Set the ESB MMIO mapping */ + esb_bar =3D psi->regs[PSIHB_REG(PSIHB9_ESB_CI_BASE)]; + + if (esb_bar & PSIHB9_ESB_CI_VALID) { + esb_addr =3D esb_bar & PSIHB9_ESB_CI_ADDR_MASK; + memory_region_add_subregion(sysmem, esb_addr, + &psi9->source.esb_mmio); + } + + return 0; +} + +static const VMStateDescription vmstate_pnv_psi =3D { + .name =3D TYPE_PNV_PSI, + .version_id =3D 1, + .minimum_version_id =3D 1, + .post_load =3D vmstate_pnv_psi_post_load, + .fields =3D (const VMStateField[]) { + VMSTATE_UINT64_ARRAY(regs, PnvPsi, PSIHB_XSCOM_MAX), + VMSTATE_END_OF_LIST() + } +}; + static void pnv_psi_power10_class_init(ObjectClass *klass, const void *dat= a) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -926,6 +957,7 @@ static void pnv_psi_power10_class_init(ObjectClass *kla= ss, const void *data) static const char compat[] =3D "ibm,power10-psihb-x\0ibm,psihb-x"; =20 dc->desc =3D "PowerNV PSI Controller POWER10"; + dc->vmsd =3D &vmstate_pnv_psi; =20 ppc->xscom_pcba =3D PNV10_XSCOM_PSIHB_BASE; ppc->xscom_size =3D PNV10_XSCOM_PSIHB_SIZE; --=20 2.47.3