Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba9c8f22 authored by Daniel Axtens's avatar Daniel Axtens Committed by Michael Ellerman
Browse files

powerpc/powermac: move pmac_pci_probe_mode from setup.c to pci.c

parent bdc728a8
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -1223,3 +1223,20 @@ static void fixup_u4_pcie(struct pci_dev* dev)
	pci_write_config_dword(dev, PCI_PREF_MEMORY_BASE, 0);
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_U4_PCIE, fixup_u4_pcie);

#ifdef CONFIG_PPC64
int pmac_pci_probe_mode(struct pci_bus *bus)
{
	struct device_node *node = pci_bus_to_OF_node(bus);

	/* We need to use normal PCI probing for the AGP bus,
	 * since the device for the AGP bridge isn't in the tree.
	 * Same for the PCIe host on U4 and the HT host bridge.
	 */
	if (bus->self == NULL && (of_device_is_compatible(node, "u3-agp") ||
				  of_device_is_compatible(node, "u4-pcie") ||
				  of_device_is_compatible(node, "u3-ht")))
		return PCI_PROBE_NORMAL;
	return PCI_PROBE_DEVTREE;
}
#endif /* CONFIG_PPC64 */
+4 −0
Original line number Diff line number Diff line
@@ -39,4 +39,8 @@ extern void low_cpu_die(void) __attribute__((noreturn));
extern int pmac_nvram_init(void);
extern void pmac_pic_init(void);

#ifdef CONFIG_PPC64
extern int pmac_pci_probe_mode(struct pci_bus *bus);
#endif

#endif /* __PMAC_H__ */
+0 −18
Original line number Diff line number Diff line
@@ -637,24 +637,6 @@ static int __init pmac_probe(void)
	return 1;
}

#ifdef CONFIG_PPC64
/* Move that to pci.c */
static int pmac_pci_probe_mode(struct pci_bus *bus)
{
	struct device_node *node = pci_bus_to_OF_node(bus);

	/* We need to use normal PCI probing for the AGP bus,
	 * since the device for the AGP bridge isn't in the tree.
	 * Same for the PCIe host on U4 and the HT host bridge.
	 */
	if (bus->self == NULL && (of_device_is_compatible(node, "u3-agp") ||
				  of_device_is_compatible(node, "u4-pcie") ||
				  of_device_is_compatible(node, "u3-ht")))
		return PCI_PROBE_NORMAL;
	return PCI_PROBE_DEVTREE;
}
#endif /* CONFIG_PPC64 */

define_machine(powermac) {
	.name			= "PowerMac",
	.probe			= pmac_probe,