From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655832992; cv=none; d=zohomail.com; s=zohoarc; b=ZQ+aru90axfl896MmFhaArve3NkacVVoQSaWLLgdRjZG3AAe+c/WsvxnC4wruhEsi1O7EonuMab4cMExdyjGavM/li81AJ1u+veZ7lxDZJCICCG5OnXnxacCPRkJhCeh6Gwmn/zqTpPs8tzlkJ0xFU5wDN05adW1VxNONNOJBhc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655832992; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=2sjQ1PEwzNrRmTof4HPK2BqFxFXmrYidB2rpovzMR6g=; b=egbrymVmb34ipdXD3O11GpmRkqGLzSKTYvZah0VXUlbRAH4BCgjx+HzYgXSoUfG8I89L1KQygEH0sQEqY7GbhVihPBCWFwhmPQpjhYGvqUdqOwF+rGSbwfeaBczqYUcvQCb0/UXHj2m9QXbRYlx+1Oyy4uo9q455f5ppzljmn/Q= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1655832992566531.3240295608683; Tue, 21 Jun 2022 10:36:32 -0700 (PDT) Received: from localhost ([::1]:38106 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hni-0005iV-9r for importer@patchew.org; Tue, 21 Jun 2022 13:36:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32820) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hm3-0002pH-P8; Tue, 21 Jun 2022 13:34:47 -0400 Received: from mail-oa1-x29.google.com ([2001:4860:4864:20::29]:35694) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hm1-0002Ks-5b; Tue, 21 Jun 2022 13:34:47 -0400 Received: by mail-oa1-x29.google.com with SMTP id 586e51a60fabf-101d96fe0a5so9772478fac.2; Tue, 21 Jun 2022 10:34:44 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2sjQ1PEwzNrRmTof4HPK2BqFxFXmrYidB2rpovzMR6g=; b=XOPrwHfjrZ9Uwbggcwb6xxuScjtYScmKz8XOey3OtsxDPRya3UttTD/ixw5dK5/W/5 4p+ZYyFMB1h75PKjBnmRB3HSKAsMxluiIzbL9wGE5OjYgIaRkB4sEwDCKTNtuM2YcuUE 4pKF9XlR8Vq6Zl8tKvIlCFpYrOUjdvPJv5HogARAzXSowFiPQ/oGNbvO4M0dwCxKgYL/ 1Q6PHLf6xQorUP72yrJUgN4H8FSXUzk0lPLEpVf8vni3dCX4ay+PTdJSdRwFTIK1HGuf pEHT4K3emVvlPHcVi78hIFH0Ia3qiIzK+ieQ/Ip2GFXFbAWgjZIjhPxZQPULPQEv4wvN 0vbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=2sjQ1PEwzNrRmTof4HPK2BqFxFXmrYidB2rpovzMR6g=; b=sGolaJKpaH3BzrbsLzbYawdKS+lI4Qcg/BrSp8cU1sFIJwLliGiAU+2GdYjL2hQDWq oSy3zyhWebRR8DZxFCkmcmomPyRgm4iWLj9yjbmEcpNzGMYwnByoMyE0ZGJcJjjAd20f 9h4Yc6uZIIq/GtcvMGlvGLSqP4IuU/Arll8HLHezDiMGPgNxgC44Gn01mCnA6HXOJekr oDgbGM4TRQPUbugw4R1tLkg+VCAx9xDV5LxOw3LNi6Yny5h6Ud+wDzdtxwE+yJwbikhF 5hTEio5VEzeu+U79PVwhkpxzpFOritS8WLpkY/3BTvlDvZnYPNYgGq9LElTpUy0Dt/LD e8mg== X-Gm-Message-State: AJIora+HJYJfmcLHf+oV2y/W1zLJ63zkKOQH/Y5cpJC9WCwFnYdGW6Z+ nwBQjizZ7N4dqva5mTlgwsBWF/VmJHoEmw== X-Google-Smtp-Source: AGRyM1tK35admpkHyMOWEVMlLWGNVBMHtLfJQ/ReRbl/uLEHzg+8xmulFPtZf4kxIbBVJjK8+4T0BA== X-Received: by 2002:a05:6870:d2a5:b0:104:95f5:4d63 with SMTP id d37-20020a056870d2a500b0010495f54d63mr1421786oae.215.1655832883516; Tue, 21 Jun 2022 10:34:43 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 1/8] ppc/pnv: move root port attach to pnv_phb4_realize() Date: Tue, 21 Jun 2022 14:34:29 -0300 Message-Id: <20220621173436.165912-2-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::29; envelope-from=danielhb413@gmail.com; helo=mail-oa1-x29.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655832993274100003 Creating a root port is something related to the PHB, not the PEC. It also makes the logic more in line with what pnv-phb3 does. Reviewed-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Signed-off-by: Daniel Henrique Barboza --- hw/pci-host/pnv_phb4.c | 4 ++++ hw/pci-host/pnv_phb4_pec.c | 3 --- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index 6594016121..23ad8de7ee 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -1547,6 +1547,7 @@ static void pnv_phb4_instance_init(Object *obj) static void pnv_phb4_realize(DeviceState *dev, Error **errp) { PnvPHB4 *phb =3D PNV_PHB4(dev); + PnvPhb4PecClass *pecc =3D PNV_PHB4_PEC_GET_CLASS(phb->pec); PCIHostState *pci =3D PCI_HOST_BRIDGE(dev); XiveSource *xsrc =3D &phb->xsrc; int nr_irqs; @@ -1583,6 +1584,9 @@ static void pnv_phb4_realize(DeviceState *dev, Error = **errp) pci_setup_iommu(pci->bus, pnv_phb4_dma_iommu, phb); pci->bus->flags |=3D PCI_BUS_EXTENDED_CONFIG_SPACE; =20 + /* Add a single Root port if running with defaults */ + pnv_phb_attach_root_port(pci, pecc->rp_model); + /* Setup XIVE Source */ if (phb->big_phb) { nr_irqs =3D PNV_PHB4_MAX_INTs; diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c index 8b7e823fa5..c9aaf1c28e 100644 --- a/hw/pci-host/pnv_phb4_pec.c +++ b/hw/pci-host/pnv_phb4_pec.c @@ -130,9 +130,6 @@ static void pnv_pec_default_phb_realize(PnvPhb4PecState= *pec, if (!sysbus_realize(SYS_BUS_DEVICE(phb), errp)) { return; } - - /* Add a single Root port if running with defaults */ - pnv_phb_attach_root_port(PCI_HOST_BRIDGE(phb), pecc->rp_model); } =20 static void pnv_pec_realize(DeviceState *dev, Error **errp) --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833006; cv=none; d=zohomail.com; s=zohoarc; b=N1zTe46K7y1P4J+Sew5xSrqnT6sD8AwgNhAL3aiJtSiPs0TcSBRH162YWJVrVlPfyP/cbA9I2GYvJ7kWZXp92Yyi3t8fYzmAJ9K46wFPLcFAQo/vkevzwryD/BRPTUjqg0/wxe8DPRZzVWNrZKzNiYIG9lZDZrhPiOfap+/+je0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833006; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=3kbu4UrA5HIu+Wok8xije/iW/kzvjSDna/SqQrFKhpE=; b=YvCnbwrxMDy9ECIK/qYoOHanw5zQsPcTZxpASXRELA0j7CeHxAnTE456hcTNMrcb1fR9tCZoGbLKkhAwgXuSZCGRpnxGefb7VPi82wjbFFAkgVzDyzA+p+n5oxEqKZ1h6K2rAO1j5NMtnTIx2yWEyvkRTi3K91Xu62TEiZBKSqY= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1655833006783193.49315570260978; Tue, 21 Jun 2022 10:36:46 -0700 (PDT) Received: from localhost ([::1]:39386 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hnx-0006Zz-OS for importer@patchew.org; Tue, 21 Jun 2022 13:36:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32882) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hm7-0002x7-Aa; Tue, 21 Jun 2022 13:34:51 -0400 Received: from mail-oa1-x35.google.com ([2001:4860:4864:20::35]:45700) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hm5-0002LG-H3; Tue, 21 Jun 2022 13:34:51 -0400 Received: by mail-oa1-x35.google.com with SMTP id 586e51a60fabf-1048b8a38bbso2557173fac.12; Tue, 21 Jun 2022 10:34:47 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=3kbu4UrA5HIu+Wok8xije/iW/kzvjSDna/SqQrFKhpE=; b=MM1Bl0baytqCPVsfUt4AVFGbn4xbt3L+dQwFj98PmvFCcTV1/44wIcOCAnHCj5jBS9 fDwbSZL/jFtH4T8l/zU7wMnsB2viRfJVQqOqgEydmD56tGOdUeJaPlD0JdC3ggWhd8sY E8YcaAY2OXIaalGNOsPhJYhZfPDyDRdVEZtXwyqccTkhSzt8jezSFjJ8HmySdMBc/HW+ t7/ITpDo8B6DOsQ0JAtfT7UYwOTO5rAHj6n3uH57huZCkDE46GYG6ckRwMb4k1rlq9cd UHV8a55i4DRyyHHW/GD8RrBb7H/BpuCNTgq2vkZ4nt+4ZDZlGCOizmq/7L0vwLIIgWU+ 8JrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=3kbu4UrA5HIu+Wok8xije/iW/kzvjSDna/SqQrFKhpE=; b=Rv/XVqSTEQj+8sZCKJSPTVgDUqyoqpVQpq+FnF1w3b+oisgQ5bvpbdfwqry2qXxxOs LkX1eVvwfV8Z4gJ/2kD7F9eZX3m0UK3ZDA7IHjDuSR7lBJnm41crNbagsuoZjq69ZsY9 88U35BK/SCpxWDLw9W2fL4YSMJV7cUKGcxXEEOwCRuPGiFIoE2YTDxcn9ZaiJ3DSokb2 8Yc/doMfHD7ohx7WeyV8Qbej4Z3hqzcqhizO8wsAb9KHxx5X6J2bZnahn7pWI8+2cs1e lAE0cVjOc2aO7Co6v4FjcuCeVRNOk8vMR7uKKkl/TJjcbBhGTjsWauGVSIMXb+p1WNHP 8FhA== X-Gm-Message-State: AJIora/2jqOQq02JZFJj9pGAuLZuciY63u+6CqHsX0C+2sDOCxCRAQpI IgJBCRZ+7eJE3v9DajihzEYwE6lELhfAgg== X-Google-Smtp-Source: AGRyM1u+I/0iQN1v2Aqw0JNPr6xSEkZ6Bg/BsQj+bZ87hP2flBOrLSLPGsEt/SEdWHiGyroni0Ma6Q== X-Received: by 2002:a05:6870:14cf:b0:101:ca19:8328 with SMTP id l15-20020a05687014cf00b00101ca198328mr9367643oab.60.1655832885682; Tue, 21 Jun 2022 10:34:45 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 2/8] ppc/pnv: attach phb3/phb4 root ports in QOM tree Date: Tue, 21 Jun 2022 14:34:30 -0300 Message-Id: <20220621173436.165912-3-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::35; envelope-from=danielhb413@gmail.com; helo=mail-oa1-x35.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833007403100001 At this moment we leave the pnv-phb3(4)-root-port unattached in QOM: /unattached (container) (...) /device[2] (pnv-phb3-root-port) /bus master container[0] (memory-region) /bus master[0] (memory-region) /pci_bridge_io[0] (memory-region) /pci_bridge_io[1] (memory-region) /pci_bridge_mem[0] (memory-region) /pci_bridge_pci[0] (memory-region) /pci_bridge_pref_mem[0] (memory-region) /pci_bridge_vga_io_hi[0] (memory-region) /pci_bridge_vga_io_lo[0] (memory-region) /pci_bridge_vga_mem[0] (memory-region) /pcie.0 (PCIE) Let's make changes in pnv_phb_attach_root_port() to attach the created root ports to its corresponding PHB. This is the result afterwards: /pnv-phb3[0] (pnv-phb3) /lsi (ics) /msi (phb3-msi) /msi32[0] (memory-region) /msi64[0] (memory-region) /pbcq (pnv-pbcq) (...) /phb3_iommu[0] (pnv-phb3-iommu-memory-region) /pnv-phb3-root.0 (pnv-phb3-root) /pnv-phb3-root-port[0] (pnv-phb3-root-port) /bus master container[0] (memory-region) /bus master[0] (memory-region) /pci_bridge_io[0] (memory-region) /pci_bridge_io[1] (memory-region) /pci_bridge_mem[0] (memory-region) /pci_bridge_pci[0] (memory-region) /pci_bridge_pref_mem[0] (memory-region) /pci_bridge_vga_io_hi[0] (memory-region) /pci_bridge_vga_io_lo[0] (memory-region) /pci_bridge_vga_mem[0] (memory-region) /pcie.0 (PCIE) Reviewed-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Signed-off-by: Daniel Henrique Barboza --- hw/pci-host/pnv_phb3.c | 2 +- hw/pci-host/pnv_phb4.c | 2 +- hw/ppc/pnv.c | 7 ++++++- include/hw/ppc/pnv.h | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/hw/pci-host/pnv_phb3.c b/hw/pci-host/pnv_phb3.c index 26ac9b7123..4ba660f8b9 100644 --- a/hw/pci-host/pnv_phb3.c +++ b/hw/pci-host/pnv_phb3.c @@ -1052,7 +1052,7 @@ static void pnv_phb3_realize(DeviceState *dev, Error = **errp) =20 pci_setup_iommu(pci->bus, pnv_phb3_dma_iommu, phb); =20 - pnv_phb_attach_root_port(PCI_HOST_BRIDGE(phb), TYPE_PNV_PHB3_ROOT_PORT= ); + pnv_phb_attach_root_port(pci, TYPE_PNV_PHB3_ROOT_PORT, phb->phb_id); } =20 void pnv_phb3_update_regions(PnvPHB3 *phb) diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index 23ad8de7ee..ffd9d8a947 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -1585,7 +1585,7 @@ static void pnv_phb4_realize(DeviceState *dev, Error = **errp) pci->bus->flags |=3D PCI_BUS_EXTENDED_CONFIG_SPACE; =20 /* Add a single Root port if running with defaults */ - pnv_phb_attach_root_port(pci, pecc->rp_model); + pnv_phb_attach_root_port(pci, pecc->rp_model, phb->phb_id); =20 /* Setup XIVE Source */ if (phb->big_phb) { diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index 7c08a78d6c..40e0cbd84d 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -1190,9 +1190,14 @@ static void pnv_chip_icp_realize(Pnv8Chip *chip8, Er= ror **errp) } =20 /* Attach a root port device */ -void pnv_phb_attach_root_port(PCIHostState *pci, const char *name) +void pnv_phb_attach_root_port(PCIHostState *pci, const char *name, int ind= ex) { PCIDevice *root =3D pci_new(PCI_DEVFN(0, 0), name); + g_autofree char *default_id =3D g_strdup_printf("%s[%d]", name, index); + const char *dev_id =3D DEVICE(root)->id; + + object_property_add_child(OBJECT(pci->bus), dev_id ? dev_id : default_= id, + OBJECT(root)); =20 pci_realize_and_unref(root, pci->bus, &error_fatal); } diff --git a/include/hw/ppc/pnv.h b/include/hw/ppc/pnv.h index 86cb7d7f97..033890a23f 100644 --- a/include/hw/ppc/pnv.h +++ b/include/hw/ppc/pnv.h @@ -189,7 +189,7 @@ DECLARE_INSTANCE_CHECKER(PnvChip, PNV_CHIP_POWER10, TYPE_PNV_CHIP_POWER10) =20 PowerPCCPU *pnv_chip_find_cpu(PnvChip *chip, uint32_t pir); -void pnv_phb_attach_root_port(PCIHostState *pci, const char *name); +void pnv_phb_attach_root_port(PCIHostState *pci, const char *name, int ind= ex); =20 #define TYPE_PNV_MACHINE MACHINE_TYPE_NAME("powernv") typedef struct PnvMachineClass PnvMachineClass; --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833041; cv=none; d=zohomail.com; s=zohoarc; b=QJ3XDXcAJb2Yg+JAKAVG84Eonh/pFGtMMT03NKHJ8sFZlRYV/i2Q4y4Salx2RViQKVJVNOnmrW5ghrB/0TFPiniFwpr5ccjikc2RS7s/eeudHm+chyzhW+vSFenbqTsRZuxxgwnsJNJayvvVFSIhTZKKzohflkuRBoZeUntNMp8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833041; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=4CmgoMB3Shkp28H9b7m3CMHpdU8T5H538qsF+/3DIrs=; b=EkU4mhhZLCeLlSGAEXMATjHY5ue9scxhx/7bYEs01c8F0cEq4fjBD+Iv8hiyZDiey5NfazJvOqVP/ET1za22l4J3M/40eTetAjgA/ZDQHpYrgNPdAD2+KBlsys5GZjLjvitdKHyrbp0CEOKpbJdaWi6BcMzd+edhK8fESKjnVYE= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1655833041823972.7559355462494; Tue, 21 Jun 2022 10:37:21 -0700 (PDT) Received: from localhost ([::1]:40150 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hoW-00077E-8p for importer@patchew.org; Tue, 21 Jun 2022 13:37:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32884) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hm7-0002xG-DX; Tue, 21 Jun 2022 13:34:51 -0400 Received: from mail-oi1-x229.google.com ([2607:f8b0:4864:20::229]:40666) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hm5-0002Ln-HZ; Tue, 21 Jun 2022 13:34:51 -0400 Received: by mail-oi1-x229.google.com with SMTP id i25so17955543oii.7; Tue, 21 Jun 2022 10:34:48 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=4CmgoMB3Shkp28H9b7m3CMHpdU8T5H538qsF+/3DIrs=; b=pvVH2ajD1Z9nWhfwpGsVLhGT7p3jk460HLvALGWOOGQJtYrRWh8uwjGqkhyB94s2qC sCV/Dhsfo3LnE+XXZL2Mz8pzc5/RCUyxUp5awd2aYUv5NCCmILyRuuNPUPcbATM+D/TP NWEXJ+is8tIDFHlFbRzQpOxfH0zX1eluqJoKT0uF56HXviehLhvshHpw/GBZ+RA9V4Yr RPYYQUFjEpA5IRQ2HC47JZc9R3OlfvKstfeX+TvMz1iFcVZdUkSxYRNwgl1B18c+jeI4 ypDtxCPp1bKBGuv+WfzVSgsDuXSH5s+FVze2utF1r6kg5Pf2Fgb+2c8TnfLvSKif3xpK w/4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=4CmgoMB3Shkp28H9b7m3CMHpdU8T5H538qsF+/3DIrs=; b=DhvJ2ycJO+MD7PvmPR3seTR/u3s5FJqzBuvryHQhiC4T7pxhvqxNqvePklh/+9uRTI dNw/4lzTwjLa5lkwqA6auYLyXmAOXU9kuojtzPGCwLZ4nGBvzla/Afxmk6AKw9+r3Jt7 ADM3nFPnrZckZQKyZ77TgIIHi/zEc4bY1I/RbCYW5vqDUwaGYa/Avz5yba6R6ElpJWCn cy2qUydTwyUktMOM5QuhB3kMLhz2UFS6WXIMULScxh0FBHDYByvfuLpSIzfWYMaIqTD5 ahdAQ4NzU1OE9GjXJlVOjFIVOYJXMolHxuJqH0CeyCTTPPC3S/2pQA83SkXMpryxK+kg 4+4A== X-Gm-Message-State: AOAM530VGdv1vsRhoNBZ2xNoY3Naop5SepdODOrEwh3k0Vc8ZAkpS2VW KY4O0uFyqHyHEHffBE6uUEpR6LnHhkYmAw== X-Google-Smtp-Source: ABdhPJybtKeTp2zLHhV7xp+UntE8pdiiFx0Ha9+dxilIqQNpugqZSbgQ9iWcBkDMkgedOHRe9SnCvg== X-Received: by 2002:a05:6808:ecc:b0:322:319c:cd3 with SMTP id q12-20020a0568080ecc00b00322319c0cd3mr19728334oiv.148.1655832887867; Tue, 21 Jun 2022 10:34:47 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 3/8] ppc/pnv: assign pnv-phb-root-port chassis/slot earlier Date: Tue, 21 Jun 2022 14:34:31 -0300 Message-Id: <20220621173436.165912-4-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::229; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x229.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833043508100003 Content-Type: text/plain; charset="utf-8" It is not advisable to execute an object_dynamic_cast() to poke into bus->qbus.parent and follow it up with a C cast into the PnvPHB type we think we got. In fact this is not needed. There is nothing sophisticated being done with the PHB object retrieved during root_port_realize() for both PHB3 and PHB4. We're retrieving a PHB reference PHB just to access phb->chip_id and phb->phb_id and use them to define the chassis/slot of the root port. phb->phb_id is already being passed to pnv_phb_attach_root_port() via the 'index' parameter. Let's also add a 'chip_id' parameter to this function and assign chassis and slot right there. This will spare us from the hassle of accessing the PHB object inside realize(). Signed-off-by: Daniel Henrique Barboza Reviewed-by: C=C3=A9dric Le Goater Reviewed-by: Frederic Barrat --- hw/pci-host/pnv_phb3.c | 18 ++---------------- hw/pci-host/pnv_phb4.c | 18 ++---------------- hw/ppc/pnv.c | 15 +++++++++++++-- include/hw/ppc/pnv.h | 3 ++- 4 files changed, 19 insertions(+), 35 deletions(-) diff --git a/hw/pci-host/pnv_phb3.c b/hw/pci-host/pnv_phb3.c index 4ba660f8b9..afe5698167 100644 --- a/hw/pci-host/pnv_phb3.c +++ b/hw/pci-host/pnv_phb3.c @@ -1052,7 +1052,8 @@ static void pnv_phb3_realize(DeviceState *dev, Error = **errp) =20 pci_setup_iommu(pci->bus, pnv_phb3_dma_iommu, phb); =20 - pnv_phb_attach_root_port(pci, TYPE_PNV_PHB3_ROOT_PORT, phb->phb_id); + pnv_phb_attach_root_port(pci, TYPE_PNV_PHB3_ROOT_PORT, + phb->phb_id, phb->chip_id); } =20 void pnv_phb3_update_regions(PnvPHB3 *phb) @@ -1139,23 +1140,8 @@ static void pnv_phb3_root_port_realize(DeviceState *= dev, Error **errp) { PCIERootPortClass *rpc =3D PCIE_ROOT_PORT_GET_CLASS(dev); PCIDevice *pci =3D PCI_DEVICE(dev); - PCIBus *bus =3D pci_get_bus(pci); - PnvPHB3 *phb =3D NULL; Error *local_err =3D NULL; =20 - phb =3D (PnvPHB3 *) object_dynamic_cast(OBJECT(bus->qbus.parent), - TYPE_PNV_PHB3); - - if (!phb) { - error_setg(errp, -"pnv_phb3_root_port devices must be connected to pnv-phb3 buses"); - return; - } - - /* Set unique chassis/slot values for the root port */ - qdev_prop_set_uint8(&pci->qdev, "chassis", phb->chip_id); - qdev_prop_set_uint16(&pci->qdev, "slot", phb->phb_id); - rpc->parent_realize(dev, &local_err); if (local_err) { error_propagate(errp, local_err); diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index ffd9d8a947..725b3d740b 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -1585,7 +1585,8 @@ static void pnv_phb4_realize(DeviceState *dev, Error = **errp) pci->bus->flags |=3D PCI_BUS_EXTENDED_CONFIG_SPACE; =20 /* Add a single Root port if running with defaults */ - pnv_phb_attach_root_port(pci, pecc->rp_model, phb->phb_id); + pnv_phb_attach_root_port(pci, pecc->rp_model, + phb->phb_id, phb->chip_id); =20 /* Setup XIVE Source */ if (phb->big_phb) { @@ -1781,23 +1782,8 @@ static void pnv_phb4_root_port_reset(DeviceState *de= v) static void pnv_phb4_root_port_realize(DeviceState *dev, Error **errp) { PCIERootPortClass *rpc =3D PCIE_ROOT_PORT_GET_CLASS(dev); - PCIDevice *pci =3D PCI_DEVICE(dev); - PCIBus *bus =3D pci_get_bus(pci); - PnvPHB4 *phb =3D NULL; Error *local_err =3D NULL; =20 - phb =3D (PnvPHB4 *) object_dynamic_cast(OBJECT(bus->qbus.parent), - TYPE_PNV_PHB4); - - if (!phb) { - error_setg(errp, "%s must be connected to pnv-phb4 buses", dev->id= ); - return; - } - - /* Set unique chassis/slot values for the root port */ - qdev_prop_set_uint8(&pci->qdev, "chassis", phb->chip_id); - qdev_prop_set_uint16(&pci->qdev, "slot", phb->phb_id); - rpc->parent_realize(dev, &local_err); if (local_err) { error_propagate(errp, local_err); diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index 40e0cbd84d..c5e63bede7 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -1189,8 +1189,15 @@ static void pnv_chip_icp_realize(Pnv8Chip *chip8, Er= ror **errp) } } =20 -/* Attach a root port device */ -void pnv_phb_attach_root_port(PCIHostState *pci, const char *name, int ind= ex) +/* + * Attach a root port device. + * + * 'index' will be used both as a PCIE slot value and to calculate + * QOM id. 'chip_id' is going to be used as PCIE chassis for the + * root port. + */ +void pnv_phb_attach_root_port(PCIHostState *pci, const char *name, + int index, int chip_id) { PCIDevice *root =3D pci_new(PCI_DEVFN(0, 0), name); g_autofree char *default_id =3D g_strdup_printf("%s[%d]", name, index); @@ -1199,6 +1206,10 @@ void pnv_phb_attach_root_port(PCIHostState *pci, con= st char *name, int index) object_property_add_child(OBJECT(pci->bus), dev_id ? dev_id : default_= id, OBJECT(root)); =20 + /* Set unique chassis/slot values for the root port */ + qdev_prop_set_uint8(DEVICE(root), "chassis", chip_id); + qdev_prop_set_uint16(DEVICE(root), "slot", index); + pci_realize_and_unref(root, pci->bus, &error_fatal); } =20 diff --git a/include/hw/ppc/pnv.h b/include/hw/ppc/pnv.h index 033890a23f..b991194223 100644 --- a/include/hw/ppc/pnv.h +++ b/include/hw/ppc/pnv.h @@ -189,7 +189,8 @@ DECLARE_INSTANCE_CHECKER(PnvChip, PNV_CHIP_POWER10, TYPE_PNV_CHIP_POWER10) =20 PowerPCCPU *pnv_chip_find_cpu(PnvChip *chip, uint32_t pir); -void pnv_phb_attach_root_port(PCIHostState *pci, const char *name, int ind= ex); +void pnv_phb_attach_root_port(PCIHostState *pci, const char *name, + int index, int chip_id); =20 #define TYPE_PNV_MACHINE MACHINE_TYPE_NAME("powernv") typedef struct PnvMachineClass PnvMachineClass; --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833390; cv=none; d=zohomail.com; s=zohoarc; b=K2Hsw5/P4xYpIbOGWN1cjgm/+wGMO6FexpwIKs+wF84LPxE34dY8T1dU3E+2jaM6dTIN6YzN8KPa/eLKWh1aWFj8JZdxDc7ZpzkHBJMSqffoTUaeJRsIdyilp1vdl2D+FJftqgNUPV8bJikENrTcXY00GwELMNSHk7ImnKLiQyk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833390; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=jNCrfeyPMijzRW6iJN0vEt6mhnSTXfUXk7S0j1xt9Zk=; b=k4mu/vkoHXtgGAFsPpriKbwzwdVroau0OJYDrxq0mG0/o/8sOdW+tRbrR+I9MvZAWUKHVaAchZSULRroqH9xNVmfAeSc9akOI2agpQrgnUjl9efxHc6n/c6EK6ghw6Phtv+wHhu2gZEihf4fwu0tlqtlS+0DS22XVLQhUBTnd7w= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1655833390193368.0629729019573; Tue, 21 Jun 2022 10:43:10 -0700 (PDT) Received: from localhost ([::1]:47990 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hu8-00045v-Ev for importer@patchew.org; Tue, 21 Jun 2022 13:43:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32904) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hm9-0002zC-Er; Tue, 21 Jun 2022 13:34:53 -0400 Received: from mail-oi1-x229.google.com ([2607:f8b0:4864:20::229]:35541) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hm7-0002MI-RG; Tue, 21 Jun 2022 13:34:53 -0400 Received: by mail-oi1-x229.google.com with SMTP id k24so17969763oij.2; Tue, 21 Jun 2022 10:34:51 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jNCrfeyPMijzRW6iJN0vEt6mhnSTXfUXk7S0j1xt9Zk=; b=lyMYXI7ML7raekdgKNeuw6sbnhZ5JxkQ7Lk1XwXesZu99NLikZ9+kgMP4PC3GrAZ8C R1FjdZyzcT9QcjVokdiobNsv0NLJEZLwScYzHW4613NDBasDi78HP2FDfJuGbSxoBYuj gIyKgFFsIfnTtwgZpo7Q6u63GqumfxdRLI4eijddcU/ICqhsFRqJeKxWp4hRB7fAgZJc BHZpJvyovdmf4NJnTwl4s85jMK5KTdkq4QUOyoTCZNNuksLTqAaoM26o4QvNcefiJvMD njoYb9nG3Ncla057c6+DhmzcTSks6cb/gV/1Jx3pRNGLSZWaA3emPczxlRmyy+RBpt8M EfXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jNCrfeyPMijzRW6iJN0vEt6mhnSTXfUXk7S0j1xt9Zk=; b=W5Am4AA2LrtwLuZCnzkgX2t6RPb7cTMIDoKWo4BWOZg9nnEi3qcZA5xehL2o7HCk8U /ZTd/cuh4rTDd9/aKGhrhld2HMdiU3h+AZ50MoFklSu9zPe+MRi4EpoGRhDT6+uS2/Hm MaC6N0z2jSp3x1FJKksQkRBYU54fNUKhBdOKYRXVDACFE4QKPaSVDu26467WMrD4nTqH rJdD0MIofukOR4nHCdLzei3N8RMNVJ63bSaFVgDoBIKg8tzTGrNTEBUvS84vt6nF/hzM r5zKvDs0MB65TcVURht7BBPCisBAAiDT+gbKNzRJw+n3Eajtj+cpjsxtEGL2ON51roB0 UQCQ== X-Gm-Message-State: AJIora8RaFWJ2qjPAxIlXaC139/ED9UdLty4HW4404WVikjcJyvxFGYH V/OhcDP9aW0b8u2wC2g9irNuMQ7PSGpchg== X-Google-Smtp-Source: AGRyM1vTEdHRyMin/M2pODvncsO/0f2KTjAPIHO9ZMKRPzJO5m8luIe+GtEQM0/8I+F1XIiC5bk8rA== X-Received: by 2002:aca:3bd6:0:b0:32f:e706:606 with SMTP id i205-20020aca3bd6000000b0032fe7060606mr14345949oia.257.1655832890274; Tue, 21 Jun 2022 10:34:50 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 4/8] ppc/pnv: make pnv_ics_get() use the chip8->phbs[] array Date: Tue, 21 Jun 2022 14:34:32 -0300 Message-Id: <20220621173436.165912-5-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::229; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x229.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833392370100001 The function is working today by getting all the child objects of the chip, interacting with each of them to check whether the child is a PHB, and then doing what needs to be done. We have all the chip PHBs in the phbs[] array so interacting with all child objects is unneeded. Open code pnv_ics_get_phb_ics() into pnv_ics_get() and remove both pnv_ics_get_phb_ics() and the ForeachPhb3Args struct. Reviewed-by: C=C3=A9dric Le Goater Reviewed-by: Frederic Barrat Signed-off-by: Daniel Henrique Barboza --- hw/ppc/pnv.c | 38 +++++++++++--------------------------- 1 file changed, 11 insertions(+), 27 deletions(-) diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index c5e63bede7..e6cea789f8 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -1950,44 +1950,28 @@ PowerPCCPU *pnv_chip_find_cpu(PnvChip *chip, uint32= _t pir) return NULL; } =20 -typedef struct ForeachPhb3Args { - int irq; - ICSState *ics; -} ForeachPhb3Args; - -static int pnv_ics_get_child(Object *child, void *opaque) -{ - ForeachPhb3Args *args =3D opaque; - PnvPHB3 *phb3 =3D (PnvPHB3 *) object_dynamic_cast(child, TYPE_PNV_PHB3= ); - - if (phb3) { - if (ics_valid_irq(&phb3->lsis, args->irq)) { - args->ics =3D &phb3->lsis; - } - if (ics_valid_irq(ICS(&phb3->msis), args->irq)) { - args->ics =3D ICS(&phb3->msis); - } - } - return args->ics ? 1 : 0; -} - static ICSState *pnv_ics_get(XICSFabric *xi, int irq) { PnvMachineState *pnv =3D PNV_MACHINE(xi); - ForeachPhb3Args args =3D { irq, NULL }; - int i; + int i, j; =20 for (i =3D 0; i < pnv->num_chips; i++) { - PnvChip *chip =3D pnv->chips[i]; Pnv8Chip *chip8 =3D PNV8_CHIP(pnv->chips[i]); =20 if (ics_valid_irq(&chip8->psi.ics, irq)) { return &chip8->psi.ics; } =20 - object_child_foreach(OBJECT(chip), pnv_ics_get_child, &args); - if (args.ics) { - return args.ics; + for (j =3D 0; j < chip8->num_phbs; j++) { + PnvPHB3 *phb3 =3D &chip8->phbs[j]; + + if (ics_valid_irq(&phb3->lsis, irq)) { + return &phb3->lsis; + } + + if (ics_valid_irq(ICS(&phb3->msis), irq)) { + return ICS(&phb3->msis); + } } } return NULL; --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833421; cv=none; d=zohomail.com; s=zohoarc; b=WizWCsbcZgpHkR461uCiNGzT7cNA413HwSFpuv93oQaBwpA8fKculnealTo72lZHpOP52wBbrZNquEKfyw+hTBkM/QHxiesuAD15oq24l7sXntcQA9tej6kjntSs+F+9AxWehvN6uU3reIh6+fW8TNRrMsAFbQg+JMK/wh6ysIU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833421; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=OnMtBzp/vMnlWp2qSDKZyGSKtfNM2nyhMMNMzqjTutM=; b=jWj1JaE0mMqxE/kq2MvBF3Y063Y3KTlVCZNR+fEC+rsI8Gscf2oWSJnRL8O0UJ9aOiuy4Kr1+Rid3dv3Ds2jKFZGHkDo7xkaZWSkcvvbP+QTwM9eI/IfgVhi1D4AkfHIf2BF4Xpe1fptOWWg7lRon/xKucnoCc8owvNGVmlVn/s= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1655833421462648.4609515581686; Tue, 21 Jun 2022 10:43:41 -0700 (PDT) Received: from localhost ([::1]:48550 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hud-0004V5-RP for importer@patchew.org; Tue, 21 Jun 2022 13:43:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32920) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hmD-00032R-3G; Tue, 21 Jun 2022 13:34:57 -0400 Received: from mail-oa1-x30.google.com ([2001:4860:4864:20::30]:39562) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hmA-0002Mp-Uw; Tue, 21 Jun 2022 13:34:56 -0400 Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-101dc639636so9465417fac.6; Tue, 21 Jun 2022 10:34:53 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=OnMtBzp/vMnlWp2qSDKZyGSKtfNM2nyhMMNMzqjTutM=; b=mmGWRCUUj2dlS6g2nhH8hKoc8E/C/2yPcq1JfVRl2LG1wp40SPYJUEnAx7tL4XW3Xx /XuoWwTh2fOtOo6yvDqnJuUjwnrYRGg8pTq1rIi0yaroz/43MNUgYx1omyE4pLxoEek1 Qb4/Wt6IygG28VgmWvA/wO6TnHfhBpxq0SHO1sTef2xxcUlH7YJ1Wt/dJyzF8QqIJAkR V37/Xq99+qSNgLx5BdXUF5zhYZ8VkYASeZKaHlkgngmmz0xiNGWTqLl3q9zf2SSvy7uT hUVSPI1RPfuvsQSQMJcYAtgunOEH61/atJJkDW9laalVap9oRKu13wvh0FqCsW1A4lvR gGOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=OnMtBzp/vMnlWp2qSDKZyGSKtfNM2nyhMMNMzqjTutM=; b=TQOhiljaSyEFsV6JqYG3ENS/QRPgYYi/tBAB3TEYjomaBsU3b9VvQIgcH87lfhit/c cJhxTF+gGvJUfHHX/Oo5eevGzYcUlT3KYEQnneVSq+ChqANG0NqVrcZZ9cTxmTB+ED7X uGSP0uK6nGABrVfh75P6zITgyL6C2qpzk4rsgfgmAA1R7y1hlbCvfrRfJxH0aFc+F/yw eoB9zI/0FCBfLDDa9xzw5RmxpGrLi7Zd22xpLaFxfH86aOdO1BZvwutRkvhYSZ5ptr2Q hL1lFincVwOStnDMWSdn3z0DEMHVCjYSLw6yENhG8g4c7LdRrW7902CMYigcXm7iudft EzXA== X-Gm-Message-State: AJIora/3v6IOBHCEn2bQQbPvbfX2RfjMs4XiiecCbWGRLpnvAPug1EkF b4ziAqY58F3RdOdTrPkYy6O7I7NtYArofQ== X-Google-Smtp-Source: AGRyM1s/TjsYjquAucuHUztbO4rKAoTksZr8Z027lugOB22wamrBAeeEpybxv+6MfZXLktIIGlQePw== X-Received: by 2002:a05:6870:f693:b0:101:cb61:2937 with SMTP id el19-20020a056870f69300b00101cb612937mr8749408oab.151.1655832892560; Tue, 21 Jun 2022 10:34:52 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 5/8] ppc/pnv: make pnv_ics_resend() use chip8->phbs[] Date: Tue, 21 Jun 2022 14:34:33 -0300 Message-Id: <20220621173436.165912-6-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::30; envelope-from=danielhb413@gmail.com; helo=mail-oa1-x30.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833422546100003 pnv_ics_resend() is scrolling through all the child objects of the chip to search for the PHBs. It's faster and simpler to just use the phbs[] array. pnv_ics_resend_child() was folded into pnv_ics_resend() since it's too simple to justify its own function. Reviewed-by: C=C3=A9dric Le Goater Reviewed-by: Frederic Barrat Signed-off-by: Daniel Henrique Barboza --- hw/ppc/pnv.c | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index e6cea789f8..74a6c88dd2 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -1990,28 +1990,22 @@ PnvChip *pnv_get_chip(PnvMachineState *pnv, uint32_= t chip_id) return NULL; } =20 -static int pnv_ics_resend_child(Object *child, void *opaque) -{ - PnvPHB3 *phb3 =3D (PnvPHB3 *) object_dynamic_cast(child, TYPE_PNV_PHB3= ); - - if (phb3) { - ics_resend(&phb3->lsis); - ics_resend(ICS(&phb3->msis)); - } - return 0; -} - static void pnv_ics_resend(XICSFabric *xi) { PnvMachineState *pnv =3D PNV_MACHINE(xi); - int i; + int i, j; =20 for (i =3D 0; i < pnv->num_chips; i++) { - PnvChip *chip =3D pnv->chips[i]; Pnv8Chip *chip8 =3D PNV8_CHIP(pnv->chips[i]); =20 ics_resend(&chip8->psi.ics); - object_child_foreach(OBJECT(chip), pnv_ics_resend_child, NULL); + + for (j =3D 0; j < chip8->num_phbs; j++) { + PnvPHB3 *phb3 =3D &chip8->phbs[j]; + + ics_resend(&phb3->lsis); + ics_resend(ICS(&phb3->msis)); + } } } =20 --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833664; cv=none; d=zohomail.com; s=zohoarc; b=XydK9G4WTSa3E/c5dbDFFaXbDM0PldyRx+3Hq0zAENI6K2mRqF9M+BFTBvuD7v+t+xL84mWopBgdHbrMbuxypPRimgWjMn2zrTQUdrxOkSb9gxQ1wD+Xk7dapkazDfWs1RqMa9zuzoQbcf4lBSOlImMAtxMYlzWEGxsOqmPXj3w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833664; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=3ztFSWJnh8BGUI0Pf+7euDhAg+N/mGyeidsCeGXEMqU=; b=msGB+BgNSbBSqEm8vjAp1uZa6AxHKvLy74ky9d0zFJV67TEyc6LF/sJAwdaGzPZMcC8FjBG6Do9n+qS61suu1Z+NNsedxK5Ka8wneRTUXYQXuSUnnhYzutqj7Ymhig/l7CxuShSlgxLmpJ2DxYUf4YwGH35sq7RWF8N8zhwSJ6M= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1655833664578870.3777026338639; Tue, 21 Jun 2022 10:47:44 -0700 (PDT) Received: from localhost ([::1]:55154 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hyY-000122-GH for importer@patchew.org; Tue, 21 Jun 2022 13:47:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32934) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hmE-00033d-Ni; Tue, 21 Jun 2022 13:34:59 -0400 Received: from mail-oa1-x36.google.com ([2001:4860:4864:20::36]:41662) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hmD-0002N4-5r; Tue, 21 Jun 2022 13:34:58 -0400 Received: by mail-oa1-x36.google.com with SMTP id 586e51a60fabf-101bb9275bcso14331700fac.8; Tue, 21 Jun 2022 10:34:55 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=3ztFSWJnh8BGUI0Pf+7euDhAg+N/mGyeidsCeGXEMqU=; b=nt9YbLUB+Rpy0krSDejrLBTzdCuanV3VxjT4NAo0xncLsSS5YPAzfI0PnvUS+YCS+J vBUXUQZxoKaLb92lVSLY3uZqHJhGdJApBmzKG6O3+MZ68DoiVG4kVC1RQsOSuPOYB3Ve FmZGJODXCUMb5Yn1PEh4YwOrbBRCTfMJsZw7D+l4NJJPqnNMQm3LoqOvmSG52FNHeRW7 BIiFSEhWgjYCVUjtTGCc8KuUPKYiI/3VJg/dg6VMB9NxiiK+CDu8JlqFQmVPXanFYWSw tFcQStPX6DgKeLQSZ6FjAp+D907GoBrhl4RN70sIvtcK7U1KLxnL/MtmI94v1HT6Ssv8 wWtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=3ztFSWJnh8BGUI0Pf+7euDhAg+N/mGyeidsCeGXEMqU=; b=5Klzbt7ipPV7PuAkCW5Kkye0NIPSALXrVbQOhx6b5WoROBdxejI9AhD5juWTSKmuGT OFIfRhqutDr71YqwTeeiBjjYHwqT5uHa6mguotdcPxeXZIcPKwCJPwaI6Iv1dBPiZAQs M93WoifQ38CwRSF6dUpra92wlF79lJ3I0S77Mx6RP4AtgS2KUGzzYdCsawrRO/Q/7k/I VlND98j16r7kPOnq6DrdXCTRPnoj+xLSO5S4PPp9HwsPWMzfZYpjrT6pg6eOPQ3WO/4h vpp405eRZNSnwqFLAPa2IxJJjEscACXWWzAW0vo8UPSeABahUZrQUq6SHfWtsVVKr9lI ujCw== X-Gm-Message-State: AJIora8F9nHklP/oWKwgJRea0YJ87B/rBlStSGD5NKYsEGLiiluk2lNs jsz74700pt1fEXHvEzY9AFZ1+hnbmP0ngQ== X-Google-Smtp-Source: AGRyM1s5wCh4JU6bt5IMmZooEQPeMQYh7Y7KYJztRum/NXcDZopKJs8E5OlbvLdkU0hUE+glNXJYwQ== X-Received: by 2002:a05:6870:c0c8:b0:101:b3c3:abc3 with SMTP id e8-20020a056870c0c800b00101b3c3abc3mr11637400oad.144.1655832894581; Tue, 21 Jun 2022 10:34:54 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 6/8] ppc/pnv: make pnv_chip_power8_pic_print_info() use chip8->phbs[] Date: Tue, 21 Jun 2022 14:34:34 -0300 Message-Id: <20220621173436.165912-7-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::36; envelope-from=danielhb413@gmail.com; helo=mail-oa1-x36.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833666753100001 Content-Type: text/plain; charset="utf-8" It's inneficient to scroll all child objects when we have all PHBs available in chip8->phbs[]. pnv_chip_power8_pic_print_info_child() ended up folded into pic_print_info() for simplicity. Reviewed-by: Frederic Barrat Signed-off-by: Daniel Henrique Barboza --- hw/ppc/pnv.c | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index 74a6c88dd2..d3f77c8367 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -652,25 +652,19 @@ static ISABus *pnv_isa_create(PnvChip *chip, Error **= errp) return PNV_CHIP_GET_CLASS(chip)->isa_create(chip, errp); } =20 -static int pnv_chip_power8_pic_print_info_child(Object *child, void *opaqu= e) -{ - Monitor *mon =3D opaque; - PnvPHB3 *phb3 =3D (PnvPHB3 *) object_dynamic_cast(child, TYPE_PNV_PHB3= ); - - if (phb3) { - pnv_phb3_msi_pic_print_info(&phb3->msis, mon); - ics_pic_print_info(&phb3->lsis, mon); - } - return 0; -} - static void pnv_chip_power8_pic_print_info(PnvChip *chip, Monitor *mon) { Pnv8Chip *chip8 =3D PNV8_CHIP(chip); + int i; =20 ics_pic_print_info(&chip8->psi.ics, mon); - object_child_foreach(OBJECT(chip), - pnv_chip_power8_pic_print_info_child, mon); + + for (i =3D 0; i < chip8->num_phbs; i++) { + PnvPHB3 *phb3 =3D &chip8->phbs[i]; + + pnv_phb3_msi_pic_print_info(&phb3->msis, mon); + ics_pic_print_info(&phb3->lsis, mon); + } } =20 static int pnv_chip_power9_pic_print_info_child(Object *child, void *opaqu= e) --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833363; cv=none; d=zohomail.com; s=zohoarc; b=eFY2Xw3jDH83CioWkfChlsWYobdB6ZDws3ysltQn6+isScGf1bvzNhOhHPChCiRQr3cyjtt5dlq4nkYn+bev/2xtoi0NssxLugUTUiHrzlPIo1HjDAJFJ9KoBNzstYVORC3F51UeWqUJo5/Ji62GHngJ6e+SBv9aLe0ScEF0+C0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833363; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=3COvtPLp8gq9jm3OulvWR91jjHHNwIwWcQWcPFWJeMc=; b=ZPEY47p4Ybx982MF5ZJhL2B8vLsiCDCxz/bpvjBjKlxoJWl1qmZINYE9uw4A6NbNEfc5oOs+rlGQtaEpvfm1Q/T0DFC8a2HgumE+/lFXmvyidtlMngeKm/aEZuMMNXdFEBW7ZNYchxyK/ImGsFhtHanEOr8nA8L5E4Aus55oCAc= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 165583336377033.75687539818182; Tue, 21 Jun 2022 10:42:43 -0700 (PDT) Received: from localhost ([::1]:47396 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3hti-0003cQ-Jd for importer@patchew.org; Tue, 21 Jun 2022 13:42:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32948) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hmG-00034a-71; Tue, 21 Jun 2022 13:35:00 -0400 Received: from mail-oa1-x30.google.com ([2001:4860:4864:20::30]:39562) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hmE-0002Mp-O1; Tue, 21 Jun 2022 13:34:59 -0400 Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-101dc639636so9465417fac.6; Tue, 21 Jun 2022 10:34:57 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=3COvtPLp8gq9jm3OulvWR91jjHHNwIwWcQWcPFWJeMc=; b=bTRo3X0vgA66CilyRKmEJGbz6hSYR9OaeKn4Sl8r7Q4a/wfixW716pTsUcHchhsz94 4rARIeVBOirV5+5cpo29EqDwW7//V77MV7iPizIYSCuCNlyjXpjCSD9y74lP2MwB9TTN q+MHh7qcT1iAVPjuFLLI6+WRVIxcA3CQD6Y7pqFYmwMJcexGeVRJCQfXwgayzryEAmSw QK5wND6dp07OnpK5VxBK7la7zuUSVEmpcCtOVQGB3NruipjDgF7WHJeyleZvWLWCdhAT RaxbejSsJO18vKAgt61ATSiavnNQSUBgUn+b3GhgFrezDBx1R8K5OXuRmtoiF59GUJpW xuMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=3COvtPLp8gq9jm3OulvWR91jjHHNwIwWcQWcPFWJeMc=; b=Ip1eABLYJAXtNtWirFd48oZUBXsX+RCdG/QlRoubtxkGDKjCoOlvVr+4evnTS31FoY UYZ7fBO9BALKdwLEanFeLd6/7hhquDmYAoTCWfmPSEsfl9WNSYpc1iconib84mcQJkGr i2o9MdiZThnaCuLUEOIi/KzQqoNl1KKuwunGa4qXhtWNyA1JZIEsPRYCSo1hBaohygLW p+UBObYH/kW6hZ3gHc3ZYB1eT4wvzo8wkCAF0xox4twVYUPQO6JlwxlGpjEcWcTAbv3f OWXd4tbP2vfqCYIMOTkMgmc7CW5b7+d9q/xPxtSDMOC4qVKV8QHzWl+9xa5H50ElivxP cDjw== X-Gm-Message-State: AJIora8o4dX4j/yUcbyqxJwCAt1nt+HHRkNY90NcqBGzs4CBNpBarjOO uMFrZEBB7ulz8m6seXHfvzB/PKh9PDocuw== X-Google-Smtp-Source: AGRyM1vLSG5X0cuhBr4/i9T9kP36Ks0jxcDwir19qu47ki8o0X0vt+8r95LdlZY3fCPxan1dR8gMtw== X-Received: by 2002:a05:6870:4210:b0:f3:20cd:7904 with SMTP id u16-20020a056870421000b000f320cd7904mr21960509oac.284.1655832896669; Tue, 21 Jun 2022 10:34:56 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 7/8] ppc/pnv: remove 'INTERFACE_PCIE_DEVICE' from phb3 root bus Date: Tue, 21 Jun 2022 14:34:35 -0300 Message-Id: <20220621173436.165912-8-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::30; envelope-from=danielhb413@gmail.com; helo=mail-oa1-x30.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833365857100001 Content-Type: text/plain; charset="utf-8" It's unneeded. No other PCIE_BUS implements this interface. Reviewed-by: Frederic Barrat Fixes: 9ae1329ee2fe ("ppc/pnv: Add models for POWER8 PHB3 PCIe Host bridge") Signed-off-by: Daniel Henrique Barboza --- hw/pci-host/pnv_phb3.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/hw/pci-host/pnv_phb3.c b/hw/pci-host/pnv_phb3.c index afe5698167..d58d3c1701 100644 --- a/hw/pci-host/pnv_phb3.c +++ b/hw/pci-host/pnv_phb3.c @@ -1130,10 +1130,6 @@ static const TypeInfo pnv_phb3_root_bus_info =3D { .name =3D TYPE_PNV_PHB3_ROOT_BUS, .parent =3D TYPE_PCIE_BUS, .class_init =3D pnv_phb3_root_bus_class_init, - .interfaces =3D (InterfaceInfo[]) { - { INTERFACE_PCIE_DEVICE }, - { } - }, }; =20 static void pnv_phb3_root_port_realize(DeviceState *dev, Error **errp) --=20 2.36.1 From nobody Wed May 15 20:29:45 2024 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=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1655833852; cv=none; d=zohomail.com; s=zohoarc; b=Hfpc9pLMadubg0VrAS9zevmYQBBIYJCLfz4gpaQhnlcrJz2Bhyas4xi4b7zd87vRbUkNnz0YaIXZmK1nXe309gwWJY1oC6KYcvRU+NlR9gAhw5qGZ28+PpgOEXLi7LbqQo8Q6k+AM7R0rvyIb+9a2j4QfEN3PKOg1R2mG7OVmuQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655833852; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=KUxGvOjzbE+pLKSYI6StCyRo086XpSxbnsss/wkwQrA=; b=bB5P9IdpLJh2OzbRJdWESm2fTgIgi+yiL+srgBWQqPlhfnfb5Rdv3WBjmfufCIOP5dsDDXRul5RwNuOD2D+rfz4dyf7Ly7hw5aaRtx6WP+Iyq5OFRRYspAWvzfTAF6SxcSAEkCSYGD3CTkGJ+wxu4GW0I4uAcSIM7yWaZ8m8WtU= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 165583385233135.86755861073834; Tue, 21 Jun 2022 10:50:52 -0700 (PDT) Received: from localhost ([::1]:57878 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3i1a-00037M-IM for importer@patchew.org; Tue, 21 Jun 2022 13:50:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32964) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3hmH-00036r-Qf; Tue, 21 Jun 2022 13:35:02 -0400 Received: from mail-oi1-x231.google.com ([2607:f8b0:4864:20::231]:46014) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3hmG-0002NV-An; Tue, 21 Jun 2022 13:35:01 -0400 Received: by mail-oi1-x231.google.com with SMTP id u9so17930054oiv.12; Tue, 21 Jun 2022 10:34:59 -0700 (PDT) Received: from balboa.ibmuc.com ([187.34.29.129]) by smtp.gmail.com with ESMTPSA id z22-20020a056870385600b0010200e2828fsm2886556oal.30.2022.06.21.10.34.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jun 2022 10:34:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=KUxGvOjzbE+pLKSYI6StCyRo086XpSxbnsss/wkwQrA=; b=mD/ESzAWh8JTymmOY5U2u6CU8ZNvAIj3RY3p6/PeTJo0zzFmOmf6X6SfD2UmzN9XIF j3aCX/lcsiV2hhPXdKIHkAHI0xJnGL8zQIJuPpjy+gqQCO4DO5Iz+Ev6aSI0DLSsV95i HnTID88wB0qfsJISrporsaUXFrlmIewxwzQmYJUFTrjthtu4NhqNZMkL14W6ZeUVBIA/ LQC8+q6mZNwIIuHYOql9ZyRDwttR03UoddXA460e2lC4+TrbIMDMrM/MkbePRg2BDBl4 c6vSQLIZASxsnUDhCsvt/5f5qZIKt1VH8AzjGWn0SfQC30KjXd/3oYu1rg7s0i/W8JJh /SNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=KUxGvOjzbE+pLKSYI6StCyRo086XpSxbnsss/wkwQrA=; b=6empr8/QTnqaNyzcfwPEvxzlEw9uolu8D7viMTXqzwDgkFVW0W4yPazGDpPm12XrTw 95Q9zO70ut6Wighv3gAVI0+OPiy9RKyTJ9ZqVtRPabInP3Wssr1bkAAsXgqF4aPuNRQd HFn5GqyCwYKCwI0VCi+aRErB8O/2Y9w+On+359x4uima3riH5nYf7GoBSHTktGxM/u1S 3mVno1SJZdqHTCJZ71N2deU0DhC2rLikzzTFwWzZXhf29HUCIH1QOghKJCvQbRA1+NK0 IOJWfeEtVlNT1ZCCaAQ2largqLW81/R3KK4JmiSkS4Tfa3B+7uuRL3/lSx6yVHJ+pfPF nsow== X-Gm-Message-State: AJIora+0B7Cm3pehU5YFAAShgwmAKJ6UR0z+hLQzbHhCajAXyIR+pqXk X5S3JDuVwrdkGdKqKj/m5HGqh56WF2oqMw== X-Google-Smtp-Source: AGRyM1uk24YCwJ6i1T6rj+kW23RzzxpzLibm1AYLNyS8A9UqNikDR8s0/GXh/D06hi3WhcbfKIQBFw== X-Received: by 2002:aca:618b:0:b0:32f:3e2c:60d1 with SMTP id v133-20020aca618b000000b0032f3e2c60d1mr14919499oib.123.1655832898680; Tue, 21 Jun 2022 10:34:58 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, clg@kaod.org, fbarrat@linux.ibm.com, Daniel Henrique Barboza Subject: [PATCH v3 8/8] ppc/pnv: remove 'INTERFACE_PCIE_DEVICE' from phb4 root bus Date: Tue, 21 Jun 2022 14:34:36 -0300 Message-Id: <20220621173436.165912-9-danielhb413@gmail.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220621173436.165912-1-danielhb413@gmail.com> References: <20220621173436.165912-1-danielhb413@gmail.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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::231; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x231.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1655833852760100001 Content-Type: text/plain; charset="utf-8" It's unneeded. No other PCIE_BUS implements this interface. Reviewed-by: Frederic Barrat Fixes: 4f9924c4d4cf ("ppc/pnv: Add models for POWER9 PHB4 PCIe Host bridge") Signed-off-by: Daniel Henrique Barboza --- hw/pci-host/pnv_phb4.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index 725b3d740b..d225ab5b0f 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -1752,10 +1752,6 @@ static const TypeInfo pnv_phb4_root_bus_info =3D { .name =3D TYPE_PNV_PHB4_ROOT_BUS, .parent =3D TYPE_PCIE_BUS, .class_init =3D pnv_phb4_root_bus_class_init, - .interfaces =3D (InterfaceInfo[]) { - { INTERFACE_PCIE_DEVICE }, - { } - }, }; =20 static void pnv_phb4_root_port_reset(DeviceState *dev) --=20 2.36.1