[LEDE-DEV] [PATCH] x86: 64: enable pci hotplug and acpipnp

Yousong Zhou yszhou4tech at gmail.com
Mon Oct 10 06:11:18 PDT 2016


This will allow dynamically adding/removing at least virtio-net pci
devices which are quite the norm in cloud environment with QEMU/KVM

    netdev_add bridge,id=wan2,br=br-wan,helper=/home/yousong/.usr/libexec/qemu-bridge-helper
    device_add virtio-net-pci,id=devwan2,netdev=wan2,mac=11:22:33:22:11:00

The config was formed by selecting target x86/64 first, then select
CONFIG_HOTPLUG_PCI and CONFIG_HOTPLUG_PCI_ACPI with

    make kernel_menuconfig CONFIG_TARGET=subtarget

The following text tries to explain how the current config was formed

 1. CONFIG_PCI_LABEL and CONFIG_ATA_PIIX were removed because they were
    already enabled in x86 platform config
 2. CONFIG_ATA_SFF was removed because it was enabled in generic config
 3. CONFIG_NLS was removed because it will be selected by CONFIG_PCI_LABEL

Signed-off-by: Yousong Zhou <yszhou4tech at gmail.com>
---
 target/linux/x86/64/config-default | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/target/linux/x86/64/config-default b/target/linux/x86/64/config-default
index 216db70..646e773 100644
--- a/target/linux/x86/64/config-default
+++ b/target/linux/x86/64/config-default
@@ -40,9 +40,6 @@ CONFIG_ARCH_SUPPORTS_INT128=y
 CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
 CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
 CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_PIIX=y
-CONFIG_PATA_ATIIXP=y
 CONFIG_AUDIT_ARCH=y
 # CONFIG_BACKLIGHT_APPLE is not set
 CONFIG_BACKLIGHT_CLASS_DEVICE=y
@@ -109,6 +106,12 @@ CONFIG_HAVE_MEMORY_PRESENT=y
 CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
 CONFIG_HID=y
 CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_ACPI=y
+# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
+# CONFIG_HOTPLUG_PCI_CPCI is not set
+# CONFIG_HOTPLUG_PCI_PCIE is not set
+# CONFIG_HOTPLUG_PCI_SHPC is not set
 CONFIG_HPET=y
 CONFIG_HPET_MMAP=y
 # CONFIG_HP_ACCEL is not set
@@ -156,7 +159,6 @@ CONFIG_MODULES_USE_ELF_RELA=y
 CONFIG_MUTEX_SPIN_ON_OWNER=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_NET_FLOW_LIMIT=y
-CONFIG_NLS=y
 CONFIG_NR_CPUS=8
 # CONFIG_NUMA is not set
 CONFIG_OUTPUT_FORMAT="elf64-x86-64"
@@ -165,10 +167,10 @@ CONFIG_PARAVIRT_CLOCK=y
 # CONFIG_PARAVIRT_DEBUG is not set
 CONFIG_PARAVIRT_SPINLOCKS=y
 # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
+CONFIG_PATA_ATIIXP=y
 CONFIG_PCIEAER=y
 CONFIG_PCIEPORTBUS=y
 CONFIG_PCI_BUS_ADDR_T_64BIT=y
-CONFIG_PCI_LABEL=y
 # CONFIG_PCI_MMCONFIG is not set
 CONFIG_PGTABLE_LEVELS=4
 CONFIG_PHYSICAL_ALIGN=0x1000000
@@ -241,9 +243,8 @@ CONFIG_X86_64=y
 CONFIG_X86_64_SMP=y
 CONFIG_X86_ACPI_CPUFREQ=y
 # CONFIG_X86_ACPI_CPUFREQ_CPB is not set
-# CONFIG_X86_POWERNOW_K8 is not set
-# CONFIG_X86_AMD_PLATFORM_DEVICE is not set
 CONFIG_X86_AMD_FREQ_SENSITIVITY=y
+# CONFIG_X86_AMD_PLATFORM_DEVICE is not set
 CONFIG_X86_CMOV=y
 CONFIG_X86_CMPXCHG64=y
 CONFIG_X86_DEBUGCTLMSR=y
@@ -255,6 +256,7 @@ CONFIG_X86_MINIMUM_CPU_FAMILY=64
 # CONFIG_X86_PCC_CPUFREQ is not set
 # CONFIG_X86_PMEM_LEGACY is not set
 CONFIG_X86_PM_TIMER=y
+# CONFIG_X86_POWERNOW_K8 is not set
 CONFIG_X86_TSC=y
 # CONFIG_X86_VSYSCALL_EMULATION is not set
 CONFIG_X86_X2APIC=y
-- 
2.6.4




More information about the Lede-dev mailing list