From nobody Fri Nov 7 04:11:23 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=intel.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 15458930181261005.4097770599606; Wed, 26 Dec 2018 22:43:38 -0800 (PST) Received: from localhost ([127.0.0.1]:49762 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gcPOK-0003oc-GV for importer@patchew.org; Thu, 27 Dec 2018 01:43:36 -0500 Received: from eggs.gnu.org ([208.118.235.92]:54982) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gcPGo-0003Vg-Mm for qemu-devel@nongnu.org; Thu, 27 Dec 2018 01:35:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gcPGk-0004rD-Dl for qemu-devel@nongnu.org; Thu, 27 Dec 2018 01:35:50 -0500 Received: from mga11.intel.com ([192.55.52.93]:57867) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gcPGj-0004Bd-Ox for qemu-devel@nongnu.org; Thu, 27 Dec 2018 01:35:46 -0500 Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Dec 2018 22:35:27 -0800 Received: from he.bj.intel.com ([10.238.157.85]) by orsmga006.jf.intel.com with ESMTP; 26 Dec 2018 22:35:25 -0800 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,404,1539673200"; d="scan'208";a="103617338" From: Yang Zhong To: qemu-devel@nongnu.org Date: Thu, 27 Dec 2018 14:34:10 +0800 Message-Id: <20181227063419.12981-17-yang.zhong@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181227063419.12981-1-yang.zhong@intel.com> References: <20181227063419.12981-1-yang.zhong@intel.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 192.55.52.93 Subject: [Qemu-devel] [RFC PATCH 16/25] 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@intel.com, peter.maydell@linaro.org, thuth@redhat.com, sameo@linux.intel.com, pbonzini@redhat.com, ehabkost@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Paolo Bonzini 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 --- default-configs/i386-softmmu.mak | 32 +++++---------------- hw/acpi/Kconfig | 3 ++ hw/display/Kconfig | 1 + hw/i2c/Makefile.objs | 4 +-- hw/i386/Kconfig | 48 ++++++++++++++++++++++++++++---- hw/isa/Kconfig | 1 + hw/pci-host/Kconfig | 7 +++++ hw/tpm/Kconfig | 5 +++- 8 files changed, 67 insertions(+), 34 deletions(-) diff --git a/default-configs/i386-softmmu.mak b/default-configs/i386-softmm= u.mak index d664329ac1..d2e58edd17 100644 --- a/default-configs/i386-softmmu.mak +++ b/default-configs/i386-softmmu.mak @@ -1,10 +1,6 @@ # Default configuration for i386-softmmu =20 -CONFIG_PCI=3Dy -CONFIG_ISA=3Dy include hyperv.mak -CONFIG_VGA_ISA=3Dy -CONFIG_VMWARE_VGA=3Dy CONFIG_VMXNET3_PCI=3Dy CONFIG_VIRTIO_VGA=3Dy CONFIG_IPMI=3Dy @@ -12,39 +8,21 @@ 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_SGA=3Dy -CONFIG_LPC_ICH9=3Dy -CONFIG_PCI_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_PCIE_PORT=3Dy -CONFIG_XIO3130=3Dy -CONFIG_IOH3420=3Dy -CONFIG_I82801B11=3Dy CONFIG_SMBIOS=3Dy CONFIG_PXB=3Dy CONFIG_ACPI_VMGENID=3Dy @@ -53,5 +31,9 @@ CONFIG_I2C=3Dy CONFIG_SEV=3D$(CONFIG_KVM) CONFIG_VTD=3Dy CONFIG_AMD_IOMMU=3Dy + +# Boards: +# +CONFIG_ISAPC=3Dy CONFIG_I440FX=3Dy CONFIG_Q35=3Dy diff --git a/hw/acpi/Kconfig b/hw/acpi/Kconfig index 2f4871c10a..98bb3539e1 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/display/Kconfig b/hw/display/Kconfig index e0d7919a06..8ce968bfff 100644 --- a/hw/display/Kconfig +++ b/hw/display/Kconfig @@ -82,6 +82,7 @@ config VGA =20 config QXL bool + default y if PC depends on SPICE && PCI select VGA =20 diff --git a/hw/i2c/Makefile.objs b/hw/i2c/Makefile.objs index 37cacde978..48f7760379 100644 --- a/hw/i2c/Makefile.objs +++ b/hw/i2c/Makefile.objs @@ -1,8 +1,8 @@ common-obj-$(CONFIG_I2C) +=3D core.o smbus.o 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_APM) +=3D pm_smbus.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 common-obj-$(CONFIG_IMX_I2C) +=3D imx_i2c.o diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig index 68a9064558..f53a788a95 100644 --- a/hw/i386/Kconfig +++ b/hw/i386/Kconfig @@ -1,21 +1,57 @@ config KVM bool =20 -config I440FX +config PC bool - select QXL if SPICE + select ISA_DEBUG + select I8259 + select I8254 + select PCSPK + select I82374 + select I8257 + select MC146818RTC select TPM_TIS if TPM - select XEN_I386 if XEN + +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 + +config I440FX + bool + select PC_PCI + select PC_ACPI + select ACPI_SMBUS + select PCI_PIIX + select FDC + select IDE_PIIX =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 - select QXL if SPICE - select TPM_TIS if TPM - select XEN_I386 if XEN + select PC_PCI + select PC_ACPI + select PCI_Q35 + select LPC_ICH9 + select AHCI =20 config VTD bool diff --git a/hw/isa/Kconfig b/hw/isa/Kconfig index 3f451ef006..bf72e4fef2 100644 --- a/hw/isa/Kconfig +++ b/hw/isa/Kconfig @@ -25,4 +25,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 359df1d239..9d57c6cac9 100644 --- a/hw/pci-host/Kconfig +++ b/hw/pci-host/Kconfig @@ -21,9 +21,16 @@ config PCI_SABRE =20 config PCI_PIIX bool + select PAM + select PCI =20 config PCI_Q35 bool + select PAM + select PCI + select XIO3130 + select IOH3420 + select I82801B11 =20 config PCI_GENERIC bool diff --git a/hw/tpm/Kconfig b/hw/tpm/Kconfig index da4bb5b6c7..28acdb745e 100644 --- a/hw/tpm/Kconfig +++ b/hw/tpm/Kconfig @@ -3,10 +3,13 @@ config TPM =20 config TPM_TIS bool - depends on TPM + default y + depends on TPM && PC =20 config TPM_CRB bool + default y + depends on TPM && PC =20 config TPM_PASSTHROUGH bool --=20 2.17.1