for (i = 0; i < bus->nr_devices; i++) {
dev = &(bus->devices[i]); if (dev->id.coreid != SSB_DEV_ETHERNET_GBIT) continue; if (!dev->dev ||
!dev->dev->driver ||
!device_is_registered(dev->dev)) continue;
res = ssb_gige_pcibios_plat_dev_init(dev, pdev); if (res >= 0) return res;
}
int ssb_pcibios_plat_dev_init(struct pci_dev *dev)
{ int err;
err = ssb_pcicore_plat_dev_init(dev); if (!err) return 0; #ifdef CONFIG_SSB_DRIVER_GIGE
err = ssb_for_each_bus_call((unsignedlong)dev, gige_pci_init_callback); if (err >= 0) return err; #endif /* This is not a PCI device on any SSB device. */
for (i = 0; i < bus->nr_devices; i++) {
dev = &(bus->devices[i]); if (dev->id.coreid != SSB_DEV_ETHERNET_GBIT) continue; if (!dev->dev ||
!dev->dev->driver ||
!device_is_registered(dev->dev)) continue;
res = ssb_gige_map_irq(dev, pdev); if (res >= 0) return res;
}
int ssb_pcibios_map_irq(conststruct pci_dev *dev, u8 slot, u8 pin)
{ int res;
/* Check if this PCI device is a device on a SSB bus or device
* and return the IRQ number for it. */
res = ssb_pcicore_pcibios_map_irq(dev, slot, pin); if (res >= 0) return res; #ifdef CONFIG_SSB_DRIVER_GIGE
res = ssb_for_each_bus_call((unsignedlong)dev, gige_map_irq_callback); if (res >= 0) return res; #endif /* This is not a PCI device on any SSB device. */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.