Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 316543
b: refs/heads/master
c: bbffe43
h: refs/heads/master
i:
  316541: c998a96
  316539: 5da354c
  316535: d91dd25
  316527: 5641614
  316511: a8bdab8
  316479: b7a6977
  316415: e774075
v: v3
  • Loading branch information
Bjorn Helgaas committed Jul 10, 2012
1 parent 390f1d3 commit 097bd31
Show file tree
Hide file tree
Showing 92 changed files with 781 additions and 1,696 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9349b44a459677e270ae19a373c58e5c3edbff04
refs/heads/master: bbffe435248444065bd76141c41bbe65db950cc9
2 changes: 1 addition & 1 deletion trunk/MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -5195,7 +5195,7 @@ PCI SUBSYSTEM
M: Bjorn Helgaas <bhelgaas@google.com>
L: linux-pci@vger.kernel.org
Q: http://patchwork.ozlabs.org/project/linux-pci/list/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/linux.git
S: Supported
F: Documentation/PCI/
F: drivers/pci/
Expand Down
17 changes: 13 additions & 4 deletions trunk/arch/alpha/kernel/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,13 +59,15 @@ struct pci_controller *pci_isa_hose;
* Quirks.
*/

static void __devinit quirk_isa_bridge(struct pci_dev *dev)
static void __init
quirk_isa_bridge(struct pci_dev *dev)
{
dev->class = PCI_CLASS_BRIDGE_ISA << 8;
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82378, quirk_isa_bridge);

static void __devinit quirk_cypress(struct pci_dev *dev)
static void __init
quirk_cypress(struct pci_dev *dev)
{
/* The Notorious Cy82C693 chip. */

Expand Down Expand Up @@ -104,7 +106,8 @@ static void __devinit quirk_cypress(struct pci_dev *dev)
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, quirk_cypress);

/* Called for each device after PCI setup is done. */
static void __devinit pcibios_fixup_final(struct pci_dev *dev)
static void __init
pcibios_fixup_final(struct pci_dev *dev)
{
unsigned int class = dev->class >> 8;

Expand Down Expand Up @@ -195,6 +198,12 @@ pcibios_init(void)

subsys_initcall(pcibios_init);

char * __devinit
pcibios_setup(char *str)
{
return str;
}

#ifdef ALPHA_RESTORE_SRM_SETUP
static struct pdev_srm_saved_conf *srm_saved_configs;

Expand Down Expand Up @@ -350,7 +359,7 @@ common_init_pci(void)
hose, &resources);
hose->bus = bus;
hose->need_domain_info = need_domain_info;
next_busno = bus->busn_res.end + 1;
next_busno = bus->subordinate + 1;
/* Don't allow 8-bit bus number overflow inside the hose -
reserve some space for bridges. */
if (next_busno > 224) {
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/arm/kernel/bios32.c
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ static void __devinit pci_fixup_cy82c693(struct pci_dev *dev)
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, pci_fixup_cy82c693);

static void __devinit pci_fixup_it8152(struct pci_dev *dev)
static void __init pci_fixup_it8152(struct pci_dev *dev)
{
int i;
/* fixup for ITE 8152 devices */
Expand Down Expand Up @@ -461,7 +461,7 @@ static void __init pcibios_init_hw(struct hw_pci *hw, struct list_head *head)
if (!sys->bus)
panic("PCI: unable to scan bus!");

busnr = sys->bus->busn_res.end + 1;
busnr = sys->bus->subordinate + 1;

list_add(&sys->node, head);
} else {
Expand Down
5 changes: 5 additions & 0 deletions trunk/arch/cris/arch-v32/drivers/pci/bios.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@ void __devinit pcibios_fixup_bus(struct pci_bus *b)
{
}

char * __devinit pcibios_setup(char *str)
{
return NULL;
}

void pcibios_set_master(struct pci_dev *dev)
{
u8 lat;
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/frv/mb93090-mb00/pci-vdk.c
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ static void __init pci_fixup_umc_ide(struct pci_dev *d)
d->resource[i].flags |= PCI_BASE_ADDRESS_SPACE_IO;
}

static void __devinit pci_fixup_ide_bases(struct pci_dev *d)
static void __init pci_fixup_ide_bases(struct pci_dev *d)
{
int i;

Expand All @@ -287,7 +287,7 @@ static void __devinit pci_fixup_ide_bases(struct pci_dev *d)
}
}

