From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943684; cv=none; d=zohomail.com; s=zohoarc; b=epGoTnTCtA6URgH5Q2jKluIh6BHhnthbOCYlVboRmp7u0dIaNlZQcpZyTH/dqkg215CoV/kNTfpUxviA921jq9rHtwbK97jrG/CvlH9mbXlf8VhDIJ4iflD577ArRfI6yLv6q5ZYjr+ZvmTWNInpgGSOsu5G7rU7g4ffXVS0X+g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943684; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=pAZdPdXH6dA81Hhbh5bcVsNSvCbhTiA/oPg+FNbaYfI=; b=bBrNp/x8vXY+aX7sbkmOA/o5VS/bWfS/2ZEo5x/+FOxwUoK8F3dRVNoW4UZmZUiaVRL3DMHJL1wXhpzGKiSpTv608NCeSFv9TBZmDwMj2+HGRkftbMLhRIpTcSDtUksUDJSX8RLCYy7tPSFoTJmGamdERPuWzF1KHz6aJ39feH0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943684729650.8882767725225; Sat, 4 Mar 2023 07:28:04 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmq-0003Ej-El; Sat, 04 Mar 2023 10:27:04 -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 1pYTmo-0003Di-MH for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:02 -0500 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmm-000895-04 for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:01 -0500 Received: by mail-ed1-x534.google.com with SMTP id x3so21499171edb.10 for ; Sat, 04 Mar 2023 07:26:59 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.26.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:26:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943618; 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=pAZdPdXH6dA81Hhbh5bcVsNSvCbhTiA/oPg+FNbaYfI=; b=psaxpml40sreHFjOt9OtVhfjMQ/tNnlinB8R3JMIA0FDFkiXQc5mX4+AB3mYi5EBYw +rfmcKoj6AaoVGKDHF/ihynOhdoMoHI7ErUUaQoz3doAlfUrGNLocm+XA7ijqQ3aWwdK fa9wgL0ghB18SE2GDzzV0S/D5FVo+CPfb5bJ3xNJpI91KzsiPCaugnxsQu4SRXsi8zRg F3w9LkHDKHvxjPCDjV3TqgDsYJdePdTczWvlA7+wFsaiD5pWiShVu9BY1tqlhM7V4Nl9 pBTJkCoBm6ItqiUFwMd8bhR0gkBtst968rrxTT27662cQgt7KSoN6NXggi2ZaTrUe8UR yFvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943618; 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=pAZdPdXH6dA81Hhbh5bcVsNSvCbhTiA/oPg+FNbaYfI=; b=3BztbOXyw296l8qKVdbmlq9l0HptdZ/KCv4wUTP5nLCwZHNkAL55KP3GWXfkUU+amj Dw+BX7nPEzeWOh5ky3b+f/WC99Z0hw2sprUraEzEZ8OvVN0CsNnErLpYw//a2dpJjlkh co4xofahwB2SioC5xlp/R/xtlZ7F34b60OYnmoUORydc/pnIklXZ5YPyaYTW2W8nwZZA fJ9+6XzbA8XE00MuoFXeCJkvXG1dZjqDrcadT97NQLIH5eft/V9Vo9A7ax0Wru+E1Q6Q nIiuotQM3MwKOnDtpj1T2f/DGadcRH6f9He7pMTox+ecB4GNkKg/Ld7yTydqDLGplu2m Ml2A== X-Gm-Message-State: AO0yUKX7mboRMS4DWx0CsbwJlupn4QP4YI0f438urcQQa/wVPR2IkYyR aiJ/ri0AvGhnC9yJ7UCR2Tv6ZCaZ3YY= X-Google-Smtp-Source: AK7set8BYleT4+kPG7KbjLgTdNit4zDjOCoZl5JsG8HcGe9W7Ke9d63uAx/BDYq8Q5uCfkLGlWyf8Q== X-Received: by 2002:a17:907:6092:b0:888:b471:8e46 with SMTP id ht18-20020a170907609200b00888b4718e46mr7026882ejc.50.1677943617980; Sat, 04 Mar 2023 07:26:57 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow , Thomas Huth Subject: [PATCH v2 01/13] hw/i386/pc_q35: Resolve redundant q35_host variable Date: Sat, 4 Mar 2023 16:26:36 +0100 Message-Id: <20230304152648.103749-2-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::534; envelope-from=shentey@gmail.com; helo=mail-ed1-x534.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943685869100001 Content-Type: text/plain; charset="utf-8" The variable is redundant to "phb" and is never used by its real type. Signed-off-by: Bernhard Beschow Reviewed-by: Thomas Huth --- hw/i386/pc_q35.c | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 5a1e4976ce..68097bea55 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -119,8 +119,7 @@ static void pc_q35_init(MachineState *machine) PCMachineState *pcms =3D PC_MACHINE(machine); PCMachineClass *pcmc =3D PC_MACHINE_GET_CLASS(pcms); X86MachineState *x86ms =3D X86_MACHINE(machine); - Q35PCIHost *q35_host; - PCIHostState *phb; + Object *phb; PCIBus *host_bus; PCIDevice *lpc; DeviceState *lpc_dev; @@ -206,10 +205,10 @@ static void pc_q35_init(MachineState *machine) } =20 /* create pci host bus */ - q35_host =3D Q35_HOST_DEVICE(qdev_new(TYPE_Q35_HOST_DEVICE)); + phb =3D OBJECT(qdev_new(TYPE_Q35_HOST_DEVICE)); =20 if (pcmc->pci_enabled) { - pci_hole64_size =3D object_property_get_uint(OBJECT(q35_host), + pci_hole64_size =3D object_property_get_uint(phb, PCI_HOST_PROP_PCI_HOLE6= 4_SIZE, &error_abort); } @@ -217,25 +216,25 @@ static void pc_q35_init(MachineState *machine) /* allocate ram and load rom/bios */ pc_memory_init(pcms, system_memory, rom_memory, pci_hole64_size); =20 - object_property_add_child(OBJECT(machine), "q35", OBJECT(q35_host)); - object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_RAM_MEM, + object_property_add_child(OBJECT(machine), "q35", phb); + object_property_set_link(phb, MCH_HOST_PROP_RAM_MEM, OBJECT(machine->ram), NULL); - object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_SMRAM_MEM, + object_property_set_link(phb, MCH_HOST_PROP_SMRAM_MEM, OBJECT(&x86ms->smram), NULL); - object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_PCI_MEM, + object_property_set_link(phb, MCH_HOST_PROP_PCI_MEM, OBJECT(pci_memory), NULL); - object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_SYSTEM_MEM, + object_property_set_link(phb, MCH_HOST_PROP_SYSTEM_MEM, OBJECT(system_memory), NULL); - object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_IO_MEM, + object_property_set_link(phb, MCH_HOST_PROP_IO_MEM, OBJECT(system_io), NULL); - object_property_set_int(OBJECT(q35_host), PCI_HOST_BELOW_4G_MEM_SIZE, + object_property_set_int(phb, PCI_HOST_BELOW_4G_MEM_SIZE, x86ms->below_4g_mem_size, NULL); - object_property_set_int(OBJECT(q35_host), PCI_HOST_ABOVE_4G_MEM_SIZE, + object_property_set_int(phb, PCI_HOST_ABOVE_4G_MEM_SIZE, x86ms->above_4g_mem_size, NULL); + /* pci */ - sysbus_realize_and_unref(SYS_BUS_DEVICE(q35_host), &error_fatal); - phb =3D PCI_HOST_BRIDGE(q35_host); - host_bus =3D phb->bus; + sysbus_realize_and_unref(SYS_BUS_DEVICE(phb), &error_fatal); + host_bus =3D PCI_BUS(qdev_get_child_bus(DEVICE(phb), "pcie.0")); /* create ISA bus */ lpc =3D pci_new_multifunction(PCI_DEVFN(ICH9_LPC_DEV, ICH9_LPC_FUNC), = true, TYPE_ICH9_LPC_DEVICE); --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943741; cv=none; d=zohomail.com; s=zohoarc; b=XeQx4W3nOnIkwedYJ9NAhnOM3SWj9dyrDV9/Kv+1Bnwgvi44sSuRE6s2vSh0Lefw5dgzt8k6K60UJVOqCDZuJ+ULY0XQ/0uLrwI4qPLpZ5MQpE+GUnzI4GQYWyrlltzjqrYJp7NO5brrJjP7ELcY4asfz/KfxkPNZWViGPwyiOg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943741; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=7ug5gJZGeezwup7JAt+aAtCTz/atdkqBNV+dZDUYeaM=; b=mn/hYCuxk/kARlx92v8bz8hbuPh/j3c7uX3yraxTkwsirf+wAkTucBZV4yij73sb12KX0ghqYXJIU9OntbF9+/5bvAiI4tJp28CQpf+hOGXXQsKUOxIc6pC0gq3I/V9cII7Vu3h8mNcAOU5FX9+hE0T8Ct6+TaXzwI4BEjP0eTA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943741265482.06784366518696; Sat, 4 Mar 2023 07:29:01 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmu-0003PP-Ax; Sat, 04 Mar 2023 10:27:08 -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 1pYTms-0003KT-3s for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:06 -0500 Received: from mail-ed1-x52b.google.com ([2a00:1450:4864:20::52b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmo-00089B-7J for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:05 -0500 Received: by mail-ed1-x52b.google.com with SMTP id ay14so17928221edb.11 for ; Sat, 04 Mar 2023 07:27:00 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.26.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:26:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943618; 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=7ug5gJZGeezwup7JAt+aAtCTz/atdkqBNV+dZDUYeaM=; b=bP7l26JiPfyHWpWWwpZHZ3UhB+NQuNG67QbwvK8f6cRbMHR8ZPoRKQn+yjlOmuKl13 fsnertj/UsUw2C8mM1T1Yp85MBlLjlESW05QBaMLHkKZjEt1bMBrBexGIOjdqszrbzQc j2LQcX1Co+P5eJoovv3sfMuch+frxFdDz56t0cPK1kGJnUK6QqQaNlQLusVBmt/Krhrk 9i9V+w8JfjKdwlAVKz1xdQlAzizI3CZbktdisrMCK61AHdRDW5dwh/ujDA6WL4lUCDdF ngkiw7ulvcDJtAmUovwo/iVGNB/HIAv9yJJLfUP7Hx4NIvKQ58J3jhuCT3GrE1nST8Sc oRRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943618; 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=7ug5gJZGeezwup7JAt+aAtCTz/atdkqBNV+dZDUYeaM=; b=BC1cNCwUUO5bW5gzApv8qRZ/Ezm5njOLhrhP2lftyV7RZi2oleGL7oG2lSY1gZNGja YYSuT0NhPTMbaKULQEXHGj9P3JC0sJ8BvoRV/F5bsu86/s4lWUTfHA3jVhbm6TfORHjC DZtFUQUm081jwISspy0BftC1Fk5QcckqfBfzU5k+XIYntjcz27Rv4DfQzJeYUvDE0A25 xxMA5+QG+0OtctC+/wusZV3D8GaFzi2OuYAPYgLprJqYvkVnRWfXJyYtXuAKWDu/q3gm LPfaocuD3BUIddkjHlWxDPEbi/IDruKFibElf9laHMZYmV+dZ+0PtZtqlSvib+iADqTM 8EVA== X-Gm-Message-State: AO0yUKXKfu7pi1gr34Rq0fQ1ViXq+5tcx9MpJYAC73aKzPIwalPkfhxX 4uGgW6vZpWv+9VGdl9KqBPBPgc8Htro= X-Google-Smtp-Source: AK7set9HrFGHWXviwJUUR3KWOZp66ZbRor60NwOx/DbdaTGjjx7hWzpWLQomsK6C/frPl/+H5R6hjg== X-Received: by 2002:a17:907:6e1d:b0:8da:69ae:6ff0 with SMTP id sd29-20020a1709076e1d00b008da69ae6ff0mr7158975ejc.22.1677943618826; Sat, 04 Mar 2023 07:26:58 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 02/13] hw/pci-host/q35: Fix double, contradicting .endianness assignment Date: Sat, 4 Mar 2023 16:26:37 +0100 Message-Id: <20230304152648.103749-3-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::52b; envelope-from=shentey@gmail.com; helo=mail-ed1-x52b.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943741936100001 Content-Type: text/plain; charset="utf-8" Fixes the following clangd warning (-Winitializer-overrides): q35.c:297:19: Initializer overrides prior initialization of this subobject q35.c:292:19: previous initialization is here Settle on native endian which causes the least overhead. Fixes: bafc90bdc594 ("q35: implement TSEG") Signed-off-by: Bernhard Beschow --- hw/pci-host/q35.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 83f2a98c71..40bfe99910 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -294,7 +294,6 @@ static const MemoryRegionOps blackhole_ops =3D { .valid.max_access_size =3D 4, .impl.min_access_size =3D 4, .impl.max_access_size =3D 4, - .endianness =3D DEVICE_LITTLE_ENDIAN, }; =20 /* PCIe MMCFG */ --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943670; cv=none; d=zohomail.com; s=zohoarc; b=B1T7LMuGhANa2wfrKBebdl6/i7unT4bJNsMMk9Qd1U1ULTuUkp5qCMVPZwtNYj5hLKc8Rgrsgem0FZBtMVW1G8acrc5dWY4+r6lnWPxQYFqcBdcA3ax1v0+LuOSQfN9a2nmoTxj1zvhGlV4CHAqYFjrai3bofE7vaouVeBaWe7w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943670; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ytlxY0zu3YbNBlg2oKGSu2APVkm2r+KYa2pKwsCh7sI=; b=f414NtUvpf7dhz2M+crDwM7/y6m/5uVvVx5dXWQ4/KAzQnGBoZe66BAepogVKxjsCXWd+mIQ9OIeVI35NvlH7Kg7mvGXOC7WMh+WLKw/KVVqwUm2sFPQR33ltAY3crhTBmaoHY1thI4VE1tvJjJT+4nYeXhYxT7sQ405SNYE77Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943670860578.4597279330065; Sat, 4 Mar 2023 07:27:50 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTms-0003Lo-N7; Sat, 04 Mar 2023 10:27:06 -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 1pYTmp-0003Dy-US for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:04 -0500 Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmo-00089G-Ah for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:03 -0500 Received: by mail-ed1-x52c.google.com with SMTP id j11so2097955edq.4 for ; Sat, 04 Mar 2023 07:27:00 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.26.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:26:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943619; 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=ytlxY0zu3YbNBlg2oKGSu2APVkm2r+KYa2pKwsCh7sI=; b=Jz8nEQFCzRoD10+qbx9R5hPCWum+hFJXidyKp8/luaWBZkhFw7Ti34t9T13qDoH2Ea HYZ+qmhJUyteSyoUNJl0bbcsg0ScMqofPrHqNesgia6kQKPGktLTw6HH0a9QZZeek3Jv G86MpiQzNCcR1/LoChYnhd9XFYoJIBUtgntOeXaceZpRV4bRzNA8ZHGgzTUCJ6fXSXcf dJXX6Y29io3NVaRqg//SEmjbJPv1iLCZBN0nMuM/AstsIKXKlrbKbJGfjBuHFGB4Eb11 2K/FyEsh/q+p95FZUhizS4Q0x66InNw3U1t7i5Qj86gDUCDRbe+dVuyHK3QSddhUTuPp LjHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943619; 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=ytlxY0zu3YbNBlg2oKGSu2APVkm2r+KYa2pKwsCh7sI=; b=wnhHOm4a689tKf2Fn25fTUgtZ/eZnclg4jOC+VpfZbqNayMzYlRxWKgoMIVuO6s15g RNqXraSmiIsZH5SdMKjJ9PLqIkLsUxO1kUpDTHjl6RUoW/+X9Wz/WnlFP1XuTPPgIaA0 qztu67rICqP7qY0Eb0y9CieBxgjeDY2giptWIDq8p/il4eexLcbbrtzDF7rZrJmL025n Jc3QJ0Zcdm3xWEm5nqrLAmrGDTTEtVtk7OorETp8LVGTiTNPowvw9+Uyx6Wt/cxdHxBm w9JMlEe+D9UmSW7aFYEPGTckwXMH3w/F70+5jSxSX/x5Y/lyXChfwedxRB6aKY59+/bC vVkw== X-Gm-Message-State: AO0yUKUgS3W1ebR0hkBICeIonYxZpqtZwsI85XpbsB8/l5Q9iNZV/2Ab NXws2B564PVIxtQkIn/pNOn8M9hjMFQ= X-Google-Smtp-Source: AK7set/SRdMm6RO6h7ZxEUIc34emNcIDK09YXyZR7iMp1562Rqy0iZDxrTyG4rJPGSjDkgSB/rnvsw== X-Received: by 2002:a17:906:6a0f:b0:889:d998:1576 with SMTP id qw15-20020a1709066a0f00b00889d9981576mr6913416ejc.66.1677943619653; Sat, 04 Mar 2023 07:26:59 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 03/13] hw/pci-host/q35: Use memory_region_set_address() also for tseg_blackhole Date: Sat, 4 Mar 2023 16:26:38 +0100 Message-Id: <20230304152648.103749-4-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::52c; envelope-from=shentey@gmail.com; helo=mail-ed1-x52c.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943671922100005 Content-Type: text/plain; charset="utf-8" Commit bafc90bdc594 ("q35: implement TSEG") uses memory_region_set_address() for updating the address of mch->tseg_window but uses memory_region_del_subregion() and memory_region_add_subregion_overlap() for doing the same on mch- >tseg_blackhole. The latter seems to be the old, cumbersome way of changing a memory region's address. So make the code more comprehensible by modernizing it. Signed-off-by: Bernhard Beschow --- hw/pci-host/q35.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 40bfe99910..0497194983 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -404,12 +404,11 @@ static void mch_update_smram(MCHPCIState *mch) } else { tseg_size =3D 0; } - memory_region_del_subregion(mch->system_memory, &mch->tseg_blackhole); + memory_region_set_enabled(&mch->tseg_blackhole, tseg_size); memory_region_set_size(&mch->tseg_blackhole, tseg_size); - memory_region_add_subregion_overlap(mch->system_memory, - mch->below_4g_mem_size - tseg_size, - &mch->tseg_blackhole, 1); + memory_region_set_address(&mch->tseg_blackhole, + mch->below_4g_mem_size - tseg_size); =20 memory_region_set_enabled(&mch->tseg_window, tseg_size); memory_region_set_size(&mch->tseg_window, tseg_size); --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943693; cv=none; d=zohomail.com; s=zohoarc; b=itGAuQVOogpFWHnjkyI6bHfRSAxnCOxQtmUiqAZOEjVOI9O5FzI/SW3yOci81K9evoZyRgn5LJ8rR9NRc3a7+9T0R9qN2wNJ44FJ95MXJm1TanvUE2GIpH9adIlc2n0D3ArqWjMyAYnRfp7t+hvdVxwbaCc6faB6+37icNfuemA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943693; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=gIehz7iHwJm3nul5f2/1cK//AVrpTVcwyFm3oTuiRek=; b=HwHxkaMCxAE+ht4IhkJOcAG3MrLnzmTjiIN/oNjr+acClA12nZMSy0Fj1fFAWVgd7VUyZ9/LTACiozP2WWUOPCaO7djsyZ1lhvXgjBNR/4MhPjeqHalsMoYvSM7NkioOCBmr1igpH3+XRFo16SQN4vRiYCJkYDY3H7kU6X1uAhc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943693787472.42834183689683; Sat, 4 Mar 2023 07:28:13 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmr-0003Jl-TA; Sat, 04 Mar 2023 10:27: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 1pYTmq-0003E0-1n for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:04 -0500 Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmo-00089L-7S for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:03 -0500 Received: by mail-ed1-x530.google.com with SMTP id o15so21449355edr.13 for ; Sat, 04 Mar 2023 07:27:01 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.26.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943620; 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=gIehz7iHwJm3nul5f2/1cK//AVrpTVcwyFm3oTuiRek=; b=JjHxuvqRSehB4SWZQIJWgbifoCNrJkRqnLhW7HaR5BIrroh4wlu8zuNlJJvBmvX12u z9snzLXm9yUNwFJyy+l1AAXoPuLb5fdKJAnOIDvzllbO0lDT/nFR7rRFaBGEf+E6w7Md FL/QWsc84qbr58n4yipieJWJMTWrzOorJixra400UcHX3WaMe1mNiS+HgvwqpwStOIa5 stRlWKAzSv5u56HWVwgJQydoe5W0FTTLhD96CRt3xkQ38Qk7/DaDwpoiVsHoweSDkoEl /w7ysdkZQkqCCroSl9R1hP4CkeLrzDFQx4GZReiobyQ7lrXR1YlmIA0Xn5Gq3LhTkBlM eB9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943620; 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=gIehz7iHwJm3nul5f2/1cK//AVrpTVcwyFm3oTuiRek=; b=zriijNF8WTuU7uTwgf2q5TLYr8du4mukxxUMHPiBuwimc57q1F6NWQ+3sboJ2x6Szy FzOzENjboeaemtgimPyaNG6l8jDxg80Udn4KRx+M++REUuS+7Cft73iRz/3M+TSPXEz6 qjC7AZ11HUTOqvFUVT4MiMrnXykuLg1VAXx1K3SRt4odj6UUYP79T3R00E3KIZ5iVSye hTVIj1U/0q7RSOKGJqvY3lt9HYkNo4Rp1gqf+81EtqBUgKsDSRPK0lEx3ks+6KfabayO DcedtXLZms5+0PojkSR2P4Q71xDJSXKX8M4OkVwfMrX/bN3w+FFSXQpg7oMhHLOY6eKI daeg== X-Gm-Message-State: AO0yUKUYWzpWT7WVfaTw6E0LSQAxLvVn2SjKjs4j9PlLWabhp203UaL9 XNSrkoBUVsvret1gZzkpXWTUq2x5fNs= X-Google-Smtp-Source: AK7set9rcwkm0mYLurxYey53pQBAqV0qX46yEVl4dNVMTS2X81fstgJVY3wnOjKBZ2Zu+qaFOTZY9Q== X-Received: by 2002:a17:907:608d:b0:88c:a43d:81bc with SMTP id ht13-20020a170907608d00b0088ca43d81bcmr5969567ejc.58.1677943620459; Sat, 04 Mar 2023 07:27:00 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 04/13] hw/pci-host/q35: Initialize PCMachineState::bus in board code Date: Sat, 4 Mar 2023 16:26:39 +0100 Message-Id: <20230304152648.103749-5-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::530; envelope-from=shentey@gmail.com; helo=mail-ed1-x530.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943695769100003 Content-Type: text/plain; charset="utf-8" The Q35 PCI host currently sets the PC machine's PCI bus attribute through global state, thereby assuming the machine to be a PC machine. The Q35 machine code already holds on to Q35's pci bus attribute, so can easily set its own property while preserving encapsulation. Signed-off-by: Bernhard Beschow --- hw/i386/pc_q35.c | 4 +++- hw/pci-host/q35.c | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 68097bea55..42e79433a5 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -231,10 +231,12 @@ static void pc_q35_init(MachineState *machine) x86ms->below_4g_mem_size, NULL); object_property_set_int(phb, PCI_HOST_ABOVE_4G_MEM_SIZE, x86ms->above_4g_mem_size, NULL); + sysbus_realize_and_unref(SYS_BUS_DEVICE(phb), &error_fatal); =20 /* pci */ - sysbus_realize_and_unref(SYS_BUS_DEVICE(phb), &error_fatal); host_bus =3D PCI_BUS(qdev_get_child_bus(DEVICE(phb), "pcie.0")); + pcms->bus =3D host_bus; + /* create ISA bus */ lpc =3D pci_new_multifunction(PCI_DEVFN(ICH9_LPC_DEV, ICH9_LPC_FUNC), = true, TYPE_ICH9_LPC_DEVICE); diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 0497194983..9d21915a55 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -66,7 +66,6 @@ static void q35_host_realize(DeviceState *dev, Error **er= rp) s->mch.pci_address_space, s->mch.address_space_io, 0, TYPE_PCIE_BUS); - PC_MACHINE(qdev_get_machine())->bus =3D pci->bus; pci->bypass_iommu =3D PC_MACHINE(qdev_get_machine())->default_bus_bypass_iommu; qdev_realize(DEVICE(&s->mch), BUS(pci->bus), &error_fatal); --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943717; cv=none; d=zohomail.com; s=zohoarc; b=Cy7Szdm2MEe4onw1NfQY4CZDWVZx+/k3Li5hn/MlND3daFFE9cNJk94jquJdcf6lgcftVr2dl6yqW4H9UIklcnMij7eGhRC89jVGMfjKnnFlKVgi9bCCdCcJh7s5JV/NeKr2fKiNjbzL/0mhd2H0+LLZvQNLCv8v/CPielSrams= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943717; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=TcmEd4diwhm8b1uCRcNdh3P72x85tYkeeTrt3/8M/N0=; b=DB8sV6Xm8oYU1MODPlJXDXV+JOMTcAgA8JFBUs6J6I0yHkPJcKJRMCYSntqK+A9PvMKia/1M6nntTMv+r5w1ltZbOxSPjSN8EFZoIxzWOa5E2GAFxDoPanh744qk75WGKP1zI73PksVKZxkBxqNUFmrXPN+pJJ3z9O7naRP95WI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16779437173171011.9450458893762; Sat, 4 Mar 2023 07:28:37 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmt-0003M7-KM; Sat, 04 Mar 2023 10:27:07 -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 1pYTmr-0003If-AA for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:05 -0500 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmp-00089S-0z for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:05 -0500 Received: by mail-ed1-x536.google.com with SMTP id ay14so17928501edb.11 for ; Sat, 04 Mar 2023 07:27:02 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943621; 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=TcmEd4diwhm8b1uCRcNdh3P72x85tYkeeTrt3/8M/N0=; b=IWc+5dS7QD2BdmjEtgr9I85YEk7dH3ZU3nsBfHY4YT7sCyGaxqpIjrqcwzX0Et/Z3S 5LdJozBZR4OMB2HSf/HTfY8JXiGHkFrbosKw5IwoPmumYkarEvdkAMfWsOUYjZJnN/XL dbS71V1x8BqxApTEYtjjJQFGU260NpzileNQMu61KRq8wYSThF/QVtLZ4gbJ2QBI6pen vSHjqzfs1OMujL7Ylq0mFxFyZS5WcA5J60C1ENvuB4IgYQZ1ofgehLG+UGqQlqC6uKlr j8nldwFEF3vCzVtecNNLQDxJIDuZfA9wmb+76dO8eVkxvMN/vmBU2YYmz+pID8ItlGjN RYfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943621; 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=TcmEd4diwhm8b1uCRcNdh3P72x85tYkeeTrt3/8M/N0=; b=A+rDUl7nMFL7IBKvnP5WzVc935aISKnWoKK4VFXVu1uC4fWib0wiiL6I8LqxPSiOJc mNXKDIgEG08e7BVlXpkHXaOzCR+vQTlfl0HwWoM9hUsQ4GWyH5cKLOWHmUetRxAzL0hG JqkQ9nvV5wO2CU70v+/bLrWkyjAS7izKLK9FAgGx/wKZX+m/60lNsvz+hHvU4WM8B0xb Sk1SkHgkxJC7Aav16vn9eOubB0CZ0i6gfyzBxXxTYc6vqQVXdSRVDvtDoWSW1wMh5uFm 01LVJrT7n4mlJqjEWH1l8TPOqeGnf/OXG4eLeWV0xmlyrPybmQRMjd2xjZFHCjZ/b4Bv bYCg== X-Gm-Message-State: AO0yUKVE3XDLplc2LpswIdiAK24dw7SmH88rBhrO8EFVrgKrIAp18u16 e1O7uD0W5B90H8fTGjlJH/RwKUDgQLM= X-Google-Smtp-Source: AK7set9ei5TXsIdbUAURUzSZGvKsy0iQJ1P2MKuft3XCr+jKQDD/QBqmTRKOXV2zAIkI3fUrDUSnWg== X-Received: by 2002:a17:906:8156:b0:886:221b:44e5 with SMTP id z22-20020a170906815600b00886221b44e5mr5513282ejw.62.1677943621264; Sat, 04 Mar 2023 07:27:01 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 05/13] hw/pci/pci_host: Introduce PCI_HOST_BYPASS_IOMMU macro Date: Sat, 4 Mar 2023 16:26:40 +0100 Message-Id: <20230304152648.103749-6-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::536; envelope-from=shentey@gmail.com; helo=mail-ed1-x536.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943717893100002 Content-Type: text/plain; charset="utf-8" Introduce a macro to avoid copy and pasting strings which can easily cause typos. Suggested-by: Michael S. Tsirkin Signed-off-by: Bernhard Beschow --- include/hw/pci/pci_host.h | 2 ++ hw/pci/pci_host.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/include/hw/pci/pci_host.h b/include/hw/pci/pci_host.h index c6f4eb4585..e52d8ec2cd 100644 --- a/include/hw/pci/pci_host.h +++ b/include/hw/pci/pci_host.h @@ -31,6 +31,8 @@ #include "hw/sysbus.h" #include "qom/object.h" =20 +#define PCI_HOST_BYPASS_IOMMU "bypass-iommu" + #define TYPE_PCI_HOST_BRIDGE "pci-host-bridge" OBJECT_DECLARE_TYPE(PCIHostState, PCIHostBridgeClass, PCI_HOST_BRIDGE) =20 diff --git a/hw/pci/pci_host.c b/hw/pci/pci_host.c index dfd185bbb4..7af8afdcbe 100644 --- a/hw/pci/pci_host.c +++ b/hw/pci/pci_host.c @@ -232,7 +232,7 @@ const VMStateDescription vmstate_pcihost =3D { static Property pci_host_properties_common[] =3D { DEFINE_PROP_BOOL("x-config-reg-migration-enabled", PCIHostState, mig_enabled, true), - DEFINE_PROP_BOOL("bypass-iommu", PCIHostState, bypass_iommu, false), + DEFINE_PROP_BOOL(PCI_HOST_BYPASS_IOMMU, PCIHostState, bypass_iommu, fa= lse), DEFINE_PROP_END_OF_LIST(), }; =20 --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943744; cv=none; d=zohomail.com; s=zohoarc; b=fcLwro5+Q6B4yvS45s6whbvdqOhCPV2K4+iAbCR75vqEDBibA3HcfFaHEBFo1qeimc36XU2npTYDVU92ClR2raDQYipZ6RrXRcajIM1+jA38x2V3wucDaY3MNPZbzIDU9qp4RPH/Z0ZPIxxx8Y4GQypjdbiWH0DJ82H+CCCEgdM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943744; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=XwcRBugUKmi6NmgV7b6lAnsORrC7wApaPC7DEE8Pf6Y=; b=XTf/OwRc1SRtfHDy860TUsWkBjXhCve5JzoHsiB8mu8IVElter4B4FGXYhHj8o44anfK7z5XmVfoVKeKNr99sMpHFfApHPDwIsrqI9LKAvRAD2Frz3/jQanJMhw9sGV4oGYQRP+L8Aze+8V/0MBFVWWSnsMCMdR/NqLeL68CIsk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943744215834.4491377314416; Sat, 4 Mar 2023 07:29:04 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmt-0003M5-HR; Sat, 04 Mar 2023 10:27:07 -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 1pYTmr-0003K3-TV for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:05 -0500 Received: from mail-ed1-x52b.google.com ([2a00:1450:4864:20::52b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmq-00089g-3Z for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:05 -0500 Received: by mail-ed1-x52b.google.com with SMTP id o15so21449617edr.13 for ; Sat, 04 Mar 2023 07:27:03 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943622; 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=XwcRBugUKmi6NmgV7b6lAnsORrC7wApaPC7DEE8Pf6Y=; b=dIkxyywrhgjtScBIiIQQFPbrLl449xR4t/HyI7MhVDELIHO02MmQURIJjrhiIlm1FA cBtK2XWP0kqUCGygz0KyS/tAS6JvLwdTCp2zRQaBgjLDkTFGv+oGhWpAlEIC5sa9zhWD Hahtb+tNip+nkaHGTkUqTWb1tRoCTbivMntkoKVL0z/FNDCtk3FzC4fCHNpPFzL8hM+R K56Zp21mV3fK1gl1WFJ1SADPQ/U3sImCg9gWC5edtz517KuAkJDnegrvC5GTHNwsSidn GXGrO4Nwidd9/RFjceQey/0GRvZ/F7cJum9OMSutUcUFJzg3O06tJvTIVh2jsi2nf1VC Xjeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943622; 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=XwcRBugUKmi6NmgV7b6lAnsORrC7wApaPC7DEE8Pf6Y=; b=GsEAGq0Ih6+Nt23yzvvz5eOZ9eI1qVYkhL55dwy9oOV7kUPDe1eNud+KPPaCY/nQQ7 uD4WaDGmG4acMqADAT4Dw5OBBbK5GvoKTuBK6JhtZa+IYszOY3Pp9xPM8GxiusRlNC1m i0JFDdabkN0Gtm1r25LRP3+4QrbAkoNqHTEiPazUv6S4okBVFst0Ee867MlDDVLpBF55 MisZcwmTxtTiePhSpTTCWGmEyuwLWcCHq4Pl0aNJUHmKNh0HOvfIA6dLad296JEdY+bi B4qW0UTAR6tscKFatZSUZioiFd99GAugPXu18kNvhRcfH9VSnLA9yG8UMIz07OcNV8AK 3CTA== X-Gm-Message-State: AO0yUKU9RqUwM4KrGZ8JAozXbSg8b11KXTEez2J9F25MzXOAePV1sdrS 3RcX5K41Sqyg2KpuGbF2IkPhfm3i0Xc= X-Google-Smtp-Source: AK7set8pXPtltbogv2/AZ68I0YnqtzPzxMYZGQ/aCPf2J+BRTbfw7D7m9pM+3Iet1xCvvAI6hGxfoQ== X-Received: by 2002:a17:906:9b88:b0:8b1:fc:b06d with SMTP id dd8-20020a1709069b8800b008b100fcb06dmr7217291ejc.77.1677943622488; Sat, 04 Mar 2023 07:27:02 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 06/13] hw/pci-host/q35: Initialize "bypass-iommu" property from board code Date: Sat, 4 Mar 2023 16:26:41 +0100 Message-Id: <20230304152648.103749-7-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::52b; envelope-from=shentey@gmail.com; helo=mail-ed1-x52b.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943745946100007 Content-Type: text/plain; charset="utf-8" The Q35 PCI host already has a "bypass-iommu" property. However, the host initializes this property itself by accessing global machine state, thereby assuming it to be a PC machine. Avoid this by having board code set this property. Signed-off-by: Bernhard Beschow --- hw/i386/pc_q35.c | 2 ++ hw/pci-host/q35.c | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 42e79433a5..d620d92214 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -231,6 +231,8 @@ static void pc_q35_init(MachineState *machine) x86ms->below_4g_mem_size, NULL); object_property_set_int(phb, PCI_HOST_ABOVE_4G_MEM_SIZE, x86ms->above_4g_mem_size, NULL); + object_property_set_bool(phb, PCI_HOST_BYPASS_IOMMU, + pcms->default_bus_bypass_iommu, NULL); sysbus_realize_and_unref(SYS_BUS_DEVICE(phb), &error_fatal); =20 /* pci */ diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 9d21915a55..f070842312 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -66,8 +66,7 @@ static void q35_host_realize(DeviceState *dev, Error **er= rp) s->mch.pci_address_space, s->mch.address_space_io, 0, TYPE_PCIE_BUS); - pci->bypass_iommu =3D - PC_MACHINE(qdev_get_machine())->default_bus_bypass_iommu; + qdev_realize(DEVICE(&s->mch), BUS(pci->bus), &error_fatal); } =20 --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943717; cv=none; d=zohomail.com; s=zohoarc; b=jiVY4r290m7gvAt7HCAhbbKsQPiVLrE6ib1IY/V5QkJdb6qY9fYH+Y9/+J7utr+s43AIeshBijTxJCsQYWcKK1LXEar8qy/gVfDqjqxp7A10LPyop5VWws46jRIoXM3IEAPLR22603ijwquuGiTAZWN/vLva13DCDV5VmujjXnQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943717; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=TFlO1gp93LNeGeyRsdA/6R7zS1myv4F0OM3dNxXlP7w=; b=Dt/6mgVSPA7ahCI+mjmX4aPgGxs+G/s5QS7rxOc6wqvBc2n7vg6uRzncwJQco1Ckc3H1M8qhosZrBkan7ChNSZIr74RN/diYHsIJvlCcoCX6mkXUHmysH7ov+QsEUt7kQ/ryzSYhPF7rx3jDvcjbVvhb0RS8cSlALstiZ7lelLY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943717363629.2240097438288; Sat, 4 Mar 2023 07:28:37 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmt-0003Ly-9t; Sat, 04 Mar 2023 10:27:07 -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 1pYTms-0003Kz-8v for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:06 -0500 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmq-000895-CL for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:05 -0500 Received: by mail-ed1-x534.google.com with SMTP id x3so21499774edb.10 for ; Sat, 04 Mar 2023 07:27:03 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943623; 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=TFlO1gp93LNeGeyRsdA/6R7zS1myv4F0OM3dNxXlP7w=; b=L9NE6CEhoPDRYRNFlPOGSfmxaEzGBEcy0LnPt5Tw5JKodb0TstdvqdxnfcXYsDf4oO 4geRofgUSfc1Q4R+/ek90O55dduMfQoSVVhNhElXOnrSmR1rw3UH137rzrpnQPi4oD/c zDWxE5GH4ujGikxhknpDELJ77y5ksWckwKrINLRRGyndQvASegMBvC0RUSqvB8BcmOH8 NNwWArTTY4djcZX0IqtbNlpcRQIQc5brgmzsb2otro3xbbtoSssBDZruAb12PRB/+BrZ HRvW0nek6pDS8VqmkWXaY8Kew1UKg6xELWkOPJent2RILCKk2jJZvofP32q2AdzO/jYs 9jDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943623; 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=TFlO1gp93LNeGeyRsdA/6R7zS1myv4F0OM3dNxXlP7w=; b=pZiDtVKYj+UDDNSVTJNwb+JvwfKUXd/TB9Oo+Ig/g9yw6xhKDkD90D8N9VGNtV5aBd ioWx7TMKci0+VcUALi1f6N6yTNxZEHL2PX16All3p6ZmSJIn1JafAlOtCp1Mhm4pkq4K 1ayF8aNZHAEkzjlM8QW7iYGoD8XKIqIUjuTKcFw/V+uuBq0f6QZbM1VqUH1pV3RWZOz4 H4U4Mb6oev+y/9VXP13sJzYnzkkUSiX3ODNEsTMIny8ag55DAmPBpJBe7qu2Pl+CCi2O sO4bjD/IM3p6WlJYlR7xqxo6B85uD/S6dMZDzlni+m39o5jku0EKrkZLUKe8KwyNeK6t OF8g== X-Gm-Message-State: AO0yUKWKYeKjxFfoBdV//UxnLIFt0G1aUJSt92vUz6oftvDNX7mZzzwu j9wBQVhibicq397Fcqo9+rWv4MTHlGo= X-Google-Smtp-Source: AK7set8IlpNy3ZmwCidu95X31USoltKpWAfyClJyCKGpXMg07E4lhqiYUer31FMn04yOP4t6JF0wmw== X-Received: by 2002:a17:906:3893:b0:885:a62c:5a5c with SMTP id q19-20020a170906389300b00885a62c5a5cmr5307547ejd.46.1677943623325; Sat, 04 Mar 2023 07:27:03 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 07/13] hw/pci-host/q35: Initialize properties just once Date: Sat, 4 Mar 2023 16:26:42 +0100 Message-Id: <20230304152648.103749-8-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::534; envelope-from=shentey@gmail.com; helo=mail-ed1-x534.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943717847100001 Content-Type: text/plain; charset="utf-8" Although not used there, the attributes for Q35's "pci-hole64-size" and "short_root_bus" properties currently reside in its child device. This causes the default values to be overwritten during the child's object_initialize() phase, requiring the host to re-assign the default values manually again. Avoid this by moving both attributes into the host device. Signed-off-by: Bernhard Beschow --- include/hw/pci-host/q35.h | 5 +++-- hw/pci-host/q35.c | 12 +++++------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/include/hw/pci-host/q35.h b/include/hw/pci-host/q35.h index fcbe57b42d..93e41ffbee 100644 --- a/include/hw/pci-host/q35.h +++ b/include/hw/pci-host/q35.h @@ -54,8 +54,6 @@ struct MCHPCIState { Range pci_hole; uint64_t below_4g_mem_size; uint64_t above_4g_mem_size; - uint64_t pci_hole64_size; - uint32_t short_root_bus; uint16_t ext_tseg_mbytes; }; =20 @@ -64,7 +62,10 @@ struct Q35PCIHost { PCIExpressHost parent_obj; /*< public >*/ =20 + uint64_t pci_hole64_size; + uint32_t short_root_bus; bool pci_hole64_fix; + MCHPCIState mch; }; =20 diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index f070842312..f20e092516 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -76,7 +76,7 @@ static const char *q35_host_root_bus_path(PCIHostState *h= ost_bridge, Q35PCIHost *s =3D Q35_HOST_DEVICE(host_bridge); =20 /* For backwards compat with old device paths */ - if (s->mch.short_root_bus) { + if (s->short_root_bus) { return "0000"; } return "0000:00"; @@ -161,7 +161,7 @@ static void q35_host_get_pci_hole64_end(Object *obj, Vi= sitor *v, =20 pci_bus_get_w64_range(h->bus, &w64); value =3D range_is_empty(&w64) ? 0 : range_upb(&w64) + 1; - hole64_end =3D ROUND_UP(hole64_start + s->mch.pci_hole64_size, 1ULL <<= 30); + hole64_end =3D ROUND_UP(hole64_start + s->pci_hole64_size, 1ULL << 30); if (s->pci_hole64_fix && value < hole64_end) { value =3D hole64_end; } @@ -180,8 +180,8 @@ static Property q35_host_props[] =3D { DEFINE_PROP_UINT64(PCIE_HOST_MCFG_BASE, Q35PCIHost, parent_obj.base_ad= dr, MCH_HOST_BRIDGE_PCIEXBAR_DEFAULT), DEFINE_PROP_SIZE(PCI_HOST_PROP_PCI_HOLE64_SIZE, Q35PCIHost, - mch.pci_hole64_size, Q35_PCI_HOST_HOLE64_SIZE_DEFAULT= ), - DEFINE_PROP_UINT32("short_root_bus", Q35PCIHost, mch.short_root_bus, 0= ), + pci_hole64_size, Q35_PCI_HOST_HOLE64_SIZE_DEFAULT), + DEFINE_PROP_UINT32("short_root_bus", Q35PCIHost, short_root_bus, 0), DEFINE_PROP_SIZE(PCI_HOST_BELOW_4G_MEM_SIZE, Q35PCIHost, mch.below_4g_mem_size, 0), DEFINE_PROP_SIZE(PCI_HOST_ABOVE_4G_MEM_SIZE, Q35PCIHost, @@ -218,9 +218,7 @@ static void q35_host_initfn(Object *obj) object_initialize_child(OBJECT(s), "mch", &s->mch, TYPE_MCH_PCI_DEVICE= ); qdev_prop_set_int32(DEVICE(&s->mch), "addr", PCI_DEVFN(0, 0)); qdev_prop_set_bit(DEVICE(&s->mch), "multifunction", false); - /* mch's object_initialize resets the default value, set it again */ - qdev_prop_set_uint64(DEVICE(s), PCI_HOST_PROP_PCI_HOLE64_SIZE, - Q35_PCI_HOST_HOLE64_SIZE_DEFAULT); + object_property_add(obj, PCI_HOST_PROP_PCI_HOLE_START, "uint32", q35_host_get_pci_hole_start, NULL, NULL, NULL); --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943670; cv=none; d=zohomail.com; s=zohoarc; b=LC6zOl86+Xt6Mjbv1WvaDG0MXMU0MI2zYpTUzkIP7nEEJoWMg/7R8AtN2y5fOp4I2Q8kUjsCBOsorw0crBbduYqI2BnRdCKTS1f8JsYNzNmgIw9IiWEjcQqe402kIjUrW1K4w9Ov+UlJsQ7EEz5J/wzG/FBr4hvRcoBv8D7/Jf8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943670; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=t3MvMDbc6W1pZ0344ikgy3XfNx3ZtN3bD+GvmA7Exk4=; b=aY9fORzmMGIpnqHPbmn/0SgKA9G2r4RWObApRZUvTZo3Bh5LvT7fungtrtq1HNRKMEAMtMoAg3q1eHlsILSVSDrxW33xu9fXDNweC843EQnBxdTfIhJxG2QEw/EymmMJnzWXE5nHgBYdjaTUNKQsel7keIMSXeACbRaZ3QEycGc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943670746322.12535026960256; Sat, 4 Mar 2023 07:27:50 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmv-0003QE-S5; Sat, 04 Mar 2023 10:27:09 -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 1pYTmt-0003N5-RL for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:07 -0500 Received: from mail-ed1-x535.google.com ([2a00:1450:4864:20::535]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmr-0008AA-Ta for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:07 -0500 Received: by mail-ed1-x535.google.com with SMTP id f13so21607789edz.6 for ; Sat, 04 Mar 2023 07:27:05 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943624; 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=t3MvMDbc6W1pZ0344ikgy3XfNx3ZtN3bD+GvmA7Exk4=; b=K4S1AK9ZHdrpJXFB49NExzvmgXbfG8DwiBMkH1r7tlHUYTLO3QArWdN4G2wKLDa5wD gukSGyMKkk6fYoIWN+Y5fVDg8VL53ewOC46HzsUejbwzysfAxqYH+AgdTkXEKF2UmcKv VhDfA4lOOtFePmEV9ov/sRjtOBoXbs9xX1JQ7MQDKV8ihYk5Jb8t6156Nzk7GvC2tcK+ UuWPGXfy+CuJ49rLhMqDxeht8LZwQsBGrXo5heZieNcpPE58HKJpCNOTEpvGs3xQf6rQ uBWcYuMTP1hPP3einQrBvLn6CGXEE6ByTzX5YhbRPMXtTN/xt3s03QuHqSDfNDVTIJjF a7MA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943624; 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=t3MvMDbc6W1pZ0344ikgy3XfNx3ZtN3bD+GvmA7Exk4=; b=etLxk6ZHVHVX0fYq1iZ4Pr5J7kIf6nmKbkofOCeWlmyWm38V71Y3vyF+9p3BzDfYrE ognocNGK9QGNsX3gnTc5N7PuyiXien3RpKoL1d+gm/o2Ajpb2VuDvHnPVbFaGjPe9VPW XUY5dMR4GKRDYbdQJJdyq68HM5nv2f/Yp+HKM3ip0GcSLwfYcwh0LvVSigxMT2tvVD5S iD9S3i4JI0wxcIYQ4HhwCjxVb78DpWSeAGckGmND1YXkD6IsaU33waR5kGkmcaJpS+E/ 8qmtx8xssbDqH489GTlyN6+iShRQwq2We09aLw5P+vZ0Yx8RmseH/P2HYJZ0pmhN+GQ0 +1ZQ== X-Gm-Message-State: AO0yUKWIoIOBia43X/2XyFEDOET6OqvFwAW9ehVWVsBbgUYJqHgHg2fp zEEa7bGN7iCa5nKPMta2w6wtVJjAPi8= X-Google-Smtp-Source: AK7set+JO9/xIiDcGQuD8A6U2+DK3ae+GKOHB2QywB7SwnWOWkDCPTzUt4g18GHjCEXifjyBGazrmQ== X-Received: by 2002:a17:907:c25:b0:8b2:fb3d:95e6 with SMTP id ga37-20020a1709070c2500b008b2fb3d95e6mr6302372ejc.74.1677943624214; Sat, 04 Mar 2023 07:27:04 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 08/13] hw/pci-host/q35: Initialize PCI hole boundaries just once Date: Sat, 4 Mar 2023 16:26:43 +0100 Message-Id: <20230304152648.103749-9-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::535; envelope-from=shentey@gmail.com; helo=mail-ed1-x535.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943671943100006 Content-Type: text/plain; charset="utf-8" The boundaries of the PCI hole depend on a property only which doesn't change at runtime. There is no need to reevaluate the boundaries whenever the PCI configuration space changes. While at it, move the pci_hole attribute into the host device since it is only used there. Signed-off-by: Bernhard Beschow --- include/hw/pci-host/q35.h | 2 +- hw/pci-host/q35.c | 21 +++++++++------------ 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/include/hw/pci-host/q35.h b/include/hw/pci-host/q35.h index 93e41ffbee..a04d5f1a17 100644 --- a/include/hw/pci-host/q35.h +++ b/include/hw/pci-host/q35.h @@ -51,7 +51,6 @@ struct MCHPCIState { MemoryRegion tseg_blackhole, tseg_window; MemoryRegion smbase_blackhole, smbase_window; bool has_smram_at_smbase; - Range pci_hole; uint64_t below_4g_mem_size; uint64_t above_4g_mem_size; uint16_t ext_tseg_mbytes; @@ -62,6 +61,7 @@ struct Q35PCIHost { PCIExpressHost parent_obj; /*< public >*/ =20 + Range pci_hole; uint64_t pci_hole64_size; uint32_t short_root_bus; bool pci_hole64_fix; diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index f20e092516..23df52a256 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -62,6 +62,13 @@ static void q35_host_realize(DeviceState *dev, Error **e= rrp) memory_region_set_flush_coalesced(&pci->data_mem); memory_region_add_coalescing(&pci->conf_mem, 0, 4); =20 + /* + * pci hole goes from end-of-low-ram to io-apic. + * mmconfig will be excluded by the dsdt builder. + */ + range_set_bounds(&s->pci_hole, s->mch.below_4g_mem_size, + IO_APIC_DEFAULT_ADDRESS - 1); + pci->bus =3D pci_root_bus_new(DEVICE(s), "pcie.0", s->mch.pci_address_space, s->mch.address_space_io, @@ -90,8 +97,7 @@ static void q35_host_get_pci_hole_start(Object *obj, Visi= tor *v, uint64_t val64; uint32_t value; =20 - val64 =3D range_is_empty(&s->mch.pci_hole) - ? 0 : range_lob(&s->mch.pci_hole); + val64 =3D range_is_empty(&s->pci_hole) ? 0 : range_lob(&s->pci_hole); value =3D val64; assert(value =3D=3D val64); visit_type_uint32(v, name, &value, errp); @@ -105,8 +111,7 @@ static void q35_host_get_pci_hole_end(Object *obj, Visi= tor *v, uint64_t val64; uint32_t value; =20 - val64 =3D range_is_empty(&s->mch.pci_hole) - ? 0 : range_upb(&s->mch.pci_hole) + 1; + val64 =3D range_is_empty(&s->pci_hole) ? 0 : range_upb(&s->pci_hole) += 1; value =3D val64; assert(value =3D=3D val64); visit_type_uint32(v, name, &value, errp); @@ -506,14 +511,6 @@ static void mch_update(MCHPCIState *mch) mch_update_smram(mch); mch_update_ext_tseg_mbytes(mch); mch_update_smbase_smram(mch); - - /* - * pci hole goes from end-of-low-ram to io-apic. - * mmconfig will be excluded by the dsdt builder. - */ - range_set_bounds(&mch->pci_hole, - mch->below_4g_mem_size, - IO_APIC_DEFAULT_ADDRESS - 1); } =20 static int mch_post_load(void *opaque, int version_id) --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943670; cv=none; d=zohomail.com; s=zohoarc; b=BW2Ti9uss0qkxkd9meWcEsSch++iSVjrMF2yvzPgQmOfEgPjyHHV87P7Y0d1k5zuFFOAQSjpAeVK5pDCqFVeo4DHQA25D+V+V2Sa9HOS6xJqx1d5jq2QgHmuJ3S47L2NFAiXtUEu0I1avuZ5EwiakpnbLEVUaA0ortXejh51QyI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943670; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=v2uxuGNb6ksFRC5cQ94kDdGIszx60jdE3syJ7+PyW08=; b=N8hayPhbg2b9RPmnSbfNM3oZVusiNFfhPbc7sMthGHA2cXw+NvCDcB2AqFZrtz0yigmfnmiNLIDjVa2VJrSH/naor239HbHHFbMfsZ7sv9cSD0m+5wfzNxE9+DX73AFaOPRvPOk7r/3v53anTit+x0z2gU3Dkqs57lRhBfJqS1A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943670933664.1290394502352; Sat, 4 Mar 2023 07:27:50 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmz-0003R2-F2; Sat, 04 Mar 2023 10:27:13 -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 1pYTmy-0003Qk-6T for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:12 -0500 Received: from mail-ed1-x529.google.com ([2a00:1450:4864:20::529]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmt-0008AU-3c for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:11 -0500 Received: by mail-ed1-x529.google.com with SMTP id s11so21587489edy.8 for ; Sat, 04 Mar 2023 07:27:06 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943625; 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=v2uxuGNb6ksFRC5cQ94kDdGIszx60jdE3syJ7+PyW08=; b=F1n4u/rqptZMue1/n9z6l4XuaKGGlUxAYUPl8ZXIvNIo1rECTx1fwSeiDFCW40k0qJ 0zAR48gD1vdUdQ5J8FkxE4OHOtK0y/4pv64oCkIPQKm2jYn7ztLhBucbq7xABWSFDshA 5/zBVWrqANkGKKpFIF9GRaRxE6rHL2HXPe4nArMS9OiQ2BD56RXRrnL1oCwsRJr5MsR6 X5pzBELO5sZAJpHkYOLkKjz5il3WqMij7PkiXiLh4i6VNMseY9riuXgFYNCi7UhL2xtV 9raojLZrpUBe1YBhy+8+YvLGVzqGvLxG3SBYD9RYYtV5wNzlJYeUgKImvAZZywmMbTew UK7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943625; 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=v2uxuGNb6ksFRC5cQ94kDdGIszx60jdE3syJ7+PyW08=; b=00MGLqEQgyA9V8NLt0nWgqfNyBSr2dy5lZ41R7NoeGMO3JXnGr16LW5my5C9mKOAQM gBQY7F64fNNUuKe+uQpwbH7wF0sVVCQGNK6ywyPEKa8Q1QrVW1Zned8O9asLrcZd6vOr m5cmqnux/kfsolTEZMwKc1K4wbxAis3lfWtBtETcqRAVNYYCpEUsytUUbiu41BXJAheq KlqKr1UDBzSjWxfUuaUrotXBWeX6TONQ9TRcCk/AH2ibhKHlQZYT2gaVDQMxonxz7e2T plNS/B0TSrxCJa/PIahKkJmofIX1TmeOKyoHpnJbSe5SyAe2vS7TlA/9qwE8BYgaBCKy h/vQ== X-Gm-Message-State: AO0yUKU2N+Pc2BGACcA4ajscecx0gsLPvv1ZEJf28d46/2UnOYO4uvSF 1GdJsBYjD3SuB0gX/XBdSjgygt17yUo= X-Google-Smtp-Source: AK7set+ehTtQmbicv2ozpO9NFAVmYRLkOvUFd4OXZMXO4qr2sME19elUprZS4SkNqWixCZpq2pM8kA== X-Received: by 2002:aa7:cfc8:0:b0:4b6:821e:1859 with SMTP id r8-20020aa7cfc8000000b004b6821e1859mr9201026edy.7.1677943625258; Sat, 04 Mar 2023 07:27:05 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 09/13] hw/pci-host/q35: Turn PCI hole properties into class properties Date: Sat, 4 Mar 2023 16:26:44 +0100 Message-Id: <20230304152648.103749-10-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::529; envelope-from=shentey@gmail.com; helo=mail-ed1-x529.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943671848100001 Content-Type: text/plain; charset="utf-8" These properties are class properties in i440fx. No need to handle them differently in q35. Signed-off-by: Bernhard Beschow --- hw/pci-host/q35.c | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 23df52a256..afd192cc2a 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -207,6 +207,22 @@ static void q35_host_class_init(ObjectClass *klass, vo= id *data) dc->user_creatable =3D false; set_bit(DEVICE_CATEGORY_BRIDGE, dc->categories); dc->fw_name =3D "pci"; + + object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE_START, "uint32= ", + q35_host_get_pci_hole_start, + NULL, NULL, NULL); + + object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE_END, "uint32", + q35_host_get_pci_hole_end, + NULL, NULL, NULL); + + object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE64_START, "uint= 64", + q35_host_get_pci_hole64_start, + NULL, NULL, NULL); + + object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE64_END, "uint64= ", + q35_host_get_pci_hole64_end, + NULL, NULL, NULL); } =20 static void q35_host_initfn(Object *obj) @@ -224,22 +240,6 @@ static void q35_host_initfn(Object *obj) qdev_prop_set_int32(DEVICE(&s->mch), "addr", PCI_DEVFN(0, 0)); qdev_prop_set_bit(DEVICE(&s->mch), "multifunction", false); =20 - object_property_add(obj, PCI_HOST_PROP_PCI_HOLE_START, "uint32", - q35_host_get_pci_hole_start, - NULL, NULL, NULL); - - object_property_add(obj, PCI_HOST_PROP_PCI_HOLE_END, "uint32", - q35_host_get_pci_hole_end, - NULL, NULL, NULL); - - object_property_add(obj, PCI_HOST_PROP_PCI_HOLE64_START, "uint64", - q35_host_get_pci_hole64_start, - NULL, NULL, NULL); - - object_property_add(obj, PCI_HOST_PROP_PCI_HOLE64_END, "uint64", - q35_host_get_pci_hole64_end, - NULL, NULL, NULL); - object_property_add_uint64_ptr(obj, PCIE_HOST_MCFG_SIZE, &pehb->size, OBJ_PROP_FLAG_READ); =20 --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943689; cv=none; d=zohomail.com; s=zohoarc; b=Fr1AIqGhlw05FBw664kYLOdC4IYCJlsnqyBvfKALBiJaSeD35WsQgZTEzePjDlsHFCrWPm3WKv9D0B3kivP3oGmH2WXlBB6yyIvYY49iskoVXjRTEDOsC89H1fsGfhcrk8WdPq219SFWQrCiZZIfdG/CUW7FHGWT8uAi3gRh1Cs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943689; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=F/W+VUgC+caXUd610HoqXBs75wgT+eKX3O7KBVHfQnQ=; b=ElJM6hLhFSN3ZFHpTEA9FFkpC2Vct51nfGJ35rjVtsEJrLqDy3sjuLZEjGCevDlYADBFUYUcms6iYizXNo0RF7aX6j83NXcA0FwfBjZU21734cpVx71XVp9UIVQIJglwD+Dn1otbpgYeI/X6Js2NTSSrd9Z6GPRdtxi9svUAID8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943689234128.6005947212717; Sat, 4 Mar 2023 07:28:09 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTmx-0003Qd-Ri; Sat, 04 Mar 2023 10:27:11 -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 1pYTmw-0003QG-1C for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:10 -0500 Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmt-00089G-3S for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:09 -0500 Received: by mail-ed1-x52c.google.com with SMTP id j11so2098714edq.4 for ; Sat, 04 Mar 2023 07:27:06 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943626; 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=F/W+VUgC+caXUd610HoqXBs75wgT+eKX3O7KBVHfQnQ=; b=hrDCa6nU3EZ7HTzd5qVhjOiHj7qh8HrGPiYjLyY9a6q7K8+bTaIC0lQqUn3agc1ba/ bQ4PeOhsqn3bHOm2Uy1paMnb2wamQ3zeCi9wQTsluHWzO4aCLGxRK7tOmHRChJCU0yCT RrAEbzrcRTTWZ4MDxbgYljYCiPfq4Idgv4Cx0NR3bPl2V2w3fRUAKFelfh+hgRFENqQT 4IIpbYw4+6A2Rn5Sr2qiFGevepMybuOKOTtseKXdfkvaTa3+X/VW6AkVWCnXG7nY6pS+ nUjlXH+ZG2aqarGuRfc+MZOaOAik6TDPYsyOv3i5b0h4HfxzkhPP8g1B2SXu5Vt819rM ITTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943626; 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=F/W+VUgC+caXUd610HoqXBs75wgT+eKX3O7KBVHfQnQ=; b=E8WKLUf+URjwLKogWvFIuKFxWEL9MUj/MTpClZAAmoSjWqVukoG5gS/JklbepG6nKB Rxox8zBbUDhozfOtu085EymaqdysZI4gtZISKGbJeuwN/ekOwbQiaUa8Y+brhi9a78OP eMT60zoZ7ij/WHtkfjURigMI8w1Vta4qW+1Wjtlr3uuW07ND8JQ7zf+Z+aPS6GBxmK45 FZqa8LZe2nkwYt0/UXH5hUX3Ttg509g7lq7DZHkBIeCSWbijYPYBt4cqPMO8IBrxKMob NCTwPkYZD3ay0wTfpECrw1w80UUnwDact1uVpdWuB9zw2b9odjUluyhS1mL+/1iWWANS GbTg== X-Gm-Message-State: AO0yUKUK28zmydOwLbrzOIADVcmbouaX59fIBQ2i6vS/HKaj4gKOuuVg QG7c2amUtk9InzbKu9TLlZIRdXgkI4s= X-Google-Smtp-Source: AK7set983FUWDjiAERr2vWEELDr9S+WZZXhDWuhBcs//nxRiz/I0L1P+5hvtqHJYFlxglT4YuJjriw== X-Received: by 2002:a17:906:1846:b0:8b8:c06e:52d8 with SMTP id w6-20020a170906184600b008b8c06e52d8mr5079235eje.36.1677943626118; Sat, 04 Mar 2023 07:27:06 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 10/13] hw/pci-host/q35: Rename local variable to more idiomatic "phb" Date: Sat, 4 Mar 2023 16:26:45 +0100 Message-Id: <20230304152648.103749-11-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::52c; envelope-from=shentey@gmail.com; helo=mail-ed1-x52c.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943689753100001 Content-Type: text/plain; charset="utf-8" Variables of type PCIHostState* are typically named "phb" in QEMU. Follow this convention here as well for consistency. Signed-off-by: Bernhard Beschow --- hw/pci-host/q35.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index afd192cc2a..cf9fb35064 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -46,21 +46,21 @@ =20 static void q35_host_realize(DeviceState *dev, Error **errp) { - PCIHostState *pci =3D PCI_HOST_BRIDGE(dev); Q35PCIHost *s =3D Q35_HOST_DEVICE(dev); + PCIHostState *phb =3D PCI_HOST_BRIDGE(dev); SysBusDevice *sbd =3D SYS_BUS_DEVICE(dev); =20 memory_region_add_subregion(s->mch.address_space_io, - MCH_HOST_BRIDGE_CONFIG_ADDR, &pci->conf_me= m); + MCH_HOST_BRIDGE_CONFIG_ADDR, &phb->conf_me= m); sysbus_init_ioports(sbd, MCH_HOST_BRIDGE_CONFIG_ADDR, 4); =20 memory_region_add_subregion(s->mch.address_space_io, - MCH_HOST_BRIDGE_CONFIG_DATA, &pci->data_me= m); + MCH_HOST_BRIDGE_CONFIG_DATA, &phb->data_me= m); sysbus_init_ioports(sbd, MCH_HOST_BRIDGE_CONFIG_DATA, 4); =20 /* register q35 0xcf8 port as coalesced pio */ - memory_region_set_flush_coalesced(&pci->data_mem); - memory_region_add_coalescing(&pci->conf_mem, 0, 4); + memory_region_set_flush_coalesced(&phb->data_mem); + memory_region_add_coalescing(&phb->conf_mem, 0, 4); =20 /* * pci hole goes from end-of-low-ram to io-apic. @@ -69,12 +69,12 @@ static void q35_host_realize(DeviceState *dev, Error **= errp) range_set_bounds(&s->pci_hole, s->mch.below_4g_mem_size, IO_APIC_DEFAULT_ADDRESS - 1); =20 - pci->bus =3D pci_root_bus_new(DEVICE(s), "pcie.0", + phb->bus =3D pci_root_bus_new(DEVICE(s), "pcie.0", s->mch.pci_address_space, s->mch.address_space_io, 0, TYPE_PCIE_BUS); =20 - qdev_realize(DEVICE(&s->mch), BUS(pci->bus), &error_fatal); + qdev_realize(DEVICE(&s->mch), BUS(phb->bus), &error_fatal); } =20 static const char *q35_host_root_bus_path(PCIHostState *host_bridge, --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943689; cv=none; d=zohomail.com; s=zohoarc; b=b4b0wEpwbnE7pYV64LxSU7yZ0OItFUyL1ZtIFnpRD2CvtKVCC9uvk6WikL28AwmOrQXRL9eu/LC0m3X8kLALWeODe0uDiIHlJ4SlJ8yVSJKNm2ckm/ay8PYWdQpYz98g53tOkMWkvmUAbwIxxlRl+66yjIU5GhU+f8UNXWmoNZ0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943689; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Ois2BqEazqSVamsuutRemdEMBkx4q6hGG0wIeuPIfcE=; b=YNl28GPO4jAb6fGX+IpIdjijI5WagLKfGWEgRVjyA+dzPnDKp6F8v4OwTtg8WbQMXk7UxThob5SwZZBAshwPaVM8hkhZDVaX5ZZLvA18ttUNU1z4+8wYUln6fN4xUPj7UwN9MaFbVHL6GvU7lootZoyxXFxdEpql0gsnu/z9YvQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943689660556.0486780792291; Sat, 4 Mar 2023 07:28:09 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTnE-0003S2-KF; Sat, 04 Mar 2023 10:27: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 1pYTnD-0003Rt-Dl for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:27 -0500 Received: from mail-ed1-x52d.google.com ([2a00:1450:4864:20::52d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmx-0008CM-NE for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:27 -0500 Received: by mail-ed1-x52d.google.com with SMTP id o12so21557640edb.9 for ; Sat, 04 Mar 2023 07:27:10 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943627; 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=Ois2BqEazqSVamsuutRemdEMBkx4q6hGG0wIeuPIfcE=; b=duJKZKbb/egrfJvztHX0n+m/5cQamJR5xfMzOfSTGp83BclEX8Lk4NGtKuhvRficcA w89A1m0TxBJQeaMRI438J5Gyc8HMfmY/L6Vzrv0WarkL9Zz01RqfV4FARIhKDpF/CHMr mZrELjR3eF+gC7gNyD3t8lpMHuAKIImoOEL61zI5xCzGZ7oIKpIBErcuRi848owJFcwx Dim7o01v8GtOAMZEbCWF6rjgMvr6xbCUl7bX2/XC9lh46adPY+1tOx37HGXlUanoza13 mkXGCQrjBvmZDWR6qm6R7soZjZ0vD2WVL2MgN86EJepinfkArwvF8CLypkIWKoqdzxA1 aAcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943627; 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=Ois2BqEazqSVamsuutRemdEMBkx4q6hGG0wIeuPIfcE=; b=oG+rE430XrR0mOrA44UEPg7MP/LLINdG3t9RCejZt5HFOOgYAohWsf4ID/Osdk2KBC +EvpkS/yxRPNrOO0xIrItlh7gD1Eo9PBMOvxptKMElaoTJYI3Fd3JDLHwwZ+s3ku8CBA NsN1ga2uFTHqZFA4i3bskKGIRhU7/ch30C4+cUrlTAxTw5CY/79gff2FrACYUXOfE+Yl LmKdF7DgsxlYnfEJBoTNNDYKBoGE3ebaq2RGt7SH+6niDblVm3IXNVYuZg1fSF8hcpaf Wy+MssFc5VFD/LR1mE1+UGppnYgSxBW2kYMBfV6vDumkY3+Pit3rwLQqbJ5Xw65Mf/aW 3Ntw== X-Gm-Message-State: AO0yUKUsPFt9Zen0aqgvlkGDbwHRrufJw7shM/N6M8TvVXUltwFII0yi T+UXfKozZSeicxrtkh+qi7cJ/0YVJFI= X-Google-Smtp-Source: AK7set9oM906JMNwP/G1zSpXHXrYEa6OJH64CooD7sSoatSRLdkO8xZrGXrGFfEUboZFwc73SGVwPQ== X-Received: by 2002:a17:907:a808:b0:8aa:c35b:a34b with SMTP id vo8-20020a170907a80800b008aac35ba34bmr5380424ejc.20.1677943627361; Sat, 04 Mar 2023 07:27:07 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 11/13] hw/pci-host/q35: Propagate to errp rather than doing error_fatal Date: Sat, 4 Mar 2023 16:26:46 +0100 Message-Id: <20230304152648.103749-12-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::52d; envelope-from=shentey@gmail.com; helo=mail-ed1-x52d.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943691775100007 Content-Type: text/plain; charset="utf-8" q35_host_realize() has an errp parameter. Use that to be able to propagate the error instead of terminating abruptly. Signed-off-by: Bernhard Beschow --- hw/pci-host/q35.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index cf9fb35064..39d70b9f59 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -46,6 +46,7 @@ =20 static void q35_host_realize(DeviceState *dev, Error **errp) { + ERRP_GUARD(); Q35PCIHost *s =3D Q35_HOST_DEVICE(dev); PCIHostState *phb =3D PCI_HOST_BRIDGE(dev); SysBusDevice *sbd =3D SYS_BUS_DEVICE(dev); @@ -74,7 +75,7 @@ static void q35_host_realize(DeviceState *dev, Error **er= rp) s->mch.address_space_io, 0, TYPE_PCIE_BUS); =20 - qdev_realize(DEVICE(&s->mch), BUS(phb->bus), &error_fatal); + qdev_realize(DEVICE(&s->mch), BUS(phb->bus), errp); } =20 static const char *q35_host_root_bus_path(PCIHostState *host_bridge, --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943732; cv=none; d=zohomail.com; s=zohoarc; b=c6WPVDJv0hIIKhTCjml9w+7eDBEfhVyjn36syGd/u1ETRcHLeUMxMV1bqJFB9ZUSh9cnpwQH7FJUFH+D0YxyF8ZLM+NBkVlZECTPksKot0hO9MPSmbDcQIjf7bkT7EdjiffFU7df/WeyPUcWHwQzAJ/LEw9DbS2314/6Bj+fADo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943732; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=L7VDye8JObCTtGPKiY9Li5ORZ69tCL2hvmLhRxQR0pc=; b=ZctGyd2yegBJweX0TjR3lisoc23Tsuk+GvQlGa65WbBZeVS4l10YFXk3fCSAozz2WMtSxMsdIVfDLyNCSBp88Dt7qaMGWNYpMaOtv6KwyfywjWGb/omDZAJQn5PEnQDF6xzwhOEchiV8Ook79XkuFCViYv6rhtpis2YCq4mlX9E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 167794373230728.277248499223106; Sat, 4 Mar 2023 07:28:52 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTnM-0003Tq-8Z; Sat, 04 Mar 2023 10:27: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 1pYTnK-0003TK-W9 for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:35 -0500 Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmv-00089L-9G for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:34 -0500 Received: by mail-ed1-x530.google.com with SMTP id o15so21450321edr.13 for ; Sat, 04 Mar 2023 07:27:08 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943628; 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=L7VDye8JObCTtGPKiY9Li5ORZ69tCL2hvmLhRxQR0pc=; b=joAOa5fPqNMOnQTYRloaFa8hKNcZXCunyAeemrNpg/RMFuIDmLH5yzTKC/RhnRCJQT /ai08/HPHicnJzsv07MqcL4fL0cMfehkblFhkhLpc3IKlBhj8/W3KQAywqaF7DlO06Jm OGr3Bn4hQEkGTW4Ah/8EFp9YFXRCmShaAr6u7UxDXnaLWdhvzYYg/TyMyV/78URoPXbX m4OFFv2Ty6opcnJss59RDZyvzzgHVkjdgjn82PqHJShfrzQaUAlxw2V/Cvzj0gFw7lSE HDJSK61nTuhMC+CJqls5eA06i9dZcGYnR/XU6hnPBaLiVTxQyc6ZfTeZW92fseKQpm5e z4eQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943628; 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=L7VDye8JObCTtGPKiY9Li5ORZ69tCL2hvmLhRxQR0pc=; b=fPPCkUmNTP5+f7l3wZXMwUhjTxOe3fOe1utcKlJ5w6wOmnQCQtezpRrC7Uw3fgKIB5 SMY4+6UP/aAwvfSy04oRPudrx4R9l1lDX1MEjlGI0nRQwnwrE7Q9poohZm2mOzgDxmWc prnIKjclSCZpqevJNxf6H3ae1+JVhmtLOIoc4JThFbJyvJUb16nnngABszI/JwMfOZGF 3d92rGLRKgkCvSCZag4HxQX10p4cQ4Tay4VZz6h6tRVlLtIzECxt+sKEB/Niam79cWHA 7HTbe0AOgGqFgK0wqlKMmAiscIvy3O+HcjHFrhzQj2irTMneOq2Kp+sWAQE93HxqtFbl 8oBg== X-Gm-Message-State: AO0yUKW3v3LC2QeEF/COotiUn1XNUuOnoav6yYgH2YMNNJ6SsXBLsMos xOt3SkAxQkm2jAjxaqrUQdr6UGDdyOk= X-Google-Smtp-Source: AK7set/YH8HLCVIkE9vkY+zhiKO6MX/SppZb5/z9ugzBAGqW3SZb5n7y/kMVYHYXU4DFtHTKh64dBw== X-Received: by 2002:a05:6402:6d2:b0:4af:51b6:fe49 with SMTP id n18-20020a05640206d200b004af51b6fe49mr6015254edy.13.1677943628192; Sat, 04 Mar 2023 07:27:08 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 12/13] hw/pci-host/q35: Merge mch_realize() into q35_host_realize() Date: Sat, 4 Mar 2023 16:26:47 +0100 Message-Id: <20230304152648.103749-13-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::530; envelope-from=shentey@gmail.com; helo=mail-ed1-x530.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943733945100003 Content-Type: text/plain; charset="utf-8" This patch prepares movement of the MemoryRegion pointers (which are set through properties) into the host state. Moreover, it's usually the parent device which maps the memory regions of its child devices into its address space. Do the same in q35. Signed-off-by: Bernhard Beschow --- hw/pci-host/q35.c | 209 ++++++++++++++++++++++------------------------ 1 file changed, 101 insertions(+), 108 deletions(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 39d70b9f59..1e0f5b4fbf 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -44,12 +44,40 @@ =20 #define Q35_PCI_HOST_HOLE64_SIZE_DEFAULT (1ULL << 35) =20 +static uint64_t blackhole_read(void *ptr, hwaddr reg, unsigned size) +{ + return 0xffffffff; +} + +static void blackhole_write(void *opaque, hwaddr addr, uint64_t val, + unsigned width) +{ + /* nothing */ +} + +static const MemoryRegionOps blackhole_ops =3D { + .read =3D blackhole_read, + .write =3D blackhole_write, + .endianness =3D DEVICE_NATIVE_ENDIAN, + .valid.min_access_size =3D 1, + .valid.max_access_size =3D 4, + .impl.min_access_size =3D 4, + .impl.max_access_size =3D 4, +}; + static void q35_host_realize(DeviceState *dev, Error **errp) { ERRP_GUARD(); Q35PCIHost *s =3D Q35_HOST_DEVICE(dev); PCIHostState *phb =3D PCI_HOST_BRIDGE(dev); SysBusDevice *sbd =3D SYS_BUS_DEVICE(dev); + int i; + + if (s->mch.ext_tseg_mbytes > MCH_HOST_BRIDGE_EXT_TSEG_MBYTES_MAX) { + error_setg(errp, "invalid extended-tseg-mbytes value: %" PRIu16, + s->mch.ext_tseg_mbytes); + return; + } =20 memory_region_add_subregion(s->mch.address_space_io, MCH_HOST_BRIDGE_CONFIG_ADDR, &phb->conf_me= m); @@ -70,6 +98,79 @@ static void q35_host_realize(DeviceState *dev, Error **e= rrp) range_set_bounds(&s->pci_hole, s->mch.below_4g_mem_size, IO_APIC_DEFAULT_ADDRESS - 1); =20 + /* setup pci memory mapping */ + pc_pci_as_mapping_init(s->mch.system_memory, s->mch.pci_address_space); + + /* if *disabled* show SMRAM to all CPUs */ + memory_region_init_alias(&s->mch.smram_region, OBJECT(s), "smram-regio= n", + s->mch.pci_address_space, MCH_HOST_BRIDGE_SMR= AM_C_BASE, + MCH_HOST_BRIDGE_SMRAM_C_SIZE); + memory_region_add_subregion_overlap(s->mch.system_memory, MCH_HOST_BRI= DGE_SMRAM_C_BASE, + &s->mch.smram_region, 1); + memory_region_set_enabled(&s->mch.smram_region, true); + + memory_region_init_alias(&s->mch.open_high_smram, OBJECT(s), "smram-op= en-high", + s->mch.ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BA= SE, + MCH_HOST_BRIDGE_SMRAM_C_SIZE); + memory_region_add_subregion_overlap(s->mch.system_memory, 0xfeda0000, + &s->mch.open_high_smram, 1); + memory_region_set_enabled(&s->mch.open_high_smram, false); + + /* smram, as seen by SMM CPUs */ + memory_region_init_alias(&s->mch.low_smram, OBJECT(s), "smram-low", + s->mch.ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BA= SE, + MCH_HOST_BRIDGE_SMRAM_C_SIZE); + memory_region_set_enabled(&s->mch.low_smram, true); + memory_region_add_subregion(s->mch.smram, MCH_HOST_BRIDGE_SMRAM_C_BASE, + &s->mch.low_smram); + memory_region_init_alias(&s->mch.high_smram, OBJECT(s), "smram-high", + s->mch.ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BA= SE, + MCH_HOST_BRIDGE_SMRAM_C_SIZE); + memory_region_set_enabled(&s->mch.high_smram, true); + memory_region_add_subregion(s->mch.smram, 0xfeda0000, &s->mch.high_smr= am); + + memory_region_init_io(&s->mch.tseg_blackhole, OBJECT(s), + &blackhole_ops, NULL, "tseg-blackhole", 0); + memory_region_set_enabled(&s->mch.tseg_blackhole, false); + memory_region_add_subregion_overlap(s->mch.system_memory, + s->mch.below_4g_mem_size, + &s->mch.tseg_blackhole, 1); + + memory_region_init_alias(&s->mch.tseg_window, OBJECT(s), "tseg-window", + s->mch.ram_memory, s->mch.below_4g_mem_size, = 0); + memory_region_set_enabled(&s->mch.tseg_window, false); + memory_region_add_subregion(s->mch.smram, s->mch.below_4g_mem_size, + &s->mch.tseg_window); + + /* + * This is not what hardware does, so it's QEMU specific hack. + * See commit message for details. + */ + memory_region_init_io(&s->mch.smbase_blackhole, OBJECT(s), &blackhole_= ops, + NULL, "smbase-blackhole", + MCH_HOST_BRIDGE_SMBASE_SIZE); + memory_region_set_enabled(&s->mch.smbase_blackhole, false); + memory_region_add_subregion_overlap(s->mch.system_memory, + MCH_HOST_BRIDGE_SMBASE_ADDR, + &s->mch.smbase_blackhole, 1); + + memory_region_init_alias(&s->mch.smbase_window, OBJECT(s), + "smbase-window", s->mch.ram_memory, + MCH_HOST_BRIDGE_SMBASE_ADDR, + MCH_HOST_BRIDGE_SMBASE_SIZE); + memory_region_set_enabled(&s->mch.smbase_window, false); + memory_region_add_subregion(s->mch.smram, MCH_HOST_BRIDGE_SMBASE_ADDR, + &s->mch.smbase_window); + + init_pam(&s->mch.pam_regions[0], OBJECT(s), s->mch.ram_memory, + s->mch.system_memory, s->mch.pci_address_space, + PAM_BIOS_BASE, PAM_BIOS_SIZE); + for (i =3D 0; i < ARRAY_SIZE(s->mch.pam_regions) - 1; ++i) { + init_pam(&s->mch.pam_regions[i + 1], OBJECT(s), s->mch.ram_memory, + s->mch.system_memory, s->mch.pci_address_space, + PAM_EXPAN_BASE + i * PAM_EXPAN_SIZE, PAM_EXPAN_SIZE); + } + phb->bus =3D pci_root_bus_new(DEVICE(s), "pcie.0", s->mch.pci_address_space, s->mch.address_space_io, @@ -277,27 +378,6 @@ static const TypeInfo q35_host_info =3D { * MCH D0:F0 */ =20 -static uint64_t blackhole_read(void *ptr, hwaddr reg, unsigned size) -{ - return 0xffffffff; -} - -static void blackhole_write(void *opaque, hwaddr addr, uint64_t val, - unsigned width) -{ - /* nothing */ -} - -static const MemoryRegionOps blackhole_ops =3D { - .read =3D blackhole_read, - .write =3D blackhole_write, - .endianness =3D DEVICE_NATIVE_ENDIAN, - .valid.min_access_size =3D 1, - .valid.max_access_size =3D 4, - .impl.min_access_size =3D 4, - .impl.max_access_size =3D 4, -}; - /* PCIe MMCFG */ static void mch_update_pciexbar(MCHPCIState *mch) { @@ -560,92 +640,6 @@ static void mch_reset(DeviceState *qdev) mch_update(mch); } =20 -static void mch_realize(PCIDevice *d, Error **errp) -{ - int i; - MCHPCIState *mch =3D MCH_PCI_DEVICE(d); - - if (mch->ext_tseg_mbytes > MCH_HOST_BRIDGE_EXT_TSEG_MBYTES_MAX) { - error_setg(errp, "invalid extended-tseg-mbytes value: %" PRIu16, - mch->ext_tseg_mbytes); - return; - } - - /* setup pci memory mapping */ - pc_pci_as_mapping_init(mch->system_memory, mch->pci_address_space); - - /* if *disabled* show SMRAM to all CPUs */ - memory_region_init_alias(&mch->smram_region, OBJECT(mch), "smram-regio= n", - mch->pci_address_space, MCH_HOST_BRIDGE_SMRAM= _C_BASE, - MCH_HOST_BRIDGE_SMRAM_C_SIZE); - memory_region_add_subregion_overlap(mch->system_memory, MCH_HOST_BRIDG= E_SMRAM_C_BASE, - &mch->smram_region, 1); - memory_region_set_enabled(&mch->smram_region, true); - - memory_region_init_alias(&mch->open_high_smram, OBJECT(mch), "smram-op= en-high", - mch->ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BASE, - MCH_HOST_BRIDGE_SMRAM_C_SIZE); - memory_region_add_subregion_overlap(mch->system_memory, 0xfeda0000, - &mch->open_high_smram, 1); - memory_region_set_enabled(&mch->open_high_smram, false); - - /* smram, as seen by SMM CPUs */ - memory_region_init_alias(&mch->low_smram, OBJECT(mch), "smram-low", - mch->ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BASE, - MCH_HOST_BRIDGE_SMRAM_C_SIZE); - memory_region_set_enabled(&mch->low_smram, true); - memory_region_add_subregion(mch->smram, MCH_HOST_BRIDGE_SMRAM_C_BASE, - &mch->low_smram); - memory_region_init_alias(&mch->high_smram, OBJECT(mch), "smram-high", - mch->ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BASE, - MCH_HOST_BRIDGE_SMRAM_C_SIZE); - memory_region_set_enabled(&mch->high_smram, true); - memory_region_add_subregion(mch->smram, 0xfeda0000, &mch->high_smram); - - memory_region_init_io(&mch->tseg_blackhole, OBJECT(mch), - &blackhole_ops, NULL, - "tseg-blackhole", 0); - memory_region_set_enabled(&mch->tseg_blackhole, false); - memory_region_add_subregion_overlap(mch->system_memory, - mch->below_4g_mem_size, - &mch->tseg_blackhole, 1); - - memory_region_init_alias(&mch->tseg_window, OBJECT(mch), "tseg-window", - mch->ram_memory, mch->below_4g_mem_size, 0); - memory_region_set_enabled(&mch->tseg_window, false); - memory_region_add_subregion(mch->smram, mch->below_4g_mem_size, - &mch->tseg_window); - - /* - * This is not what hardware does, so it's QEMU specific hack. - * See commit message for details. - */ - memory_region_init_io(&mch->smbase_blackhole, OBJECT(mch), &blackhole_= ops, - NULL, "smbase-blackhole", - MCH_HOST_BRIDGE_SMBASE_SIZE); - memory_region_set_enabled(&mch->smbase_blackhole, false); - memory_region_add_subregion_overlap(mch->system_memory, - MCH_HOST_BRIDGE_SMBASE_ADDR, - &mch->smbase_blackhole, 1); - - memory_region_init_alias(&mch->smbase_window, OBJECT(mch), - "smbase-window", mch->ram_memory, - MCH_HOST_BRIDGE_SMBASE_ADDR, - MCH_HOST_BRIDGE_SMBASE_SIZE); - memory_region_set_enabled(&mch->smbase_window, false); - memory_region_add_subregion(mch->smram, MCH_HOST_BRIDGE_SMBASE_ADDR, - &mch->smbase_window); - - init_pam(&mch->pam_regions[0], OBJECT(mch), mch->ram_memory, - mch->system_memory, mch->pci_address_space, - PAM_BIOS_BASE, PAM_BIOS_SIZE); - for (i =3D 0; i < ARRAY_SIZE(mch->pam_regions) - 1; ++i) { - init_pam(&mch->pam_regions[i + 1], OBJECT(mch), mch->ram_memory, - mch->system_memory, mch->pci_address_space, - PAM_EXPAN_BASE + i * PAM_EXPAN_SIZE, PAM_EXPAN_SIZE); - } -} - uint64_t mch_mcfg_base(void) { bool ambiguous; @@ -668,7 +662,6 @@ static void mch_class_init(ObjectClass *klass, void *da= ta) PCIDeviceClass *k =3D PCI_DEVICE_CLASS(klass); DeviceClass *dc =3D DEVICE_CLASS(klass); =20 - k->realize =3D mch_realize; k->config_write =3D mch_write_config; dc->reset =3D mch_reset; device_class_set_props(dc, mch_props); --=20 2.39.2 From nobody Sat May 4 01:08:44 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1677943737; cv=none; d=zohomail.com; s=zohoarc; b=N+r3JthQImuc6HUo+87z/yZyLtrQZOka/wuHNrnbcrK7+0cqCDmoUTGlr64FtaKVJnH4Waud//2Bj8rPmiDIc/GnB4GP7QKxvWhAFD48VP0XGpkuwyWnvS0pAid2OpVJ3DLh1PmyEaYJsMyd6H/8MayhrFNkGOFfIvs3/PgZkBE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1677943737; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Cv7RSnZYYMp3BxNHAK5pG1yMVnE9Pc0AJgvfjnGnrII=; b=ksd2re9mTAjY1hz7XKHKsWnwlTOri5BhcXFZCvS/GpAw7HSlVOdCqnPf3Mu2hTLFclw2gj4f0T7wE5Sl0PPq7BC5smR894Axl0ftky/2lh2NIhdHmNPZTiHmedJ5q24DIZMqu9Rog1fqOfLZak/uSFs7y50GXPwYHLQK0tLUVEw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1677943737358113.61648577738856; Sat, 4 Mar 2023 07:28:57 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pYTnO-0003US-1n; Sat, 04 Mar 2023 10:27:38 -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 1pYTnM-0003Tr-Ih for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:36 -0500 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pYTmx-00088x-T9 for qemu-devel@nongnu.org; Sat, 04 Mar 2023 10:27:36 -0500 Received: by mail-ed1-x534.google.com with SMTP id g3so21714874eda.1 for ; Sat, 04 Mar 2023 07:27:10 -0800 (PST) Received: from Provence.localdomain (dynamic-077-183-004-175.77.183.pool.telefonica.de. [77.183.4.175]) by smtp.gmail.com with ESMTPSA id h7-20020a170906398700b008dd6bf721c2sm2170540eje.106.2023.03.04.07.27.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Mar 2023 07:27:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1677943629; 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=Cv7RSnZYYMp3BxNHAK5pG1yMVnE9Pc0AJgvfjnGnrII=; b=FxwNMvnlbCjE9h/N8SpdeMtVSaDYKhuvqjE9rBK7pUiFBTZ/bD0LGUpKHURVQHkOzo xN5h0hyxY6RC/PCbpJ/5YLswVmpPhafHH5xBgEL0fuG1VDEabYqDa8WHy0txJ5gUIFcD ZOtw2shdYqs4IdZGa69sIYh4o33ZYPOO6pTzx2MOmB5sEPCVvEPK8M9oPIntysCKqOPS 52RTRmWnKJ/bwsJyQWONhDJV/kRltxlW9hkGeTu+eQIsSrFtE4uDlKlYmacCR1lOmzYt xs4pEPyXMG7eZoWZ9Q4OqCdjcLmEOX8yR3RoZjqWKbuv1o4OXxGxvoBKLBi+VvNoUjg7 54/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677943629; 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=Cv7RSnZYYMp3BxNHAK5pG1yMVnE9Pc0AJgvfjnGnrII=; b=CfWJ/eDyKTYx/NxNgCAWTwn4Lt6XGMEXNm9wYgs6VP8JARj+iyqLJRuBazf3TwcZ36 ciMMrHw92I9QUiSsLLCbEQCxMdHkNfFd/5EUXyc+SMdWDQ/5oRV7ZzaJxh7XjI35iXpe ZNXXmHR5SDOsv+0b2nTDcx8M8AfIFDGXCpwLEUcUO5wwjR8SdrCnZjtAzmTHdPj45em/ fBdfUDHZT0bePCbOEOTJ9wy5vTHScLDbRJ+eEkxukgWfTWXGdTi0qsMRZ33UJFVsf/Ol 6cwSCM0ka7ycrGWnFgj4BhiFtqGKMDrnCvrY4xlZ8zjRITNIGBmxBOw4sjUkcVhN7J33 yLTw== X-Gm-Message-State: AO0yUKUSujwqVWP00CtZtrWpa0wVnJKg9u0QLVRA1kCWoOE3lWLitEMp toPHHWKfYAvgFhf+N6PcGlRUJdw/3JE= X-Google-Smtp-Source: AK7set902Pa0MK76ndvz66jRoedWF/TcumBePqH+1PiqPTkqMtVQOlon76PHTZlHE7JuJo0xyiPvpw== X-Received: by 2002:a17:906:6d53:b0:8b1:2614:edfe with SMTP id a19-20020a1709066d5300b008b12614edfemr8282011ejt.9.1677943629633; Sat, 04 Mar 2023 07:27:09 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Richard Henderson , Marcel Apfelbaum , Bernhard Beschow Subject: [PATCH v2 13/13] hw/pci-host/q35: Move MemoryRegion pointers to host device Date: Sat, 4 Mar 2023 16:26:48 +0100 Message-Id: <20230304152648.103749-14-shentey@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230304152648.103749-1-shentey@gmail.com> References: <20230304152648.103749-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::534; envelope-from=shentey@gmail.com; helo=mail-ed1-x534.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, FREEMAIL_FROM=0.001, 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-devel@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-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1677943737920100001 Content-Type: text/plain; charset="utf-8" The pointers are set through the host device's properties and are only used during its realization phase. Signed-off-by: Bernhard Beschow --- include/hw/pci-host/q35.h | 10 +++---- hw/pci-host/q35.c | 56 +++++++++++++++++++-------------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/include/hw/pci-host/q35.h b/include/hw/pci-host/q35.h index a04d5f1a17..9b9ce48ca8 100644 --- a/include/hw/pci-host/q35.h +++ b/include/hw/pci-host/q35.h @@ -40,11 +40,6 @@ struct MCHPCIState { PCIDevice parent_obj; /*< public >*/ =20 - MemoryRegion *ram_memory; - MemoryRegion *pci_address_space; - MemoryRegion *system_memory; - MemoryRegion *address_space_io; - MemoryRegion *smram; PAMMemoryRegion pam_regions[PAM_REGIONS_COUNT]; MemoryRegion smram_region, open_high_smram; MemoryRegion low_smram, high_smram; @@ -61,6 +56,11 @@ struct Q35PCIHost { PCIExpressHost parent_obj; /*< public >*/ =20 + MemoryRegion *ram_memory; + MemoryRegion *pci_address_space; + MemoryRegion *system_memory; + MemoryRegion *address_space_io; + MemoryRegion *smram; Range pci_hole; uint64_t pci_hole64_size; uint32_t short_root_bus; diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 1e0f5b4fbf..769bdffcc2 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -79,11 +79,11 @@ static void q35_host_realize(DeviceState *dev, Error **= errp) return; } =20 - memory_region_add_subregion(s->mch.address_space_io, + memory_region_add_subregion(s->address_space_io, MCH_HOST_BRIDGE_CONFIG_ADDR, &phb->conf_me= m); sysbus_init_ioports(sbd, MCH_HOST_BRIDGE_CONFIG_ADDR, 4); =20 - memory_region_add_subregion(s->mch.address_space_io, + memory_region_add_subregion(s->address_space_io, MCH_HOST_BRIDGE_CONFIG_DATA, &phb->data_me= m); sysbus_init_ioports(sbd, MCH_HOST_BRIDGE_CONFIG_DATA, 4); =20 @@ -99,47 +99,47 @@ static void q35_host_realize(DeviceState *dev, Error **= errp) IO_APIC_DEFAULT_ADDRESS - 1); =20 /* setup pci memory mapping */ - pc_pci_as_mapping_init(s->mch.system_memory, s->mch.pci_address_space); + pc_pci_as_mapping_init(s->system_memory, s->pci_address_space); =20 /* if *disabled* show SMRAM to all CPUs */ memory_region_init_alias(&s->mch.smram_region, OBJECT(s), "smram-regio= n", - s->mch.pci_address_space, MCH_HOST_BRIDGE_SMR= AM_C_BASE, + s->pci_address_space, MCH_HOST_BRIDGE_SMRAM_C= _BASE, MCH_HOST_BRIDGE_SMRAM_C_SIZE); - memory_region_add_subregion_overlap(s->mch.system_memory, MCH_HOST_BRI= DGE_SMRAM_C_BASE, + memory_region_add_subregion_overlap(s->system_memory, MCH_HOST_BRIDGE_= SMRAM_C_BASE, &s->mch.smram_region, 1); memory_region_set_enabled(&s->mch.smram_region, true); =20 memory_region_init_alias(&s->mch.open_high_smram, OBJECT(s), "smram-op= en-high", - s->mch.ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BA= SE, + s->ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BASE, MCH_HOST_BRIDGE_SMRAM_C_SIZE); - memory_region_add_subregion_overlap(s->mch.system_memory, 0xfeda0000, + memory_region_add_subregion_overlap(s->system_memory, 0xfeda0000, &s->mch.open_high_smram, 1); memory_region_set_enabled(&s->mch.open_high_smram, false); =20 /* smram, as seen by SMM CPUs */ memory_region_init_alias(&s->mch.low_smram, OBJECT(s), "smram-low", - s->mch.ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BA= SE, + s->ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BASE, MCH_HOST_BRIDGE_SMRAM_C_SIZE); memory_region_set_enabled(&s->mch.low_smram, true); - memory_region_add_subregion(s->mch.smram, MCH_HOST_BRIDGE_SMRAM_C_BASE, + memory_region_add_subregion(s->smram, MCH_HOST_BRIDGE_SMRAM_C_BASE, &s->mch.low_smram); memory_region_init_alias(&s->mch.high_smram, OBJECT(s), "smram-high", - s->mch.ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BA= SE, + s->ram_memory, MCH_HOST_BRIDGE_SMRAM_C_BASE, MCH_HOST_BRIDGE_SMRAM_C_SIZE); memory_region_set_enabled(&s->mch.high_smram, true); - memory_region_add_subregion(s->mch.smram, 0xfeda0000, &s->mch.high_smr= am); + memory_region_add_subregion(s->smram, 0xfeda0000, &s->mch.high_smram); =20 memory_region_init_io(&s->mch.tseg_blackhole, OBJECT(s), &blackhole_ops, NULL, "tseg-blackhole", 0); memory_region_set_enabled(&s->mch.tseg_blackhole, false); - memory_region_add_subregion_overlap(s->mch.system_memory, + memory_region_add_subregion_overlap(s->system_memory, s->mch.below_4g_mem_size, &s->mch.tseg_blackhole, 1); =20 memory_region_init_alias(&s->mch.tseg_window, OBJECT(s), "tseg-window", - s->mch.ram_memory, s->mch.below_4g_mem_size, = 0); + s->ram_memory, s->mch.below_4g_mem_size, 0); memory_region_set_enabled(&s->mch.tseg_window, false); - memory_region_add_subregion(s->mch.smram, s->mch.below_4g_mem_size, + memory_region_add_subregion(s->smram, s->mch.below_4g_mem_size, &s->mch.tseg_window); =20 /* @@ -150,30 +150,30 @@ static void q35_host_realize(DeviceState *dev, Error = **errp) NULL, "smbase-blackhole", MCH_HOST_BRIDGE_SMBASE_SIZE); memory_region_set_enabled(&s->mch.smbase_blackhole, false); - memory_region_add_subregion_overlap(s->mch.system_memory, + memory_region_add_subregion_overlap(s->system_memory, MCH_HOST_BRIDGE_SMBASE_ADDR, &s->mch.smbase_blackhole, 1); =20 memory_region_init_alias(&s->mch.smbase_window, OBJECT(s), - "smbase-window", s->mch.ram_memory, + "smbase-window", s->ram_memory, MCH_HOST_BRIDGE_SMBASE_ADDR, MCH_HOST_BRIDGE_SMBASE_SIZE); memory_region_set_enabled(&s->mch.smbase_window, false); - memory_region_add_subregion(s->mch.smram, MCH_HOST_BRIDGE_SMBASE_ADDR, + memory_region_add_subregion(s->smram, MCH_HOST_BRIDGE_SMBASE_ADDR, &s->mch.smbase_window); =20 - init_pam(&s->mch.pam_regions[0], OBJECT(s), s->mch.ram_memory, - s->mch.system_memory, s->mch.pci_address_space, + init_pam(&s->mch.pam_regions[0], OBJECT(s), s->ram_memory, + s->system_memory, s->pci_address_space, PAM_BIOS_BASE, PAM_BIOS_SIZE); for (i =3D 0; i < ARRAY_SIZE(s->mch.pam_regions) - 1; ++i) { - init_pam(&s->mch.pam_regions[i + 1], OBJECT(s), s->mch.ram_memory, - s->mch.system_memory, s->mch.pci_address_space, + init_pam(&s->mch.pam_regions[i + 1], OBJECT(s), s->ram_memory, + s->system_memory, s->pci_address_space, PAM_EXPAN_BASE + i * PAM_EXPAN_SIZE, PAM_EXPAN_SIZE); } =20 phb->bus =3D pci_root_bus_new(DEVICE(s), "pcie.0", - s->mch.pci_address_space, - s->mch.address_space_io, + s->pci_address_space, + s->address_space_io, 0, TYPE_PCIE_BUS); =20 qdev_realize(DEVICE(&s->mch), BUS(phb->bus), errp); @@ -346,23 +346,23 @@ static void q35_host_initfn(Object *obj) &pehb->size, OBJ_PROP_FLAG_READ); =20 object_property_add_link(obj, MCH_HOST_PROP_RAM_MEM, TYPE_MEMORY_REGIO= N, - (Object **) &s->mch.ram_memory, + (Object **) &s->ram_memory, qdev_prop_allow_set_link_before_realize, 0); =20 object_property_add_link(obj, MCH_HOST_PROP_SMRAM_MEM, TYPE_MEMORY_REG= ION, - (Object **) &s->mch.smram, + (Object **) &s->smram, qdev_prop_allow_set_link_before_realize, 0); =20 object_property_add_link(obj, MCH_HOST_PROP_PCI_MEM, TYPE_MEMORY_REGIO= N, - (Object **) &s->mch.pci_address_space, + (Object **) &s->pci_address_space, qdev_prop_allow_set_link_before_realize, 0); =20 object_property_add_link(obj, MCH_HOST_PROP_SYSTEM_MEM, TYPE_MEMORY_RE= GION, - (Object **) &s->mch.system_memory, + (Object **) &s->system_memory, qdev_prop_allow_set_link_before_realize, 0); =20 object_property_add_link(obj, MCH_HOST_PROP_IO_MEM, TYPE_MEMORY_REGION, - (Object **) &s->mch.address_space_io, + (Object **) &s->address_space_io, qdev_prop_allow_set_link_before_realize, 0); } =20 --=20 2.39.2