linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Yinghai Lu <yinghai@kernel.org>
To: Bjorn Helgaas <bhelgaas@google.com>, Len Brown <lenb@kernel.org>,
	Taku Izumi <izumi.taku@jp.fujitsu.com>,
	Jiang Liu <jiang.liu@huawei.com>, x86 <x86@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-acpi@vger.kernel.org, Yinghai Lu <yinghai@kernel.org>
Subject: [PATCH 00/40] PCI, ACPI, x86: pci root bus hotplug support
Date: Wed, 19 Sep 2012 11:54:14 -0700	[thread overview]
Message-ID: <1348080894-23412-1-git-send-email-yinghai@kernel.org> (raw)
In-Reply-To: <CAE9FiQWFcVNKMnV1qaHchwCXfZuMpyxf_f7GQy3FZid9YuLD3w@mail.gmail.com>

It supports pci root bus removal with
	echo "PCI0 3" > /sys/kernel/debug/acpi/sci_notify

add with
	echo "PCI0 0" > /sys/kernel/debug/acpi/sci_notify

based on pci/next

We need to separate pci root bus add from acpiphp. so user could only root bus
hotplug and pciehp that will make system fw simple.
Also later CONFIG_HOTPLUG will be removed, so pci root bus hotplug will be
enabled by default and user still need select acpiphp and pciehp for normal
pci device hotplug support.

could get from
        git://git.kernel.org/pub/scm/linux/kernel/git/yinghai/linux-yinghai.git for-pci-root-bus-hotplug

-v6: do not depend on busn-alloc anymore.

part1: cleanup for pci/next
[PATCH 01/40] PCI: fix default vga ref_count
[PATCH 02/40] PCI, x86: clear initial value for root info resources
[PATCH 03/40] PCI, ia64: clear initial value for root info resources
[PATCH 04/40] PCI, acpiphp: Add is_hotplug_bridge detection
[PATCH 05/40] PCI: Add root bus children dev's res to fail list
[PATCH 06/40] PCI: Split out stop_bus_device and remove_bus_dev

part2: reserve BIOS allocated resource for hotadd root bus
[PATCH 07/40] x86, PCI: Separate pcibios_allocate_bridge_resources()
[PATCH 08/40] x86, PCI: Separate pcibios_allocate_dev_resources()
[PATCH 09/40] x86, PCI: Let pcibios_allocate_bus_resources() take us instead
[PATCH 10/40] x86, PCI: Separate rom resource claim out
[PATCH 11/40] PCI, x86: Add pcibios_fw_addr_done
[PATCH 12/40] PCI, x86: Remove __init for hw/fw allocated functions
[PATCH 13/40] PCI: Claim hw/fw allocated resources in hot add path.

part3: pci_assign_unsissigned_bus_resources() for root bus add.
[PATCH 14/40] PCI: Separate out pci_assign_unassigned_bus_resources()
[PATCH 15/40] PCI: Move back pci_rescan_bus() to probe.c
[PATCH 16/40] PCI: pci_bus_size_bridges() should not size own bridge
[PATCH 17/40] PCI: Use __pci_bus_size_bridges() directly in pci_assign_unassigned_bus_resources()
[PATCH 18/40] PCI: Rescan bus using callback method too
[PATCH 19/40] PCI, sysfs: Clean up rescan/remove with schedule_callback

part4: Separate root bus add from acpiphp and add removal support.
[PATCH 20/40] PCI: Fix a device reference count leakage issue in
[PATCH 21/40] PCI: Add pci_stop_and_remove_root_bus()
[PATCH 22/40] PCI, acpiphp: Separate out hot-add support of pci host
[PATCH 23/40] PCI, ACPI: Pass device instead of handle when config
[PATCH 24/40] PCI, acpi: Update acpi_pci_driver add/remove interface
[PATCH 25/40] PCI, ACPI: Make acpi_pci_root_remove remove pci root
[PATCH 26/40] PCI, ACPI: del root bus prt
[PATCH 27/40] ACPI: acpi_bus_trim to support two steps.
[PATCH 28/40] PCI, ACPI: Add pci_root_hp hot removal notification
[PATCH 29/40] PCI, ACPI: Add alloc_acpi_hp_work()
[PATCH 30/40] PCI, acpiphp: Use acpi_hp_work
[PATCH 31/40] PCI, pci_root_hp: Use acpi_hp_work
[PATCH 32/40] PCI, ACPI: Make kacpi_hotplug_wq static

part5: add/remove calling for acpi_pci_drivers.
[PATCH 33/40] ACPI, PCI: Use normal list for struct acpi_pci_driver
[PATCH 34/40] ACPI, PCI: Notify acpi_pci_drivers when hot-plugging
[PATCH 35/40] ACPI, PCI: Protect global lists in
[PATCH 36/40] PCI: Set dev_node early for pci_dev
[PATCH 37/40] PCI, x86: Move pci_enable_bridges() down
[PATCH 38/40] ACPI, PCI: Skip extra pci_enable_bridges for non
[PATCH 39/40] PCI, acpiphp: Don't ailout even no slots found yet.

