From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516108690305614.1452801986939; Tue, 16 Jan 2018 05:18:10 -0800 (PST) Received: from localhost ([::1]:35713 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR7t-0003yz-IZ for importer@patchew.org; Tue, 16 Jan 2018 08:18:05 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59249) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6A-00039t-GY for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR68-0006uZ-IV for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:18 -0500 Received: from mail-qt0-x244.google.com ([2607:f8b0:400d:c0d::244]:41462) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR68-0006tj-EW for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:16 -0500 Received: by mail-qt0-x244.google.com with SMTP id i1so1288787qtj.8 for ; Tue, 16 Jan 2018 05:16:16 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=BKNcK+km0xVNNUKeutf/BCAPWPsrJ+7UdqFQ/AASSns=; b=H+AgjBXdAxkVrIx3D+lAyLFQOlncFLdp5fewLo8DKxxz4jAsEF8/XWFWWEcn9f99DK wppQCHf8LKYUJHjMfNeLXkzgj8cCK/t0j8iQkSFFv0huBqA0tMOpc0PmQCtIi6tIXeWu ivcijFuf6Y4vqwbU8+n8AVcmg6Ibx/2R3Lad+sxHyO8pgrnB1LnPYf5oy7mpMHxBt3rw M22OEBdjwOg4ixol/St2UYPeJUDcpoOgYi4pL5yEv4eStp/oo7xuDyQ9MEmGpMrfEV62 DEAy7D0kXLVkmkiGPY36DEEbsIjRmmZW0KC87S42EE04Rc16+vVokWvyNsYyn5KD0dI/ nKOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=BKNcK+km0xVNNUKeutf/BCAPWPsrJ+7UdqFQ/AASSns=; b=N43CnfR/0AqbHL0PUp9C7h5wmqb1kekYchP/kTNbQ4bWb/j4z8+XTdemMv59Ova5Ju aqBnS51idw/Zj/nlO9gSejd2R3JPnHizA259G1PoZ5ZxE+J8sCNXYIpX8pGtzaadY6gA zHd92D+nbkHBSR+EBVLAMtdEZcIMmR68yjNPbSke3Es2o8GTkA5A6QqUR6fJpff7UkVN APTAV4So2Hd75TRAzwwO33198o2rHJv61HHU2vhpezKxl3Giy4Y6N27X+neXGrLogice yy4PPVAY9M8ndKgbl/5SLFGF1d/ULzP4NT0Boy7GJtWQOx+hItBjiUSXxrSTKRBWsekv +TwQ== X-Gm-Message-State: AKwxytcbHHEa/yh/4BuQL47/AfmzbcM7SXWCQaPT0WmGDnM/QTifKi+9 DbByXGKtLAiuFWzrRwa0msI= X-Google-Smtp-Source: ACJfBovziHz5ws/fAUug6EYd+la1iQcWhq6TCbUdn3GifWyC30RIQO64VLAhMNcEoTyHLmLIyFG9XQ== X-Received: by 10.237.63.252 with SMTP id w57mr23684376qth.251.1516108575951; Tue, 16 Jan 2018 05:16:15 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:45 -0300 Message-Id: <20180116131555.14242-2-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::244 Subject: [Qemu-devel] [PATCH 01/11] smbus: add a NULL check for SMBusDeviceClass::init callbacks 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 ensure SMBusDeviceClass::init is set before calling it Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Eduardo Habkost --- hw/i2c/smbus.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hw/i2c/smbus.c b/hw/i2c/smbus.c index 2d1b79a689..a90d65ef37 100644 --- a/hw/i2c/smbus.c +++ b/hw/i2c/smbus.c @@ -207,7 +207,11 @@ static int smbus_device_init(I2CSlave *i2c) SMBusDevice *dev =3D SMBUS_DEVICE(i2c); SMBusDeviceClass *sc =3D SMBUS_DEVICE_GET_CLASS(dev); =20 - return sc->init(dev); + if (sc->init) { + return sc->init(dev); + } + + return 0; } =20 /* Master device commands. */ --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516108726959809.1995276919716; Tue, 16 Jan 2018 05:18:46 -0800 (PST) Received: from localhost ([::1]:35714 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR8R-0004TU-Lx for importer@patchew.org; Tue, 16 Jan 2018 08:18:39 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59304) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6H-0003DK-Oy for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6B-00074a-Ua for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:25 -0500 Received: from mail-qk0-x241.google.com ([2607:f8b0:400d:c09::241]:35094) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6B-00073g-Ql for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:19 -0500 Received: by mail-qk0-x241.google.com with SMTP id w1so20775638qka.2 for ; Tue, 16 Jan 2018 05:16:19 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=o+tHzpRNQtwEZEeoJRkym8mNxbEvjqoAA7vCQ9RH3QQ=; b=b9siDKZWVu/B9A1qTKsiyFAZWc6fX004i35oO1EFEeOo0+C3gCn7DW8wrQEMgrfYKL n7rceCnE7+LlnW2wVCU4ayvGjtAJNk62XLxZ6TGbfrXXHwDkadnsNV6b+DjLwRxNoelk Z08ZPlXlrO42nVX3tn/d3jkpEpcmKaUOKh+9rt/TijPcOu+9HayJwWmLNswUvpMQZYHz H92W4A6s59lZcIZdlCDeFqMHYvVTnnbvbUR2cAPcIFWH5/NwKMi6qIUdHVF97Fb7ZHzl 5J/VPkjWbiaiRID9oYkFiETWCPfwUKsjajKZK9eHsuY4+Cfc7FC0zZvFqGZkzD0Ukc95 cSiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=o+tHzpRNQtwEZEeoJRkym8mNxbEvjqoAA7vCQ9RH3QQ=; b=ITEZiOa+1+KpnNQmWDAbPbuleeXdlBrGDT2Tm9P1NHWt7lGRKwLZc49eexdbSmiDrZ ipkG9aMU4nSd8RyHy+E00Fh9qZSotUHwnItYufCQw3NeM55hQSvqK4Vx4JG6BtSFGobx yd1rgAs1OXM/uUb3nBCawTzBq4OD+68+sf3GMA6BcOAQsb2rFk3wI11WoHP6LI8J/7wD 9NRBTpbZfTi3cCGziGoUHBq7tGO0FG86517URs6pZ+VUDJqc0JIPVwB6+o6vi+zM905g H0eDUCoJMhu8++GVkHzfQI1xz2447vet/TcoalJC88bg4QcHcSwV513F/OQXkM0QxZ41 uzPg== X-Gm-Message-State: AKwxyteaqoCee4ymmtznHGzGCa5nc7tbb8rFx7jrW3j8UIG7PWsbzzqM 55bv9LfmoNcjZGLUUR0Sr5Y= X-Google-Smtp-Source: ACJfBotsk+lZpkKMQ+xhbFQzaXBXJek+1bF+kdw2GcQlSP7Fn2Rtw2i7JyUQrol9/CPoyU+fWhtyrA== X-Received: by 10.55.133.3 with SMTP id h3mr17109503qkd.199.1516108579343; Tue, 16 Jan 2018 05:16:19 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:46 -0300 Message-Id: <20180116131555.14242-3-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::241 Subject: [Qemu-devel] [PATCH 02/11] smbus_eeprom: replace SMBusDeviceClass::init by DeviceClass::reset 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/i2c/smbus_eeprom.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/hw/i2c/smbus_eeprom.c b/hw/i2c/smbus_eeprom.c index b13ec0fe7a..7e81ae4fe5 100644 --- a/hw/i2c/smbus_eeprom.c +++ b/hw/i2c/smbus_eeprom.c @@ -97,12 +97,11 @@ static uint8_t eeprom_read_data(SMBusDevice *dev, uint8= _t cmd, int n) return eeprom_receive_byte(dev); } =20 -static int smbus_eeprom_initfn(SMBusDevice *dev) +static void smbus_eeprom_reset(DeviceState *dev) { SMBusEEPROMDevice *eeprom =3D (SMBusEEPROMDevice *)dev; =20 eeprom->offset =3D 0; - return 0; } =20 static Property smbus_eeprom_properties[] =3D { @@ -115,7 +114,7 @@ static void smbus_eeprom_class_initfn(ObjectClass *klas= s, void *data) DeviceClass *dc =3D DEVICE_CLASS(klass); SMBusDeviceClass *sc =3D SMBUS_DEVICE_CLASS(klass); =20 - sc->init =3D smbus_eeprom_initfn; + dc->reset =3D smbus_eeprom_reset; sc->quick_cmd =3D eeprom_quick_cmd; sc->send_byte =3D eeprom_send_byte; sc->receive_byte =3D eeprom_receive_byte; --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (208.118.235.17 [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516109062976353.2214864188893; Tue, 16 Jan 2018 05:24:22 -0800 (PST) Received: from localhost ([::1]:35833 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebRDo-0000mQ-Vs for importer@patchew.org; Tue, 16 Jan 2018 08:24:13 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59302) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6H-0003DA-IL for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6F-0007BV-OI for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:25 -0500 Received: from mail-qt0-x244.google.com ([2607:f8b0:400d:c0d::244]:33511) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6F-0007An-Js for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:23 -0500 Received: by mail-qt0-x244.google.com with SMTP id e2so18129395qti.0 for ; Tue, 16 Jan 2018 05:16:23 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=92B8MwE05QTx3Q7jsLelAYBGI20ibU1vSUashW8Hju0=; b=QUELpoyYT/RJN3sTpETdakvRWhVIC3km28TMNa7DPTDNqCt5DkyOT1fo9zyllJh0BE 67g0dhZ30dcMR+RJtN10E5Hb3D2J0LH7zy4MgFgCKsKn6jZVa9besZC3PjQ8QKpkpbEo NBSWUqKhYG3Yv1QPn2oV3x4zIca19V0KBQydYd35g8U0kABUEeLXoQfFf5GmFIGiB4Kn qLpDU/CFM2TkYSQQlDNfI1KX/StWZ/A5qlwtRcdlyULLXtrJJkXwPUqf5aZD8RTsYEG1 vOov+g6PfW1pLGaEorrj6cKPBxDeU+Uznf4qKbaaW8tlpNGqVH0jiBqsPBegzphZlFhY dISA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=92B8MwE05QTx3Q7jsLelAYBGI20ibU1vSUashW8Hju0=; b=e/3bVRn4OV5xGkGgpSCuRsOhRhD0nl1TZ8b9POAeMPFHMqicyuQ8vhRCXt9l1Tqpxm obDt8CJN/nlDR2PxoKtHX+xTksApgvwtnkK4FeGKW9Hp7Y4gi4BS5KBecg4CvLmpjOkm SmETMrFOSxzBO1xkWcMBUZKexX5Zd1wE7xQdzxScXKbCgP+23Ve5ZOQBZuAREFiIkBX9 i4rtSYGhcadiQsEN+3IcsE0G4Z+Sv6roQPea+trs4VFVVQVyHf6WI0Q4QTynluvynLsk Qr7xNOQuAHwhSF8I16CXeSWpUhVqkPJJDrhYpvZYupslpp+hNj3FvYqgesTYLaWX4DvR VbKg== X-Gm-Message-State: AKwxytdHnMHEXCXsOlf1CG2ZNyhULWOjwwmo8N51joz524nPpUo7WE39 jraTWfLYCo3lJRz2YP4cjBg= X-Google-Smtp-Source: ACJfBos/8ePAhJIiYMGF5B+aZu7Vo6ORkAFLTIzhD6bKKzaRpZivCkOo0N4FzJxzlLMSs5Q7ulMnIg== X-Received: by 10.200.27.135 with SMTP id z7mr36644873qtj.58.1516108583126; Tue, 16 Jan 2018 05:16:23 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:47 -0300 Message-Id: <20180116131555.14242-4-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::244 Subject: [Qemu-devel] [PATCH 03/11] hw/i2c: convert I2CSlaveClass::init -> realize 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: Gerd Hoffmann , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/i2c/i2c.h | 2 +- include/hw/i2c/smbus.h | 2 +- hw/audio/wm8750.c | 8 +++----- hw/display/ssd0303.c | 5 ++--- hw/gpio/max7310.c | 6 ++---- hw/i2c/core.c | 10 ++++------ hw/i2c/smbus.c | 10 ++++------ hw/input/lm832x.c | 5 ++--- hw/misc/tmp105.c | 6 ++---- hw/misc/tmp421.c | 6 ++---- hw/nvram/eeprom_at24c.c | 24 +++++++++++------------- hw/timer/twl92230.c | 12 +++++------- 12 files changed, 39 insertions(+), 57 deletions(-) diff --git a/include/hw/i2c/i2c.h b/include/hw/i2c/i2c.h index 2ce611d4c8..4a9344b75c 100644 --- a/include/hw/i2c/i2c.h +++ b/include/hw/i2c/i2c.h @@ -30,7 +30,7 @@ typedef struct I2CSlaveClass DeviceClass parent_class; =20 /* Callbacks provided by the device. */ - int (*init)(I2CSlave *dev); + void (*realize)(I2CSlave *slave, Error **errp); =20 /* Master to slave. Returns non-zero for a NAK, 0 for success. */ int (*send)(I2CSlave *s, uint8_t data); diff --git a/include/hw/i2c/smbus.h b/include/hw/i2c/smbus.h index 544bbc1957..da31894383 100644 --- a/include/hw/i2c/smbus.h +++ b/include/hw/i2c/smbus.h @@ -38,7 +38,7 @@ typedef struct SMBusDeviceClass { I2CSlaveClass parent_class; - int (*init)(SMBusDevice *dev); + void (*realize)(SMBusDevice *dev, Error **errp); void (*quick_cmd)(SMBusDevice *dev, uint8_t read); void (*send_byte)(SMBusDevice *dev, uint8_t val); uint8_t (*receive_byte)(SMBusDevice *dev); diff --git a/hw/audio/wm8750.c b/hw/audio/wm8750.c index 8bb44a7cc1..c209334f4e 100644 --- a/hw/audio/wm8750.c +++ b/hw/audio/wm8750.c @@ -618,14 +618,12 @@ static const VMStateDescription vmstate_wm8750 =3D { } }; =20 -static int wm8750_init(I2CSlave *i2c) +static void wm8750_realize(I2CSlave *slave, Error **errp) { - WM8750State *s =3D WM8750(i2c); + WM8750State *s =3D WM8750(slave); =20 AUD_register_card(CODEC, &s->card); wm8750_reset(I2C_SLAVE(s)); - - return 0; } =20 #if 0 @@ -709,7 +707,7 @@ static void wm8750_class_init(ObjectClass *klass, void = *data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *sc =3D I2C_SLAVE_CLASS(klass); =20 - sc->init =3D wm8750_init; + sc->realize =3D wm8750_realize; sc->event =3D wm8750_event; sc->recv =3D wm8750_rx; sc->send =3D wm8750_tx; diff --git a/hw/display/ssd0303.c b/hw/display/ssd0303.c index 68a80b9d64..c4cd059a52 100644 --- a/hw/display/ssd0303.c +++ b/hw/display/ssd0303.c @@ -297,13 +297,12 @@ static const GraphicHwOps ssd0303_ops =3D { .gfx_update =3D ssd0303_update_display, }; =20 -static int ssd0303_init(I2CSlave *i2c) +static void ssd0303_realize(I2CSlave *i2c, Error **errp) { ssd0303_state *s =3D SSD0303(i2c); =20 s->con =3D graphic_console_init(DEVICE(i2c), 0, &ssd0303_ops, s); qemu_console_resize(s->con, 96 * MAGNIFY, 16 * MAGNIFY); - return 0; } =20 static void ssd0303_class_init(ObjectClass *klass, void *data) @@ -311,7 +310,7 @@ static void ssd0303_class_init(ObjectClass *klass, void= *data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *k =3D I2C_SLAVE_CLASS(klass); =20 - k->init =3D ssd0303_init; + k->realize =3D ssd0303_realize; k->event =3D ssd0303_event; k->recv =3D ssd0303_recv; k->send =3D ssd0303_send; diff --git a/hw/gpio/max7310.c b/hw/gpio/max7310.c index f82e3e6555..070da0e4dc 100644 --- a/hw/gpio/max7310.c +++ b/hw/gpio/max7310.c @@ -182,14 +182,12 @@ static void max7310_gpio_set(void *opaque, int line, = int level) =20 /* MAX7310 is SMBus-compatible (can be used with only SMBus protocols), * but also accepts sequences that are not SMBus so return an I2C device. = */ -static int max7310_init(I2CSlave *i2c) +static void max7310_realize(I2CSlave *i2c, Error **errp) { MAX7310State *s =3D MAX7310(i2c); =20 qdev_init_gpio_in(&i2c->qdev, max7310_gpio_set, 8); qdev_init_gpio_out(&i2c->qdev, s->handler, 8); - - return 0; } =20 static void max7310_class_init(ObjectClass *klass, void *data) @@ -197,7 +195,7 @@ static void max7310_class_init(ObjectClass *klass, void= *data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *k =3D I2C_SLAVE_CLASS(klass); =20 - k->init =3D max7310_init; + k->realize =3D max7310_realize; k->event =3D max7310_event; k->recv =3D max7310_rx; k->send =3D max7310_tx; diff --git a/hw/i2c/core.c b/hw/i2c/core.c index 59068f157e..f9f48a1666 100644 --- a/hw/i2c/core.c +++ b/hw/i2c/core.c @@ -276,16 +276,14 @@ const VMStateDescription vmstate_i2c_slave =3D { } }; =20 -static int i2c_slave_qdev_init(DeviceState *dev) +static void i2c_slave_realize(DeviceState *dev, Error **errp) { I2CSlave *s =3D I2C_SLAVE(dev); I2CSlaveClass *sc =3D I2C_SLAVE_GET_CLASS(s); =20 - if (sc->init) { - return sc->init(s); + if (sc->realize) { + return sc->realize(s, errp); } - - return 0; } =20 DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr) @@ -301,7 +299,7 @@ DeviceState *i2c_create_slave(I2CBus *bus, const char *= name, uint8_t addr) static void i2c_slave_class_init(ObjectClass *klass, void *data) { DeviceClass *k =3D DEVICE_CLASS(klass); - k->init =3D i2c_slave_qdev_init; + k->realize =3D i2c_slave_realize; set_bit(DEVICE_CATEGORY_MISC, k->categories); k->bus_type =3D TYPE_I2C_BUS; k->props =3D i2c_props; diff --git a/hw/i2c/smbus.c b/hw/i2c/smbus.c index a90d65ef37..a5293c2552 100644 --- a/hw/i2c/smbus.c +++ b/hw/i2c/smbus.c @@ -202,16 +202,14 @@ static int smbus_i2c_send(I2CSlave *s, uint8_t data) return 0; } =20 -static int smbus_device_init(I2CSlave *i2c) +static void smbus_device_realize(I2CSlave *i2c, Error **errp) { SMBusDevice *dev =3D SMBUS_DEVICE(i2c); SMBusDeviceClass *sc =3D SMBUS_DEVICE_GET_CLASS(dev); =20 - if (sc->init) { - return sc->init(dev); + if (sc->realize) { + sc->realize(dev, errp); } - - return 0; } =20 /* Master device commands. */ @@ -354,7 +352,7 @@ static void smbus_device_class_init(ObjectClass *klass,= void *data) { I2CSlaveClass *sc =3D I2C_SLAVE_CLASS(klass); =20 - sc->init =3D smbus_device_init; + sc->realize =3D smbus_device_realize; sc->event =3D smbus_i2c_event; sc->recv =3D smbus_i2c_recv; sc->send =3D smbus_i2c_send; diff --git a/hw/input/lm832x.c b/hw/input/lm832x.c index 2340523da0..818b6af585 100644 --- a/hw/input/lm832x.c +++ b/hw/input/lm832x.c @@ -464,7 +464,7 @@ static const VMStateDescription vmstate_lm_kbd =3D { }; =20 =20 -static int lm8323_init(I2CSlave *i2c) +static void lm8323_realize(I2CSlave *i2c, Error **errp) { LM823KbdState *s =3D LM8323(i2c); =20 @@ -477,7 +477,6 @@ static int lm8323_init(I2CSlave *i2c) lm_kbd_reset(s); =20 qemu_register_reset((void *) lm_kbd_reset, s); - return 0; } =20 void lm832x_key_event(DeviceState *dev, int key, int state) @@ -505,7 +504,7 @@ static void lm8323_class_init(ObjectClass *klass, void = *data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *k =3D I2C_SLAVE_CLASS(klass); =20 - k->init =3D lm8323_init; + k->realize =3D lm8323_realize; k->event =3D lm_i2c_event; k->recv =3D lm_i2c_rx; k->send =3D lm_i2c_tx; diff --git a/hw/misc/tmp105.c b/hw/misc/tmp105.c index 04e83787d4..62f4f191e4 100644 --- a/hw/misc/tmp105.c +++ b/hw/misc/tmp105.c @@ -229,15 +229,13 @@ static void tmp105_reset(I2CSlave *i2c) tmp105_interrupt_update(s); } =20 -static int tmp105_init(I2CSlave *i2c) +static void tmp105_realize(I2CSlave *i2c, Error **errp) { TMP105State *s =3D TMP105(i2c); =20 qdev_init_gpio_out(&i2c->qdev, &s->pin, 1); =20 tmp105_reset(&s->i2c); - - return 0; } =20 static void tmp105_initfn(Object *obj) @@ -252,7 +250,7 @@ static void tmp105_class_init(ObjectClass *klass, void = *data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *k =3D I2C_SLAVE_CLASS(klass); =20 - k->init =3D tmp105_init; + k->realize =3D tmp105_realize; k->event =3D tmp105_event; k->recv =3D tmp105_rx; k->send =3D tmp105_tx; diff --git a/hw/misc/tmp421.c b/hw/misc/tmp421.c index 4a505abbce..3347a53d7d 100644 --- a/hw/misc/tmp421.c +++ b/hw/misc/tmp421.c @@ -335,13 +335,11 @@ static void tmp421_reset(I2CSlave *i2c) s->status =3D 0; } =20 -static int tmp421_init(I2CSlave *i2c) +static void tmp421_realize(I2CSlave *i2c, Error **errp) { TMP421State *s =3D TMP421(i2c); =20 tmp421_reset(&s->i2c); - - return 0; } =20 static void tmp421_initfn(Object *obj) @@ -366,7 +364,7 @@ static void tmp421_class_init(ObjectClass *klass, void = *data) I2CSlaveClass *k =3D I2C_SLAVE_CLASS(klass); TMP421Class *sc =3D TMP421_CLASS(klass); =20 - k->init =3D tmp421_init; + k->realize =3D tmp421_realize; k->event =3D tmp421_event; k->recv =3D tmp421_rx; k->send =3D tmp421_tx; diff --git a/hw/nvram/eeprom_at24c.c b/hw/nvram/eeprom_at24c.c index efa3621ac6..691cadb4a8 100644 --- a/hw/nvram/eeprom_at24c.c +++ b/hw/nvram/eeprom_at24c.c @@ -117,31 +117,29 @@ int at24c_eeprom_send(I2CSlave *s, uint8_t data) return 0; } =20 -static -int at24c_eeprom_init(I2CSlave *i2c) +static void at24c_eeprom_realize(I2CSlave *slave, Error **errp) { - EEPROMState *ee =3D AT24C_EE(i2c); - - ee->mem =3D g_malloc0(ee->rsize); + EEPROMState *ee =3D AT24C_EE(slave); =20 if (ee->blk) { int64_t len =3D blk_getlength(ee->blk); =20 if (len !=3D ee->rsize) { - ERR(TYPE_AT24C_EE " : Backing file size %lu !=3D %u\n", - (unsigned long)len, (unsigned)ee->rsize); - exit(1); + error_setg(errp, TYPE_AT24C_EE ": Backing file size %ld !=3D %= u", + len, ee->rsize); + return; } =20 if (blk_set_perm(ee->blk, BLK_PERM_CONSISTENT_READ | BLK_PERM_WRIT= E, BLK_PERM_ALL, &error_fatal) < 0) { - ERR(TYPE_AT24C_EE - " : Backing file incorrect permission\n"); - exit(1); + error_setg(errp, TYPE_AT24C_EE + ": Backing file incorrect permission"); + return; } } - return 0; + + ee->mem =3D g_malloc0(ee->rsize); } =20 static @@ -179,7 +177,7 @@ void at24c_eeprom_class_init(ObjectClass *klass, void *= data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *k =3D I2C_SLAVE_CLASS(klass); =20 - k->init =3D &at24c_eeprom_init; + k->realize =3D &at24c_eeprom_realize; k->event =3D &at24c_eeprom_event; k->recv =3D &at24c_eeprom_recv; k->send =3D &at24c_eeprom_send; diff --git a/hw/timer/twl92230.c b/hw/timer/twl92230.c index eb58c378e0..4f18080c95 100644 --- a/hw/timer/twl92230.c +++ b/hw/timer/twl92230.c @@ -853,10 +853,10 @@ static const VMStateDescription vmstate_menelaus =3D { } }; =20 -static int twl92230_init(I2CSlave *i2c) +static void twl92230_realize(I2CSlave *slave, Error **errp) { - DeviceState *dev =3D DEVICE(i2c); - MenelausState *s =3D TWL92230(i2c); + DeviceState *dev =3D DEVICE(slave); + MenelausState *s =3D TWL92230(slave); =20 s->rtc.hz_tm =3D timer_new_ms(rtc_clock, menelaus_rtc_hz, s); /* Three output pins plus one interrupt pin. */ @@ -865,9 +865,7 @@ static int twl92230_init(I2CSlave *i2c) /* Three input pins plus one power-button pin. */ qdev_init_gpio_in(dev, menelaus_gpio_set, 4); =20 - menelaus_reset(i2c); - - return 0; + menelaus_reset(slave); } =20 static void twl92230_class_init(ObjectClass *klass, void *data) @@ -875,7 +873,7 @@ static void twl92230_class_init(ObjectClass *klass, voi= d *data) DeviceClass *dc =3D DEVICE_CLASS(klass); I2CSlaveClass *sc =3D I2C_SLAVE_CLASS(klass); =20 - sc->init =3D twl92230_init; + sc->realize =3D twl92230_realize; sc->event =3D menelaus_event; sc->recv =3D menelaus_rx; sc->send =3D menelaus_tx; --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516108908543773.6031947299865; Tue, 16 Jan 2018 05:21:48 -0800 (PST) Received: from localhost ([::1]:35742 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebRBT-000766-DB for importer@patchew.org; Tue, 16 Jan 2018 08:21:47 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59354) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6Q-0003IH-GY for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6J-0007IL-Kp for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:34 -0500 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:37522) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6J-0007Hl-Eu for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:27 -0500 Received: by mail-qt0-x243.google.com with SMTP id d54so6061084qtd.4 for ; Tue, 16 Jan 2018 05:16:27 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZRaxTv/LBTnX3Sv/c4tMWe/kA6azLc6//W++XcGs1SI=; b=L0f9PTtZTs3iE/ILRIMlEjXVwXUURuLa0yWLIYGEYImmnB4rbbVjyG120DKbZY2kSp MfRkQPNpN9bG7sMvxQmU25AJciXnW+tzvbgKU9Tv/Iy+Q9adD7ZlS46TmFzK5Zcp83Cq Ano46ZG4KzoRImRvIqOOENXK43MwcdIftfrDIbRWSMN/zwJ18UuMtHdCDTa2N+rQ9SKC ZPWhSShczy3Edr3haxdTI3Wf88LPWK+b0nUApzJaXLAxr8P35JGrN3ZWJSVbeOERu96W TxHgZinybe2eb62r9IWoX0wimCg1oZqhQqbTpJ/Jm/vGtgroExL2ybjkkoTNKhZSWH7l ts5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ZRaxTv/LBTnX3Sv/c4tMWe/kA6azLc6//W++XcGs1SI=; b=Egmo1h4bnST3QfYi8Fe6JYwTS2jFbZsEVv/bqB1rvdCx0FiKmLhLJJJyvYdJLvDlxY FM5QG9fL0a8x3gRViW4LEFf6oQ/seZzSRaOF4bLelcIVoAhfclrVZuv/dG4ZEayXw65y YAG80KWCt/12kq9gLu+f8CMlArEI0waFO0f46VhGpuTY08fZlxIjRF473038nVZo4bqK s/oaCR3GTdpc0eqt51Gk7KBwIzJaOO9LmVgiqOUc0rUzhwFFp80l9BNN7Ru1ZO2IkpBa 2UnN2gNZI/UXHdGO3nftfxExunKYCBHNQCiHkFxYPi3hXlan1S6twNGyDTLdOB/ibA/O m5xA== X-Gm-Message-State: AKwxytdKU/X3qdtgAXtkFFd4DhLt24/9B3vQB+9vfJc3HhVX8bEEMeDe 6nGYcjcPQ7ygYI1138905jI= X-Google-Smtp-Source: ACJfBouGJR8m51RwXzjDfJ1NCZWIxeFBbQ52BcBf2SmceaKx5CVuNh0aAMiqGkYtCweaIM+WGJQprQ== X-Received: by 10.200.45.228 with SMTP id q33mr10810616qta.126.1516108586894; Tue, 16 Jan 2018 05:16:26 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:48 -0300 Message-Id: <20180116131555.14242-5-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH 04/11] usb-ccid: convert CCIDCardClass::init -> realize 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: Gerd Hoffmann , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/usb/ccid.h | 9 +++++-- hw/usb/ccid-card-emulated.c | 42 ++++++++++++++++--------------- hw/usb/ccid-card-passthru.c | 10 ++++---- hw/usb/dev-smartcard-reader.c | 57 +++++++++++++++------------------------= ---- 4 files changed, 54 insertions(+), 64 deletions(-) diff --git a/hw/usb/ccid.h b/hw/usb/ccid.h index 1f070116d6..11056b91ee 100644 --- a/hw/usb/ccid.h +++ b/hw/usb/ccid.h @@ -28,20 +28,25 @@ typedef struct CCIDCardInfo CCIDCardInfo; * into the smartcard device (hw/ccid-card-*.c) */ typedef struct CCIDCardClass { + /*< private >*/ DeviceClass parent_class; + /*< public >*/ + + void (*realize)(CCIDCardState *card, Error **errp); + void (*unrealize)(CCIDCardState *card, Error **errp); const uint8_t *(*get_atr)(CCIDCardState *card, uint32_t *len); void (*apdu_from_guest)(CCIDCardState *card, const uint8_t *apdu, uint32_t len); - void (*exitfn)(CCIDCardState *card); - int (*initfn)(CCIDCardState *card); } CCIDCardClass; =20 /* * state of the CCID Card device (i.e. hw/ccid-card-*.c) */ struct CCIDCardState { + /*< private >*/ DeviceState qdev; + /*< public >*/ uint32_t slot; /* For future use with multiple slot reader. */ }; =20 diff --git a/hw/usb/ccid-card-emulated.c b/hw/usb/ccid-card-emulated.c index e646eb243b..8a512e73df 100644 --- a/hw/usb/ccid-card-emulated.c +++ b/hw/usb/ccid-card-emulated.c @@ -27,6 +27,7 @@ */ =20 #include "qemu/osdep.h" +#include "qapi/error.h" #include #include #include @@ -480,7 +481,7 @@ static uint32_t parse_enumeration(char *str, return ret; } =20 -static int emulated_initfn(CCIDCardState *base) +static void emulated_realize(CCIDCardState *base, Error **errp) { EmulatedState *card =3D EMULATED_CCID_CARD(base); VCardEmulError ret; @@ -495,7 +496,8 @@ static int emulated_initfn(CCIDCardState *base) card->reader =3D NULL; card->quit_apdu_thread =3D 0; if (init_event_notifier(card) < 0) { - return -1; + error_setg(errp, TYPE_EMULATED_CCID ": event notifier creation fai= led"); + return; } =20 card->backend =3D 0; @@ -505,11 +507,12 @@ static int emulated_initfn(CCIDCardState *base) } =20 if (card->backend =3D=3D 0) { - printf("backend must be one of:\n"); + error_setg(errp, TYPE_EMULATED_CCID ": no backend specified."); + printf("backend must be one of:\n"); /* TODO remove */ for (ptable =3D backend_enum_table; ptable->name !=3D NULL; ++ptab= le) { printf("%s\n", ptable->name); } - return -1; + return; } =20 /* TODO: a passthru backened that works on local machine. third card t= ype?*/ @@ -517,37 +520,36 @@ static int emulated_initfn(CCIDCardState *base) if (card->cert1 !=3D NULL && card->cert2 !=3D NULL && card->cert3 = !=3D NULL) { ret =3D emulated_initialize_vcard_from_certificates(card); } else { - printf("%s: you must provide all three certs for" - " certificates backend\n", TYPE_EMULATED_CCID); - return -1; + error_setg(errp, TYPE_EMULATED_CCID ": you must provide all th= ree " + "certs for certificates backend"); + return; } } else { if (card->backend !=3D BACKEND_NSS_EMULATED) { - printf("%s: bad backend specified. The options are:\n%s (defau= lt)," - " %s.\n", TYPE_EMULATED_CCID, BACKEND_NSS_EMULATED_NAME, - BACKEND_CERTIFICATES_NAME); - return -1; + error_setg(errp, TYPE_EMULATED_CCID ": bad backend specified. " + "The options are: %s (default), %s.", + BACKEND_NSS_EMULATED_NAME, BACKEND_CERTIFICATES_NAM= E); + return; } if (card->cert1 !=3D NULL || card->cert2 !=3D NULL || card->cert3 = !=3D NULL) { - printf("%s: unexpected cert parameters to nss emulated backend= \n", - TYPE_EMULATED_CCID); - return -1; + error_setg(errp, TYPE_EMULATED_CCID ": unexpected cert paramet= ers " + "to nss emulated backend"); + return; } /* default to mirroring the local hardware readers */ ret =3D wrap_vcard_emul_init(NULL); } if (ret !=3D VCARD_EMUL_OK) { - printf("%s: failed to initialize vcard\n", TYPE_EMULATED_CCID); - return -1; + error_setg(errp, TYPE_EMULATED_CCID ": failed to initialize vcard"= ); + return; } qemu_thread_create(&card->event_thread_id, "ccid/event", event_thread, card, QEMU_THREAD_JOINABLE); qemu_thread_create(&card->apdu_thread_id, "ccid/apdu", handle_apdu_thr= ead, card, QEMU_THREAD_JOINABLE); - return 0; } =20 -static void emulated_exitfn(CCIDCardState *base) +static void emulated_unrealize(CCIDCardState *base, Error **errp) { EmulatedState *card =3D EMULATED_CCID_CARD(base); VEvent *vevent =3D vevent_new(VEVENT_LAST, NULL, NULL); @@ -581,8 +583,8 @@ static void emulated_class_initfn(ObjectClass *klass, v= oid *data) DeviceClass *dc =3D DEVICE_CLASS(klass); CCIDCardClass *cc =3D CCID_CARD_CLASS(klass); =20 - cc->initfn =3D emulated_initfn; - cc->exitfn =3D emulated_exitfn; + cc->realize =3D emulated_realize; + cc->unrealize =3D emulated_unrealize; cc->get_atr =3D emulated_get_atr; cc->apdu_from_guest =3D emulated_apdu_from_guest; set_bit(DEVICE_CATEGORY_INPUT, dc->categories); diff --git a/hw/usb/ccid-card-passthru.c b/hw/usb/ccid-card-passthru.c index 117711862e..844ad2f878 100644 --- a/hw/usb/ccid-card-passthru.c +++ b/hw/usb/ccid-card-passthru.c @@ -9,6 +9,7 @@ */ =20 #include "qemu/osdep.h" +#include "qapi/error.h" #include #include "chardev/char-fe.h" #include "qemu/error-report.h" @@ -337,7 +338,7 @@ static const uint8_t *passthru_get_atr(CCIDCardState *b= ase, uint32_t *len) return card->atr; } =20 -static int passthru_initfn(CCIDCardState *base) +static void passthru_realize(CCIDCardState *base, Error **errp) { PassthruState *card =3D PASSTHRU_CCID_CARD(base); =20 @@ -351,15 +352,14 @@ static int passthru_initfn(CCIDCardState *base) ccid_card_vscard_event, NULL, card, NULL, true); ccid_card_vscard_send_init(card); } else { - error_report("missing chardev"); - return -1; + error_setg(errp, "missing chardev"); + return; } card->debug =3D parse_debug_env("QEMU_CCID_PASSTHRU_DEBUG", D_VERBOSE, card->debug); assert(sizeof(DEFAULT_ATR) <=3D MAX_ATR_SIZE); memcpy(card->atr, DEFAULT_ATR, sizeof(DEFAULT_ATR)); card->atr_length =3D sizeof(DEFAULT_ATR); - return 0; } =20 static VMStateDescription passthru_vmstate =3D { @@ -387,7 +387,7 @@ static void passthru_class_initfn(ObjectClass *klass, v= oid *data) DeviceClass *dc =3D DEVICE_CLASS(klass); CCIDCardClass *cc =3D CCID_CARD_CLASS(klass); =20 - cc->initfn =3D passthru_initfn; + cc->realize =3D passthru_realize; cc->get_atr =3D passthru_get_atr; cc->apdu_from_guest =3D passthru_apdu_from_guest; set_bit(DEVICE_CATEGORY_INPUT, dc->categories); diff --git a/hw/usb/dev-smartcard-reader.c b/hw/usb/dev-smartcard-reader.c index e334d3be11..e36b190118 100644 --- a/hw/usb/dev-smartcard-reader.c +++ b/hw/usb/dev-smartcard-reader.c @@ -37,7 +37,6 @@ #include "qemu/osdep.h" #include "qapi/error.h" #include "qemu-common.h" -#include "qemu/error-report.h" #include "hw/usb.h" #include "hw/usb/desc.h" =20 @@ -500,26 +499,6 @@ static void ccid_card_apdu_from_guest(CCIDCardState *c= ard, } } =20 -static void ccid_card_exitfn(CCIDCardState *card) -{ - CCIDCardClass *cc =3D CCID_CARD_GET_CLASS(card); - - if (cc->exitfn) { - cc->exitfn(card); - } - -} - -static int ccid_card_initfn(CCIDCardState *card) -{ - CCIDCardClass *cc =3D CCID_CARD_GET_CLASS(card); - - if (cc->initfn) { - return cc->initfn(card); - } - return 0; -} - static bool ccid_has_pending_answers(USBCCIDState *s) { return s->pending_answers_num > 0; @@ -1281,41 +1260,45 @@ void ccid_card_card_inserted(CCIDCardState *card) ccid_on_slot_change(s, true); } =20 -static int ccid_card_exit(DeviceState *qdev) +static void ccid_card_unrealize(DeviceState *qdev, Error **errp) { CCIDCardState *card =3D CCID_CARD(qdev); + CCIDCardClass *cc =3D CCID_CARD_GET_CLASS(card); USBDevice *dev =3D USB_DEVICE(qdev->parent_bus->parent); USBCCIDState *s =3D USB_CCID_DEV(dev); =20 if (ccid_card_inserted(s)) { ccid_card_card_removed(card); } - ccid_card_exitfn(card); + if (cc->unrealize) { + cc->unrealize(card, errp); + } s->card =3D NULL; - return 0; } =20 -static int ccid_card_init(DeviceState *qdev) +static void ccid_card_realize(DeviceState *qdev, Error **errp) { CCIDCardState *card =3D CCID_CARD(qdev); + CCIDCardClass *cc =3D CCID_CARD_GET_CLASS(card); USBDevice *dev =3D USB_DEVICE(qdev->parent_bus->parent); USBCCIDState *s =3D USB_CCID_DEV(dev); - int ret =3D 0; =20 if (card->slot !=3D 0) { - warn_report("usb-ccid supports one slot, can't add %d", - card->slot); - return -1; + error_setg(errp, "usb-ccid supports one slot, can't add %d", + card->slot); + return; } if (s->card !=3D NULL) { - warn_report("usb-ccid card already full, not adding"); - return -1; + error_setg(errp, "usb-ccid card already full, not adding"); + return; } - ret =3D ccid_card_initfn(card); - if (ret =3D=3D 0) { - s->card =3D card; + if (cc->realize) { + cc->realize(card, errp); + if (errp && *errp) { + return; + } } - return ret; + s->card =3D card; } =20 static void ccid_realize(USBDevice *dev, Error **errp) @@ -1477,8 +1460,8 @@ static void ccid_card_class_init(ObjectClass *klass, = void *data) { DeviceClass *k =3D DEVICE_CLASS(klass); k->bus_type =3D TYPE_CCID_BUS; - k->init =3D ccid_card_init; - k->exit =3D ccid_card_exit; + k->realize =3D ccid_card_realize; + k->unrealize =3D ccid_card_unrealize; k->props =3D ccid_props; } =20 --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516109198698332.67769979941943; Tue, 16 Jan 2018 05:26:38 -0800 (PST) Received: from localhost ([::1]:35924 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebRG9-0002zr-AQ for importer@patchew.org; Tue, 16 Jan 2018 08:26:37 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59349) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6P-0003ID-Vl for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6O-0007Qo-Fc for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:33 -0500 Received: from mail-qt0-x241.google.com ([2607:f8b0:400d:c0d::241]:39543) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6O-0007Ps-9w; Tue, 16 Jan 2018 08:16:32 -0500 Received: by mail-qt0-x241.google.com with SMTP id k19so18148714qtj.6; Tue, 16 Jan 2018 05:16:32 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1aiERWbC8jMlsLURLkN1RQBFStAZmNWkcH5oA5lNoAk=; b=G8yWEqzDhOZa8tJGwZj/S6z6//XYK1QqTbe3pHzbUoteG+cftTdO+paUy/lZAXWRbx 6Pk7KddPCjmuhPj9NhbtR2/PqmQkclkZG+OJDwwf7VzZmxoSTKXh4VJ+LMRFMHIVfg1m Gm9h4oAJdChAVqnPH1ZZEByHqHEhwtxtxZRL5s71FToRp2Cu4jalVyO/N/KVNMIUgUI2 4GUq0psdjaQSdLUCnwxU9pQYKBUMhD+oWWOegT6gU4phXZ/aLxo5TEU5UpQWSTPFVwPW JcKCC2ZW8ELCCE8vd0EGZRnOWxlME67ENv6EjuJcIGopzVyTjKOiX74AOxJ2iRzqKL0a NSYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=1aiERWbC8jMlsLURLkN1RQBFStAZmNWkcH5oA5lNoAk=; b=LFjrW9LFAt8YZu/tDE4CVVos+lj8LbLzmf4DO0cGidBNpfxkYXNuhF5LWJwC90LcAh LmZuRmQ29imNpiCJGwZ8YQmSWLmGPISwZRZDwF6oBR2MaimDFXv9MqlYA6tVBuWhyynw uaRGC+AWPJFP7pPHzVzR5UYasIwdZzCxOe4rKVlrwuOeG1YVLoZM52UqJuWi6geesKPU z8BEaomAoOnqW9K+29TQDgIsJpRe5myxHZazmWI56iVWOAYl/1TbTKdg5zPRpRoIumsv ovfQLbXm/hQf+AwzYRGfluJRx19CbwXC4WNPZrRlEP4btmyFuh95W+bT6kdjgyYXz+bX qmlQ== X-Gm-Message-State: AKwxytfijk6XQ6FwPQ96pyzr4MaRyIkih/ijnjadczn26bbnwbDCqfo8 jlwL8/9iXMXkcpXQ0p+1T6dLPhX3 X-Google-Smtp-Source: ACJfBovnwnlF6l4GynT+9fx8xwtzN4Ps9eA63N8YkinQQnFoTvfr3nCbpN52TBxv3xlZVwlGWK1YLA== X-Received: by 10.237.54.132 with SMTP id f4mr27217266qtb.139.1516108591820; Tue, 16 Jan 2018 05:16:31 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:49 -0300 Message-Id: <20180116131555.14242-6-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::241 Subject: [Qemu-devel] [PATCH 05/11] virtio-ccw: convert VirtIOCCWDeviceClass::init -> realize 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: "Michael S. Tsirkin" , qemu-devel@nongnu.org, Cornelia Huck , Alexander Graf , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Christian Borntraeger , "open list:virtio-ccw" , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Cornelia Huck Reviewed-by: Farhan Ali --- hw/s390x/virtio-ccw.h | 2 +- hw/s390x/virtio-ccw.c | 35 +++++++++++++++++------------------ 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/hw/s390x/virtio-ccw.h b/hw/s390x/virtio-ccw.h index 3905f3a3d6..2fc513001e 100644 --- a/hw/s390x/virtio-ccw.h +++ b/hw/s390x/virtio-ccw.h @@ -76,7 +76,7 @@ typedef struct VirtioCcwDevice VirtioCcwDevice; typedef struct VirtIOCCWDeviceClass { CCWDeviceClass parent_class; void (*realize)(VirtioCcwDevice *dev, Error **errp); - int (*exit)(VirtioCcwDevice *dev); + void (*unrealize)(VirtioCcwDevice *dev, Error **errp); } VirtIOCCWDeviceClass; =20 /* Performance improves when virtqueue kick processing is decoupled from t= he diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index 38f6a8afc9..a71c3feeb5 100644 --- a/hw/s390x/virtio-ccw.c +++ b/hw/s390x/virtio-ccw.c @@ -751,7 +751,7 @@ out_err: g_free(sch); } =20 -static int virtio_ccw_exit(VirtioCcwDevice *dev) +static void virtio_ccw_unrealize(VirtioCcwDevice *dev, Error **errp) { CcwDevice *ccw_dev =3D CCW_DEVICE(dev); SubchDev *sch =3D ccw_dev->sch; @@ -764,7 +764,6 @@ static int virtio_ccw_exit(VirtioCcwDevice *dev) release_indicator(&dev->routes.adapter, dev->indicators); dev->indicators =3D NULL; } - return 0; } =20 static void virtio_ccw_net_realize(VirtioCcwDevice *ccw_dev, Error **errp) @@ -1343,7 +1342,7 @@ static void virtio_ccw_net_class_init(ObjectClass *kl= ass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_net_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_net_properties; set_bit(DEVICE_CATEGORY_NETWORK, dc->categories); @@ -1371,7 +1370,7 @@ static void virtio_ccw_blk_class_init(ObjectClass *kl= ass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_blk_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_blk_properties; set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); @@ -1399,7 +1398,7 @@ static void virtio_ccw_serial_class_init(ObjectClass = *klass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_serial_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_serial_properties; set_bit(DEVICE_CATEGORY_INPUT, dc->categories); @@ -1427,7 +1426,7 @@ static void virtio_ccw_balloon_class_init(ObjectClass= *klass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_balloon_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_balloon_properties; set_bit(DEVICE_CATEGORY_MISC, dc->categories); @@ -1455,7 +1454,7 @@ static void virtio_ccw_scsi_class_init(ObjectClass *k= lass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_scsi_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_scsi_properties; set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); @@ -1482,7 +1481,7 @@ static void vhost_ccw_scsi_class_init(ObjectClass *kl= ass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D vhost_ccw_scsi_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D vhost_ccw_scsi_properties; set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); @@ -1519,7 +1518,7 @@ static void virtio_ccw_rng_class_init(ObjectClass *kl= ass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_rng_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_rng_properties; set_bit(DEVICE_CATEGORY_MISC, dc->categories); @@ -1557,7 +1556,7 @@ static void virtio_ccw_crypto_class_init(ObjectClass = *klass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_crypto_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_crypto_properties; set_bit(DEVICE_CATEGORY_MISC, dc->categories); @@ -1595,7 +1594,7 @@ static void virtio_ccw_gpu_class_init(ObjectClass *kl= ass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_gpu_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_gpu_properties; dc->hotpluggable =3D false; @@ -1624,7 +1623,7 @@ static void virtio_ccw_input_class_init(ObjectClass *= klass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D virtio_ccw_input_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_input_properties; set_bit(DEVICE_CATEGORY_INPUT, dc->categories); @@ -1704,12 +1703,12 @@ static void virtio_ccw_busdev_realize(DeviceState *= dev, Error **errp) virtio_ccw_device_realize(_dev, errp); } =20 -static int virtio_ccw_busdev_exit(DeviceState *dev) +static void virtio_ccw_busdev_unrealize(DeviceState *dev, Error **errp) { VirtioCcwDevice *_dev =3D (VirtioCcwDevice *)dev; - VirtIOCCWDeviceClass *_info =3D VIRTIO_CCW_DEVICE_GET_CLASS(dev); + VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_GET_CLASS(dev); =20 - return _info->exit(_dev); + k->unrealize(_dev, errp); } =20 static void virtio_ccw_busdev_unplug(HotplugHandler *hotplug_dev, @@ -1727,7 +1726,7 @@ static void virtio_ccw_device_class_init(ObjectClass = *klass, void *data) =20 k->unplug =3D virtio_ccw_busdev_unplug; dc->realize =3D virtio_ccw_busdev_realize; - dc->exit =3D virtio_ccw_busdev_exit; + dc->unrealize =3D virtio_ccw_busdev_unrealize; dc->bus_type =3D TYPE_VIRTUAL_CSS_BUS; } =20 @@ -1803,7 +1802,7 @@ static void virtio_ccw_9p_class_init(ObjectClass *kla= ss, void *data) DeviceClass *dc =3D DEVICE_CLASS(klass); VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; k->realize =3D virtio_ccw_9p_realize; dc->reset =3D virtio_ccw_reset; dc->props =3D virtio_ccw_9p_properties; @@ -1852,7 +1851,7 @@ static void vhost_vsock_ccw_class_init(ObjectClass *k= lass, void *data) VirtIOCCWDeviceClass *k =3D VIRTIO_CCW_DEVICE_CLASS(klass); =20 k->realize =3D vhost_vsock_ccw_realize; - k->exit =3D virtio_ccw_exit; + k->unrealize =3D virtio_ccw_unrealize; set_bit(DEVICE_CATEGORY_MISC, dc->categories); dc->props =3D vhost_vsock_ccw_properties; dc->reset =3D virtio_ccw_reset; --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516108740368915.469339389058; Tue, 16 Jan 2018 05:19:00 -0800 (PST) Received: from localhost ([::1]:35715 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR8l-0004ji-B6 for importer@patchew.org; Tue, 16 Jan 2018 08:18:59 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59401) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6X-0003MZ-D6 for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6R-0007Xt-Dt for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:41 -0500 Received: from mail-qk0-x243.google.com ([2607:f8b0:400d:c09::243]:41709) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6R-0007Xd-9w for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:35 -0500 Received: by mail-qk0-x243.google.com with SMTP id l29so11163865qkj.8 for ; Tue, 16 Jan 2018 05:16:35 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mb7fouWc0FLnnsuEugFP8UJFuum7NWf2tDpbqfEmBQA=; b=ZQJpE/AE5XUU5Awq8MbNWlmfvs9i/V+lnKJmc5hXSv20XUbXzx8tBmAAyS7vA3gz/L A6eU9JaUSE1FUWWSQxNdrBr2R4tBQDLH5i/hNf+iwxwLexx33J9i3OAQpQYFdvuTxSUs EPTuSIphbTPFtUPwqCRHp9hIXaWcfH3rhzEYo9Tnqk4KAwV/4r3PHYACel8+gvzxWNBx 5UJES02BNuDqB7kEKq0MKJ9F3Jfep93P1BfEEeEmbGvi5Va8uapx4vtvaxqjUTmKzIIg cR94EAHfb8xtmXNgFJeRHQomdXGYO6zALtNk2ng9+H769OsUwL/kuB09lYQqechyl+O0 rFJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=mb7fouWc0FLnnsuEugFP8UJFuum7NWf2tDpbqfEmBQA=; b=A0/lzTNY2WjXx7O0I9b9t77tIuY33hNsQffIai4JCaq5uA7skGUJ09/QOWjTZ274Uk qsMyioiFg5dpR19GcfDBFabaPaw1BrY5zf4NwafavABiCzaa+fzhpeZWpFQZeyyOIUTZ UiPNcC1wDL2jdoWuJZzMw4rjV3N6aeNCP1LXRWUj1XBhEU81GIthnFxetua3uWYA2beO P1ftO0kdJIdHo9CrD+N+kAVQ79sCsu+j4kxLXxMgUq/4kjnwOO7QQKVIBjiusttpayuC 06tMdd3x991e1ZJtgiOFH5v5J9s45Jcn0TEV97SIaaLtQ8xFpB+vxjmbUpmy3Cn+P/mC aUaA== X-Gm-Message-State: AKwxytd9FiJOzT2DAeNZPKZBpzN2sicY+iBFEfKph8iuMzqGV8PW9GUo 6lo/xAEWKa0XFLojSdBW4AI= X-Google-Smtp-Source: ACJfBosVJ246LPxiOzeljtYHdG0rQZNHcWC2n5l1ebF32JL6AW0YIaZ5ClkWekEmB98dCv63NvH5Xg== X-Received: by 10.55.245.3 with SMTP id l3mr1794207qkk.145.1516108594875; Tue, 16 Jan 2018 05:16:34 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:50 -0300 Message-Id: <20180116131555.14242-7-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::243 Subject: [Qemu-devel] [PATCH 06/11] sysbus: add realize() and unrealize() 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/sysbus.h | 4 ++++ hw/core/sysbus.c | 23 +++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/include/hw/sysbus.h b/include/hw/sysbus.h index e88bb6dae0..c87a6df29e 100644 --- a/include/hw/sysbus.h +++ b/include/hw/sysbus.h @@ -40,6 +40,10 @@ typedef struct SysBusDeviceClass { DeviceClass parent_class; /*< public >*/ =20 + void (*realize)(SysBusDevice *dev, Error **errp); + void (*unrealize)(SysBusDevice *dev, Error **errp); + + /* TODO remove, once users are converted to realize */ int (*init)(SysBusDevice *dev); =20 /* diff --git a/hw/core/sysbus.c b/hw/core/sysbus.c index 5d0887f499..04d6061f76 100644 --- a/hw/core/sysbus.c +++ b/hw/core/sysbus.c @@ -200,6 +200,7 @@ void sysbus_init_ioports(SysBusDevice *dev, uint32_t io= port, uint32_t size) } } =20 +/* TODO remove, once users are converted to realize */ static int sysbus_device_init(DeviceState *dev) { SysBusDevice *sd =3D SYS_BUS_DEVICE(dev); @@ -211,6 +212,26 @@ static int sysbus_device_init(DeviceState *dev) return sbc->init(sd); } =20 +static void sysbus_realize(DeviceState *dev, Error **errp) +{ + SysBusDevice *sd =3D SYS_BUS_DEVICE(dev); + SysBusDeviceClass *sbc =3D SYS_BUS_DEVICE_GET_CLASS(sd); + + if (sbc->realize) { + sbc->realize(sd, errp); + } +} + +static void sysbus_unrealize(DeviceState *dev, Error **errp) +{ + SysBusDevice *sd =3D SYS_BUS_DEVICE(dev); + SysBusDeviceClass *sbc =3D SYS_BUS_DEVICE_GET_CLASS(sd); + + if (sbc->unrealize) { + sbc->unrealize(sd, errp); + } +} + DeviceState *sysbus_create_varargs(const char *name, hwaddr addr, ...) { @@ -325,6 +346,8 @@ static void sysbus_device_class_init(ObjectClass *klass= , void *data) { DeviceClass *k =3D DEVICE_CLASS(klass); k->init =3D sysbus_device_init; + k->realize =3D sysbus_realize; + k->unrealize =3D sysbus_unrealize; k->bus_type =3D TYPE_SYSTEM_BUS; /* * device_add plugs devices into a suitable bus. For "real" buses, --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 151610874212174.70397448553206; Tue, 16 Jan 2018 05:19:02 -0800 (PST) Received: from localhost ([::1]:35716 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR8n-0004kh-8q for importer@patchew.org; Tue, 16 Jan 2018 08:19:01 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59426) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6a-0003Ng-6d for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6U-0007ai-HL for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:44 -0500 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:39545) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6U-0007aR-D3 for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:38 -0500 Received: by mail-qt0-x243.google.com with SMTP id k19so18149100qtj.6 for ; Tue, 16 Jan 2018 05:16:38 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jtc/PC9Ge9m+AXxxFtfOnPW5mB7v5zamHuteQje3hEU=; b=DPCiIRN3Fd7lGavTvTc+sK5F441g0KukLwed0hTKY2EWXxUAh1U2898QQN81IJvZ4Z f3WUyWKXPObXK/6QngOAmiQwCK50myjj6teFegHdeftm2Qca33T18EwPvaHQWVz/Zp4x MT+BdQpvusLs5eq01/hgwR0WrkGSmbr2o0IbRf5Dq+W7qmoNwrh4ZnmpOgM+JvQofC5s AVZt4Y6ULpfIxidt+AdGuvFvnostiSFxLDoqahD9OuNp4Lmulkf+f7F9nDUiw5PMhoMW FkHJ6REHr2nvPo5ULXDwna2ewNkWZ8DCFLNB9eNJQme3+5SU19ycBCsZQZl0klWuivaH LwpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=jtc/PC9Ge9m+AXxxFtfOnPW5mB7v5zamHuteQje3hEU=; b=q2z5gQPU90Uu9v08+ULKKSm7tJqNzOvAOGayvSxf2N+uBX365RU6lT7QZOmzCiInqE CcNp/R15+vrT69mWAIK4v13qSX4fbJCToKKV8OSIPDgnsDn3qVWCFE7DB0wMpkc5YuW5 xS0fuCSQKqFTe1rGJHSeoazfpnt3fNqB/47bqME40DxMZlvfYEh9y7AC148lAyx52qwr glgBvMzAHXI/+v6JGXS9XSZCYLc8jjqHvG9rgqRYyOoXVqKFSvGT7dVCInATLJkTlaq8 h/OCG8tUvyQ46yAzVytUfK7WBeiwwTrDFUkKBJaVqHK/HF6QvjrsZeoaeZVk+ZM+COxn 7M6g== X-Gm-Message-State: AKwxytdiH60YUxNbSk2CeoRWy7G2HvNT+PwQFHu5Yuq1UVrwxpNfiD0p cEsQBHrxp80A56OzAPENkOI= X-Google-Smtp-Source: ACJfBothmFM7dcA6mppDbDTCR7Tjk2JKkFhJvLI3EzxPyIg8i9HTn1B+VwJdivTtTS+nkDhCbd9sLQ== X-Received: by 10.237.43.162 with SMTP id e31mr11253777qtd.337.1516108598028; Tue, 16 Jan 2018 05:16:38 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:51 -0300 Message-Id: <20180116131555.14242-8-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH 07/11] qdev: simplify the SysBusDeviceClass::init path 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 The SysBusDevice is the last DeviceClass::init user. Instead of using SysBusDeviceClass::realize -> DeviceClass::realize -> DeviceClass::init -> sysbus_device_init -> SysBusDeviceClass::init Simplify the path by directly calling SysBusDeviceClass::init in SysBusDeviceClass::realize: SysBusDeviceClass::realize -> SysBusDeviceClass::init Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/core/qdev.c | 9 --------- hw/core/sysbus.c | 21 +++++++++------------ 2 files changed, 9 insertions(+), 21 deletions(-) diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 11112951a5..a4f76c8f5d 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -221,15 +221,6 @@ void device_listener_unregister(DeviceListener *listen= er) =20 static void device_realize(DeviceState *dev, Error **errp) { - DeviceClass *dc =3D DEVICE_GET_CLASS(dev); - - if (dc->init) { - int rc =3D dc->init(dev); - if (rc < 0) { - error_setg(errp, "Device initialization failed."); - return; - } - } } =20 static void device_unrealize(DeviceState *dev, Error **errp) diff --git a/hw/core/sysbus.c b/hw/core/sysbus.c index 04d6061f76..9edf43bc27 100644 --- a/hw/core/sysbus.c +++ b/hw/core/sysbus.c @@ -18,6 +18,7 @@ */ =20 #include "qemu/osdep.h" +#include "qapi/error.h" #include "hw/sysbus.h" #include "monitor/monitor.h" #include "exec/address-spaces.h" @@ -200,22 +201,19 @@ void sysbus_init_ioports(SysBusDevice *dev, uint32_t = ioport, uint32_t size) } } =20 -/* TODO remove, once users are converted to realize */ -static int sysbus_device_init(DeviceState *dev) +static void sysbus_realize(DeviceState *dev, Error **errp) { SysBusDevice *sd =3D SYS_BUS_DEVICE(dev); SysBusDeviceClass *sbc =3D SYS_BUS_DEVICE_GET_CLASS(sd); =20 - if (!sbc->init) { - return 0; + /* TODO remove, once users are converted to realize */ + if (sbc->init) { + int rc =3D sbc->init(sd); + if (rc < 0) { + error_setg(errp, "Device initialization failed."); + return; + } } - return sbc->init(sd); -} - -static void sysbus_realize(DeviceState *dev, Error **errp) -{ - SysBusDevice *sd =3D SYS_BUS_DEVICE(dev); - SysBusDeviceClass *sbc =3D SYS_BUS_DEVICE_GET_CLASS(sd); =20 if (sbc->realize) { sbc->realize(sd, errp); @@ -345,7 +343,6 @@ MemoryRegion *sysbus_address_space(SysBusDevice *dev) static void sysbus_device_class_init(ObjectClass *klass, void *data) { DeviceClass *k =3D DEVICE_CLASS(klass); - k->init =3D sysbus_device_init; k->realize =3D sysbus_realize; k->unrealize =3D sysbus_unrealize; k->bus_type =3D TYPE_SYSTEM_BUS; --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516109092362428.218723810577; Tue, 16 Jan 2018 05:24:52 -0800 (PST) Received: from localhost ([::1]:35862 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebREN-0001LT-VQ for importer@patchew.org; Tue, 16 Jan 2018 08:24:48 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59456) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6d-0003QX-DN for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6X-0007dU-S3 for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:47 -0500 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:39546) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6X-0007co-Oh for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:41 -0500 Received: by mail-qt0-x243.google.com with SMTP id k19so18149307qtj.6 for ; Tue, 16 Jan 2018 05:16:41 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=D4+uJQiRh78QwDaOoLwyrDQQRWb3MUwec1YDa19M/WM=; b=q4UUowvY1GSpEdVul5BZuxNGkaD5Mg1XpnH8anQfiJAjNYIjETfpU8d393zSBS2TVV dsnNyISu21m3hmJdlGjPmpn5GgXEgMF6vWvFutXofU3WUQPacBJtrrtA8pUKB+/AlaOF GPjfUta+uBvY++JzZ3c5nDONQ7bAs+Hkv8yFitMnAKo/hM5FzFnlICh3JFbc7oMpKmFI 1LUctDPaeqRm+RmScC84P9olS6cY1TM5CV4es2W+nq7S/bami0vl+ggHG/oXceNnQRsU aTabYFn4hnMmPaI04++XT1YwbJarMZ+sXqWVkbQFZnWMf+FNOxOe5NS+TVqb28LMa8M4 b+Rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=D4+uJQiRh78QwDaOoLwyrDQQRWb3MUwec1YDa19M/WM=; b=MFLXiRUYFbpna+lI0g5OofZwE0YOvFsYE/o5rB8jd3FxOJj+zAgd7XXwF39U5LjPby xio0F5/GUFDaIWEh72S5UyIflmw2HoJUxx6W8H2z9tz0J+0aIK6GtEuTuImftyqqPKDe gZWgZLN/iSRudPunXrhPm92MRYL2HLZaeoMqUqvLL+3vE2KvhSsZ45PQI+6FeHR2L7Ah YclLh+P9MdbJF5Gf2KjlScvwe6F4zi4M855wCiAB1ruA+495dClPwUFCZM6Thjzf0Jxc IZXJ3/HVvGxuPijG04Wg1ow7hvi2WED8DwhARbjhjVygBUY95qmmglSpQ+XOIFXH10T6 LZpw== X-Gm-Message-State: AKwxyte/pVD5oPlBgGEcQE2wsVw0zZo99EqEee956/zccyWukJrhUWXw 9wO2H8Ief2s4Yrnj268wbIU= X-Google-Smtp-Source: ACJfBosWZQ2N9OVRE9x9lMwGd4yOsT+LBLe+q804AZKRTxU8+zrLU5e+wPGzCz7O4ycDTUF4wek1iw== X-Received: by 10.200.61.90 with SMTP id u26mr7579648qtf.168.1516108601411; Tue, 16 Jan 2018 05:16:41 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:52 -0300 Message-Id: <20180116131555.14242-9-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH 08/11] qdev: remove DeviceClass::init 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 it has no more users. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/qdev-core.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index 0a71bf83f0..de063b232f 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -30,7 +30,6 @@ typedef enum DeviceCategory { DEVICE_CATEGORY_MAX } DeviceCategory; =20 -typedef int (*qdev_initfn)(DeviceState *dev); typedef int (*qdev_event)(DeviceState *dev); typedef void (*qdev_resetfn)(DeviceState *dev); typedef void (*DeviceRealize)(DeviceState *dev, Error **errp); @@ -125,7 +124,6 @@ typedef struct DeviceClass { const struct VMStateDescription *vmsd; =20 /* Private to qdev / bus. */ - qdev_initfn init; /* TODO remove, once users are converted to realize = */ qdev_event exit; /* TODO remove, once users are converted to unrealize= */ const char *bus_type; } DeviceClass; --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516109227958378.9385955526884; Tue, 16 Jan 2018 05:27:07 -0800 (PST) Received: from localhost ([::1]:35929 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebRGd-0003Oe-4m for importer@patchew.org; Tue, 16 Jan 2018 08:27:07 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59487) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6f-0003Rq-0N for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6b-0007hO-1c for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:48 -0500 Received: from mail-qk0-x241.google.com ([2607:f8b0:400d:c09::241]:47094) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6a-0007gr-Te for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:44 -0500 Received: by mail-qk0-x241.google.com with SMTP id l64so20678864qke.13 for ; Tue, 16 Jan 2018 05:16:44 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=18N3dNuDT19ggwBzBCoxgDKyF/P479aZYb4xw3C7hEI=; b=An7ZKr17oCuEvFSe0bg9A7PSUJL1v/RULNO4x3mVuVi5bp2/Ae485Qu9BAbTz8ysQS 2JHhK1ZPDEtxOA6TsHMktuTfNj4eNrPOKKHHx3AbWDWXAwBxslpoDyTkyotVWzrvSKP0 XPbbDHl03k6D9mdzTR6c34qrdOarK0/bGcG44/dZ03svbLawBwHN/IBfCXcSaXpfV0Rt trImtMayXmYsbtbPGBGGMACPC1NoV60FlGrKMRmytCoB7PYr+FnPMh8aU/lwP2dklVl9 guza+E2r8rIhjD8u5GTIhlYYcinL4PPqNpTGbDjCuc75jZ861ZzCL5uWnW2orqAipKHj H1Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=18N3dNuDT19ggwBzBCoxgDKyF/P479aZYb4xw3C7hEI=; b=m2s5ZMYtvSZOOYfc1YkvsW133OC6ipoJ1+QqpQfCgl8Je9jMr+VMh92UfznKwDurHJ PTEikAhtDjPonm3t81/fNaKczEP4P0hE+p1JvugaKYGZOafLPQ3/8QBhqNvmquPbLVI6 zOHhneMTmtxPQsnL4xqucSZoYQ9/Xz7f8YPks2o+5cYojfW5xLN5N1wVsylPx2WdSm9x XKmWq7yFKB/RwzYJ5Y5RMQ8CHNu/Yg84xMYXrL33VkUR8K+xlZFF5j/wHxQj24s+WEeq sWoliyA8sSjsvu7lE0TKByXJ03iqo3VKFk0wsqvZ2xY0NS3sV2E6D+BzdnwJcTZshxhM vOPg== X-Gm-Message-State: AKwxyteI9VaQIp8lOhmpI5R83+D7MqVy8+HiQ4wEwfe6sakepZn0J9wV yVXLUe12LBF2b/64NXKhwwE= X-Google-Smtp-Source: ACJfBouhcjtbYrkCkBgjUtbrQ48HvJx+wyfm8f9PgRYdWI87h4b0iD29Rjh/yphT+XoBSIFoDpb6xQ== X-Received: by 10.55.43.198 with SMTP id r67mr28225009qkr.292.1516108604518; Tue, 16 Jan 2018 05:16:44 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:53 -0300 Message-Id: <20180116131555.14242-10-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::241 Subject: [Qemu-devel] [PATCH 09/11] qdev: remove DeviceClass::exit 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 it has no users. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/qdev-core.h | 2 -- hw/core/qdev.c | 9 --------- 2 files changed, 11 deletions(-) diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index de063b232f..de7fe2e6e0 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -30,7 +30,6 @@ typedef enum DeviceCategory { DEVICE_CATEGORY_MAX } DeviceCategory; =20 -typedef int (*qdev_event)(DeviceState *dev); typedef void (*qdev_resetfn)(DeviceState *dev); typedef void (*DeviceRealize)(DeviceState *dev, Error **errp); typedef void (*DeviceUnrealize)(DeviceState *dev, Error **errp); @@ -124,7 +123,6 @@ typedef struct DeviceClass { const struct VMStateDescription *vmsd; =20 /* Private to qdev / bus. */ - qdev_event exit; /* TODO remove, once users are converted to unrealize= */ const char *bus_type; } DeviceClass; =20 diff --git a/hw/core/qdev.c b/hw/core/qdev.c index a4f76c8f5d..985f890a74 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -225,15 +225,6 @@ static void device_realize(DeviceState *dev, Error **e= rrp) =20 static void device_unrealize(DeviceState *dev, Error **errp) { - DeviceClass *dc =3D DEVICE_GET_CLASS(dev); - - if (dc->exit) { - int rc =3D dc->exit(dev); - if (rc < 0) { - error_setg(errp, "Device exit failed."); - return; - } - } } =20 void qdev_set_legacy_instance_id(DeviceState *dev, int alias_id, --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516108928354872.1182425342681; Tue, 16 Jan 2018 05:22:08 -0800 (PST) Received: from localhost ([::1]:35743 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebRBn-0007Nb-ET for importer@patchew.org; Tue, 16 Jan 2018 08:22:07 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59550) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6j-0003XC-NO for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6e-0007mN-Nv for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:53 -0500 Received: from mail-qt0-x242.google.com ([2607:f8b0:400d:c0d::242]:37524) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6e-0007ld-I5 for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:48 -0500 Received: by mail-qt0-x242.google.com with SMTP id d54so6062236qtd.4 for ; Tue, 16 Jan 2018 05:16:48 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.44 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=dTgXwuAq5Ae+Ni0hlEnTnI+NzI1hlltRDBDylBOxigg=; b=bvmQaFJ5PYO0+GYahExFpN5wFww8agrueiQ7yedpyxH5aCFmUhXbuFtSHPR08cprza MMxbzafhdYRjCbQ+5nJE+9v6U4jLTtoO/VUF8rTxUJ9IyhUfPfgC0MGih/iXeIxbMOCZ +NivnI7hskBsDH/MlPi1IxmHD1nyEx0tJ6Z9HKM4uSyVoFRzH5Z1n/uqRaeKkX1dH3KE gUuoam+r7yDLkE6p3PnLXtVfQP48wN+TV5jLFL7hAJSyS6DRPQGipBOngEYswxMIJ6fO QglFOlulbUrXe5EroA6pszfTytMll0uH5sgJVp1FdUbAMRoJeLFRbEl/X30rvjeTl59Z QrTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=dTgXwuAq5Ae+Ni0hlEnTnI+NzI1hlltRDBDylBOxigg=; b=tMMnSYFyyA0wfdiittIHaMA/pWaZWo3WVVBRR9+kiEX6zLliy0zsI+puixlUlb9cOz rIsIOe99Z/5cisRQIoXWyv74CqJckqeBCZ8yQAKA+oWDgBT6aVFBs+5FSPAYU+rEYleV YaRXMbFZr+VAHq2pSHKTIsRNNoo0VQTE/IWuGcARylz/9lxOEoUpMSHui9mpcQEfE2VC cb3JWBlMvGeZ1uoLsebj1kdWhzRgH9C779MuycnzoIH76dXRMfik1FuJn/nteyL9VDLw lVEYnMFK9wYE7IWVSN78L3gXNdqUU3Qd5aDnS55PdXLVVmi1LhVCmXWeXEU1jm1s+WUg Ac0Q== X-Gm-Message-State: AKwxytenHqH4Cukl3N7Sc+p5M6G7J2Zw1fgrOVKWM/snDW2Q53oe9gWe E7ksmirdmKXmAAE9XSWGJ9G5vCPi X-Google-Smtp-Source: ACJfBoskg+BlCw1az0cPkH5cn0vogaXw5H3S3d8xC80Kb7V84DyLc7k743RA/GoX43sR+VU3xdQbRA== X-Received: by 10.200.36.130 with SMTP id s2mr7944755qts.0.1516108607899; Tue, 16 Jan 2018 05:16:47 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:54 -0300 Message-Id: <20180116131555.14242-11-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::242 Subject: [Qemu-devel] [PATCH 10/11] qdev: remove empty realize/unrealize stubs 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 they are not useful, keep the code clean. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/core/qdev.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 985f890a74..91ddbfa5f3 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -219,14 +219,6 @@ void device_listener_unregister(DeviceListener *listen= er) QTAILQ_REMOVE(&device_listeners, listener, link); } =20 -static void device_realize(DeviceState *dev, Error **errp) -{ -} - -static void device_unrealize(DeviceState *dev, Error **errp) -{ -} - void qdev_set_legacy_instance_id(DeviceState *dev, int alias_id, int required_for_version) { @@ -1109,8 +1101,6 @@ static void device_class_init(ObjectClass *class, voi= d *data) DeviceClass *dc =3D DEVICE_CLASS(class); =20 class->unparent =3D device_unparent; - dc->realize =3D device_realize; - dc->unrealize =3D device_unrealize; =20 /* by default all devices were considered as hotpluggable, * so with intent to check it in generic qdev_unplug() / --=20 2.15.1 From nobody Sat Oct 25 23:38:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1516108938956592.916773410453; Tue, 16 Jan 2018 05:22:18 -0800 (PST) Received: from localhost ([::1]:35745 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebRBy-0007Wd-4J for importer@patchew.org; Tue, 16 Jan 2018 08:22:18 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59549) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebR6j-0003XB-MZ for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebR6h-0007pS-GI for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:53 -0500 Received: from mail-qk0-x241.google.com ([2607:f8b0:400d:c09::241]:42530) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ebR6h-0007pK-Ca for qemu-devel@nongnu.org; Tue, 16 Jan 2018 08:16:51 -0500 Received: by mail-qk0-x241.google.com with SMTP id k201so5735177qke.9 for ; Tue, 16 Jan 2018 05:16:51 -0800 (PST) Received: from x1.local ([138.117.48.219]) by smtp.gmail.com with ESMTPSA id k29sm1436180qtc.87.2018.01.16.05.16.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jan 2018 05:16:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FtCYcodPCj2Yf5Hv74WVnRwLf8mr0OpHFVelpM/xxcM=; b=PAqqnrQnRu3UFeFp4Y3lOyaoUyMiXEVf/DY4SoTvXXj7/NWT6mabYxW4C2rWAzV6VN pSb4JmivyvUi7kShgszD0X8zDChusGT1MfzkUE+ez+AD1MUWDg1FU8a10WLERgvusDvA Q0p3ND3ZCykNztNnNLyVbakXyOGKpuRtVu1dPKRJf96ZhHtQS2gqqr0tv6U0sw+qO0VJ 9UhaUIyjpHUnfIMPi2+Kt5leIGiEVcoIPhvdfsCllJLZqWEcVjP2X6VWBeQ76aggRoGf 7JQS/0MghM4tEhY+qL0bFXm5btJQvv4DsuKNddxz29pHpmJPujI3KAY7gqVgJT95wgrl IZOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=FtCYcodPCj2Yf5Hv74WVnRwLf8mr0OpHFVelpM/xxcM=; b=kLtm1/4G/vbTINZy4HYqipHZ+O9JQTcqacDK6NHUsZv/t6QQelN+434icOTkcfPj39 kBRLUjnyM/xizoRE26Fw8uLT6UYDPo8x4ttXQ0Omc6mP2qsgMe9XXxfiHi0R2fzo1ylf s7gGgnHR1hHY70QPdgr1ss23BQhmiIVHb68ncupRauCS2wIcsYBWSQAVYa21KhQ7/YFt yLLIqvIfUDAiMklcLHXPpKfy/HJnSr5e+WjU+fmmWTvgRluF7VEhSPPFdhRngnyMJfr0 e+bKawsti/NiztU6VUzkOhxWxw1LI2C7EmVJabtjNwssQmJp5r+1oV/PvpfQ/F2LrnQp dFNQ== X-Gm-Message-State: AKwxyteNTXEO+aJBvBdn42d9odzA5nWG5x6o3Sws5Ox/wWrbBFKQFqFV C4GobUEuX2CQNJjHOVQU6jcIMnhI X-Google-Smtp-Source: ACJfBouhTo82VPcX7iIfTq5SgBiwq0GXfm+xK13BYnX9Q1tn20BzgL+04Zp5ZBIbGm+TZtLnk4ee0A== X-Received: by 10.55.103.18 with SMTP id b18mr14261119qkc.56.1516108611023; Tue, 16 Jan 2018 05:16:51 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Habkost , Markus Armbruster , Peter Maydell , Paolo Bonzini , Eric Blake , Marcel Apfelbaum Date: Tue, 16 Jan 2018 10:15:55 -0300 Message-Id: <20180116131555.14242-12-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180116131555.14242-1-f4bug@amsat.org> References: <20180116131555.14242-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::241 Subject: [Qemu-devel] [PATCH 11/11] qdev: rename typedef qdev_resetfn() -> DeviceReset() 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 following the DeviceRealize and DeviceUnrealize typedefs, this unify a bit the QOM API. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/qdev-core.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index de7fe2e6e0..8d15da1c52 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -30,9 +30,9 @@ typedef enum DeviceCategory { DEVICE_CATEGORY_MAX } DeviceCategory; =20 -typedef void (*qdev_resetfn)(DeviceState *dev); typedef void (*DeviceRealize)(DeviceState *dev, Error **errp); typedef void (*DeviceUnrealize)(DeviceState *dev, Error **errp); +typedef void (*DeviceReset)(DeviceState *dev); typedef void (*BusRealize)(BusState *bus, Error **errp); typedef void (*BusUnrealize)(BusState *bus, Error **errp); =20 @@ -115,7 +115,7 @@ typedef struct DeviceClass { bool hotpluggable; =20 /* callbacks */ - void (*reset)(DeviceState *dev); + DeviceReset reset; DeviceRealize realize; DeviceUnrealize unrealize; =20 --=20 2.15.1