From patchwork Tue Nov 26 11:22:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015322 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=G31NQHlv; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKtc1RVpz1y01 for ; Tue, 26 Nov 2024 22:22:48 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFteF-0003ij-Tt; Tue, 26 Nov 2024 06:22:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFteD-0003hM-B2 for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:25 -0500 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFteB-0002XI-Fb for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:25 -0500 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-4314c4cb752so50101645e9.2 for ; Tue, 26 Nov 2024 03:22:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620141; x=1733224941; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+qPY7Uz0dqRmk2gQ1cO3DBCcFXLLvxMC18yQC1ilSgA=; b=G31NQHlvGZkGawebft97sYhAhilqUvGvkbd1zMeMwhwlN14M5eRWiTdyyCvvbnxC4R RP34PkS1VK4rlcCJ/lPYuUJR1oGU2dbuBxD8DbTBC/kIlCS8YWBugmj496sPikjghPQZ w8jdIfgZIUwIT9xpBaE+LWrmstHQDEk573vvWcVNlOqpgEd+oKx31Ge3/EUqrg1BZ4R1 oQmGr1FdTou24m7GXGJtJ2gnhCVZIOQ8MyvVsLEZW6eSXAsfHn5FY6LXLW0iTGF3hnoU WKGAmMMyFBQ61vrXbrC+fAX43htEOU62rrRhwji0xmbnQ83nZb9KIhRF+XXZhBwMMnqp KJSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620141; x=1733224941; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+qPY7Uz0dqRmk2gQ1cO3DBCcFXLLvxMC18yQC1ilSgA=; b=MIl3QAX5OmNiBIGGfUE/r3ceDb4Pqp+xp8y0YOOq3xSBUIUmz8Lgn827h4UShMt12y +5UuctDX6MOBGPuJBW7nPvvv/wQqBZHBZw6Ocn23vikXDeIamdHRNW53Wrw7YH01/FKd ErmsXXZ1HO5U0vVqF5E9mok+/c/SSMncEpeDVwrxMQKOfN5Ypfmezn7pqyQOkJYbo7BR JRqHraM89FePvGrgkea+EHRQ54C2IwU8suPPmrnRrTdwdfQzrZeNxs8q3901J/aN/FPA Bl6MOyqTlXgUNWepuMR5pWE3ylX9MPnxs3p5gLZGEONpM2b5LLJpOj1lwzD9TUMFoK4V xTlQ== X-Gm-Message-State: AOJu0YwuW3qxjJ90h/hOphu5A/IPKyzivrDaRsefpK40xBxH5JdkSD8p 5EjbcbbEMeA0ZCUYqbyU8JkcdS/s+IX2mqQ0TYLn3HbzCPo4eSXkL+Vz/nvXsHc= X-Gm-Gg: ASbGncsyiRhDRGxbZ+SIiSlfm5rOGONgpD+5ZVT9aOLWWKvoC867ZjED3GTqpmZtYHC eEVWU+nihfwZw354jSEpP8rQhRj0J888zjVV5OJNunFIoVLEa0hZDFMPJ2zcphoTryayF4UooYB 1pxnMV7zDOhm3s3E/ZQeFu2UZOqi9UgmHkOGfI7dEZTPnIKPGIB6PvcrkG9mmbtlXGQenAQ0HiN chuGAyQsW32m9tm5XNg0o61yX608lEbJwmbvyZoHCfd5xlyeTLggYqf4oWAZiWeJSCfkLSa X-Google-Smtp-Source: AGHT+IEANCMTxsUE27Mx8fMzBEsH7EvxcIuDdUdjx5zx0IltCtoW4ouBVBLwarjkXR0wzLH5bYDn2w== X-Received: by 2002:a05:600c:a12:b0:434:a19a:5965 with SMTP id 5b1f17b1804b1-434a19a5bf9mr43582535e9.6.1732620141039; Tue, 26 Nov 2024 03:22:21 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-434a50613c5sm25019945e9.0.2024.11.26.03.22.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:22:20 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 01/13] hw/pci: Do not declare PCIBus::flags mask as enum Date: Tue, 26 Nov 2024 12:22:00 +0100 Message-ID: <20241126112212.64524-2-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org We use PCIBus::flags to mask various flags. It is not an enum, and doing so confuses static analyzers. Rename the enum as singular. Use a generic unsigned type for the mask. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/pci/pci_bus.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/hw/pci/pci_bus.h b/include/hw/pci/pci_bus.h index 22613125462..6ecfe2e06d5 100644 --- a/include/hw/pci/pci_bus.h +++ b/include/hw/pci/pci_bus.h @@ -19,7 +19,7 @@ struct PCIBusClass { uint16_t (*numa_node)(PCIBus *bus); }; -enum PCIBusFlags { +enum PCIBusFlag { /* This bus is the root of a PCI domain */ PCI_BUS_IS_ROOT = 0x0001, /* PCIe extended configuration space is accessible on this bus */ @@ -32,7 +32,7 @@ enum PCIBusFlags { struct PCIBus { BusState qbus; - enum PCIBusFlags flags; + unsigned flags; const PCIIOMMUOps *iommu_ops; void *iommu_opaque; uint8_t devfn_min; From patchwork Tue Nov 26 11:22:01 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015327 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=ab6xEX7/; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKwx1PMMz1y01 for ; Tue, 26 Nov 2024 22:24:49 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFteK-0003l3-AN; Tue, 26 Nov 2024 06:22:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFteI-0003jD-Cw for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:30 -0500 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFteG-0002bk-Ij for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:30 -0500 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-4316a44d1bbso50436095e9.3 for ; Tue, 26 Nov 2024 03:22:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620147; x=1733224947; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XytEl+ZiAvdgFcp20ox+30b5Cy75Cc7byEhOtvETzBY=; b=ab6xEX7/KSPKZkv7SByMMrs0kYhVjUQBBrRexX3FJdSh4nnpyuts4vH/QREzROZ6YY GX6pRdpJxZJFN5g3A/xKSAaFXtvkp7eo1B1g2iZuYZr80xU8kM0MMSQoNfYimvYrS7vD 5OzLv7yzecdjhWr11LqQsA6VlMJ1GPyILVu/gircI7+lUUoROLvRRGf5ZOlJEV8HTC7k 3NiUupdMlVS37Y9+FEiYuKCciVKITRwF1kbgZjtc+1nOAayjGShQlGuyzX7XtAY9D0uX lY5Kjgo7B0bNL5PlFDxf9Z8DlwQqH21i51lpwMsbwB9RauvG++djPSre1dsfyJSugINY 6lWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620147; x=1733224947; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XytEl+ZiAvdgFcp20ox+30b5Cy75Cc7byEhOtvETzBY=; b=ifejGS6PcGWkLanW4pNR/3y0KOOkD4LUd/OcGxfbsxR7ONZfi1GPw/uHgEsfC9pHky GlwZUQnK6N03lJAZwmUC0rKX+aHf+J1Xy6MwZgenV91/g5sbTaFRxeISl6nPuVkwic9D 7RgKwAW7nehCsvkMWQrpo+9V34a6dRAVvRbNrTI5hGOMY+9AcHJZzeMgnjIghtYsgvtD 1iR/ZSxpbCSkI148SaZQv/6h/9GmHDf98/wSyRZpX/4tM3H/ZwmoRSNeokgh7v+cG/Rn qqOFqQ+SfOCaHkvwPYpY6P+Mdw5Hp85vCm5LOvyREL2Imzcw2NZ352iNt6lAGWnlBXnE VyTw== X-Gm-Message-State: AOJu0YwwiE5yCEskYLBzjakeoPMPEzhnT5f4NIW3E+XK1p6k0K2Im0Dm bzPf1dp7y8i6hUV1lygJU9GNwdnSv+9Nbl5+sR+Jc1NoEyZ1iE4rmUxMi/sj8jes4BjuckyUHUI e X-Gm-Gg: ASbGncshIgoDIbIEDoPEuNo9rCvj2kN+NWhBuDHDweuN+rA89W6O6oR0SO9W8K++wn8 XaKaboxfSo24BjG5i0V6sQwplybY+e3oGV7C0j6ytMLyr/TFIBKD3sCRMX1zRXGbj3+LoU7J8an +ulVQzSVyYkATcjkmTV7zkx2L2avAyDyr1gHM6OPCyZ0EqX6/BUlOHw9DQB7uDdI4LEfB2MVJsx QMf2wyfa5dfTrw6Qm9IMNC2dC15wP2x7HjOnndEPkkJWYCf2ZDVAza/5yUhTEu+hXUPrU1r X-Google-Smtp-Source: AGHT+IGvdJyMsroF/T4j2TdVAhYjrbc5PWwEABLMtA2phckCyIulZKolLG8ElIFyRkC+RNzR7RccbQ== X-Received: by 2002:a05:600c:3b91:b0:434:a29d:6c71 with SMTP id 5b1f17b1804b1-434a29d6d6bmr39357155e9.27.1732620147073; Tue, 26 Nov 2024 03:22:27 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3825fb25d74sm13208001f8f.47.2024.11.26.03.22.25 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:22:26 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 02/13] hw/pci-bridge: Initialize bridge with parent bus flags Date: Tue, 26 Nov 2024 12:22:01 +0100 Message-ID: <20241126112212.64524-3-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Bridged buses inherit their parent flag, except they can not be a root. Signed-off-by: Philippe Mathieu-Daudé --- hw/pci-bridge/pci_expander_bridge.c | 8 ++++++-- hw/pci/pci_bridge.c | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/hw/pci-bridge/pci_expander_bridge.c b/hw/pci-bridge/pci_expander_bridge.c index 07d411cff52..bbf615f544b 100644 --- a/hw/pci-bridge/pci_expander_bridge.c +++ b/hw/pci-bridge/pci_expander_bridge.c @@ -336,6 +336,7 @@ static bool pxb_dev_realize_common(PCIDevice *dev, enum BusType type, PXBDev *pxb = PXB_DEV(dev); DeviceState *ds, *bds = NULL; PCIBus *bus; + PCIBus *parent_bus = pci_get_bus(dev); const char *dev_name = NULL; Error *local_err = NULL; MachineState *ms = MACHINE(qdev_get_machine()); @@ -358,12 +359,15 @@ static bool pxb_dev_realize_common(PCIDevice *dev, enum BusType type, ds = qdev_new(type == CXL ? TYPE_PXB_CXL_HOST : TYPE_PXB_HOST); if (type == PCIE) { bus = pci_root_bus_new(ds, dev_name, NULL, NULL, 0, TYPE_PXB_PCIE_BUS); + bus->flags = parent_bus->flags & ~PCI_BUS_IS_ROOT; } else if (type == CXL) { bus = pci_root_bus_new(ds, dev_name, NULL, NULL, 0, TYPE_PXB_CXL_BUS); + bus->flags = parent_bus->flags & ~PCI_BUS_IS_ROOT; bus->flags |= PCI_BUS_CXL; PXB_CXL_DEV(dev)->cxl_host_bridge = PXB_CXL_HOST(ds); } else { bus = pci_root_bus_new(ds, "pxb-internal", NULL, NULL, 0, TYPE_PXB_BUS); + bus->flags = parent_bus->flags & ~PCI_BUS_IS_ROOT; bds = qdev_new("pci-bridge"); bds->id = g_strdup(dev_name); qdev_prop_set_uint8(bds, PCI_BRIDGE_DEV_PROP_CHASSIS_NR, pxb->bus_nr); @@ -371,8 +375,8 @@ static bool pxb_dev_realize_common(PCIDevice *dev, enum BusType type, } bus->parent_dev = dev; - bus->address_space_mem = pci_get_bus(dev)->address_space_mem; - bus->address_space_io = pci_get_bus(dev)->address_space_io; + bus->address_space_mem = parent_bus->address_space_mem; + bus->address_space_io = parent_bus->address_space_io; bus->map_irq = pxb_map_irq_fn; PCI_HOST_BRIDGE(ds)->bus = bus; diff --git a/hw/pci/pci_bridge.c b/hw/pci/pci_bridge.c index 2c7bb1a5254..d47ded9e0cf 100644 --- a/hw/pci/pci_bridge.c +++ b/hw/pci/pci_bridge.c @@ -376,6 +376,7 @@ void pci_bridge_initfn(PCIDevice *dev, const char *typename) qbus_init(sec_bus, sizeof(br->sec_bus), typename, DEVICE(dev), br->bus_name); + sec_bus->flags = parent->flags & ~PCI_BUS_IS_ROOT; sec_bus->parent_dev = dev; sec_bus->map_irq = br->map_irq ? br->map_irq : pci_swizzle_map_irq_fn; sec_bus->address_space_mem = &br->address_space_mem; From patchwork Tue Nov 26 11:22:02 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015341 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=O269jXpe; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKz91jcYz1yQY for ; Tue, 26 Nov 2024 22:26:45 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFteX-0003oy-W2; Tue, 26 Nov 2024 06:22:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFteS-0003mv-LW for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:43 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFteM-0002df-Tl for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:37 -0500 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-434a7ee3d60so1905835e9.1 for ; Tue, 26 Nov 2024 03:22:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620152; x=1733224952; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ym7MlPUFYz2GU5YCplhDtE7b6ovE3xgVe6aZRCcPdv4=; b=O269jXpeoMK9d1++iTv+YTvOFcSfjM9awFg3fi93MDx5LY5PIBYYL2fxJTNi/PeMWK x2kewtuNbVV/z1r6AvUz2mE8nnoIq27syZTxNoddQktPcmloj1pmUQjuFdR78DlCsOyN qjD3N0wCN4BXh/mWKHZYo19e3OsqHUC35LlXpXIteTjvVTBo06DaQHd1M2V3k3GJMbZo JsEeAtCeKrVL1ZmCAsz8mgrJqS+aHGbAgIzsytwNqskzatFWdf9oX6KUy5eSLVAYza0y S1xyhxT51OyYJTmSyUpSn/9iUDwkN5CYQT8mWDUn+4Rgf/edkkQqEIzdgoH4nq77KKN7 FFqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620152; x=1733224952; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ym7MlPUFYz2GU5YCplhDtE7b6ovE3xgVe6aZRCcPdv4=; b=gJVTShITNsBjgKGfJG0+7sark7JxmM+6/OgCZUfaePHq1YAPmFIpIrA/eD9bm17gOa HH8wvAzHwg8YGY0f6yu1vCQgaTPZTgJ2QNMUif4V13zdsFVZjT7vYch3X6s74mThUZA0 l8CTBlh41GY/dXnvmLh3UYMSknHFSJQnsPCjSzH6ToFDb1bmEbm6vkJ/cSIAEcGmzXVK og8tJ6+TTjkbRyTHDz0W+ybtSI1K8KF5a1zruYFKzhfiUVe71ho5EjQWV2PRXDNKb57E anOKbEKtACKKfHuJJG8KoDsbh42NsjEouOuROcWe5zGfpR30e09Zgiq+1zxgJWfdYW/I xu3Q== X-Gm-Message-State: AOJu0Yx36H0QIOdU8jyQAWwTCPeqG1zdmG/S/a3V53dV0G7CJ7B0rF6A MQqJlCtdwDABgSCaVFHa6IqMU9PPZG/CwzOzbHvjSRS4hXqxkKO0PIfs3Tyx6XM= X-Gm-Gg: ASbGncsghPJmywwTd9HaxuQEs9JpogjhfEYyd2H6xIlSTJP9kD/iZuG3Xz8ru5x2atl 4ftpeznDsNh/JXY7UCsVxyvqVITbfnErCIunWOdOxCkW9lIrMGs2Oi8jpowKW/zw/MLfxI/EhhW nW7VmxubldwXBmO6mFvDAYe5Hx2ooJGnpga0pjyNXEned9C99fSnb9O7bMc2gxH2WHJU0gHE8i+ dfduu+4TtTGGcIagEcewVnf/7k55FcjnL/ZLwn2wJetLTxdftbhX3xlb6i7YMUlkyWZ8HDu X-Google-Smtp-Source: AGHT+IFBBmx/zRqWz+0+3nZ5bzn94HIXIH1xaptS/bJKBgN/Ji0e/N+lfNjKX8nxRbW8D6cFnG6cKw== X-Received: by 2002:a7b:c85a:0:b0:431:15f1:421d with SMTP id 5b1f17b1804b1-434a4eb786dmr23408865e9.16.1732620152605; Tue, 26 Nov 2024 03:22:32 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3825fb3134bsm12970699f8f.58.2024.11.26.03.22.31 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:22:32 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 03/13] hw/pci: Factor machine_refuses_bar_at_addr_0() helper out Date: Tue, 26 Nov 2024 12:22:02 +0100 Message-ID: <20241126112212.64524-4-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@linaro.org; helo=mail-wm1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Since we are going to re-use access to the MachineClass::pci_allow_0_address field, factor the current code as a new machine_refuses_bar_at_addr_0() helper. In pci_bar_address() invert 'allow_0_address' logic as 'bar_at_addr_0_refused'. Signed-off-by: Philippe Mathieu-Daudé --- hw/pci/pci.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 1416ae202c3..e05f8a828bb 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -520,6 +520,13 @@ bool pci_bus_bypass_iommu(PCIBus *bus) return host_bridge->bypass_iommu; } +static bool machine_refuses_bar_at_addr_0(void) +{ + MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine()); + + return !mc->pci_allow_0_address; +} + static void pci_root_bus_internal_init(PCIBus *bus, DeviceState *parent, MemoryRegion *mem, MemoryRegion *io, uint8_t devfn_min) @@ -1472,8 +1479,7 @@ pcibus_t pci_bar_address(PCIDevice *d, { pcibus_t new_addr, last_addr; uint16_t cmd = pci_get_word(d->config + PCI_COMMAND); - MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine()); - bool allow_0_address = mc->pci_allow_0_address; + bool bar_at_addr_0_refused = machine_refuses_bar_at_addr_0(); if (type & PCI_BASE_ADDRESS_SPACE_IO) { if (!(cmd & PCI_COMMAND_IO)) { @@ -1485,7 +1491,7 @@ pcibus_t pci_bar_address(PCIDevice *d, * TODO: make priorities correct and remove this work around. */ if (last_addr <= new_addr || last_addr >= UINT32_MAX || - (!allow_0_address && new_addr == 0)) { + (bar_at_addr_0_refused && new_addr == 0)) { return PCI_BAR_UNMAPPED; } return new_addr; @@ -1506,7 +1512,7 @@ pcibus_t pci_bar_address(PCIDevice *d, mappings, we handle specific values as invalid mappings. */ if (last_addr <= new_addr || last_addr == PCI_BAR_UNMAPPED || - (!allow_0_address && new_addr == 0)) { + (bar_at_addr_0_refused && new_addr == 0)) { return PCI_BAR_UNMAPPED; } From patchwork Tue Nov 26 11:22:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015323 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=P4SX3nJ8; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKvQ2zhKz1y01 for ; Tue, 26 Nov 2024 22:23:30 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtem-0003vT-G0; Tue, 26 Nov 2024 06:23:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFteb-0003tF-TN for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:51 -0500 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFteZ-0002gY-Ou for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:22:49 -0500 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-38232c6311fso3706219f8f.3 for ; Tue, 26 Nov 2024 03:22:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620166; x=1733224966; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=V/FHFrkLjfSL+r0KQnjlYWTgmdb9j50qofDa5n4Bijs=; b=P4SX3nJ8Vp6RJZ+ihkQdj6vdIKHHI1dbmNsq42BoCGN9fw9FCVwFCPhZqMvctY7AIq 6jQiCN7JUjJAPJoShU9MBou4+IFRiGMgUnl/Ke7MZ7ZRqnzKjyZk0jdDshtjg8Xt9UCH cCpmhpg8MEtYKMPWGAoRHbwS84HO7gE8gGN2/uURE/Bfmwrmh/mgcmFZ7nY2kbvSSx/F y9QO2aXxDbmL2aKtfl+tH65IqlblSR/tt3o8v/xtnEzZSWBa5s+M85Uhtlrk0ITCpqNF e9YifWPO+xtwtikySDHSgzXmlsaf4LtLJihCbir4hM3xVwDnEKb6rOA5Wy1jtx+PMtEm C+bQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620166; x=1733224966; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=V/FHFrkLjfSL+r0KQnjlYWTgmdb9j50qofDa5n4Bijs=; b=Oqlro7sJwUx7IuzygkWk749vJ9RPFPs8kHcffLwYjcBhJtaqNZAoIQ4LyVsQW35XaI wEe+/hn5PwW/r2YGL7u7X/rCfnhPTYCqeBFPs7Etr6ZHuLvk2vlE9gjzj3WvbM6moUfr 43njU35z10cj94GnsWfwIld8Xyd2xSCCc7xpZtSqiD5WYohSShSInWTDIBxOlnwwI7u7 6kCrRgDDKVkrspmV5bt24KcNcvHMSkendiFERRXn4MxMec8LHcnFSQX2r/qJ3v/ZsIO3 nIC2fawh44m2pQpStj40YZsB5w45t2VqYSmKjU98o/YuxO+3snLHYSfhVyyi/R108x5f n3VA== X-Gm-Message-State: AOJu0Yy6aD1dZ+IKgPMAzVCM7nINVU4facqgfNYOeQ9GOJlKDxbm4sHK KBV9dpwsyyLI/3zw2KWvnYdvF4ZOvna56Enaj1wTPMjn85NcTWoV2W6ZbwSE7lk= X-Gm-Gg: ASbGncspMq/PH0uMs/w/lLJ5fC1HqmipOOiPmXfwJMvwQYTCn5riTdfKwJG/S4RDj3m NA9ALjWemHEX4kWi2xqhQZIPeuO4QfkPjVw25MiY8RlsElQ/5yD8n1hVMF+nchRd1q5cPKut5Cm /knLuSk+2/voH65BcSi8pQUT/uFNI3X9kLI7cT7bln2Gk7761cHW508ROEA1BoR/CB8X+2DqojN n4ZN3KSJpfmwqIr8DS7pKmoPa4v1SQHS96RKOKUgLr/6IKn6WstQSzD+37Y00rB9W8OPonU X-Google-Smtp-Source: AGHT+IFQD3d6AiS/0pziBy+6unSAZm4P726MrSNX2osV0nsY0tXODVnNZJr/byHSaMZMlw5SB6lpbw== X-Received: by 2002:a5d:6d01:0:b0:382:4c36:e072 with SMTP id ffacd0b85a97d-38260b969b2mr13375617f8f.30.1732620165804; Tue, 26 Nov 2024 03:22:45 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3825fb264cdsm13228780f8f.49.2024.11.26.03.22.42 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:22:45 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 04/13] hw/pci: Introduce PCIBusFlag::PCI_BUS_BAR_AT_ADDR0_REFUSED Date: Tue, 26 Nov 2024 12:22:03 +0100 Message-ID: <20241126112212.64524-5-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42c; envelope-from=philmd@linaro.org; helo=mail-wr1-x42c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Some machines need PCI buses to allow access at BAR0. Introduce the PCI_BUS_BAR_AT_ADDR0_REFUSED flag and the pci_bus_refuse_bar_at_addr_0() helper. Set the flag in pci_root_bus_internal_init() where all root buses are created. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/pci/pci_bus.h | 6 ++++++ hw/pci/pci.c | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/include/hw/pci/pci_bus.h b/include/hw/pci/pci_bus.h index 6ecfe2e06d5..6d7bf682e8f 100644 --- a/include/hw/pci/pci_bus.h +++ b/include/hw/pci/pci_bus.h @@ -26,6 +26,7 @@ enum PCIBusFlag { PCI_BUS_EXTENDED_CONFIG_SPACE = 0x0002, /* This is a CXL Type BUS */ PCI_BUS_CXL = 0x0004, + PCI_BUS_BAR_AT_ADDR0_REFUSED = 0x0008, }; #define PCI_NO_PASID UINT32_MAX @@ -72,4 +73,9 @@ static inline bool pci_bus_allows_extended_config_space(PCIBus *bus) return !!(bus->flags & PCI_BUS_EXTENDED_CONFIG_SPACE); } +static inline bool pci_bus_refuse_bar_at_addr_0(PCIBus *bus) +{ + return !!(bus->flags & PCI_BUS_BAR_AT_ADDR0_REFUSED); +} + #endif /* QEMU_PCI_BUS_H */ diff --git a/hw/pci/pci.c b/hw/pci/pci.c index e05f8a828bb..27b66583e54 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -537,6 +537,9 @@ static void pci_root_bus_internal_init(PCIBus *bus, DeviceState *parent, bus->address_space_mem = mem; bus->address_space_io = io; bus->flags |= PCI_BUS_IS_ROOT; + if (machine_refuses_bar_at_addr_0()) { + bus->flags |= PCI_BUS_BAR_AT_ADDR0_REFUSED; + } /* host bridge */ QLIST_INIT(&bus->child); @@ -1479,7 +1482,7 @@ pcibus_t pci_bar_address(PCIDevice *d, { pcibus_t new_addr, last_addr; uint16_t cmd = pci_get_word(d->config + PCI_COMMAND); - bool bar_at_addr_0_refused = machine_refuses_bar_at_addr_0(); + bool bar_at_addr_0_refused = pci_bus_refuse_bar_at_addr_0(pci_get_bus(d)); if (type & PCI_BASE_ADDRESS_SPACE_IO) { if (!(cmd & PCI_COMMAND_IO)) { From patchwork Tue Nov 26 11:22:04 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015343 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=fu1eq2LP; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKzn2r4zz1yQY for ; Tue, 26 Nov 2024 22:27:17 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtg4-0005Ka-S4; Tue, 26 Nov 2024 06:24:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtes-0003wj-4L for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:07 -0500 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtel-0002kS-S2 for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:03 -0500 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-434a099ba95so15778445e9.0 for ; Tue, 26 Nov 2024 03:22:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620173; x=1733224973; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=531OAHe2E6s/gjTEfxFCkh/CSUMa49twfx2TRTu9rug=; b=fu1eq2LPLYZFT1JFRqcrq/dgHJLG4aatbxi8h011QprBw2hhsCeLOZuP4mY49Yj2vo G5dN0v9kl10AbhDFyveVoQaWbtJ6HDuP6d5FhR5lZAVvEQS9IdjWN8wty6q9vfBAn0HY 5WV/y6/Ez293S4CuXmjrGcKPRxn2wFmoPkkqtZmVCo7wuNup6EbaWK1FsaQ9wzf2J+WJ hm7/zlIcB3IMCWpNuF5DTTahZ0R2NVdnZU/e0t0IZGDFuXYiTImu3W9y7Cj3sySbVOIo XQ5qP5+mvy+djvuLimbVju0cY9CSiwzbqoQq85ljoICpo5tlzAa6M4WafrrytTuqfe6i c4cw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620173; x=1733224973; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=531OAHe2E6s/gjTEfxFCkh/CSUMa49twfx2TRTu9rug=; b=Ftb7t5/1wi5/rnRh3A3cti8j4n/rSwFRmOAcFGioETYMcFghS4NdZ6I2fNOGk7fFkC 1vtuzRvUef6CN2Yp6Q8pc7RgW9rppEWay5Apmnkp7k9Ueu4sd56sxlz9FuomP/Umxhx1 eFaM4ezWqMOp4F6PC6k68ssMtcXXoh6rCIbi5oSMwfzZK72nuA5T/vxBAESZyWBZQyzy 06RmMnM7ySewyR3Bdsywopq2ZYaLy94GkFI8Snekn2UU0jtCWGnTx/8CDUw4O1L48+G8 VtEHnk2fZXf6EhiZI7Wkmvt4n3E5x9g2zVrhTlBYlfNE0/RHDlAVJTKkntiukdhynrSK yGDQ== X-Gm-Message-State: AOJu0YwUynauxbH9itFgC8uJngGBbYczsX9U6DtU/K/nxq35L2h7GVfT iHfA/kQUxrCLE7aqLTcCNvBBlja0j8ScXDctkXL0S89oAT9q0IzO6EeubE5q8uE= X-Gm-Gg: ASbGncsDk1ZPF5dlrI6y1pa7g2eBCI54qS4HZAWMYzQsOC1Vu3OBehfcwKqNXlRGE8n TImB/TrhHQ5hkM8ofZgdWSwoFjxDYq83dJy0+O+YFdKaNORlORQO6EHNWP1CE6FCdngXUfEeTIm 7G+9MN9OL7mCyeTr4kGUGTNwSi6p+dMAm73Jb8MMqLFiZ6r2YZpuH/nwGO/oUfyeCcbLkN1w+qO KZQAJalXF4SAXcCZf+JLqJLJwM5QQ0XgAiM3uleqQ7rzhI8+2nMje2V1wBwZTeT5086izMr X-Google-Smtp-Source: AGHT+IGlSefU/AUIv0V6tDlbe3TEFlshHBlt/NlBgyTesEOFvwph3W7BFNJsTCxNbGO+wmRFjIAk5Q== X-Received: by 2002:a05:600c:154d:b0:434:a815:2b57 with SMTP id 5b1f17b1804b1-434a8152d9dmr7809555e9.20.1732620173600; Tue, 26 Nov 2024 03:22:53 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-434a4faf750sm25527775e9.10.2024.11.26.03.22.51 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:22:53 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 05/13] hw/pci: Propagate bar_at_addr_0_refused to pci_root_bus_internal_init() Date: Tue, 26 Nov 2024 12:22:04 +0100 Message-ID: <20241126112212.64524-6-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Have pci_root_bus_internal_init() callers set the 'bar_at_addr_0_refused' argument. No logical change. Signed-off-by: Philippe Mathieu-Daudé --- hw/pci/pci.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 27b66583e54..8eacb8f82fc 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -529,7 +529,8 @@ static bool machine_refuses_bar_at_addr_0(void) static void pci_root_bus_internal_init(PCIBus *bus, DeviceState *parent, MemoryRegion *mem, MemoryRegion *io, - uint8_t devfn_min) + uint8_t devfn_min, + bool bar_at_addr_0_refused) { assert(PCI_FUNC(devfn_min) == 0); bus->devfn_min = devfn_min; @@ -537,7 +538,7 @@ static void pci_root_bus_internal_init(PCIBus *bus, DeviceState *parent, bus->address_space_mem = mem; bus->address_space_io = io; bus->flags |= PCI_BUS_IS_ROOT; - if (machine_refuses_bar_at_addr_0()) { + if (bar_at_addr_0_refused && machine_refuses_bar_at_addr_0()) { bus->flags |= PCI_BUS_BAR_AT_ADDR0_REFUSED; } @@ -563,7 +564,8 @@ void pci_root_bus_init(PCIBus *bus, size_t bus_size, DeviceState *parent, uint8_t devfn_min, const char *typename) { qbus_init(bus, bus_size, typename, parent, name); - pci_root_bus_internal_init(bus, parent, mem, io, devfn_min); + pci_root_bus_internal_init(bus, parent, mem, io, devfn_min, + true); } PCIBus *pci_root_bus_new(DeviceState *parent, const char *name, @@ -573,7 +575,8 @@ PCIBus *pci_root_bus_new(DeviceState *parent, const char *name, PCIBus *bus; bus = PCI_BUS(qbus_new(typename, parent, name)); - pci_root_bus_internal_init(bus, parent, mem, io, devfn_min); + pci_root_bus_internal_init(bus, parent, mem, io, devfn_min, + true); return bus; } From patchwork Tue Nov 26 11:22:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015348 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=M9RaepEJ; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyL0c2Gc4z1yQY for ; Tue, 26 Nov 2024 22:28:00 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtfX-0004OY-Vf; Tue, 26 Nov 2024 06:23:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtes-0003wl-4K for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:07 -0500 Received: from mail-lf1-x130.google.com ([2a00:1450:4864:20::130]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFten-0002m6-HU for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:03 -0500 Received: by mail-lf1-x130.google.com with SMTP id 2adb3069b0e04-53ddb99e9dcso3054165e87.3 for ; Tue, 26 Nov 2024 03:23:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620179; x=1733224979; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=CLOtH90q6HrNlk2tttqrB7+LmSS1Ew20sdzHgtSgHVA=; b=M9RaepEJcW14Cci3sSEcQuJTTSAuP074Jx9guCrLdZtSqXILgilhsZIEt5EsuWXTED jJ7NAEkY2GxO9p5uJJUOPHKy6CJfwaODRW0i3/jwe5qc3xMt0i7TdsbsUgMFAA9n5PTS RHVP6yL9vetgwN9U2vYmh0HId+BcFXO5xyyzNGE8CRDLj6jyvlvrDOxl/ACsK9RgRPQj Bh6ZO7NwCzxUnve8RbWcf7228hhihsEL0g1Rq5Ufoy9mgUppf2nqpisGDYyWxJOV9r0q Q4IWdP20sHXqULqSjJHibCVB8hHJa82YumXG78VomJy3MUpHE1i2Z5UP5KI5MB/BzVjN /jHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620179; x=1733224979; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CLOtH90q6HrNlk2tttqrB7+LmSS1Ew20sdzHgtSgHVA=; b=NpUuJExsCLyRa+Lfyng+3wGoPPgVWzF+13VU8v0pfdNd4IPlF4CkXUJbURV36ypRl0 eHs12GFr5sWKSDQNEkvrgDVeUD3/z+GtPKI1VPwMPbN9sG5moRFa6kcV90U8HSDZj+DA a88znNyjrtGupq/XzBhLddt+OF4bemVc1LPvE7mGlzus2XH2N3erq+ohY7kr/7EHqONX mlnUaEWTQtSgg1m/97O7gPiu7tK7RhONUA/Hsz7O0qpx8ecZaDJaGDVIh3NlQ+url5Fe A3Lu0XCQEtCZiJS0PKin0FA/4tyATOgBm+4HM9A1bP06dQY0fSeu68BkyDuwtOA85ZAd lyhQ== X-Gm-Message-State: AOJu0YwxrdM9Gg+cTHCh52s6Jt5OBjPYUhqGFwU2I2eIbY55H+rKi28V F/IEcp34w3nXSu6nkz1/51rBrhBWzjMoZI6i/i4aEUsYtHViDeA8230JZbfdx50= X-Gm-Gg: ASbGncuUlIU9AI44StomYnHUoyPtiekwVWF2w+lycSkmNaqoL4d7HTIc9WvYp2AvUer 11AK8GFegyeiz+jkZAOEao0YesRzVd6tt1iVxx7lExbUQeo3zu/cafSJ1KEVjI1rRoYT4Sb8XAT z+cVH0m9mG/rEOnAPJ/BLwe7MyOrVdD2Cz9tindqspMDm+6CiMVqMKF0btpHrt+rUjK/I1ZrFVU mrIsjdSlWQ1kLVL2VGOw4QSc3kAG1XefPO2+k+zdDQlyu/IWfiBfY0yWqHXC7hoLeEERIB2 X-Google-Smtp-Source: AGHT+IGsj5VzaHU8SAaWvn5jQSkwZvf//JK1pbBPc7Ax707C0OpTerSeHt4R927s6MsqNJ3PMJA0fw== X-Received: by 2002:a05:6512:2388:b0:53d:e8f5:f9d4 with SMTP id 2adb3069b0e04-53de8f5fa18mr1392986e87.36.1732620179597; Tue, 26 Nov 2024 03:22:59 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4349e117bf5sm81335245e9.18.2024.11.26.03.22.58 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:22:59 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 06/13] hw/pci: Propagate bar_at_addr_0_refused to pci_root_bus_init() Date: Tue, 26 Nov 2024 12:22:05 +0100 Message-ID: <20241126112212.64524-7-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::130; envelope-from=philmd@linaro.org; helo=mail-lf1-x130.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Have pci_root_bus_init() callers set the 'bar_at_addr_0_refused' argument. No logical change. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/pci/pci.h | 3 ++- hw/pci-host/raven.c | 2 +- hw/pci-host/versatile.c | 2 +- hw/pci/pci.c | 5 +++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index 135695c5511..b499846083f 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -284,7 +284,8 @@ bool pci_bus_is_express(const PCIBus *bus); void pci_root_bus_init(PCIBus *bus, size_t bus_size, DeviceState *parent, const char *name, MemoryRegion *mem, MemoryRegion *io, - uint8_t devfn_min, const char *typename); + uint8_t devfn_min, const char *typename, + bool bar_at_addr_0_refused); PCIBus *pci_root_bus_new(DeviceState *parent, const char *name, MemoryRegion *mem, MemoryRegion *io, uint8_t devfn_min, const char *typename); diff --git a/hw/pci-host/raven.c b/hw/pci-host/raven.c index a7dfddd69ea..d5087af5ec6 100644 --- a/hw/pci-host/raven.c +++ b/hw/pci-host/raven.c @@ -313,7 +313,7 @@ static void raven_pcihost_initfn(Object *obj) &s->pci_io_non_contiguous, 1); memory_region_add_subregion(address_space_mem, 0xc0000000, &s->pci_memory); pci_root_bus_init(&s->pci_bus, sizeof(s->pci_bus), DEVICE(obj), NULL, - &s->pci_memory, &s->pci_io, 0, TYPE_PCI_BUS); + &s->pci_memory, &s->pci_io, 0, TYPE_PCI_BUS, true); /* Bus master address space */ memory_region_init(&s->bm, obj, "bm-raven", 4 * GiB); diff --git a/hw/pci-host/versatile.c b/hw/pci-host/versatile.c index d257acee172..f82262f8d1e 100644 --- a/hw/pci-host/versatile.c +++ b/hw/pci-host/versatile.c @@ -407,7 +407,7 @@ static void pci_vpb_realize(DeviceState *dev, Error **errp) pci_root_bus_init(&s->pci_bus, sizeof(s->pci_bus), dev, "pci", &s->pci_mem_space, &s->pci_io_space, - PCI_DEVFN(11, 0), TYPE_PCI_BUS); + PCI_DEVFN(11, 0), TYPE_PCI_BUS, true); h->bus = &s->pci_bus; object_initialize(&s->pci_dev, sizeof(s->pci_dev), TYPE_VERSATILE_PCI_HOST); diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 8eacb8f82fc..f7158fb9573 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -561,11 +561,12 @@ bool pci_bus_is_express(const PCIBus *bus) void pci_root_bus_init(PCIBus *bus, size_t bus_size, DeviceState *parent, const char *name, MemoryRegion *mem, MemoryRegion *io, - uint8_t devfn_min, const char *typename) + uint8_t devfn_min, const char *typename, + bool bar_at_addr_0_refused) { qbus_init(bus, bus_size, typename, parent, name); pci_root_bus_internal_init(bus, parent, mem, io, devfn_min, - true); + bar_at_addr_0_refused); } PCIBus *pci_root_bus_new(DeviceState *parent, const char *name, From patchwork Tue Nov 26 11:22:06 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015337 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=kL3XWD4G; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKyX12jgz1yQY for ; Tue, 26 Nov 2024 22:26:12 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtgQ-00068I-QE; Tue, 26 Nov 2024 06:24:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtf6-000415-SX for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:24 -0500 Received: from mail-lf1-x12f.google.com ([2a00:1450:4864:20::12f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtf1-0002pS-SE for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:20 -0500 Received: by mail-lf1-x12f.google.com with SMTP id 2adb3069b0e04-53de8ecb39bso767729e87.2 for ; Tue, 26 Nov 2024 03:23:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620194; x=1733224994; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WlPdyc/DTHUeKFvLcv8XiL1CJLw++4u5ykrc9rCsGw0=; b=kL3XWD4GFgeZTLHRbeakLUGuvKuZVApvnRo89G5+ETHvGhglGVFX7UAbd1CTX4wn5I YIi+HluaTdhjBjfZH4Nig4OoWdBb0rzgUJ2TGJrcx2XKxh9/9awkcR61QLsFIUdDuhhg T3YjKQVl7XNbE2sF3sjl9cRqNEhLOoRo9DuJRMzs3wN4n7k3jv2DhHvZ1WI3Z3jXiUWa od9nlaqu0ML5uyjo7qJ5j2rlyL9iKLi2eSCLAsMxj1m1zqiKKcbX7xZiTveiRJQfldzb pMLvcxftqBmfTyXoGPSSveg89Zl4qzyEwJHd3W5iplS1hKAK/29uAfxqkAlQ5LKtL/ZK AsGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620194; x=1733224994; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WlPdyc/DTHUeKFvLcv8XiL1CJLw++4u5ykrc9rCsGw0=; b=epptMQBhthJ4oNVZpTp3kef9Hj3AJZ31FfydYpfx10slyKlH5GCicpNqhUcUizPsaC Ea4i+3H6Ce2KMPS9hAwZ4XMZDa06HhlG+i2bqSed25BsQZLXlnc9Qsdw3KvzO5Bkq9fm sliX/Z+YtlEIgOnwBADUc2uPJoQfDNLhabMBOomyEmivC691stMTHPzqANGDtjz2AXzH 3lgaELe29W+UI0122c5NpQEhrV3gQ7l107hk0Td+MxX7PLQFi7Fjf7Zp1BEOiuZf/du7 X4xhS9uORa9ZCJItMUFqCxtMIFL/GUaPUN+lFodZXqNu3QtdbN2HRIDZTsoAP6O0ja4v J3Cg== X-Gm-Message-State: AOJu0YwHPOasozSbYHx3wIg9d/QsZKDFbVwM+2G+IAbz6+fTc2ChR3xu yLaADNxZCNbfUszjzqrJEFc/NiWuA9y30ySflRC73T/ZNL6cWKQHpZEp4gpgmh4= X-Gm-Gg: ASbGncvXAgszSSV3tVYX7KW5IZ0N9qVd/Jm5xWmHzGdIDMYxKxTOatTcVw6YDIq0Abv xSKcVBN7mBS9FMES2EqslL8YKXcsJ+wINRS7xZAD7FjV8vVYU4UA5FLHlLTWWK8Cp8RcYQLfs+V cRNTpdkxk4W3QD5OwBl1dqmrQK/bs2GNLA1YJgy1tc9wVoziL8wypIwuMqkOFtE3CEKbsbGOyZo zwC7/DM8pUUi1nymWTjtVPNX20l/UP4ZmzKG7svC0pIEVrsubZDvzzITo/ZxvLama+Ow4e6 X-Google-Smtp-Source: AGHT+IHl4P76Zn9v74qJkH7XPImD4yqbhApgnoCfXWDHkPezXOG5kjcaZJpW7cIhbBeU8MgQWJsrow== X-Received: by 2002:a05:6512:2209:b0:536:73b5:d971 with SMTP id 2adb3069b0e04-53dd39b0ddcmr7303704e87.38.1732620194134; Tue, 26 Nov 2024 03:23:14 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4349d60de86sm90041125e9.35.2024.11.26.03.23.04 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:23:13 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 07/13] hw/pci: Propagate bar_at_addr_0_refused to pci_root_bus_new() Date: Tue, 26 Nov 2024 12:22:06 +0100 Message-ID: <20241126112212.64524-8-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::12f; envelope-from=philmd@linaro.org; helo=mail-lf1-x12f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Have pci_root_bus_new() callers set the 'bar_at_addr_0_refused' argument. No logical change. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/pci/pci.h | 3 ++- hw/pci-bridge/pci_expander_bridge.c | 9 ++++++--- hw/pci-host/gt64120.c | 2 +- hw/pci-host/i440fx.c | 2 +- hw/pci-host/q35.c | 2 +- hw/pci-host/remote.c | 2 +- hw/pci/pci.c | 7 ++++--- 7 files changed, 16 insertions(+), 11 deletions(-) diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index b499846083f..f5454db0eb5 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -288,7 +288,8 @@ void pci_root_bus_init(PCIBus *bus, size_t bus_size, DeviceState *parent, bool bar_at_addr_0_refused); PCIBus *pci_root_bus_new(DeviceState *parent, const char *name, MemoryRegion *mem, MemoryRegion *io, - uint8_t devfn_min, const char *typename); + uint8_t devfn_min, const char *typename, + bool bar_at_addr_0_refused); void pci_root_bus_cleanup(PCIBus *bus); void pci_bus_irqs(PCIBus *bus, pci_set_irq_fn set_irq, void *irq_opaque, int nirq); diff --git a/hw/pci-bridge/pci_expander_bridge.c b/hw/pci-bridge/pci_expander_bridge.c index bbf615f544b..d4b472a8305 100644 --- a/hw/pci-bridge/pci_expander_bridge.c +++ b/hw/pci-bridge/pci_expander_bridge.c @@ -358,15 +358,18 @@ static bool pxb_dev_realize_common(PCIDevice *dev, enum BusType type, ds = qdev_new(type == CXL ? TYPE_PXB_CXL_HOST : TYPE_PXB_HOST); if (type == PCIE) { - bus = pci_root_bus_new(ds, dev_name, NULL, NULL, 0, TYPE_PXB_PCIE_BUS); + bus = pci_root_bus_new(ds, dev_name, NULL, NULL, 0, TYPE_PXB_PCIE_BUS, + true); bus->flags = parent_bus->flags & ~PCI_BUS_IS_ROOT; } else if (type == CXL) { - bus = pci_root_bus_new(ds, dev_name, NULL, NULL, 0, TYPE_PXB_CXL_BUS); + bus = pci_root_bus_new(ds, dev_name, NULL, NULL, 0, TYPE_PXB_CXL_BUS, + true); bus->flags = parent_bus->flags & ~PCI_BUS_IS_ROOT; bus->flags |= PCI_BUS_CXL; PXB_CXL_DEV(dev)->cxl_host_bridge = PXB_CXL_HOST(ds); } else { - bus = pci_root_bus_new(ds, "pxb-internal", NULL, NULL, 0, TYPE_PXB_BUS); + bus = pci_root_bus_new(ds, "pxb-internal", NULL, NULL, 0, TYPE_PXB_BUS, + true); bus->flags = parent_bus->flags & ~PCI_BUS_IS_ROOT; bds = qdev_new("pci-bridge"); bds->id = g_strdup(dev_name); diff --git a/hw/pci-host/gt64120.c b/hw/pci-host/gt64120.c index 14fc803d279..3cc92e7200f 100644 --- a/hw/pci-host/gt64120.c +++ b/hw/pci-host/gt64120.c @@ -1193,7 +1193,7 @@ static void gt64120_realize(DeviceState *dev, Error **errp) phb->bus = pci_root_bus_new(dev, "pci", &s->pci0_mem, get_system_io(), - PCI_DEVFN(18, 0), TYPE_PCI_BUS); + PCI_DEVFN(18, 0), TYPE_PCI_BUS, true); pci_create_simple(phb->bus, PCI_DEVFN(0, 0), "gt64120_pci"); memory_region_init_io(&phb->conf_mem, OBJECT(phb), diff --git a/hw/pci-host/i440fx.c b/hw/pci-host/i440fx.c index 4f0a0438d77..35a54b953a7 100644 --- a/hw/pci-host/i440fx.c +++ b/hw/pci-host/i440fx.c @@ -268,7 +268,7 @@ static void i440fx_pcihost_realize(DeviceState *dev, Error **errp) memory_region_add_coalescing(&phb->conf_mem, 0, 4); b = pci_root_bus_new(dev, NULL, s->pci_address_space, - s->io_memory, 0, TYPE_PCI_BUS); + s->io_memory, 0, TYPE_PCI_BUS, true); phb->bus = b; d = pci_create_simple(b, 0, s->pci_type); diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index f3e713318ed..e47ba7aa0c2 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -65,7 +65,7 @@ static void q35_host_realize(DeviceState *dev, Error **errp) pci->bus = pci_root_bus_new(DEVICE(s), "pcie.0", s->mch.pci_address_space, s->mch.address_space_io, - 0, TYPE_PCIE_BUS); + 0, TYPE_PCIE_BUS, true); qdev_realize(DEVICE(&s->mch), BUS(pci->bus), &error_fatal); } diff --git a/hw/pci-host/remote.c b/hw/pci-host/remote.c index bfb25ef6af8..646e14de4e9 100644 --- a/hw/pci-host/remote.c +++ b/hw/pci-host/remote.c @@ -43,7 +43,7 @@ static void remote_pcihost_realize(DeviceState *dev, Error **errp) pci->bus = pci_root_bus_new(DEVICE(s), "remote-pci", s->mr_pci_mem, s->mr_sys_io, - 0, TYPE_PCIE_BUS); + 0, TYPE_PCIE_BUS, true); } static void remote_pcihost_class_init(ObjectClass *klass, void *data) diff --git a/hw/pci/pci.c b/hw/pci/pci.c index f7158fb9573..5fea39e4dfa 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -571,13 +571,14 @@ void pci_root_bus_init(PCIBus *bus, size_t bus_size, DeviceState *parent, PCIBus *pci_root_bus_new(DeviceState *parent, const char *name, MemoryRegion *mem, MemoryRegion *io, - uint8_t devfn_min, const char *typename) + uint8_t devfn_min, const char *typename, + bool bar_at_addr_0_refused) { PCIBus *bus; bus = PCI_BUS(qbus_new(typename, parent, name)); pci_root_bus_internal_init(bus, parent, mem, io, devfn_min, - true); + bar_at_addr_0_refused); return bus; } @@ -622,7 +623,7 @@ PCIBus *pci_register_root_bus(DeviceState *parent, const char *name, { PCIBus *bus; - bus = pci_root_bus_new(parent, name, mem, io, devfn_min, typename); + bus = pci_root_bus_new(parent, name, mem, io, devfn_min, typename, true); pci_bus_irqs(bus, set_irq, irq_opaque, nirq); pci_bus_map_irqs(bus, map_irq); return bus; From patchwork Tue Nov 26 11:22:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015335 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=jrWUtcKr; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKyN0F1Qz1yQY for ; Tue, 26 Nov 2024 22:26:04 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtgI-0005f4-Ht; Tue, 26 Nov 2024 06:24:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtfL-00047O-Qe for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:36 -0500 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtfG-0002sQ-53 for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:35 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-434a2f3bae4so11540235e9.3 for ; Tue, 26 Nov 2024 03:23:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620207; x=1733225007; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RnoyXVdD8DdnXViSwr+RJ/lWQxJ2OgIe+SEcc7eHt/g=; b=jrWUtcKrnOGHzzC8zLhDSafXS9MMzFnvZfLpz/MlsRTWzJl6mNicR8lVmdFHEjwq7e uOMhNSbAZdMNvsKhztPx+f7WSoBZvljYQwkgP1IGzmraeLj0mFF4dVt26iAsGckwz4Gk XOzoCxdKJuuSDU9McEorzMbueXaTjhYbqb2IQCl+A44/6BD5bTqlKd8K8m6hN/ezYluW WZUqOnNsFLYqd7cXQaBUzjnfu9ayK63BLiW57CfpMYqQH2Or4670FgnyIIOc3YLrKysU W/1j3Xat5M3doUlVDJilmJPI2dJMuJ0K3Q7HjCtOexQtV5XPsbzBPCHH4AA0CPqfVPAd Rldw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620207; x=1733225007; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RnoyXVdD8DdnXViSwr+RJ/lWQxJ2OgIe+SEcc7eHt/g=; b=OCait8VFQF9eIvtk+w1bVVMXNHyUHnv2Gmqloj8nZCVA0COoE2WURAq+i2zJz+k3Pf Yo1RNqwoNfVJum2dGbCfZGqSaRpHyndhdKUoDbm0e4tUftJD6PHhyBCNEHX5NbTjIcin YJ0nmZfoKyIOJ8/sD7PkRMEODK95DNg/TkR3Gdct4FzsMj3Fwr/6mrxg8Zs6SpzqoAKk OnX7Pua5ayvE2wp99fkSAPWWajeYHeLDoBTJUVC+Gg8cNkK3v/eoC1bL+tyNdr4gUBT4 GLSjWNTxCB9gZr97HuxvzPnqQ+tSz6TR8sKK6szoYo35RhZ69m3HO52FJE5bJCKgDkC8 bfOw== X-Gm-Message-State: AOJu0YyYnDPsA3WkQO2yf94mu0NQFHKAdFqp9Sg+R5qUNZvdGwbluraZ sVqiyuV+/au+RK2KQgVpopBLmh/tohs0PWPCzuQ0MrwCGa7fK7tylTBxWQd16Ek= X-Gm-Gg: ASbGncsWRTYEBS9Fd/xQAm8OuEUKMJHJTxf4m8GLpi38OYCui47glFl5YXRYZAwoEOj F+ICkCof288/Lfz3m8hbg64JvmhSeoUI5IbEJEhIHLH1I47GF8ZoGi2filh0wwnQ8iNPl1iu/PR Yiu5jc4P8ygDs7iEz1HlMLXDRIonPB1p0l6ptLjRK7AdYfgUvkxAcCyaKhdInF7NgueVOypP/JE wXKU/1pXorhhr3x3Whz9N7YIX1ui0jNb0ycjdQU0uer9e+wIION0qWdflTEFrDCSWQ6+giP X-Google-Smtp-Source: AGHT+IE86je2bY5Ff4z81RfqLwFbRKqw0cw+L5Y7X3+IJXyfozJ9/PHqRDu8tzHFYroJp2IDBzQLLQ== X-Received: by 2002:a05:600c:6a06:b0:434:9fb5:fe04 with SMTP id 5b1f17b1804b1-4349fb5ff09mr50911695e9.28.1732620207379; Tue, 26 Nov 2024 03:23:27 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-433b46430f1sm225022165e9.43.2024.11.26.03.23.20 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:23:26 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 08/13] hw/pci: Propagate bar_at_addr_0_refused to pci_register_root_bus() Date: Tue, 26 Nov 2024 12:22:07 +0100 Message-ID: <20241126112212.64524-9-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Have pci_register_root_bus() callers set the 'bar_at_addr_0_refused' argument. No logical change. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/pci/pci.h | 2 +- hw/alpha/typhoon.c | 2 +- hw/pci-host/articia.c | 3 ++- hw/pci-host/astro.c | 3 ++- hw/pci-host/bonito.c | 2 +- hw/pci-host/designware.c | 2 +- hw/pci-host/dino.c | 2 +- hw/pci-host/gpex.c | 3 ++- hw/pci-host/grackle.c | 2 +- hw/pci-host/mv64361.c | 2 +- hw/pci-host/pnv_phb3.c | 2 +- hw/pci-host/pnv_phb4.c | 2 +- hw/pci-host/ppc440_pcix.c | 2 +- hw/pci-host/ppc4xx_pci.c | 2 +- hw/pci-host/ppce500.c | 3 ++- hw/pci-host/sabre.c | 2 +- hw/pci-host/sh_pci.c | 2 +- hw/pci-host/uninorth.c | 8 ++++---- hw/pci-host/xilinx-pcie.c | 2 +- hw/pci/pci.c | 5 +++-- hw/ppc/ppc440_uc.c | 2 +- hw/ppc/spapr_pci.c | 2 +- hw/s390x/s390-pci-bus.c | 2 +- 23 files changed, 32 insertions(+), 27 deletions(-) diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index f5454db0eb5..216b1cbc13a 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -310,7 +310,7 @@ PCIBus *pci_register_root_bus(DeviceState *parent, const char *name, void *irq_opaque, MemoryRegion *mem, MemoryRegion *io, uint8_t devfn_min, int nirq, - const char *typename); + const char *typename, bool bar_at_addr_0_refused); void pci_unregister_root_bus(PCIBus *bus); void pci_bus_set_route_irq_fn(PCIBus *, pci_route_irq_fn); PCIINTxRoute pci_device_route_intx_to_irq(PCIDevice *dev, int pin); diff --git a/hw/alpha/typhoon.c b/hw/alpha/typhoon.c index e8711ae16a3..37f5e07e726 100644 --- a/hw/alpha/typhoon.c +++ b/hw/alpha/typhoon.c @@ -891,7 +891,7 @@ PCIBus *typhoon_init(MemoryRegion *ram, qemu_irq *p_isa_irq, b = pci_register_root_bus(dev, "pci", typhoon_set_irq, sys_map_irq, s, &s->pchip.reg_mem, &s->pchip.reg_io, - devfn_min, 64, TYPE_PCI_BUS); + devfn_min, 64, TYPE_PCI_BUS, true); phb->bus = b; sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/pci-host/articia.c b/hw/pci-host/articia.c index f3fcc49f812..847b4c54e2a 100644 --- a/hw/pci-host/articia.c +++ b/hw/pci-host/articia.c @@ -184,7 +184,8 @@ static void articia_realize(DeviceState *dev, Error **errp) /* devfn_min is 8 that matches first PCI slot in AmigaOne */ h->bus = pci_register_root_bus(dev, NULL, articia_pcihost_set_irq, amigaone_pcihost_bus0_map_irq, dev, &s->mem, - &s->io, PCI_DEVFN(8, 0), 4, TYPE_PCI_BUS); + &s->io, PCI_DEVFN(8, 0), 4, TYPE_PCI_BUS, + true); pdev = pci_create_simple_multifunction(h->bus, PCI_DEVFN(0, 0), TYPE_ARTICIA_PCI_HOST); ARTICIA_PCI_HOST(pdev)->as = s; diff --git a/hw/pci-host/astro.c b/hw/pci-host/astro.c index 379095b3566..1831646f9e7 100644 --- a/hw/pci-host/astro.c +++ b/hw/pci-host/astro.c @@ -454,7 +454,8 @@ static void elroy_pcihost_init(Object *obj) phb->bus = pci_register_root_bus(DEVICE(s), "pci", elroy_set_irq, elroy_pci_map_irq, s, &s->pci_mmio, &s->pci_io, - PCI_DEVFN(0, 0), ELROY_IRQS, TYPE_PCI_BUS); + PCI_DEVFN(0, 0), ELROY_IRQS, TYPE_PCI_BUS, + true); sysbus_init_mmio(sbd, &s->this_mem); diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index 1516d0074dd..b2c931bacdb 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -635,7 +635,7 @@ static void bonito_host_realize(DeviceState *dev, Error **errp) phb->bus = pci_register_root_bus(dev, "pci", pci_bonito_set_irq, pci_bonito_map_irq, dev, &bs->pci_mem, get_system_io(), - PCI_DEVFN(5, 0), 32, TYPE_PCI_BUS); + PCI_DEVFN(5, 0), 32, TYPE_PCI_BUS, true); for (size_t i = 0; i < 3; i++) { char *name = g_strdup_printf("pci.lomem%zu", i); diff --git a/hw/pci-host/designware.c b/hw/pci-host/designware.c index c3fc37b9047..eb6d995d3ed 100644 --- a/hw/pci-host/designware.c +++ b/hw/pci-host/designware.c @@ -700,7 +700,7 @@ static void designware_pcie_host_realize(DeviceState *dev, Error **errp) &s->pci.memory, &s->pci.io, 0, 4, - TYPE_PCIE_BUS); + TYPE_PCIE_BUS, true); pci->bus->flags |= PCI_BUS_EXTENDED_CONFIG_SPACE; memory_region_init(&s->pci.address_space_root, diff --git a/hw/pci-host/dino.c b/hw/pci-host/dino.c index 283fc0dc575..8c01372e18c 100644 --- a/hw/pci-host/dino.c +++ b/hw/pci-host/dino.c @@ -473,7 +473,7 @@ static void dino_pcihost_init(Object *obj) phb->bus = pci_register_root_bus(DEVICE(s), "pci", dino_set_irq, dino_pci_map_irq, s, &s->pci_mem, get_system_io(), - PCI_DEVFN(0, 0), 32, TYPE_PCI_BUS); + PCI_DEVFN(0, 0), 32, TYPE_PCI_BUS, true); /* Set up windows into PCI bus memory. */ for (i = 1; i < 31; i++) { diff --git a/hw/pci-host/gpex.c b/hw/pci-host/gpex.c index e9cf455bf52..299f4d4f840 100644 --- a/hw/pci-host/gpex.c +++ b/hw/pci-host/gpex.c @@ -135,7 +135,8 @@ static void gpex_host_realize(DeviceState *dev, Error **errp) pci->bus = pci_register_root_bus(dev, "pcie.0", gpex_set_irq, pci_swizzle_map_irq_fn, s, &s->io_mmio, - &s->io_ioport, 0, 4, TYPE_PCIE_BUS); + &s->io_ioport, 0, 4, TYPE_PCIE_BUS, + true); pci_bus_set_route_irq_fn(pci->bus, gpex_route_intx_pin_to_irq); qdev_realize(DEVICE(&s->gpex_root), BUS(pci->bus), &error_fatal); diff --git a/hw/pci-host/grackle.c b/hw/pci-host/grackle.c index 8e589ff2c9e..2934da19bee 100644 --- a/hw/pci-host/grackle.c +++ b/hw/pci-host/grackle.c @@ -58,7 +58,7 @@ static void grackle_realize(DeviceState *dev, Error **errp) s, &s->pci_mmio, &s->pci_io, - 0, 4, TYPE_PCI_BUS); + 0, 4, TYPE_PCI_BUS, true); pci_create_simple(phb->bus, 0, "grackle"); } diff --git a/hw/pci-host/mv64361.c b/hw/pci-host/mv64361.c index 1036d8600d7..d61e3ecc0a7 100644 --- a/hw/pci-host/mv64361.c +++ b/hw/pci-host/mv64361.c @@ -92,7 +92,7 @@ static void mv64361_pcihost_realize(DeviceState *dev, Error **errp) name = g_strdup_printf("pci.%d", s->index); h->bus = pci_register_root_bus(dev, name, mv64361_pcihost_set_irq, pci_swizzle_map_irq_fn, dev, - &s->mem, &s->io, 0, 4, TYPE_PCI_BUS); + &s->mem, &s->io, 0, 4, TYPE_PCI_BUS, true); g_free(name); pci_create_simple(h->bus, 0, TYPE_MV64361_PCI_BRIDGE); } diff --git a/hw/pci-host/pnv_phb3.c b/hw/pci-host/pnv_phb3.c index 2a74dbe45f5..633c92c6a56 100644 --- a/hw/pci-host/pnv_phb3.c +++ b/hw/pci-host/pnv_phb3.c @@ -1009,7 +1009,7 @@ void pnv_phb3_bus_init(DeviceState *dev, PnvPHB3 *phb) dev->id ? dev->id : NULL, pnv_phb3_set_irq, pnv_phb3_map_irq, phb, &phb->pci_mmio, &phb->pci_io, - 0, 4, TYPE_PNV_PHB3_ROOT_BUS); + 0, 4, TYPE_PNV_PHB3_ROOT_BUS, true); object_property_set_int(OBJECT(pci->bus), "phb-id", phb->phb_id, &error_abort); diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index 99991008c13..a9b46af564f 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -1563,7 +1563,7 @@ void pnv_phb4_bus_init(DeviceState *dev, PnvPHB4 *phb) pci->bus = pci_register_root_bus(dev, dev->id ? dev->id : NULL, pnv_phb4_set_irq, pnv_phb4_map_irq, phb, &phb->pci_mmio, &phb->pci_io, - 0, 4, TYPE_PNV_PHB4_ROOT_BUS); + 0, 4, TYPE_PNV_PHB4_ROOT_BUS, true); object_property_set_int(OBJECT(pci->bus), "phb-id", phb->phb_id, &error_abort); diff --git a/hw/pci-host/ppc440_pcix.c b/hw/pci-host/ppc440_pcix.c index 07924bce28a..b0e2aa96872 100644 --- a/hw/pci-host/ppc440_pcix.c +++ b/hw/pci-host/ppc440_pcix.c @@ -498,7 +498,7 @@ static void ppc440_pcix_realize(DeviceState *dev, Error **errp) memory_region_init(&s->iomem, OBJECT(dev), "pci-io", 64 * KiB); h->bus = pci_register_root_bus(dev, NULL, ppc440_pcix_set_irq, ppc440_pcix_map_irq, &s->irq, &s->busmem, &s->iomem, - PCI_DEVFN(1, 0), 1, TYPE_PCI_BUS); + PCI_DEVFN(1, 0), 1, TYPE_PCI_BUS, true); memory_region_init(&s->bm, OBJECT(s), "bm-ppc440-pcix", UINT64_MAX); memory_region_add_subregion(&s->bm, 0x0, &s->busmem); diff --git a/hw/pci-host/ppc4xx_pci.c b/hw/pci-host/ppc4xx_pci.c index b6c6c8993c4..9c17e3c655e 100644 --- a/hw/pci-host/ppc4xx_pci.c +++ b/hw/pci-host/ppc4xx_pci.c @@ -329,7 +329,7 @@ static void ppc4xx_pcihost_realize(DeviceState *dev, Error **errp) b = pci_register_root_bus(dev, NULL, ppc4xx_pci_set_irq, ppc4xx_pci_map_irq, s->irq, get_system_memory(), get_system_io(), 0, ARRAY_SIZE(s->irq), - TYPE_PCI_BUS); + TYPE_PCI_BUS, true); h->bus = b; pci_create_simple(b, 0, TYPE_PPC4xx_HOST_BRIDGE); diff --git a/hw/pci-host/ppce500.c b/hw/pci-host/ppce500.c index b70631045a0..fb659d4c707 100644 --- a/hw/pci-host/ppce500.c +++ b/hw/pci-host/ppce500.c @@ -465,7 +465,8 @@ static void e500_pcihost_realize(DeviceState *dev, Error **errp) b = pci_register_root_bus(dev, NULL, mpc85xx_pci_set_irq, mpc85xx_pci_map_irq, s, &s->busmem, &s->pio, - PCI_DEVFN(s->first_slot, 0), 4, TYPE_PCI_BUS); + PCI_DEVFN(s->first_slot, 0), 4, TYPE_PCI_BUS, + true); h->bus = b; /* Set up PCI view of memory */ diff --git a/hw/pci-host/sabre.c b/hw/pci-host/sabre.c index 1707feb9513..06f6a15bf2d 100644 --- a/hw/pci-host/sabre.c +++ b/hw/pci-host/sabre.c @@ -381,7 +381,7 @@ static void sabre_realize(DeviceState *dev, Error **errp) pci_sabre_set_irq, pci_sabre_map_irq, s, &s->pci_mmio, &s->pci_ioport, - 0, 0x40, TYPE_PCI_BUS); + 0, 0x40, TYPE_PCI_BUS, true); pci_create_simple(phb->bus, 0, TYPE_SABRE_PCI_DEVICE); diff --git a/hw/pci-host/sh_pci.c b/hw/pci-host/sh_pci.c index 4edebced5eb..8da59ad573d 100644 --- a/hw/pci-host/sh_pci.c +++ b/hw/pci-host/sh_pci.c @@ -132,7 +132,7 @@ static void sh_pcic_host_realize(DeviceState *dev, Error **errp) get_system_memory(), get_system_io(), PCI_DEVFN(0, 0), PCI_NUM_PINS, - TYPE_PCI_BUS); + TYPE_PCI_BUS, true); memory_region_init_io(&s->memconfig_p4, OBJECT(s), &sh_pci_reg_ops, s, "sh_pci", 0x224); memory_region_init_alias(&s->memconfig_a7, OBJECT(s), "sh_pci.2", diff --git a/hw/pci-host/uninorth.c b/hw/pci-host/uninorth.c index e4c1abd8715..f2d410fa4aa 100644 --- a/hw/pci-host/uninorth.c +++ b/hw/pci-host/uninorth.c @@ -124,7 +124,7 @@ static void pci_unin_main_realize(DeviceState *dev, Error **errp) s, &s->pci_mmio, &s->pci_io, - PCI_DEVFN(11, 0), 4, TYPE_PCI_BUS); + PCI_DEVFN(11, 0), 4, TYPE_PCI_BUS, true); pci_create_simple(h->bus, PCI_DEVFN(11, 0), "uni-north-pci"); @@ -174,7 +174,7 @@ static void pci_u3_agp_realize(DeviceState *dev, Error **errp) s, &s->pci_mmio, &s->pci_io, - PCI_DEVFN(11, 0), 4, TYPE_PCI_BUS); + PCI_DEVFN(11, 0), 4, TYPE_PCI_BUS, false); pci_create_simple(h->bus, PCI_DEVFN(11, 0), "u3-agp"); } @@ -218,7 +218,7 @@ static void pci_unin_agp_realize(DeviceState *dev, Error **errp) s, &s->pci_mmio, &s->pci_io, - PCI_DEVFN(11, 0), 4, TYPE_PCI_BUS); + PCI_DEVFN(11, 0), 4, TYPE_PCI_BUS, false); pci_create_simple(h->bus, PCI_DEVFN(11, 0), "uni-north-agp"); } @@ -251,7 +251,7 @@ static void pci_unin_internal_realize(DeviceState *dev, Error **errp) s, &s->pci_mmio, &s->pci_io, - PCI_DEVFN(14, 0), 4, TYPE_PCI_BUS); + PCI_DEVFN(14, 0), 4, TYPE_PCI_BUS, false); pci_create_simple(h->bus, PCI_DEVFN(14, 0), "uni-north-internal-pci"); } diff --git a/hw/pci-host/xilinx-pcie.c b/hw/pci-host/xilinx-pcie.c index 24f691ea829..634d24c479b 100644 --- a/hw/pci-host/xilinx-pcie.c +++ b/hw/pci-host/xilinx-pcie.c @@ -135,7 +135,7 @@ static void xilinx_pcie_host_realize(DeviceState *dev, Error **errp) pci->bus = pci_register_root_bus(dev, s->name, xilinx_pcie_set_irq, pci_swizzle_map_irq_fn, s, &s->mmio, - &s->io, 0, 4, TYPE_PCIE_BUS); + &s->io, 0, 4, TYPE_PCIE_BUS, true); qdev_realize(DEVICE(&s->root), BUS(pci->bus), &error_fatal); } diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 5fea39e4dfa..889821f64c0 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -619,11 +619,12 @@ PCIBus *pci_register_root_bus(DeviceState *parent, const char *name, void *irq_opaque, MemoryRegion *mem, MemoryRegion *io, uint8_t devfn_min, int nirq, - const char *typename) + const char *typename, bool bar_at_addr_0_refused) { PCIBus *bus; - bus = pci_root_bus_new(parent, name, mem, io, devfn_min, typename, true); + bus = pci_root_bus_new(parent, name, mem, io, devfn_min, typename, + bar_at_addr_0_refused); pci_bus_irqs(bus, set_irq, irq_opaque, nirq); pci_bus_map_irqs(bus, map_irq); return bus; diff --git a/hw/ppc/ppc440_uc.c b/hw/ppc/ppc440_uc.c index 1312aa2080e..c93a7744dc1 100644 --- a/hw/ppc/ppc440_uc.c +++ b/hw/ppc/ppc440_uc.c @@ -1016,7 +1016,7 @@ static void ppc460ex_pcie_realize(DeviceState *dev, Error **errp) snprintf(buf, sizeof(buf), "pcie.%d", s->num); pci->bus = pci_register_root_bus(DEVICE(s), buf, ppc460ex_set_irq, pci_swizzle_map_irq_fn, s, &s->busmem, - &s->iomem, 0, 4, TYPE_PCIE_BUS); + &s->iomem, 0, 4, TYPE_PCIE_BUS, true); ppc460ex_pcie_register_dcrs(s); } diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c index 7e24084673f..e6e8018c1cd 100644 --- a/hw/ppc/spapr_pci.c +++ b/hw/ppc/spapr_pci.c @@ -1886,7 +1886,7 @@ static void spapr_phb_realize(DeviceState *dev, Error **errp) pci_spapr_set_irq, pci_swizzle_map_irq_fn, sphb, &sphb->memspace, &sphb->iospace, PCI_DEVFN(0, 0), PCI_NUM_PINS, - TYPE_PCI_BUS); + TYPE_PCI_BUS, true); /* * Despite resembling a vanilla PCI bus in most ways, the PAPR diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c index 40b2567aa70..1ca9df42c5a 100644 --- a/hw/s390x/s390-pci-bus.c +++ b/hw/s390x/s390-pci-bus.c @@ -834,7 +834,7 @@ static void s390_pcihost_realize(DeviceState *dev, Error **errp) b = pci_register_root_bus(dev, NULL, s390_pci_set_irq, s390_pci_map_irq, NULL, get_system_memory(), get_system_io(), 0, - 64, TYPE_PCI_BUS); + 64, TYPE_PCI_BUS, true); pci_setup_iommu(b, &s390_iommu_ops, s); bus = BUS(b); From patchwork Tue Nov 26 11:22:08 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015330 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=BOhYvLSd; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKxw5LPMz1yQY for ; Tue, 26 Nov 2024 22:25:40 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtgR-0006DN-HH; Tue, 26 Nov 2024 06:24:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtfQ-0004A5-Bf for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:44 -0500 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtfO-0002uq-1r for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:40 -0500 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-43169902057so48318275e9.0 for ; Tue, 26 Nov 2024 03:23:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620216; x=1733225016; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KmjwRfDIQiUm8za7VsqVbrrytj9VplHKG4K4/ENa984=; b=BOhYvLSdzjt1xhenph6peYqQAZCaFEfgTDDtWJwzRS8p/m5xjIPCKAYrBQvIoc/h9C FPSJ4P/JaPdXdSLwTjzygzPr7h8oKKHAvq9ZPH2zbJEmTu9zSyKrAHfZIl8/wWciHG93 dAo3KTAjE0AdvObLhPSF9XB7FVd0ohOHaA8chV5pyLOTrM5IY4ybwW8LgO2XXuhHc9L/ YQy72N5VEAfHQlfLsfyIwo1yZId+5twyFUg15U6GXaCqX85BvzCC1yeK98yu3sNPY06R 59HvK2OtTQOKUqoJSBREoo8nkupH1faqv3rH9vgPcusDID4pMzjQ0Al3YZA6NFp4N8wj FBUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620216; x=1733225016; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KmjwRfDIQiUm8za7VsqVbrrytj9VplHKG4K4/ENa984=; b=L8cMR6Uo3eiNblzxVbRZnpBd16DPFHqXLP3pYhYKmXNv2lVOfM3m+KJHHDIzIvdeSg UkJeQHRkXZaqkjfkdIDj5a6brSJ9rX56STYp6nzWK8p8prFVG91z/od42Qt6uAYPLrMd bbt9kMk4IydsSQNSPgyf3QOqanXcqCYCWkkIWW4OalRJylkhZpswCnTq2C64ZMNEyb5n YYiKb+lwcXwHGoiycCR7/0u1R22DLnvILHjUUl00bSm789iWrsq0HOMFMEegJNRFFw+n MK/qSjZQMCcQozr6v1Ma/AlQv4M3mM9AoJ+A07xZR5MuRGi2x7z09BljJTdrZXNWvm3X UAJw== X-Gm-Message-State: AOJu0YzomF8c4w4nRaSlBBUeIY55qrEDLzGuVppAQRRP/9mniT1v7AXB +eV6AaV9noWFJ/nDvV0B4rl3OffW0FkJQ7AWtPo6p8ohtJgSZR1rj84xqcMnDx8= X-Gm-Gg: ASbGnctNuYVnvAMqcoxNX4t/BuEweEJvlUdz2Qud43NcH/zWcp1z0svJEzpQAPSOliS azErLVsvAG1046QHScVvky/0NlgG0S0HGxa4jYeTAbYPLqaYMU5IAvjWTZ5cu9s1IOP8EyN85cU MsnJJOtxzYiOXpc9iG7YWuM6jPvwjRxlADACmSDCmBJpr/llahqs8OCKfWY0owRw6V7lsvGe8AK ScseUwOnNlzcdW8wLpG3yLFEkwn/D2ETy3D2VW5PhGlRSkWT4gz1B9yGTMmWt58TO7ZLnE1 X-Google-Smtp-Source: AGHT+IGNwk5YaoQ3MtMRaeTJJiZlPzdpzODnHSlG5QE/xiL6kyITv2jIVbls5681MCpH5aDCJT12rw== X-Received: by 2002:a05:600c:3589:b0:434:a4b3:5ebe with SMTP id 5b1f17b1804b1-434a4b35f4amr28161585e9.24.1732620216243; Tue, 26 Nov 2024 03:23:36 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-433b01e1188sm231855865e9.1.2024.11.26.03.23.34 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:23:35 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 09/13] hw/ppc/spapr: Create host bridge setting bar_at_addr_0_refused=false Date: Tue, 26 Nov 2024 12:22:08 +0100 Message-ID: <20241126112212.64524-10-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32c; envelope-from=philmd@linaro.org; helo=mail-wm1-x32c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Since all sPAPR machines set MachineClass::pci_allow_0_address (see commit e402463073 "pci: allow 0 address for PCI IO/MEM regions"), directly create the host bridge passing bar_at_addr_0_refused=false to pci_register_root_bus(). Signed-off-by: Philippe Mathieu-Daudé --- hw/ppc/spapr.c | 1 - hw/ppc/spapr_pci.c | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index 5c02037c564..8af56bd68a2 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -4600,7 +4600,6 @@ static void spapr_machine_class_init(ObjectClass *oc, void *data) mc->default_display = "std"; mc->kvm_type = spapr_kvm_type; machine_class_allow_dynamic_sysbus_dev(mc, TYPE_SPAPR_PCI_HOST_BRIDGE); - mc->pci_allow_0_address = true; assert(!mc->get_hotplug_handler); mc->get_hotplug_handler = spapr_get_hotplug_handler; hc->pre_plug = spapr_machine_device_pre_plug; diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c index e6e8018c1cd..1d12c0b4112 100644 --- a/hw/ppc/spapr_pci.c +++ b/hw/ppc/spapr_pci.c @@ -1886,7 +1886,7 @@ static void spapr_phb_realize(DeviceState *dev, Error **errp) pci_spapr_set_irq, pci_swizzle_map_irq_fn, sphb, &sphb->memspace, &sphb->iospace, PCI_DEVFN(0, 0), PCI_NUM_PINS, - TYPE_PCI_BUS, true); + TYPE_PCI_BUS, false); /* * Despite resembling a vanilla PCI bus in most ways, the PAPR From patchwork Tue Nov 26 11:22:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015345 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=a12MTDIb; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKzx0yh2z1yQY for ; Tue, 26 Nov 2024 22:27:25 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtge-0007gy-65; Tue, 26 Nov 2024 06:24:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtfZ-0004R9-Fh for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:54 -0500 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtfV-0002wk-S9 for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:48 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-38231e9d518so3580293f8f.0 for ; Tue, 26 Nov 2024 03:23:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620224; x=1733225024; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XbkFF2paUrkpAUmAqN3hhRRzk+I4qHRGaYiXnMozHls=; b=a12MTDIbHYNk/5NKUibpm6rJS/qv7ZIcaCul2JsIsHp8H6rniRJKhtQSoExIbk6Vb8 oANoPtmBHYinCFRgX3+KTTosrbWK/ubV7pYTgswhBL0hpPU21uFoJUFzclzoML7fCFfa BvXyjo06bS0rJFkWqq34KuqpiJXjCTiuERYonAEQBSLJWvzn3+krkmEWR4+GvyS7upgo G1lrVmCqozSgY3fgZerC3Kdex1qWwXqyTtnZkz5DkDLUO/oY31Nl54HYvLwOoy3c6YXI dmoXFfNU4SYC38Aof1qlAu/cEM82hH5pnt+hzyFhem8YR9i10jSBfmfT5LGYnl2da/VO slmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620224; x=1733225024; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XbkFF2paUrkpAUmAqN3hhRRzk+I4qHRGaYiXnMozHls=; b=AEqC87xu7rKTnfIch+dgORoddrNZcdUTaHhYF1LTHivQfV0AbPHxwTcM7jvABrTPmL kTcqrQPDwthEmsiuDFrz/qtSF81Cehrq3yweRDTQdl23BIA3J/5FTLcPsMtTrBofr3SI zgDlcPI9t2E1msoaHAnFFxJVtTUwJEhu2tzUL6znbXcx3h+8Z989FMjgvHxEa4FzmaE8 10G+gOgIwUSOoOMVp+cc40TrZfKkWbuZIMHIOWCS7lMesDsJ4cPu8UBsBde6gzqCzCg3 yPm7z4p4nzCWsUdMmw94E4v2vH/h2aGRoARxXgHV0LJjC4kGK5V+YAdsHOq9+Y99w3kI AeNQ== X-Gm-Message-State: AOJu0YzyV8/UFiBPT0Br9XYzlV6Zrn0o1f6QKlE2DnUErh/ZYTqU6lmu BWHC8EUuOn/KPvh+huTA4rfAJThftOKxbiCFlI5u6CSPLUuuCdEWtQFYNsNsCKY= X-Gm-Gg: ASbGncuPmgR+2h679RBD9f8PK8WjJjmErHmAtpLgxHsqxSdjhfmBf9j4vyCDtQYckkg XME4Uu+TvATB2FTtnIx8K+kfBOMJcxzHSQrmn/sn+FiA+601WBKDMt9nDz5z+7dTtUk3e/YGgPK mzF44JDD+Y/SfNtm54cfVf5A7U71wVAbmhLQZChLbRMOy2Uv40qDPmnAkOpanCOf4PN1/dg6VAt yrvWB4QsOhiyCoXAR4Hf71rozO4B8kPdcFkwGo9jDEzpgS7NJHMTTS8neve8p8LWSuPo0Tl X-Google-Smtp-Source: AGHT+IGVJGQGmqR2LIP3EyCzcTfjg1DnII8zvKaRsbXqZxvrY+rrJa/LEXrhLDekfN1yenvhqiAMhw== X-Received: by 2002:adf:e18c:0:b0:382:2d59:b166 with SMTP id ffacd0b85a97d-38260b83dfbmr13189768f8f.31.1732620224148; Tue, 26 Nov 2024 03:23:44 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3825fad6441sm13364242f8f.4.2024.11.26.03.23.41 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:23:43 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 10/13] hw/pci-host/gpex: Expose 'refuse-bar-at-addr-0' property Date: Tue, 26 Nov 2024 12:22:09 +0100 Message-ID: <20241126112212.64524-11-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=philmd@linaro.org; helo=mail-wr1-x429.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Expose the "refuse-bar-at-addr-0" property so machines using a GPEX host bridge can set this flag on the bus. While the default property is set to 'false', all caller set it to 'true' so there is no logical change so far. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/pci-host/gpex.h | 1 + hw/arm/sbsa-ref.c | 2 ++ hw/arm/virt.c | 2 ++ hw/i386/microvm.c | 2 ++ hw/loongarch/virt.c | 2 ++ hw/mips/loongson3_virt.c | 2 ++ hw/openrisc/virt.c | 2 ++ hw/pci-host/gpex.c | 4 +++- hw/riscv/virt.c | 2 ++ hw/xen/xen-pvh-common.c | 2 ++ hw/xtensa/virt.c | 2 ++ 11 files changed, 22 insertions(+), 1 deletion(-) diff --git a/include/hw/pci-host/gpex.h b/include/hw/pci-host/gpex.h index dce883573ba..44c6463afb3 100644 --- a/include/hw/pci-host/gpex.h +++ b/include/hw/pci-host/gpex.h @@ -64,6 +64,7 @@ struct GPEXHost { int irq_num[GPEX_NUM_IRQS]; bool allow_unmapped_accesses; + bool refuse_bar_at_addr_0; struct GPEXConfig gpex_cfg; }; diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c index e3195d54497..f6cf43cf0c9 100644 --- a/hw/arm/sbsa-ref.c +++ b/hw/arm/sbsa-ref.c @@ -647,6 +647,8 @@ static void create_pcie(SBSAMachineState *sms) int i; dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); /* Map ECAM space */ diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 1a381e9a2bd..06affc3638b 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -1510,6 +1510,8 @@ static void create_pcie(VirtMachineState *vms) MachineClass *mc = MACHINE_GET_CLASS(ms); dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); ecam_id = VIRT_ECAM_ID(vms->highmem_ecam); diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 86637afa0f3..2231fd8f9cf 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -108,6 +108,8 @@ static void create_gpex(MicrovmMachineState *mms) int i; dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); /* Map only the first size_ecam bytes of ECAM space */ diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c index 9a635d1d3d3..b5a26d3c23d 100644 --- a/hw/loongarch/virt.c +++ b/hw/loongarch/virt.c @@ -712,6 +712,8 @@ static void virt_devices_init(DeviceState *pch_pic, int i; gpex_dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(gpex_dev), "refuse-bar-at-addr-0", + true, &error_fatal); d = SYS_BUS_DEVICE(gpex_dev); sysbus_realize_and_unref(d, &error_fatal); pci_bus = PCI_HOST_BRIDGE(gpex_dev)->bus; diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index f3b6326cc59..21af0b5bc86 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -430,6 +430,8 @@ static inline void loongson3_virt_devices_init(MachineState *machine, LoongsonMachineState *s = LOONGSON_MACHINE(machine); dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); pci_bus = PCI_HOST_BRIDGE(dev)->bus; diff --git a/hw/openrisc/virt.c b/hw/openrisc/virt.c index 47d2c9bd3c7..cde9379a992 100644 --- a/hw/openrisc/virt.c +++ b/hw/openrisc/virt.c @@ -380,6 +380,8 @@ static void openrisc_virt_pcie_init(OR1KVirtState *state, int i; dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); /* Map ECAM space. */ diff --git a/hw/pci-host/gpex.c b/hw/pci-host/gpex.c index 299f4d4f840..b888f4e831d 100644 --- a/hw/pci-host/gpex.c +++ b/hw/pci-host/gpex.c @@ -136,7 +136,7 @@ static void gpex_host_realize(DeviceState *dev, Error **errp) pci->bus = pci_register_root_bus(dev, "pcie.0", gpex_set_irq, pci_swizzle_map_irq_fn, s, &s->io_mmio, &s->io_ioport, 0, 4, TYPE_PCIE_BUS, - true); + s->refuse_bar_at_addr_0); pci_bus_set_route_irq_fn(pci->bus, gpex_route_intx_pin_to_irq); qdev_realize(DEVICE(&s->gpex_root), BUS(pci->bus), &error_fatal); @@ -155,6 +155,8 @@ static Property gpex_host_properties[] = { */ DEFINE_PROP_BOOL("allow-unmapped-accesses", GPEXHost, allow_unmapped_accesses, true), + DEFINE_PROP_BOOL("refuse-bar-at-addr-0", GPEXHost, + refuse_bar_at_addr_0, false), DEFINE_PROP_UINT64(PCI_HOST_ECAM_BASE, GPEXHost, gpex_cfg.ecam.base, 0), DEFINE_PROP_SIZE(PCI_HOST_ECAM_SIZE, GPEXHost, gpex_cfg.ecam.size, 0), DEFINE_PROP_UINT64(PCI_HOST_PIO_BASE, GPEXHost, gpex_cfg.pio.base, 0), diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index 45a8c4f8190..8999fc348cb 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -1158,6 +1158,8 @@ static inline DeviceState *gpex_pcie_init(MemoryRegion *sys_mem, pio_base, NULL); object_property_set_int(OBJECT(GPEX_HOST(dev)), PCI_HOST_PIO_SIZE, pio_size, NULL); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/xen/xen-pvh-common.c b/hw/xen/xen-pvh-common.c index 218ac851cf7..3131a2dd280 100644 --- a/hw/xen/xen-pvh-common.c +++ b/hw/xen/xen-pvh-common.c @@ -139,6 +139,8 @@ static inline void xenpvh_gpex_init(XenPVHMachineState *s, object_initialize_child(OBJECT(s), "gpex", &s->pci.gpex, TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(s), "refuse-bar-at-addr-0", + true, &error_fatal); dev = DEVICE(&s->pci.gpex); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/xtensa/virt.c b/hw/xtensa/virt.c index 5310a888613..dcb39a67868 100644 --- a/hw/xtensa/virt.c +++ b/hw/xtensa/virt.c @@ -62,6 +62,8 @@ static void create_pcie(MachineState *ms, CPUXtensaState *env, int irq_base, int i; dev = qdev_new(TYPE_GPEX_HOST); + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", + true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); /* Map only the first size_ecam bytes of ECAM space. */ From patchwork Tue Nov 26 11:22:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015338 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=mPjTnidV; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKyZ4R8Hz1yQY for ; Tue, 26 Nov 2024 22:26:14 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtgT-0006Pm-CC; Tue, 26 Nov 2024 06:24:45 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtfe-0004X7-NU for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:56 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtfc-0002zT-Vb for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:54 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-43497839b80so22590635e9.2 for ; Tue, 26 Nov 2024 03:23:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620230; x=1733225030; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5+ncjcv7Qm8z1k3YSKR9YOc81bQXCEn50hblae0ujWI=; b=mPjTnidVBAmieTlEBb3JK2OCO1rPpoTDuxdZndla7PRHQH2bsD2x6HV5LtV7Vo5T/x qf5pQMegmGDGMifh0OFa7xj5H2cK9pKHX3GxpGykMg7utWwOorvHjRMNHnyrxqfGrnaG ajDJRwJV84A+pHSGvIV3Wi82seXl3nqX0Xwmc0sBhxHrEaKageI0VR7p1gZxPTfSdJfn AiwY7Q6ESsiqPM+WI+K/qbmdyLDbLHNp9Bg6X+QW8APWOplHbPMAZzHFODOfekaGHShP B0RCJXUGjDj+XauBlYOKJkMTXWQG7SpYnx8FVBPXmrgl5OscSlp6aMWpggF7mqo4TbN8 NEoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620230; x=1733225030; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5+ncjcv7Qm8z1k3YSKR9YOc81bQXCEn50hblae0ujWI=; b=La8YnuwnEkG1XySRuA+YKlNEIPbER/i+roIZqDxBxq1p+MWvDqWPV6tYwhqiVVX34v XMA6Lh0AgATD8ZyZqL9hjVgXgnHDsPMNzyaCUtxn6CbKkgmeNigScRyBdHykx3d6VecK N6Azkq11jKV3yhEiENtRYUilZX2Dtb9F9mMJva/5RWlPVI5mNN8mZ7qXS//B8ZeLaHni hAs7XTlhMoTbXm3vSkX1VPlATtWipxNduaB60qo5Q1oxqQnie/c4+J/nBeC5zVpRA7xc 59uhsFzYT9yxkgpQ835pVXbD+IeykizLeww6W1oCGFpZ4ayn52wdd+GfZ0gjv5+JazVl YuIw== X-Gm-Message-State: AOJu0YyZXQX+Lqazfo7xcLa7/RCdxNSzP0KUQYuZkoQPplucX2CbFxhV y+xZA0LrDnqAjGgTFb5UmRe0392vzcSqqUT0GqMFDeLLtR9xACGykF2BC9Z7+nY= X-Gm-Gg: ASbGnctc/02C66VSqpFe3zCA6/8QE16PkQ5NphommwljtrcdWGC/EfE2jUVyV8cyCjg 9cf7KWiUawG9OJuger6nUpHy194hnwpARg4M2iiPVm49/2SUliILw6gU85VeH3jzRyAn9XWcOU1 uK7l7Qu7Yj9jrsZzVOYsK1swJ/gyuzUiwtfuDhmwG1VuHvJPjSsOxD8QijdDXxoYYMDuDDEUhUg mq4ikesnrQ9MRwiERWM5VLgo4vpkZVeKmOkaqG2q2Aa+vgSwF/LDM++CW7ef5GjFRVuTV+R X-Google-Smtp-Source: AGHT+IEWnMepl8291UsjGt1x7FxwGMlx+dTJpW2PPVSPZnH6RlwpFeqa5cY5lPOr9MHCyA/gXIc+0g== X-Received: by 2002:a05:600c:3d09:b0:434:a711:ace4 with SMTP id 5b1f17b1804b1-434a711b1acmr16755115e9.17.1732620230484; Tue, 26 Nov 2024 03:23:50 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-434a8051ddesm9540385e9.8.2024.11.26.03.23.48 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:23:50 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 11/13] hw/arm/virt: Create GPEX host bridge without refuse-bar-at-addr-0 Date: Tue, 26 Nov 2024 12:22:10 +0100 Message-ID: <20241126112212.64524-12-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=philmd@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org ARM virt and sbsa-ref machines set MachineClass::pci_allow_0_address (see commit 74de8c3568 "hw/arm/virt: Allow zero address for PCI IO space"), directly create the GPEX host bridge using the default 'false' value of the "refuse-bar-at-addr-0" property. Signed-off-by: Philippe Mathieu-Daudé --- hw/arm/sbsa-ref.c | 3 --- hw/arm/virt.c | 3 --- 2 files changed, 6 deletions(-) diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c index f6cf43cf0c9..c232b933c07 100644 --- a/hw/arm/sbsa-ref.c +++ b/hw/arm/sbsa-ref.c @@ -647,8 +647,6 @@ static void create_pcie(SBSAMachineState *sms) int i; dev = qdev_new(TYPE_GPEX_HOST); - object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", - true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); /* Map ECAM space */ @@ -898,7 +896,6 @@ static void sbsa_ref_class_init(ObjectClass *oc, void *data) mc->default_cpu_type = ARM_CPU_TYPE_NAME("neoverse-n2"); mc->valid_cpu_types = valid_cpu_types; mc->max_cpus = 512; - mc->pci_allow_0_address = true; mc->minimum_page_bits = 12; mc->block_default_type = IF_IDE; mc->no_cdrom = 1; diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 06affc3638b..f9ec3c22409 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -1510,8 +1510,6 @@ static void create_pcie(VirtMachineState *vms) MachineClass *mc = MACHINE_GET_CLASS(ms); dev = qdev_new(TYPE_GPEX_HOST); - object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", - true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); ecam_id = VIRT_ECAM_ID(vms->highmem_ecam); @@ -3126,7 +3124,6 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) #endif mc->block_default_type = IF_VIRTIO; mc->no_cdrom = 1; - mc->pci_allow_0_address = true; /* We know we will never create a pre-ARMv7 CPU which needs 1K pages */ mc->minimum_page_bits = 12; mc->possible_cpu_arch_ids = virt_possible_cpu_arch_ids; From patchwork Tue Nov 26 11:22:11 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015332 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=xMNe6qCs; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKyG0Fjfz1yQY for ; Tue, 26 Nov 2024 22:25:58 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtgi-00088D-0u; Tue, 26 Nov 2024 06:25:00 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtfj-0004hz-2i for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:59 -0500 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtfh-00031M-J6 for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:23:58 -0500 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-4349fd77b33so16573225e9.2 for ; Tue, 26 Nov 2024 03:23:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620236; x=1733225036; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=P0iDFiy4g206+uiI3tz8kmnBegTpSA+b+66gFGs5ekU=; b=xMNe6qCssTdvInzhR/rWRpAKzc4TYxKSKdMEHWwPrU2iE40rqgBcSEJlsTBc5AxlMO 4Kn5qmdYpj0mbq0pbZmavVwYbreK9DWWaE26bkkCtkCJRDPx0763nz6yejg3750uxQPj aHhk1FNsvMyaMgVYT3yeCIGeMmfgV5rEvceNsDJ0kSjndjJSTziqQB9jq9kCWYjIW3uw 3IkU/zTylI6qmITcNzqmy9lJSbmYrSOgO4iQp05k9Um+IZOysMowECSq1jDNDg7noiSc /YNrE8TykBCbWERq2fLxvWiTS19s5SdArGyiQ7JTtAZYZUOZkZvpYDDj+t5XX/I2s1Ze BXow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620236; x=1733225036; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=P0iDFiy4g206+uiI3tz8kmnBegTpSA+b+66gFGs5ekU=; b=t7hxtHxZCXGFeWPCG4oQxHZ/GyE2yofSciG7IkiiLXPNKDUgRor26fEIWiejJf8ENL T9r0R0rjiIsWi3Fa+aTTLo0+r7AQEyaxRbGhGzG/4dvklCzdDQn4TIfK/g6bFOTVWjRT lxEY/1dQFRTfdJuYD9BIjW5ebXKKP9Udv+JOStuQ0wtDvtpQYRtbuqCK6uH1cnTMhcXC cMHiwZnC5+Hvy1FXTBrmUTHZNTIV5eq2in0vKuSy9wkK4rVQfvKXFy7DcZLcLs+FLt7d +Lc+iRZMvLkZWASG1CBK1l8djF4KNuSfVAd2NGK+L/GOSia5otVu2xgbzmlWj1vK7bt8 4Hmw== X-Gm-Message-State: AOJu0Yy3LIr6KnrW4yywmDqNVZO00B3XfNOUXfEAmIh9IBtYSuqe8CbW LjxQMMBGQ60Ywp4I1yZB49pFYAIypdRoDx4ncuFF9AAfu7U9Ref3ABUeBhCKt7I= X-Gm-Gg: ASbGncsrAh/9zOTQEVNgxBjHtspyDMZJL6ljmdwLeZ5T+q4q4EFWLVkPxR5JJwxQEa1 3sKg01eEFEPLyeU/yLGg8vB0Poi+uuwpitJZWhCNlWsTv44SDAYH3+qG0D/L6NaxoBK2fQ/Q3QE gkpTw5/doBSv6UPJSsAOKL3MBI4+v7521K5BzOiWiJ/MOp48kNWkb6cCeGkk+nQxmBZBDfW760C EqabhcsxtgOB8ZDNwIRL5pd9hgEs21hCE/zLCz4uJyGpT/ik9LfSQH7ZqUqrlRP5gO98oCH X-Google-Smtp-Source: AGHT+IFg/gi+61i2OJlRicWC3cP19bowqD2mQdjF+QnLLM120B87cgN7yu5W5xYlEgHd5cop0f4Byg== X-Received: by 2002:a05:600c:4683:b0:42f:7e87:3438 with SMTP id 5b1f17b1804b1-433ce39e773mr149650775e9.0.1732620236161; Tue, 26 Nov 2024 03:23:56 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4349eeb375fsm75702535e9.3.2024.11.26.03.23.54 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:23:55 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 12/13] hw/riscv/virt: Create GPEX host bridge without refuse-bar-at-addr-0 Date: Tue, 26 Nov 2024 12:22:11 +0100 Message-ID: <20241126112212.64524-13-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32c; envelope-from=philmd@linaro.org; helo=mail-wm1-x32c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org RISCV virt machine set MachineClass::pci_allow_0_address (see commit acead54c78 "riscv: virt: Allow PCI address 0"), directly create the GPEX host bridge using the default 'false' value of the "refuse-bar-at-addr-0" property. Signed-off-by: Philippe Mathieu-Daudé --- hw/riscv/virt.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index 8999fc348cb..b28edb9ffd5 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -1158,8 +1158,6 @@ static inline DeviceState *gpex_pcie_init(MemoryRegion *sys_mem, pio_base, NULL); object_property_set_int(OBJECT(GPEX_HOST(dev)), PCI_HOST_PIO_SIZE, pio_size, NULL); - object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", - true, &error_fatal); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); @@ -1807,7 +1805,6 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) mc->default_cpu_type = TYPE_RISCV_CPU_BASE; mc->block_default_type = IF_VIRTIO; mc->no_cdrom = 1; - mc->pci_allow_0_address = true; mc->possible_cpu_arch_ids = riscv_numa_possible_cpu_arch_ids; mc->cpu_index_to_instance_props = riscv_numa_cpu_index_to_props; mc->get_default_cpu_node_id = riscv_numa_get_default_cpu_node_id; From patchwork Tue Nov 26 11:22:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 2015339 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=dvdaaZ5T; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XyKym2bbFz1yQY for ; Tue, 26 Nov 2024 22:26:24 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tFtgf-0007s5-ND; Tue, 26 Nov 2024 06:24:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tFtfo-0004si-Sl for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:24:06 -0500 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tFtfn-00033F-7x for qemu-ppc@nongnu.org; Tue, 26 Nov 2024 06:24:04 -0500 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-434a2f3bae4so11543665e9.3 for ; Tue, 26 Nov 2024 03:24:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1732620242; x=1733225042; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=I1K533phtUA49BKbxwAi+Y+nPI04Ofc/dicjSAgZ7ZU=; b=dvdaaZ5TohMDmblaYitF2ib78JY/Cpoqr22fu1Ye4gZegV/9NYV1ZqWIFxkr/tbotn 3wNbIpJkRhZGua68n4ab+VfUNAgPb+azSzC0B+YO8CwRxoGbyUxWTrCIIhQbdi1pa1kD OxYQAmEz0BQT9Ve0a8o8iUpWl8Ldwglzst6XbV87AtDh5JTPi2YmucxQSjUJLtyS6uvZ Jt5xKFKMJ9zA0SuMys4Qp0ZYTw8XWqGfSfSiFjcjUYtSHLSxn0rQwPj5AFbpCHJ90Yl5 m5my4UPiDsFGsPCaC6eFOnchyrTee363fZ3gsaeaZjUEdnFCjtqi/fut6Yc/hw8nc/OY Vp2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732620242; x=1733225042; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=I1K533phtUA49BKbxwAi+Y+nPI04Ofc/dicjSAgZ7ZU=; b=B9HbAylYrOAaqKBDCcU11kjEZpSCiNUUVsfgXTIXs4yQZo6HwndYJvB6O96buWgSsQ cTlnweqeI649CFkxMLZxb0uxfPZ0QSfzoyfsIKE2EqnfLRbr5Sy+fALBRnFByQ8FpyuI YXbM3xTdUdoEJ38JIMttppQeU5yN2QiFFOqqZyFC+MyE3YuEd53Mg8F9xfHsOh0lw4ga mBzdeVMhGtpc0dEmPyqS0XPXjcCbJiaAN74cB3zoPsMGnYq+DliUejUHlVRSVzoK/uYD gBu1LyvWoIleJc3HtSIjMfxUD2KsG5HVlNGpapLYiSyRyBmPQgwKg7gJIDIGthXWaaNl Gu5g== X-Gm-Message-State: AOJu0YyyGnRBI0ET57EUM1KfjgU4cLb92cImgILhgabPDavv/DKXkpum IAlvqN+CVVS0IlOw0ocab3qDg5eAkBHnoRivcYkN1oq1uAjkNgkrhk6MxugYxrw= X-Gm-Gg: ASbGncuk3qVg9dFkKDXu4AVtDg2O58ramSWGDzalcTwh/01Clvi3sQ88vgKvsrgHb5D CmDQwS/huAl2K2cjoyjVOtSGCe9WuI6UoRUwPP98d/3WpvRRjjARZv6ymQwG87NEcAHhodEdnox suUe/okSPSej9hcoA6aGvqjgZdJSaV3YoFD9IokTpq1btD1CLL9+nz5J4PxopfRcLo1WASSBTnA UGnTHlENyT8FyqIslXxV6ukV43DvpHRKYqRUOPTFx7/5xERjQzWfqDucjOZgMWm9NVHaJH4 X-Google-Smtp-Source: AGHT+IHP+w7KPVZqFwGD6ZQa1TaFx7h4ILbPIh23SwG6AbXHFY77A2H/DCB+w8KbnsjoKbp+aTe7IA== X-Received: by 2002:a05:600c:3d9b:b0:434:a4a6:5212 with SMTP id 5b1f17b1804b1-434a4a65461mr31141935e9.0.1732620241847; Tue, 26 Nov 2024 03:24:01 -0800 (PST) Received: from localhost.localdomain ([176.176.143.205]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3825faff9cdsm13070159f8f.28.2024.11.26.03.24.00 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 26 Nov 2024 03:24:01 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-s390x@nongnu.org, Thomas Huth , "Michael S. Tsirkin" , qemu-riscv@nongnu.org, Marcel Apfelbaum , Peter Maydell , qemu-arm@nongnu.org, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PATCH-for-10.0 v2 13/13] hw/pci/pci: Remove legacy MachineClass::pci_allow_0_address flag Date: Tue, 26 Nov 2024 12:22:12 +0100 Message-ID: <20241126112212.64524-14-philmd@linaro.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241126112212.64524-1-philmd@linaro.org> References: <20241126112212.64524-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32c; envelope-from=philmd@linaro.org; helo=mail-wm1-x32c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-ppc@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org There are no more users of MachineClass::pci_allow_0_address, remove the field along with the machine_refuses_bar_at_addr_0() method. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/boards.h | 1 - hw/pci/pci.c | 10 +--------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/include/hw/boards.h b/include/hw/boards.h index 36fbb9b59df..66fb2eddd34 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -284,7 +284,6 @@ struct MachineClass { no_floppy:1, no_cdrom:1, no_sdcard:1, - pci_allow_0_address:1, legacy_fw_cfg_order:1; bool is_default; const char *default_machine_opts; diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 889821f64c0..20362da7b89 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -45,7 +45,6 @@ #include "hw/pci/msi.h" #include "hw/pci/msix.h" #include "hw/hotplug.h" -#include "hw/boards.h" #include "qapi/error.h" #include "qemu/cutils.h" #include "pci-internal.h" @@ -520,13 +519,6 @@ bool pci_bus_bypass_iommu(PCIBus *bus) return host_bridge->bypass_iommu; } -static bool machine_refuses_bar_at_addr_0(void) -{ - MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine()); - - return !mc->pci_allow_0_address; -} - static void pci_root_bus_internal_init(PCIBus *bus, DeviceState *parent, MemoryRegion *mem, MemoryRegion *io, uint8_t devfn_min, @@ -538,7 +530,7 @@ static void pci_root_bus_internal_init(PCIBus *bus, DeviceState *parent, bus->address_space_mem = mem; bus->address_space_io = io; bus->flags |= PCI_BUS_IS_ROOT; - if (bar_at_addr_0_refused && machine_refuses_bar_at_addr_0()) { + if (bar_at_addr_0_refused) { bus->flags |= PCI_BUS_BAR_AT_ADDR0_REFUSED; }