Skip to content
This repository has been archived by the owner on May 6, 2020. It is now read-only.

Commit

Permalink
Merge pull request #133 from devimc/native_hotplug
Browse files Browse the repository at this point in the history
kernel: add support for native hot plug
  • Loading branch information
gorozco1 authored Oct 4, 2017
2 parents 4fcb49e + b910c77 commit d6fe783
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 191 deletions.
2 changes: 0 additions & 2 deletions kernel/debian.series
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
0103-sysrq-skip-synchronize_rcu-if-there-is-no-old-op.patch
0104-fbcon-enable-no-blink-by-default.patch
0105-vmstats-wakeups.patch
0106-pci-probe.patch
0107-cgroup.patch
0108-smpboot-reuse-timer-calibration.patch
0109-perf.patch
Expand All @@ -17,6 +16,5 @@
0204-rdrand.patch
0205-reboot.patch
0206-no-early-modprobe.patch
0207-pci-guest-kernel-set-pci-net-class-bar-to-4.patch
0208-Show-restart-information-using-info-log.patch
0002-UBUNTU-SAUCE-no-up-disable-pie-when-gcc-has-it-enabl.patch
22 changes: 16 additions & 6 deletions kernel/kernel-config-4.9.x
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 4.9.4 Kernel Configuration
# Linux/x86 4.9.47 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
Expand Down Expand Up @@ -581,8 +581,15 @@ CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
# CONFIG_PCI_CNB20LE_QUIRK is not set
CONFIG_PCIEPORTBUS=y
# CONFIG_PCIEAER is not set
# CONFIG_PCIEASPM is not set
CONFIG_HOTPLUG_PCI_PCIE=y
CONFIG_PCIEAER=y
# CONFIG_PCIE_ECRC is not set
# CONFIG_PCIEAER_INJECT is not set
CONFIG_PCIEASPM=y
# CONFIG_PCIEASPM_DEBUG is not set
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
# CONFIG_PCIE_DPC is not set
# CONFIG_PCIE_PTM is not set
CONFIG_PCI_BUS_ADDR_T_64BIT=y
Expand All @@ -596,7 +603,10 @@ CONFIG_PCI_MSI_IRQ_DOMAIN=y
# CONFIG_PCI_PRI is not set
# CONFIG_PCI_PASID is not set
CONFIG_PCI_LABEL=y
# CONFIG_HOTPLUG_PCI is not set
CONFIG_HOTPLUG_PCI=y
# CONFIG_HOTPLUG_PCI_ACPI is not set
# CONFIG_HOTPLUG_PCI_CPCI is not set
# CONFIG_HOTPLUG_PCI_SHPC is not set

#
# PCI host controller drivers
Expand Down Expand Up @@ -1326,7 +1336,7 @@ CONFIG_NET_VENDOR_INTEL=y
# CONFIG_IGBVF is not set
# CONFIG_IXGB is not set
CONFIG_IXGBE=y
CONFIG_IXGBEVF=y
# CONFIG_IXGBEVF is not set
# CONFIG_I40E is not set
# CONFIG_I40EVF is not set
# CONFIG_FM10K is not set
Expand Down Expand Up @@ -1822,7 +1832,7 @@ CONFIG_ARM_GIC_MAX_NR=1
#
# Performance monitor support
#
# CONFIG_RAS is not set
CONFIG_RAS=y
# CONFIG_THUNDERBOLT is not set

#
Expand Down
4 changes: 0 additions & 4 deletions kernel/linux-container.spec-template
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ Patch0102: 0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch
Patch0103: 0103-sysrq-skip-synchronize_rcu-if-there-is-no-old-op.patch
Patch0104: 0104-fbcon-enable-no-blink-by-default.patch
Patch0105: 0105-vmstats-wakeups.patch
Patch0106: 0106-pci-probe.patch
Patch0107: 0107-cgroup.patch
Patch0108: 0108-smpboot-reuse-timer-calibration.patch
Patch0109: 0109-perf.patch
Expand All @@ -56,7 +55,6 @@ Patch0203: 0203-fs-9p-fix-create-unlink-getattr-idiom.patch
Patch0204: 0204-rdrand.patch
Patch0205: 0205-reboot.patch
Patch0206: 0206-no-early-modprobe.patch
Patch0207: 0207-pci-guest-kernel-set-pci-net-class-bar-to-4.patch
Patch0208: 0208-Show-restart-information-using-info-log.patch

# Serie XYYY: Extra features modules
Expand All @@ -73,7 +71,6 @@ The Linux kernel.
%patch0103 -p1
%patch0104 -p1
%patch0105 -p1
%patch0106 -p1
%patch0107 -p1
%patch0108 -p1
%patch0109 -p1
Expand All @@ -90,7 +87,6 @@ The Linux kernel.
%patch0204 -p1
%patch0205 -p1
%patch0206 -p1
%patch0207 -p1
%patch0208 -p1

# Serie XYYY: Extra features modules
Expand Down
123 changes: 0 additions & 123 deletions kernel/patches-4.9.x/0106-pci-probe.patch

This file was deleted.

20 changes: 10 additions & 10 deletions kernel/patches-4.9.x/0110-pci-probe-identify-known-devices.patch
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 3815fc20e3b97a003fd1ae6c5d5116ed5400baaf Mon Sep 17 00:00:00 2001
From: Arjan van de Ven <arjan@linux.intel.com>
Date: Sat, 14 Feb 2015 09:49:41 -0600
Subject: [PATCH 110/114] pci: probe: identify known devices
From 3ef83534a6216dc2c3b19fb1e74ee0db9fa4257e Mon Sep 17 00:00:00 2001
From: Julio Montes <julio.montes@intel.com>
Date: Fri, 29 Sep 2017 08:11:13 -0500
Subject: [PATCH] pci: probe: identify known devices

Author: Arjan van de Ven <[email protected]>
Modify-by: Miguel Bernal Marin <[email protected]>
Expand All @@ -12,7 +12,7 @@ Signed-off-by: Miguel Bernal Marin <[email protected]>
1 file changed, 156 insertions(+)

diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
index e3377cd5a632..cbe81b100d51 100644
index d266d80..c182443 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
@@ -163,6 +163,159 @@ static inline unsigned long decode_bar(struct pci_dev *dev, u32 bar)
Expand Down Expand Up @@ -175,16 +175,16 @@ index e3377cd5a632..cbe81b100d51 100644
/**
* pci_read_base - read a PCI BAR
* @dev: the PCI device
@@ -182,6 +335,9 @@ int __pci_read_base(struct pci_dev *dev, enum pci_bar_type type,

mask = type ? PCI_ROM_ADDRESS_MASK : ~0;
@@ -191,6 +344,9 @@ int __pci_read_base(struct pci_dev *dev, enum pci_bar_type type,
}
}

+ if (is_known_device(dev, pos, &sz))
+ return __pci_read_base_shortcut(dev, type, res, pos, sz, 0);
+
res->name = pci_name(dev);

printk("clr: Starting probe for %s\n", res->name);
pci_read_config_dword(dev, pos, &l);
--
2.11.0
2.7.5

This file was deleted.

0 comments on commit d6fe783

Please sign in to comment.