/* To be used as: mdelay(pci_post_reset_delay); * *post_resetisthetimethekernelshouldstalltopreventanyonefrom *accessingthePCIbusonce#RESETisde-asserted. *PCIspecsomewheresays1secondbutwithmulti-PCIbussystems, *thismakestheboottimemuchlongerthannecessary. *20msseemstoworkforalltheHPPCIimplementationstodate.
*/ #define pci_post_reset_delay 50
/* **pci_hba_data(akaH2P_OBJECTinHP/UX) ** **Thisisthe"common"or"base"datastructurewhichHBAdrivers **(egDinoorLBA)arerequiredtoplaceatthetopoftheirown **platform_datastructure.I'veheardthiscalled"Cinheritance"too. ** **Dataneededbypcibioslayerbelongshere.
*/ struct pci_hba_data { void __iomem *base_addr; /* aka Host Physical Address */ conststruct parisc_device *dev; /* device from PA bus walk */ struct pci_bus *hba_bus; /* primary PCI bus below HBA */ int hba_num; /* I/O port space access "key" */ struct resource bus_num; /* PCI bus numbers */ struct resource io_space; /* PIOP */ struct resource lmmio_space; /* bus addresses < 4Gb */ struct resource elmmio_space; /* additional bus addresses < 4Gb */ struct resource gmmio_space; /* bus addresses > 4Gb */
/* NOTE: Dino code assumes it can use *all* of the lmmio_space, *elmmio_spaceandgmmio_spaceasacontiguousarrayof
* resources. This #define represents the array size */ #define DINO_MAX_LMMIO_RESOURCES 3
unsignedlong lmmio_space_offset; /* CPU view - PCI view */ struct ioc *iommu; /* IOMMU this device is under */ /* REVISIT - spinlock to protect resources? */
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.