static void __devinit pci_fixup_ide_trash(struct pci_dev *d)
static void __init pci_fixup_ide_trash(struct pci_dev *d)
{
int i;

Expand Down
13 changes: 10 additions & 3 deletions trunk/arch/ia64/pci/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -351,8 +351,6 @@ pci_acpi_scan_root(struct acpi_pci_root *root)
#endif

INIT_LIST_HEAD(&info.resources);
/* insert busn resource at first */
pci_add_resource(&info.resources, &root->secondary);
acpi_walk_resources(device->handle, METHOD_NAME__CRS, count_window,
&windows);
if (windows) {
Expand Down Expand Up @@ -386,7 +384,7 @@ pci_acpi_scan_root(struct acpi_pci_root *root)
return NULL;
}

pci_scan_child_bus(pbus);
pbus->subordinate = pci_scan_child_bus(pbus);
return pbus;

out3:
Expand Down Expand Up @@ -498,6 +496,15 @@ pcibios_align_resource (void *data, const struct resource *res,
return res->start;
}

/*
* PCI BIOS setup, always defaults to SAL interface
*/
char * __init
pcibios_setup (char *str)
{
return str;
}

int
pci_mmap_page_range (struct pci_dev *dev, struct vm_area_struct *vma,
enum pci_mmap_state mmap_state, int write_combine)
Expand Down
9 changes: 7 additions & 2 deletions trunk/arch/microblaze/pci/pci-common.c
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,11 @@ void pcibios_set_master(struct pci_dev *dev)
/* No special bus mastering setup handling */
}

char __devinit *pcibios_setup(char *str)
{
return str;
}

/*
* Reads the interrupt pin to determine if interrupt is use by card.
* If the interrupt is used, then gets the interrupt line from the
Expand Down Expand Up @@ -1501,10 +1506,10 @@ static void __devinit pcibios_scan_phb(struct pci_controller *hose)
pci_free_resource_list(&resources);
return;
}
bus->busn_res.start = hose->first_busno;
bus->secondary = hose->first_busno;
hose->bus = bus;

hose->last_busno = bus->busn_res.end;
hose->last_busno = bus->subordinate;
}

static int __init pcibios_init(void)
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/mips/mti-malta/malta-pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ void __init mips_pcibios_init(void)
}

/* Enable PCI 2.1 compatibility in PIIX4 */
static void __devinit quirk_dlcsetup(struct pci_dev *dev)
static void __init quirk_dlcsetup(struct pci_dev *dev)
{
u8 odlc, ndlc;
(void) pci_read_config_byte(dev, 0x82, &odlc);
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/mips/pci/ops-tx4927.c
Original file line number Diff line number Diff line change
Expand Up @@ -495,7 +495,7 @@ irqreturn_t tx4927_pcierr_interrupt(int irq, void *dev_id)
}

#ifdef CONFIG_TOSHIBA_FPCIB0
static void __devinit tx4927_quirk_slc90e66_bridge(struct pci_dev *dev)
static void __init tx4927_quirk_slc90e66_bridge(struct pci_dev *dev)
{
struct tx4927_pcic_reg __iomem *pcicptr = pci_bus_to_pcicptr(dev->bus);

Expand Down
6 changes: 3 additions & 3 deletions trunk/arch/mips/pci/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ static void __devinit pcibios_scanbus(struct pci_controller *hose)
need_domain_info = need_domain_info || hose->index;
hose->need_domain_info = need_domain_info;
if (bus) {
next_busno = bus->busn_res.end + 1;
next_busno = bus->subordinate + 1;
/* Don't allow 8-bit bus number overflow inside the hose -
reserve some space for bridges. */
if (next_busno > 224) {
Expand Down Expand Up @@ -348,9 +348,9 @@ int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
vma->vm_end - vma->vm_start, vma->vm_page_prot);
}

char * (*pcibios_plat_setup)(char *str) __initdata;
char * (*pcibios_plat_setup)(char *str) __devinitdata;

char *__init pcibios_setup(char *str)
char *__devinit pcibios_setup(char *str)
{
if (pcibios_plat_setup)
return pcibios_plat_setup(str);
Expand Down
11 changes: 11 additions & 0 deletions trunk/arch/mips/pmc-sierra/yosemite/ht.c
Original file line number Diff line number Diff line change
Expand Up @@ -395,6 +395,17 @@ void __init pcibios_init(void)
pci_scan_bus(3, &titan_pci_ops, NULL);
}

/*
* for parsing "pci=" kernel boot arguments.
*/
char *pcibios_setup(char *str)
{
printk(KERN_INFO "rr: pcibios_setup\n");
/* Nothing to do for now. */

return str;
}

unsigned __init int pcibios_assign_all_busses(void)
{
/* We want to use the PCI bus detection done by PMON */
Expand Down
8 changes: 4 additions & 4 deletions trunk/arch/mips/txx9/generic/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ static irqreturn_t i8259_interrupt(int irq, void *dev_id)
return IRQ_HANDLED;
}

static int __devinit
static int __init
txx9_i8259_irq_setup(int irq)
{
int err;
Expand All @@ -269,7 +269,7 @@ txx9_i8259_irq_setup(int irq)
return err;
}

static void __devinit quirk_slc90e66_bridge(struct pci_dev *dev)
static void __init quirk_slc90e66_bridge(struct pci_dev *dev)
{
int irq; /* PCI/ISA Bridge interrupt */
u8 reg_64;
Expand Down Expand Up @@ -398,9 +398,9 @@ int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
return txx9_board_vec->pci_map_irq(dev, slot, pin);
}

char * (*txx9_board_pcibios_setup)(char *str) __initdata;
char * (*txx9_board_pcibios_setup)(char *str) __devinitdata;

char *__init txx9_pcibios_setup(char *str)
char *__devinit txx9_pcibios_setup(char *str)
{
if (txx9_board_pcibios_setup && !txx9_board_pcibios_setup(str))
return NULL;
Expand Down
5 changes: 5 additions & 0 deletions trunk/arch/parisc/kernel/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,11 @@ void pcibios_fixup_bus(struct pci_bus *bus)
}


char *pcibios_setup(char *str)
{
return str;
}

/*
* Called by pci_set_master() - a driver interface.
*
Expand Down
1 change: 0 additions & 1 deletion trunk/arch/powerpc/include/asm/pci-bridge.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ struct pci_controller {
int first_busno;
int last_busno;
int self_busno;
struct resource busn;

void __iomem *io_base_virt;
#ifdef CONFIG_PPC64
Expand Down
22 changes: 11 additions & 11 deletions trunk/arch/powerpc/kernel/pci-common.c
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,11 @@ int pcibios_add_platform_entries(struct pci_dev *pdev)
return device_create_file(&pdev->dev, &dev_attr_devspec);
}

char __devinit *pcibios_setup(char *str)
{
return str;
}

/*
* Reads the interrupt pin to determine if interrupt is use by card.
* If the interrupt is used, then gets the interrupt line from the
Expand Down Expand Up @@ -1632,11 +1637,6 @@ void __devinit pcibios_scan_phb(struct pci_controller *hose)
/* Wire up PHB bus resources */
pcibios_setup_phb_resources(hose, &resources);

hose->busn.start = hose->first_busno;
hose->busn.end = hose->last_busno;
hose->busn.flags = IORESOURCE_BUS;
pci_add_resource(&resources, &hose->busn);

/* Create an empty bus for the toplevel */
bus = pci_create_root_bus(hose->parent, hose->first_busno,
hose->ops, hose, &resources);
Expand All @@ -1646,22 +1646,22 @@ void __devinit pcibios_scan_phb(struct pci_controller *hose)
pci_free_resource_list(&resources);
return;
}
bus->secondary = hose->first_busno;
hose->bus = bus;