part6: acpi add/remove simulation
[PATCH 40/40] ACPI: Enable SCI_EMULATE to manually simulate physical

 arch/ia64/pci/pci.c                |    3 +-
 arch/x86/pci/acpi.c                |    3 +-
 arch/x86/pci/i386.c                |  185 ++++++++++++++++--------
 drivers/acpi/Kconfig               |   10 ++
 drivers/acpi/Makefile              |    2 +
 drivers/acpi/osl.c                 |   24 +++-
 drivers/acpi/pci_root.c            |  123 ++++++++++------
 drivers/acpi/pci_root_hp.c         |  278 ++++++++++++++++++++++++++++++++++++
 drivers/acpi/pci_slot.c            |   12 +-
 drivers/acpi/scan.c                |    5 +-
 drivers/acpi/sci_emu.c             |  145 +++++++++++++++++++
 drivers/gpu/vga/vgaarb.c           |   14 ++-
 drivers/pci/bus.c                  |    2 +
 drivers/pci/hotplug/acpiphp.h      |    1 -
 drivers/pci/hotplug/acpiphp_core.c |   23 +---
 drivers/pci/hotplug/acpiphp_glue.c |  165 +++++++--------------
 drivers/pci/pci-sysfs.c            |   41 ++++--
 drivers/pci/probe.c                |   26 ++++-
 drivers/pci/remove.c               |   87 +++++++++--
 drivers/pci/search.c               |   10 +-
 drivers/pci/setup-bus.c            |   54 +++-----
 include/acpi/acpi_bus.h            |    1 +
 include/acpi/acpiosxf.h            |    9 +-
 include/linux/acpi.h               |    6 +-
 include/linux/pci.h                |    5 +
 25 files changed, 899 insertions(+), 335 deletions(-)
 create mode 100644 drivers/acpi/pci_root_hp.c
 create mode 100644 drivers/acpi/sci_emu.c

