From nobody Mon Nov 10 01:13:38 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.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; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=gmail.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552957404294821.8503140977236; Mon, 18 Mar 2019 18:03:24 -0700 (PDT) Received: from localhost ([127.0.0.1]:49693 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h639x-0000Px-Uv for importer@patchew.org; Mon, 18 Mar 2019 21:03:17 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58927) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h638M-0008G2-K5 for qemu-devel@nongnu.org; Mon, 18 Mar 2019 21:01:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h638I-00033K-EI for qemu-devel@nongnu.org; Mon, 18 Mar 2019 21:01:36 -0400 Received: from smtp1.iitb.ac.in ([103.21.127.13]:44076) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h637w-0002j0-82 for qemu-devel@nongnu.org; Mon, 18 Mar 2019 21:01:31 -0400 Received: from ldns1.iitb.ac.in (ldns1.iitb.ac.in [10.200.12.1]) by smtp1.iitb.ac.in (Postfix) with SMTP id 57BF1104D0DB for ; Tue, 19 Mar 2019 06:31:00 +0530 (IST) Received: (qmail 2538 invoked by uid 510); 19 Mar 2019 06:31:00 +0530 Received: from unknown (HELO ldns1.iitb.ac.in) (10.200.1.25) by ldns1.iitb.ac.in with SMTP; 19 Mar 2019 06:30:58 +0530 Received: from jeeves.cse.iitb.ac.in (miller.cse.iitb.ac.in [10.129.3.1]) by ldns1.iitb.ac.in (Postfix) with ESMTP id D36E5360050 for ; Tue, 19 Mar 2019 06:30:57 +0530 (IST) Received: by jeeves.cse.iitb.ac.in (Postfix, from userid 51934) id BF31B8C2BB1; Tue, 19 Mar 2019 06:30:57 +0530 (IST) Received: from localhost.localdomain (unknown [10.130.4.191]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by jeeves.cse.iitb.ac.in (Postfix) with ESMTPSA id 02FC98C2BB1; Tue, 19 Mar 2019 06:30:57 +0530 (IST) X-Qmail-Scanner-Diagnostics: from 10.200.1.25 by ldns1 (envelope-from , uid 501) with qmail-scanner-2.11 spamassassin: 3.4.1. mhr: 1.0. {clamdscan: 0.100.0/25392} Clear:RC:1(10.200.1.25):SA:0(0.0/7.0):. Processed in 2.1614 secs; 19 Mar 2019 06:31:00 +0530 X-Envelope-From: skrtbhtngr@gmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | From: Sukrit Bhatnagar To: qemu-devel@nongnu.org Date: Tue, 19 Mar 2019 06:30:54 +0530 Message-Id: <20190319010054.7612-2-skrtbhtngr@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190319010054.7612-1-skrtbhtngr@gmail.com> References: <20190319010054.7612-1-skrtbhtngr@gmail.com> MIME-Version: 1.0 X-Qmail-Scanner-2.11: added fake Content-Type header Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 103.21.127.13 Subject: [Qemu-devel] [PATCH v1 1/1] etraxfs: convert dma_out and dma_in pointer properties from qdev to qom links X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Edgar E . Iglesias" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" The ETRAXFS Ethernet device needs pointers to the dma controllers to operate. According to qdev-properties.h, properties of pointer types should be avoided. A QOM link type property is a good substitution. Cc: Edgar E. Iglesias Signed-off-by: Sukrit Bhatnagar --- hw/net/etraxfs_eth.c | 13 ++++++++++--- include/hw/cris/etraxfs.h | 4 ++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/hw/net/etraxfs_eth.c b/hw/net/etraxfs_eth.c index 36855804db..6df109069f 100644 --- a/hw/net/etraxfs_eth.c +++ b/hw/net/etraxfs_eth.c @@ -622,6 +622,16 @@ static void etraxfs_eth_realize(DeviceState *dev, Erro= r **errp) "etraxfs-eth", 0x5c); sysbus_init_mmio(sbd, &s->mmio); =20 + object_property_add_link(OBJECT(dev), "dma_out", TYPE_ETRAX_FS_ETH, + (Object **) &s->dma_out, + qdev_prop_allow_set_link_before_realize, + 0, &error_abort); + + object_property_add_link(OBJECT(dev), "dma_in", TYPE_ETRAX_FS_ETH, + (Object **) &s->dma_in, + qdev_prop_allow_set_link_before_realize, + 0, &error_abort); + qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic =3D qemu_new_nic(&net_etraxfs_info, &s->conf, object_get_typename(OBJECT(s)), dev->id, s); @@ -634,8 +644,6 @@ static void etraxfs_eth_realize(DeviceState *dev, Error= **errp) =20 static Property etraxfs_eth_properties[] =3D { DEFINE_PROP_UINT32("phyaddr", ETRAXFSEthState, phyaddr, 1), - DEFINE_PROP_PTR("dma_out", ETRAXFSEthState, vdma_out), - DEFINE_PROP_PTR("dma_in", ETRAXFSEthState, vdma_in), DEFINE_NIC_PROPERTIES(ETRAXFSEthState, conf), DEFINE_PROP_END_OF_LIST(), }; @@ -647,7 +655,6 @@ static void etraxfs_eth_class_init(ObjectClass *klass, = void *data) dc->realize =3D etraxfs_eth_realize; dc->reset =3D etraxfs_eth_reset; dc->props =3D etraxfs_eth_properties; - /* Reason: pointer properties "dma_out", "dma_in" */ dc->user_creatable =3D false; } =20 diff --git a/include/hw/cris/etraxfs.h b/include/hw/cris/etraxfs.h index 8da965addb..f686cee180 100644 --- a/include/hw/cris/etraxfs.h +++ b/include/hw/cris/etraxfs.h @@ -39,8 +39,8 @@ etraxfs_eth_init(NICInfo *nd, hwaddr base, int phyaddr, dev =3D qdev_create(NULL, "etraxfs-eth"); qdev_set_nic_properties(dev, nd); qdev_prop_set_uint32(dev, "phyaddr", phyaddr); - qdev_prop_set_ptr(dev, "dma_out", dma_out); - qdev_prop_set_ptr(dev, "dma_in", dma_in); + object_property_set_link(OBJECT(dev), OBJECT(dma_out), "dma_out", NULL= ); + object_property_set_link(OBJECT(dev), OBJECT(dma_in), "dma_in", NULL); qdev_init_nofail(dev); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, base); return dev; --=20 2.20.1