From nobody Sun Oct 5 01:45:06 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1551727687963480.73917869433865; Mon, 4 Mar 2019 11:28:07 -0800 (PST) Received: from localhost ([127.0.0.1]:59614 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h0tFs-00083C-Mf for importer@patchew.org; Mon, 04 Mar 2019 14:28:04 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45917) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h0sCb-0001xl-OH for qemu-devel@nongnu.org; Mon, 04 Mar 2019 13:20:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h0sCa-00049z-KR for qemu-devel@nongnu.org; Mon, 04 Mar 2019 13:20:37 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]:50738) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1h0sCa-00047L-4s for qemu-devel@nongnu.org; Mon, 04 Mar 2019 13:20:36 -0500 Received: by mail-wm1-x32a.google.com with SMTP id x7so147855wmj.0 for ; Mon, 04 Mar 2019 10:20:36 -0800 (PST) Received: from 640k.lan ([93.56.166.5]) by smtp.gmail.com with ESMTPSA id q5sm8371364wrn.43.2019.03.04.10.20.33 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Mar 2019 10:20:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=izgnDyQVAdFJ8UW1fbFJt/NwB6XYiPr1oxKLm0a53Do=; b=OvEMy0GwT4i+ZJu52Dc0qROjVLIB6xRJvyYT89UbQr/T1dQk7aWokDi1eTpP2cFkm2 aStoic1XFmbDi6ZKLf1KQ3zy6eK4zdEgpnkcP90dLhVJ8JiB7b5kz+t4tPNouDulTKPC tbMwq5mSoYdNYeHc3AtcnIeequjdgvq6RSi8Jv2KLY6+it+WyiUTcx6oezuCR9b7iuAi pDXTXsPvu05at7nj/9Z17zosHICGsttqZnOB12Cc9yyI2m/HbTMr+PXsFdbGU0d8Oxg5 Eq9yFNKp/TRADU7qSnLujYwdQNuPDn0sVNqetCr//RPdqf5ms9yRs4iprGDoRWu5X+ln 2oaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=izgnDyQVAdFJ8UW1fbFJt/NwB6XYiPr1oxKLm0a53Do=; b=ncw4A0ax8h8MZkEy3/FYkGm1jVElrOi0ji+bDnk+VNZSh28sFUZN2Iaq2uwX5GjLtF 4IU2gTNoDV3yq241hd/G4GEcKvqGmQ0HZ/DemwxiBRkQd932hxI/dcwgOZT/rYwTOAMy 53YSmQBDq0xy4Nblz7XiNfi7xsrGKao+l8SK0t9Vjw07L7pnikBPKd0Yl+d4nmTm8Q58 0ihjzJ6nNFs1t64Jb6pzybE7i4j+504myicPgNodGSzF1MMNT+Qin7xMN+Tv74Xjw6In S2X9KeNq8r3a051IuUl8AT6wHvOSdFxLg1Acz7amzoaALflduLGv/relkI71rqVl9AyM vFYA== X-Gm-Message-State: APjAAAV0gzZ+GtIcGTYxXYXojCszjcDDorB9Svt68psZwwObjiZ3RH6J L6Opv69cFEZLuTtJINWRW+o1oGMu X-Google-Smtp-Source: APXvYqzOjyGy6+CsxOFsP6oOPIvOxYLdFhfw3Q44IMitGW2ziCTldbckRtzDU2grgVs1A2iOF+jIxw== X-Received: by 2002:a1c:c404:: with SMTP id u4mr275203wmf.87.1551723634705; Mon, 04 Mar 2019 10:20:34 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Mon, 4 Mar 2019 19:19:39 +0100 Message-Id: <1551723614-1823-20-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1551723614-1823-1-git-send-email-pbonzini@redhat.com> References: <1551723614-1823-1-git-send-email-pbonzini@redhat.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::32a Subject: [Qemu-devel] [PULL 19/54] i386: express dependencies with Kconfig X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yang Zhong , thuth@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" This way, the default-configs file only need to specify the boards and any optional devices. Signed-off-by: Paolo Bonzini Signed-off-by: Yang Zhong Message-Id: <20190123065618.3520-37-yang.zhong@intel.com> Signed-off-by: Paolo Bonzini --- default-configs/i386-softmmu.mak | 45 ++++++++---------------------------- hw/acpi/Kconfig | 3 +++ hw/i2c/Makefile.objs | 2 +- hw/i386/Kconfig | 50 ++++++++++++++++++++++++++++++++++++= ++++ hw/i386/Makefile.objs | 5 ++-- hw/isa/Kconfig | 1 + hw/pci-host/Kconfig | 4 ++++ hw/tpm/Kconfig | 2 ++ 8 files changed, 73 insertions(+), 39 deletions(-) diff --git a/default-configs/i386-softmmu.mak b/default-configs/i386-softmm= u.mak index 54b571f..ed234c1 100644 --- a/default-configs/i386-softmmu.mak +++ b/default-configs/i386-softmmu.mak @@ -1,12 +1,6 @@ # Default configuration for i386-softmmu =20 -CONFIG_PCI=3Dy -CONFIG_PCI_DEVICES=3Dy -CONFIG_ISA_BUS=3Dy include hyperv.mak -CONFIG_TEST_DEVICES=3Dy -CONFIG_VGA_ISA=3Dy -CONFIG_VMWARE_VGA=3Dy CONFIG_VMXNET3_PCI=3Dy CONFIG_VIRTIO_VGA=3Dy CONFIG_IPMI=3Dy @@ -14,49 +8,28 @@ CONFIG_IPMI_LOCAL=3Dy CONFIG_IPMI_EXTERN=3Dy CONFIG_ISA_IPMI_KCS=3Dy CONFIG_ISA_IPMI_BT=3Dy -CONFIG_I8254=3Dy -CONFIG_ACPI=3Dy -CONFIG_ACPI_X86=3Dy -CONFIG_ACPI_X86_ICH=3Dy -CONFIG_ACPI_MEMORY_HOTPLUG=3Dy -CONFIG_ACPI_CPU_HOTPLUG=3Dy -CONFIG_APM=3Dy -CONFIG_I8257=3Dy -CONFIG_IDE_ISA=3Dy -CONFIG_IDE_PIIX=3Dy + +# Optional devices: +# CONFIG_HPET=3Dy CONFIG_APPLESMC=3Dy -CONFIG_I8259=3Dy CONFIG_PFLASH_CFI01=3Dy -CONFIG_MC146818RTC=3Dy -CONFIG_PCI_PIIX=3Dy CONFIG_ISA_DEBUG=3Dy CONFIG_ISA_TESTDEV=3Dy -CONFIG_VMPORT=3Dy +CONFIG_TEST_DEVICES=3Dy CONFIG_SGA=3Dy -CONFIG_LPC_ICH9=3Dy -CONFIG_PCI_EXPRESS=3Dy -CONFIG_PCI_EXPRESS_Q35=3Dy -CONFIG_APIC=3Dy -CONFIG_IOAPIC=3Dy CONFIG_PVPANIC=3Dy CONFIG_MEM_DEVICE=3Dy -CONFIG_DIMM=3Dy CONFIG_NVDIMM=3Dy CONFIG_ACPI_NVDIMM=3Dy -CONFIG_XIO3130=3Dy -CONFIG_IOH3420=3Dy -CONFIG_I82801B11=3Dy -CONFIG_SMBIOS=3Dy CONFIG_PXB=3Dy CONFIG_ACPI_VMGENID=3Dy -CONFIG_ACPI_SMBUS=3Dy CONFIG_SMBUS_EEPROM=3Dy -CONFIG_FW_CFG_DMA=3Dy CONFIG_I2C=3Dy -CONFIG_VTD=3Dy -CONFIG_AMD_IOMMU=3Dy -CONFIG_PAM=3Dy -CONFIG_PC=3Dy +CONFIG_PCI_DEVICES=3Dy + +# Boards: +# +CONFIG_ISAPC=3Dy CONFIG_I440FX=3Dy CONFIG_Q35=3Dy diff --git a/hw/acpi/Kconfig b/hw/acpi/Kconfig index c485a34..035a28f 100644 --- a/hw/acpi/Kconfig +++ b/hw/acpi/Kconfig @@ -3,15 +3,18 @@ config ACPI =20 config ACPI_X86 bool + select ACPI =20 config ACPI_X86_ICH bool + select ACPI_X86 =20 config ACPI_CPU_HOTPLUG bool =20 config ACPI_MEMORY_HOTPLUG bool + select MEM_DEVICE =20 config ACPI_NVDIMM bool diff --git a/hw/i2c/Makefile.objs b/hw/i2c/Makefile.objs index 9205cbe..2a3c106 100644 --- a/hw/i2c/Makefile.objs +++ b/hw/i2c/Makefile.objs @@ -2,7 +2,7 @@ common-obj-$(CONFIG_I2C) +=3D core.o smbus_slave.o smbus_ma= ster.o common-obj-$(CONFIG_SMBUS_EEPROM) +=3D smbus_eeprom.o common-obj-$(CONFIG_DDC) +=3D i2c-ddc.o common-obj-$(CONFIG_VERSATILE_I2C) +=3D versatile_i2c.o -common-obj-$(CONFIG_ACPI_X86) +=3D smbus_ich9.o +common-obj-$(CONFIG_ACPI_X86_ICH) +=3D smbus_ich9.o common-obj-$(CONFIG_ACPI_SMBUS) +=3D pm_smbus.o common-obj-$(CONFIG_BITBANG_I2C) +=3D bitbang_i2c.o common-obj-$(CONFIG_EXYNOS4) +=3D exynos4210_i2c.o diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig index 0b3c8d9..081855e 100644 --- a/hw/i386/Kconfig +++ b/hw/i386/Kconfig @@ -8,16 +8,65 @@ config PC imply QXL imply SEV imply TPM_TIS + select FDC + select I8259 + select I8254 + select PCSPK + select I82374 + select I8257 + select MC146818RTC + +config PC_PCI + bool + select APIC + select IOAPIC + select APM + select PC + +config PC_ACPI + bool + select ACPI_X86 + select ACPI_CPU_HOTPLUG + select ACPI_MEMORY_HOTPLUG + depends on ACPI_SMBUS =20 config I440FX bool + select PC_PCI + select PC_ACPI + select ACPI_SMBUS + select PCI_PIIX + select IDE_PIIX + select DIMM + select SMBIOS + select VMPORT + select VMMOUSE + select FW_CFG_DMA =20 config ISAPC bool select ISA_BUS + select PC + select IDE_ISA + select VGA_ISA + # FIXME: it is in the same file as i440fx, and does not compile + # if separated + depends on I440FX =20 config Q35 bool + imply VTD + imply AMD_IOMMU + select PC_PCI + select PC_ACPI + select PCI_EXPRESS_Q35 + select LPC_ICH9 + select AHCI + select DIMM + select SMBIOS + select VMPORT + select VMMOUSE + select FW_CFG_DMA =20 config VTD bool @@ -30,3 +79,4 @@ config VMPORT =20 config VMMOUSE bool + depends on VMPORT diff --git a/hw/i386/Makefile.objs b/hw/i386/Makefile.objs index 3de7ca2..27248a0 100644 --- a/hw/i386/Makefile.objs +++ b/hw/i386/Makefile.objs @@ -4,8 +4,9 @@ obj-y +=3D pc.o obj-$(CONFIG_I440FX) +=3D pc_piix.o obj-$(CONFIG_Q35) +=3D pc_q35.o obj-y +=3D pc_sysfw.o -obj-$(CONFIG_VTD) +=3D x86-iommu.o intel_iommu.o -obj-$(CONFIG_AMD_IOMMU) +=3D x86-iommu.o amd_iommu.o +obj-y +=3D x86-iommu.o +obj-$(CONFIG_VTD) +=3D intel_iommu.o +obj-$(CONFIG_AMD_IOMMU) +=3D amd_iommu.o obj-$(CONFIG_XEN) +=3D ../xenpv/ xen/ obj-$(CONFIG_VMPORT) +=3D vmport.o obj-$(CONFIG_VMMOUSE) +=3D vmmouse.o diff --git a/hw/isa/Kconfig b/hw/isa/Kconfig index af68af9..6f0812d 100644 --- a/hw/isa/Kconfig +++ b/hw/isa/Kconfig @@ -27,4 +27,5 @@ config SMC37C669 config LPC_ICH9 bool select ISA_BUS + select ACPI_SMBUS select ACPI_X86_ICH diff --git a/hw/pci-host/Kconfig b/hw/pci-host/Kconfig index c01812a..ff4080c 100644 --- a/hw/pci-host/Kconfig +++ b/hw/pci-host/Kconfig @@ -27,10 +27,14 @@ config PCI_SABRE =20 config PCI_PIIX bool + select PCI + select PAM + select ISA_BUS =20 config PCI_EXPRESS_Q35 bool select PCI_EXPRESS + select PAM =20 config PCI_EXPRESS_GENERIC_BRIDGE bool diff --git a/hw/tpm/Kconfig b/hw/tpm/Kconfig index e781995..5c1ffa7 100644 --- a/hw/tpm/Kconfig +++ b/hw/tpm/Kconfig @@ -4,6 +4,8 @@ config TPM_TIS =20 config TPM_CRB bool + default y + depends on TPM && PC =20 config TPM_PASSTHROUGH bool --=20 1.8.3.1