/* Get probe mode and perform scan */
mode = PCI_PROBE_NORMAL;
if (node && ppc_md.pci_probe_mode)
mode = ppc_md.pci_probe_mode(bus);
pr_debug(" probe mode: %d\n", mode);
if (mode == PCI_PROBE_DEVTREE)
if (mode == PCI_PROBE_DEVTREE) {
bus->subordinate = hose->last_busno;
of_scan_bus(node, bus);

if (mode == PCI_PROBE_NORMAL) {
pci_bus_update_busn_res_end(bus, 255);
hose->last_busno = pci_scan_child_bus(bus);
pci_bus_update_busn_res_end(bus, hose->last_busno);
}

if (mode == PCI_PROBE_NORMAL)
hose->last_busno = bus->subordinate = pci_scan_child_bus(bus);

/* Platform gets a chance to do some global fixups before
* we proceed to resource allocation
*/
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/kernel/pci_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,

for (ln = pci_root_buses.next; ln != &pci_root_buses; ln = ln->next) {
bus = pci_bus_b(ln);
if (in_bus >= bus->number && in_bus <= bus->busn_res.end)
if (in_bus >= bus->number && in_bus <= bus->subordinate)
break;
bus = NULL;
}
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/kernel/pci_of_scan.c
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@ void __devinit of_scan_pci_bridge(struct pci_dev *dev)
}

bus->primary = dev->bus->number;
pci_bus_insert_busn_res(bus, busrange[0], busrange[1]);
bus->subordinate = busrange[1];
bus->bridge_ctl = 0;

/* parse ranges property */
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/85xx/tqm85xx.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ static void tqm85xx_show_cpuinfo(struct seq_file *m)
seq_printf(m, "PLL setting\t: 0x%x\n", ((phid1 >> 24) & 0x3f));
}

static void __devinit tqm85xx_ti1520_fixup(struct pci_dev *pdev)
static void __init tqm85xx_ti1520_fixup(struct pci_dev *pdev)
{
unsigned int val;

Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/86xx/gef_ppc9a.c
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ static void gef_ppc9a_show_cpuinfo(struct seq_file *m)
gef_ppc9a_get_vme_is_syscon() ? "yes" : "no");
}

static void __devinit gef_ppc9a_nec_fixup(struct pci_dev *pdev)
static void __init gef_ppc9a_nec_fixup(struct pci_dev *pdev)
{
unsigned int val;

Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/86xx/gef_sbc310.c
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ static void gef_sbc310_show_cpuinfo(struct seq_file *m)

}

static void __devinit gef_sbc310_nec_fixup(struct pci_dev *pdev)
static void __init gef_sbc310_nec_fixup(struct pci_dev *pdev)
{
unsigned int val;

Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/86xx/gef_sbc610.c
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ static void gef_sbc610_show_cpuinfo(struct seq_file *m)
seq_printf(m, "SVR\t\t: 0x%x\n", svid);
}

static void __devinit gef_sbc610_nec_fixup(struct pci_dev *pdev)
static void __init gef_sbc610_nec_fixup(struct pci_dev *pdev)
{
unsigned int val;

Expand Down
Loading

0 comments on commit 097bd31

Please sign in to comment.