From nobody Tue Feb 10 23:00:42 2026 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 1522079817093139.32119796008124; Mon, 26 Mar 2018 08:56:57 -0700 (PDT) Received: from localhost ([::1]:57563 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f0UUS-0005LM-At for importer@patchew.org; Mon, 26 Mar 2018 11:56:56 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34571) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f0U9N-0003KC-Pq for qemu-devel@nongnu.org; Mon, 26 Mar 2018 11:35:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f0U9I-0000K1-U4 for qemu-devel@nongnu.org; Mon, 26 Mar 2018 11:35:09 -0400 Received: from mail-qk0-x242.google.com ([2607:f8b0:400d:c09::242]:44639) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f0U9I-0000Jh-PG for qemu-devel@nongnu.org; Mon, 26 Mar 2018 11:35:04 -0400 Received: by mail-qk0-x242.google.com with SMTP id o5so2139170qki.11 for ; Mon, 26 Mar 2018 08:35:04 -0700 (PDT) Received: from x1.local ([138.117.48.212]) by smtp.gmail.com with ESMTPSA id i188sm2017502qkc.16.2018.03.26.08.34.59 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 26 Mar 2018 08:35:03 -0700 (PDT) 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=/I9DjvczGNJrsaySlHmyPom9B/PbAp8L99gfWqBAeOc=; b=MPRyOqD6UxT6Vhj2GVQk0r57UJdP/rWA8M9l9pnb2f+fG+HgDKGQSxtytYccCgbf2C HMFj3IY5ihGRbC1/eS9OBkTNxdH2Ckph7mM8+++QHySWLEemgrqtg+ih6+8k6R9djpwg J2K1me8SLdIxQklZL96XWOrqjXR8IVnBxVI/e9N5fUGYxuFF9fTOG65BFod8X1H/f7GT gV5ZoGC1KReS6FDf7guVnc4YHiEx68APVUz9v9rhruHJBJAoILV42oZX83mLOd8B5Z9E aHeCuN0SoLm+tAruwvFs76cmcjUeGo0tcTr4NCYrT0dTQBdZmkWqgflPafSwdfCgMmyE PWXA== 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=/I9DjvczGNJrsaySlHmyPom9B/PbAp8L99gfWqBAeOc=; b=t38ywo96I/yDOp6NSugQCORev7J3hSzrSCoLk5atmI8J26B0qBU6lxFyUc4Jp4CS3l oCyT60m6Ptn8aYi/hH8VA/oBvK1oq726eWgje+6fx16Q5I3OffG58RX2AhVkPB63rGPd 7M01xJ3PBq3idiiKTo2GZ1P3SdHAPUW9uynWsNgCAXoe2Qfb0zDQ1zLScVE5NnypVdL8 MQIx+J/wbCUMJGYX+nEoQUaajp0kSMUY58wQtXSwZdDNAVZHlrlCGat5/sxTuC2YDikU 104R22YdGoz4VYCciu2vEhzEqGTPNQJlXZiN3fUIZqZO5D3A0UKlKRgYDvrZdk5zb5Q7 7DDQ== X-Gm-Message-State: AElRT7GVm8PHxdlMefcBrASxXgr3dDXrW8jo5WM+Swnj5w+msbj7TvD8 BmBSxSlfuwYgtw6JUfe6wpQ= X-Google-Smtp-Source: AG47ELtg8/qLTWmaC3eV6/+IxaogMZFMcYjd2FHD24lqzCynVHUHsXnYqHCCJy/9zVA/NMSa8/fVNA== X-Received: by 10.55.155.142 with SMTP id d136mr54084457qke.274.1522078504149; Mon, 26 Mar 2018 08:35:04 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Eduardo Otubo , Thomas Huth , Paolo Bonzini Date: Mon, 26 Mar 2018 12:34:39 -0300 Message-Id: <20180326153441.32641-4-f4bug@amsat.org> X-Mailer: git-send-email 2.16.3 In-Reply-To: <20180326153441.32641-1-f4bug@amsat.org> References: <20180326153441.32641-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::242 Subject: [Qemu-devel] [PATCH for-2.13 3/5] hw/dma/i8257: Split i8257_dma_init() by master/slave 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: Eduardo Habkost , "Michael S. Tsirkin" , qemu-devel@nongnu.org, Michael Tokarev , Alexander Graf , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Nageswara Sastry , =?UTF-8?q?Herv=C3=A9=20Poussineau?= 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 This emphasises than two controller are created (in master/slave configurat= ion). Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/dma/i8257.c | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/hw/dma/i8257.c b/hw/dma/i8257.c index df030f934c..72f8893b9e 100644 --- a/hw/dma/i8257.c +++ b/hw/dma/i8257.c @@ -622,26 +622,44 @@ static void i8257_register_types(void) =20 type_init(i8257_register_types) =20 -void i8257_dma_init(ISABus *bus, bool high_page_enable) +static ISADevice *i8257_dma_init_master(ISABus *bus, bool high_page_enable) { - ISADevice *isa1, *isa2; + ISADevice *isa; DeviceState *d; =20 - isa1 =3D isa_create(bus, TYPE_I8257); - d =3D DEVICE(isa1); + isa =3D isa_create(bus, TYPE_I8257); + d =3D DEVICE(isa); qdev_prop_set_int32(d, "base", 0x00); qdev_prop_set_int32(d, "page-base", 0x80); qdev_prop_set_int32(d, "pageh-base", high_page_enable ? 0x480 : -1); qdev_prop_set_int32(d, "dshift", 0); qdev_init_nofail(d); =20 - isa2 =3D isa_create(bus, TYPE_I8257); - d =3D DEVICE(isa2); + return isa; +} + +static ISADevice *i8257_dma_init_slave(ISABus *bus, bool high_page_enable) +{ + ISADevice *isa; + DeviceState *d; + + isa =3D isa_create(bus, TYPE_I8257); + d =3D DEVICE(isa); qdev_prop_set_int32(d, "base", 0xc0); qdev_prop_set_int32(d, "page-base", 0x88); qdev_prop_set_int32(d, "pageh-base", high_page_enable ? 0x488 : -1); qdev_prop_set_int32(d, "dshift", 1); qdev_init_nofail(d); =20 - isa_bus_dma(bus, ISADMA(isa1), ISADMA(isa2)); + return isa; +} + +void i8257_dma_init(ISABus *bus, bool high_page_enable) +{ + ISADevice *master, *slave; + + master =3D i8257_dma_init_master(bus, high_page_enable); + slave =3D i8257_dma_init_slave(bus, high_page_enable); + + isa_bus_dma(bus, ISADMA(master), ISADMA(slave)); } --=20 2.16.3