-- 
1.7.7


  reply	other threads:[~2012-09-19 18:54 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-02 21:50 [PATCH part2 0/6] PCI, x86: pci root bus hotplug support - part2 Yinghai Lu
2012-09-02 21:50 ` [PATCH part2 1/6] x86, PCI: Separate pcibios_allocate_bridge_resources() Yinghai Lu
2012-09-02 21:50 ` [PATCH part2 2/6] x86, PCI: Separate pcibios_allocate_dev_resources() Yinghai Lu
2012-09-02 21:50 ` [PATCH part2 3/6] x86, PCI: Let pcibios_allocate_bus_resources() take bus instead Yinghai Lu
2012-09-02 21:50 ` [PATCH part2 4/6] x86, PCI: Separate rom resource claim out Yinghai Lu
2012-09-17 23:38   ` Bjorn Helgaas
2012-09-18  3:18     ` Yinghai Lu
2012-09-02 21:50 ` [PATCH part2 5/6] PCI, x86: Add pcibios_fw_addr_done Yinghai Lu
2012-09-02 21:50 ` [PATCH part2 6/6] PCI: Claim hw/fw allocated resources in hot add path Yinghai Lu
2012-09-18  0:12   ` Bjorn Helgaas
2012-09-18  4:44     ` Yinghai Lu
2012-09-18  5:36       ` Yinghai Lu
2012-09-19 18:54         ` Yinghai Lu [this message]
2012-09-19 18:54           ` [PATCH 01/40] PCI: fix default vga ref_count Yinghai Lu
2012-09-21 20:52             ` Bjorn Helgaas
2012-09-21 21:18               ` Yinghai Lu
2012-09-23 15:25             ` Jiang Liu
2012-09-19 18:54           ` [PATCH 02/40] PCI, x86: clear initial value for root info resources Yinghai Lu
2012-09-19 18:54           ` [PATCH 03/40] PCI, ia64: " Yinghai Lu
2012-09-19 18:54           ` [PATCH 04/40] PCI, acpiphp: Add is_hotplug_bridge detection Yinghai Lu
2012-09-19 18:54           ` [PATCH 05/40] PCI: Add root bus children dev's res to fail list Yinghai Lu
2012-09-19 18:54           ` [PATCH 06/40] PCI: Split out stop_bus_device and remove_bus_dev again Yinghai Lu
2012-09-19 18:54           ` [PATCH 07/40] x86, PCI: Separate pcibios_allocate_bridge_resources() Yinghai Lu
2012-09-19 18:54           ` [PATCH 08/40] x86, PCI: Separate pcibios_allocate_dev_resources() Yinghai Lu
2012-09-19 18:54           ` [PATCH 09/40] x86, PCI: Let pcibios_allocate_bus_resources() take bus instead Yinghai Lu
2012-09-19 18:54           ` [PATCH 10/40] x86, PCI: Separate rom resource claim out Yinghai Lu
2012-09-19 18:54           ` [PATCH 11/40] PCI, x86: Add pcibios_fw_addr_done Yinghai Lu
2012-09-19 18:54           ` [PATCH 12/40] PCI, x86: Remove __init for hw/fw allocated functions Yinghai Lu
2012-09-19 18:54           ` [PATCH 13/40] PCI: Claim hw/fw allocated resources in hot add path Yinghai Lu
2012-09-19 18:54           ` [PATCH 14/40] PCI: Separate out pci_assign_unassigned_bus_resources() Yinghai Lu
2012-09-19 18:54           ` [PATCH 15/40] PCI: Move back pci_rescan_bus() to probe.c Yinghai Lu
2012-09-19 18:54           ` [PATCH 16/40] PCI: pci_bus_size_bridges() should not size own bridge Yinghai Lu
2012-09-19 18:54           ` [PATCH 17/40] PCI: Use __pci_bus_size_bridges() directly in pci_assign_unassigned_bus_resources() Yinghai Lu
2012-09-19 18:54           ` [PATCH 18/40] PCI: Rescan bus using callback method too Yinghai Lu
2012-09-19 18:54           ` [PATCH 19/40] PCI, sysfs: Clean up rescan/remove with schedule_callback Yinghai Lu
2012-09-19 18:54           ` [PATCH 20/40] PCI: Fix a device reference count leakage issue in pci_dev_present() Yinghai Lu
2012-09-19 18:54           ` [PATCH 21/40] PCI: Add pci_stop_and_remove_root_bus() Yinghai Lu
2012-09-19 18:54           ` [PATCH 22/40] PCI, acpiphp: Separate out hot-add support of pci host bridge Yinghai Lu
2012-10-12 10:36             ` Tang Chen
2012-09-19 18:54           ` [PATCH 23/40] PCI, ACPI: Pass device instead of handle when config root bridge Yinghai Lu
2012-09-19 18:54           ` [PATCH 24/40] PCI, acpi: Update acpi_pci_driver add/remove interface Yinghai Lu
2012-09-19 18:54           ` [PATCH 25/40] PCI, ACPI: Make acpi_pci_root_remove remove pci root bus too Yinghai Lu
2012-09-19 18:54           ` [PATCH 26/40] PCI, ACPI: del root bus prt Yinghai Lu
2012-09-19 18:54           ` [PATCH 27/40] ACPI: acpi_bus_trim to support two steps Yinghai Lu
2012-09-19 18:54           ` [PATCH 28/40] PCI, ACPI: Add pci_root_hp hot removal notification support Yinghai Lu
2012-09-19 18:54           ` [PATCH 29/40] PCI, ACPI: Add alloc_acpi_hp_work() Yinghai Lu
2012-09-19 18:54           ` [PATCH 30/40] PCI, acpiphp: Use acpi_hp_work Yinghai Lu
2012-09-19 18:54           ` [PATCH 31/40] PCI, pci_root_hp: " Yinghai Lu
2012-09-19 18:54           ` [PATCH 32/40] PCI, ACPI: Make kacpi_hotplug_wq static Yinghai Lu
2012-09-19 18:54           ` [PATCH 33/40] ACPI, PCI: Use normal list for struct acpi_pci_driver Yinghai Lu
2012-09-19 18:54           ` [PATCH 34/40] ACPI, PCI: Notify acpi_pci_drivers when hot-plugging PCI root bridges Yinghai Lu
2012-09-19 18:54           ` [PATCH 35/40] ACPI, PCI: Protect global lists in drivers/acpi/pci_root.c Yinghai Lu
2012-09-19 18:54           ` [PATCH 36/40] PCI: Set dev_node early for pci_dev Yinghai Lu
2012-09-19 18:54           ` [PATCH 37/40] PCI, x86: Move pci_enable_bridges() down Yinghai Lu
2012-09-19 18:54           ` [PATCH 38/40] ACPI, PCI: Skip extra pci_enable_bridges for non hot-add root Yinghai Lu
2012-09-19 18:54           ` [PATCH 39/40] PCI, acpiphp: Don't ailout even no slots found yet Yinghai Lu
2012-09-19 18:54           ` [PATCH 40/40] ACPI: Enable SCI_EMULATE to manually simulate physical hotplug testing Yinghai Lu
2012-10-17  7:50           ` [PATCH 00/40] PCI, ACPI, x86: pci root bus hotplug support Yijing Wang
2012-10-17 16:19             ` Yinghai Lu
2012-10-18  0:51               ` Yijing Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1348080894-23412-1-git-send-email-yinghai@kernel.org \
    --to=yinghai@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=bhelgaas@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=izumi.taku@jp.fujitsu.com \
    --cc=jiang.liu@huawei.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).