diff options
author | roger <roger@FreeBSD.org> | 1999-05-31 22:13:37 +0000 |
---|---|---|
committer | roger <roger@FreeBSD.org> | 1999-05-31 22:13:37 +0000 |
commit | 4d37f3729be0a83ecedc31dfe8b0811bdf1bcfd2 (patch) | |
tree | 914bbff488d9b51275d2629f388e23048b220b2f /sys/pci/pcivar.h | |
parent | d17fc0888d6a250d427fdecad8c383a01d53df57 (diff) | |
download | FreeBSD-src-4d37f3729be0a83ecedc31dfe8b0811bdf1bcfd2.zip FreeBSD-src-4d37f3729be0a83ecedc31dfe8b0811bdf1bcfd2.tar.gz |
On the new Meteor cards, the Philips SAA 7116 is connected to the PCI bus
via an IBM PCI-PCI bridge (82351 or 82352 or 82353)
The driver must identify if it is on a secondary PCI bus, which is
created via the IBM PCI-PCI bridge. If it is, then it must initialise
the IBM PCI-PCI bridge correctly.
To do this, the following new functions are added.
Because they use the pcici_t tag, they are considered 2.2 compatibility APIs
pcici_t * pci_get_parent_from_tag(pcici_t tag);
int pci_get_bus_from_tag(pcici_t tag);
(The _from_tag suffix is used to prevent clashes with similarly named
newbus PCI API functions)
Submitted by: Anton Berezin <tobez@plab.ku.dk>
Reviewed by: Doug Rabson <dfr@nlsystems.com>
Reworked by: Me (roger)
Diffstat (limited to 'sys/pci/pcivar.h')
-rw-r--r-- | sys/pci/pcivar.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/pci/pcivar.h b/sys/pci/pcivar.h index 29d82a3..f1c6f5e 100644 --- a/sys/pci/pcivar.h +++ b/sys/pci/pcivar.h @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: pcivar.h,v 1.32 1999/05/18 20:48:38 peter Exp $ + * $Id: pcivar.h,v 1.33 1999/05/20 15:33:33 gallatin Exp $ * */ @@ -185,6 +185,9 @@ vm_offset_t pci_cvt_to_dense (vm_offset_t); vm_offset_t pci_cvt_to_bwx (vm_offset_t); #endif /* __alpha__ */ +/* low level devlist operations for the 2.2 compatibility code in pci.c */ +pcicfgregs * pci_devlist_get_parent(pcicfgregs *cfg); + #ifdef _SYS_BUS_H_ #include "pci_if.h" @@ -325,6 +328,9 @@ int pci_map_int_right(pcici_t cfg, pci_inthand_t *handler, void *arg, intrmask_t *maskptr, u_int flags); int pci_unmap_int (pcici_t tag); +pcici_t pci_get_parent_from_tag(pcici_t tag); +int pci_get_bus_from_tag(pcici_t tag); + struct module; int compat_pci_handler (struct module *, int, void *); #define COMPAT_PCI_DRIVER(name, pcidata) \ |