[PATCH 00/10] Save MSI chip in pci_sys_data

From: Yijing Wang
Date: Mon Oct 27 2014 - 03:08:28 EST


Now PCI host bridge drivers in arm associate MSI chip and
PCI bus by adding .add_bus(), and assign MSI chip pointer
to every PCI bus. Associating MSI chip and every PCI bus
is not necessary. All PCI busses under same PCI host brdige
share the same MSI chip. So saving MSI chip in pci_sys_data
is a better solution, it make PCI host bridge drivers clean.
Because we still need to provide arch spec pcibios_msi_controller()
to extract MSI controller pointer, a better solution is to
refactor PCI host bridge, make a generic pci_host_bridge, and
save common info like PCI domain number, MSI chip, resources
in it. We will do that work in another series as soon.

To Bjorn: Because struct msi_chip defined in struct hw_pci and pci_sys_data
is under the #ifdef CONFIG_PCI_MSI, if we use if(IS_ENABLED(CONFIG_PCI_MSI))
in PCI host bridge drivers, it will cause build errors when the CONFIG_PCI_MSI
is off. So I keep #ifdef CONFIG_PCI_MSI in this series.

Yijing Wang (10):
MSI: Rename msi_chip to msi_controller for better readability
PCI/MSI: Introduce weak pcibios_msi_controller()
arm/MSI: Save MSI controller in pci_sys_data
PCI: tegra: Save MSI controller in pci_sys_data
PCI: designware: Save MSI controller in pci_sys_data
PCI: rcar: Save MSI controller in pci_sys_data
PCI: mvebu: Save MSI controller in pci_sys_data
PCI: xilinx: Save MSI controller in pci_sys_data
arm/PCI: Clean unused pcibios_add_bus() and pcibios_remove_bus()
PCI/MSI: Remove useless bus->msi assignment

arch/arm/include/asm/mach/pci.h | 10 +++++---
arch/arm/kernel/bios32.c | 28 ++++++++++--------------
drivers/irqchip/irq-armada-370-xp.c | 22 +++++++++---------
drivers/of/of_pci.c | 40 +++++++++++++++++-----------------
drivers/pci/host/pci-keystone-dw.c | 4 +-
drivers/pci/host/pci-keystone.h | 2 +-
drivers/pci/host/pci-mvebu.c | 14 ++++-------
drivers/pci/host/pci-tegra.c | 37 +++++++++++++-------------------
drivers/pci/host/pcie-designware.c | 25 +++++++--------------
drivers/pci/host/pcie-designware.h | 2 +-
drivers/pci/host/pcie-rcar.c | 37 +++++++++++++-------------------
drivers/pci/host/pcie-xilinx.c | 27 +++++++----------------
drivers/pci/msi.c | 22 ++++++++++++++-----
drivers/pci/probe.c | 1 -
include/linux/msi.h | 6 ++--
include/linux/of_pci.h | 14 ++++++------
include/linux/pci.h | 2 +-
17 files changed, 132 insertions(+), 161 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/