From nobody Sat Oct 25 13:23:49 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 1521420050401445.93401216865504; Sun, 18 Mar 2018 17:40:50 -0700 (PDT) Received: from localhost ([::1]:39637 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1exir3-0001sp-Hf for importer@patchew.org; Sun, 18 Mar 2018 20:40:49 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56172) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1exim6-0006Ys-4y for qemu-devel@nongnu.org; Sun, 18 Mar 2018 20:35:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1exim2-0000HM-U4 for qemu-devel@nongnu.org; Sun, 18 Mar 2018 20:35:42 -0400 Received: from ozlabs.org ([103.22.144.67]:55989) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1exim2-00009K-5G; Sun, 18 Mar 2018 20:35:38 -0400 Received: by ozlabs.org (Postfix, from userid 1007) id 404HCl66b8z9sW7; Mon, 19 Mar 2018 11:35:31 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gibson.dropbear.id.au; s=201602; t=1521419731; bh=Jyvk50u00DSUrR63qVy0cJvyhdt4ZrJR/hf6xqMOfa0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=IlFDC5DBoujyPdbE1UHBeT7bd1zaBr64CVYw+Q5Ld9BzFLviD43+rhgE6gt/iWeNE +EQn1kNcPx4oduaFK3Fq7zYExaCdghDMmil03piIpvsJ1KsLhTYnksSa7eW0a7LFSm k3JAOKKMgCmLvMYXclmpXcuv34p3d8pHQ/g3Y9Js= From: David Gibson To: peter.maydell@linaro.org Date: Mon, 19 Mar 2018 11:35:19 +1100 Message-Id: <20180319003524.28143-4-david@gibson.dropbear.id.au> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319003524.28143-1-david@gibson.dropbear.id.au> References: <20180319003524.28143-1-david@gibson.dropbear.id.au> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 103.22.144.67 Subject: [Qemu-devel] [PULL 3/8] hw/ppc/prep: Fix implicit creation of "-drive if=scsi" devices 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: lvivier@redhat.com, Thomas Huth , surajjs@au1.ibm.com, qemu-devel@nongnu.org, groug@kaod.org, qemu-ppc@nongnu.org, David Gibson 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 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Thomas Huth The global hack for creating SCSI devices has recently been removed, but this apparently broke SCSI devices on some boards that were not ready for this change yet. For the 40p machine you now get: $ ppc64-softmmu/qemu-system-ppc64 -M 40p -cdrom x.iso qemu-system-ppc64: -cdrom x.iso: machine type does not support if=3Dscsi,bu= s=3D0,unit=3D2 Fix it by providing a lsi53c810_create() function that takes care of calling scsi_bus_legacy_handle_cmdline() after creating the corresponding SCSI controller. Fixes: 1454509726719e0933c800fad00d6999752688ea Signed-off-by: Thomas Huth Signed-off-by: David Gibson --- hw/ppc/prep.c | 2 +- hw/scsi/lsi53c895a.c | 7 +++++++ include/hw/pci/pci.h | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/hw/ppc/prep.c b/hw/ppc/prep.c index 5c78503069..a1e7219db6 100644 --- a/hw/ppc/prep.c +++ b/hw/ppc/prep.c @@ -787,7 +787,7 @@ static void ibm_40p_init(MachineState *machine) qdev_prop_set_uint32(dev, "equipment", 0xc0); qdev_init_nofail(dev); =20 - pci_create_simple(pci_bus, PCI_DEVFN(1, 0), "lsi53c810"); + lsi53c810_create(pci_bus, PCI_DEVFN(1, 0)); =20 /* XXX: s3-trio at PCI_DEVFN(2, 0) */ pci_vga_init(pci_bus); diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index f3d4c4d230..160657f4b9 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -2279,3 +2279,10 @@ void lsi53c895a_create(PCIBus *bus) =20 scsi_bus_legacy_handle_cmdline(&s->bus); } + +void lsi53c810_create(PCIBus *bus, int devfn) +{ + LSIState *s =3D LSI53C895A(pci_create_simple(bus, devfn, "lsi53c810")); + + scsi_bus_legacy_handle_cmdline(&s->bus); +} diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index d8c18c7fa4..e255941b5a 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -708,6 +708,7 @@ PCIDevice *pci_create(PCIBus *bus, int devfn, const cha= r *name); PCIDevice *pci_create_simple(PCIBus *bus, int devfn, const char *name); =20 void lsi53c895a_create(PCIBus *bus); +void lsi53c810_create(PCIBus *bus, int devfn); =20 qemu_irq pci_allocate_irq(PCIDevice *pci_dev); void pci_set_irq(PCIDevice *pci_dev, int level); --=20 2.14.3