Loading arch/powerpc/kernel/pci_of_scan.c +2 −0 Original line number Original line Diff line number Diff line Loading @@ -140,6 +140,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node, dev->devfn = devfn; dev->devfn = devfn; dev->multifunction = 0; /* maybe a lie? */ dev->multifunction = 0; /* maybe a lie? */ dev->needs_freset = 0; /* pcie fundamental reset required */ dev->needs_freset = 0; /* pcie fundamental reset required */ set_pcie_port_type(dev); dev->vendor = get_int_prop(node, "vendor-id", 0xffff); dev->vendor = get_int_prop(node, "vendor-id", 0xffff); dev->device = get_int_prop(node, "device-id", 0xffff); dev->device = get_int_prop(node, "device-id", 0xffff); Loading @@ -164,6 +165,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node, /* a PCI-PCI bridge */ /* a PCI-PCI bridge */ dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->rom_base_reg = PCI_ROM_ADDRESS1; dev->rom_base_reg = PCI_ROM_ADDRESS1; set_pcie_hotplug_bridge(dev); } else if (!strcmp(type, "cardbus")) { } else if (!strcmp(type, "cardbus")) { dev->hdr_type = PCI_HEADER_TYPE_CARDBUS; dev->hdr_type = PCI_HEADER_TYPE_CARDBUS; } else { } else { Loading drivers/pci/probe.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -681,7 +681,7 @@ static void pci_read_irq(struct pci_dev *dev) dev->irq = irq; dev->irq = irq; } } static void set_pcie_port_type(struct pci_dev *pdev) void set_pcie_port_type(struct pci_dev *pdev) { { int pos; int pos; u16 reg16; u16 reg16; Loading @@ -695,7 +695,7 @@ static void set_pcie_port_type(struct pci_dev *pdev) pdev->pcie_type = (reg16 & PCI_EXP_FLAGS_TYPE) >> 4; pdev->pcie_type = (reg16 & PCI_EXP_FLAGS_TYPE) >> 4; } } static void set_pcie_hotplug_bridge(struct pci_dev *pdev) void set_pcie_hotplug_bridge(struct pci_dev *pdev) { { int pos; int pos; u16 reg16; u16 reg16; Loading include/linux/pci.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -756,6 +756,10 @@ pci_power_t pci_target_state(struct pci_dev *dev); int pci_prepare_to_sleep(struct pci_dev *dev); int pci_prepare_to_sleep(struct pci_dev *dev); int pci_back_from_sleep(struct pci_dev *dev); int pci_back_from_sleep(struct pci_dev *dev); /* For use by arch with custom probe code */ void set_pcie_port_type(struct pci_dev *pdev); void set_pcie_hotplug_bridge(struct pci_dev *pdev); /* Functions for PCI Hotplug drivers to use */ /* Functions for PCI Hotplug drivers to use */ int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap); int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap); #ifdef CONFIG_HOTPLUG #ifdef CONFIG_HOTPLUG Loading Loading
arch/powerpc/kernel/pci_of_scan.c +2 −0 Original line number Original line Diff line number Diff line Loading @@ -140,6 +140,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node, dev->devfn = devfn; dev->devfn = devfn; dev->multifunction = 0; /* maybe a lie? */ dev->multifunction = 0; /* maybe a lie? */ dev->needs_freset = 0; /* pcie fundamental reset required */ dev->needs_freset = 0; /* pcie fundamental reset required */ set_pcie_port_type(dev); dev->vendor = get_int_prop(node, "vendor-id", 0xffff); dev->vendor = get_int_prop(node, "vendor-id", 0xffff); dev->device = get_int_prop(node, "device-id", 0xffff); dev->device = get_int_prop(node, "device-id", 0xffff); Loading @@ -164,6 +165,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node, /* a PCI-PCI bridge */ /* a PCI-PCI bridge */ dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->rom_base_reg = PCI_ROM_ADDRESS1; dev->rom_base_reg = PCI_ROM_ADDRESS1; set_pcie_hotplug_bridge(dev); } else if (!strcmp(type, "cardbus")) { } else if (!strcmp(type, "cardbus")) { dev->hdr_type = PCI_HEADER_TYPE_CARDBUS; dev->hdr_type = PCI_HEADER_TYPE_CARDBUS; } else { } else { Loading
drivers/pci/probe.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -681,7 +681,7 @@ static void pci_read_irq(struct pci_dev *dev) dev->irq = irq; dev->irq = irq; } } static void set_pcie_port_type(struct pci_dev *pdev) void set_pcie_port_type(struct pci_dev *pdev) { { int pos; int pos; u16 reg16; u16 reg16; Loading @@ -695,7 +695,7 @@ static void set_pcie_port_type(struct pci_dev *pdev) pdev->pcie_type = (reg16 & PCI_EXP_FLAGS_TYPE) >> 4; pdev->pcie_type = (reg16 & PCI_EXP_FLAGS_TYPE) >> 4; } } static void set_pcie_hotplug_bridge(struct pci_dev *pdev) void set_pcie_hotplug_bridge(struct pci_dev *pdev) { { int pos; int pos; u16 reg16; u16 reg16; Loading
include/linux/pci.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -756,6 +756,10 @@ pci_power_t pci_target_state(struct pci_dev *dev); int pci_prepare_to_sleep(struct pci_dev *dev); int pci_prepare_to_sleep(struct pci_dev *dev); int pci_back_from_sleep(struct pci_dev *dev); int pci_back_from_sleep(struct pci_dev *dev); /* For use by arch with custom probe code */ void set_pcie_port_type(struct pci_dev *pdev); void set_pcie_hotplug_bridge(struct pci_dev *pdev); /* Functions for PCI Hotplug drivers to use */ /* Functions for PCI Hotplug drivers to use */ int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap); int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap); #ifdef CONFIG_HOTPLUG #ifdef CONFIG_HOTPLUG Loading