diff options
author | Per Fogelstrom <pefo@cvs.openbsd.org> | 1998-08-07 16:48:20 +0000 |
---|---|---|
committer | Per Fogelstrom <pefo@cvs.openbsd.org> | 1998-08-07 16:48:20 +0000 |
commit | 53796aa2246dd1e12da7ecff86653af747b67da4 (patch) | |
tree | 0516b8d9016ab0aa8c330ec65e98f1ce26c3c285 /sys/dev/pci/ncr.c | |
parent | c87fea89216b5ed984732ff34c2a2e8009ea517c (diff) |
com.c needs to know about mem mapped ports in ppc systems.
ncr.c and if_de.c needs some hooks for systems with ncr and dec
ether chips on the motherboard that runs on odd clocks and doesn't
support a srom. srom is emulated in machine dependent code.
big endian support for ncr and dec ether finished. the 21040
have some more coding requirements if it is to run BE since
it does not have the descriptor endian swap configuration bit.
Diffstat (limited to 'sys/dev/pci/ncr.c')
-rw-r--r-- | sys/dev/pci/ncr.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/sys/dev/pci/ncr.c b/sys/dev/pci/ncr.c index 4dcb9dd84c4..9fea3bf6a75 100644 --- a/sys/dev/pci/ncr.c +++ b/sys/dev/pci/ncr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ncr.c,v 1.40 1998/07/21 07:16:37 downsj Exp $ */ +/* $OpenBSD: ncr.c,v 1.41 1998/08/07 16:48:19 pefo Exp $ */ /* $NetBSD: ncr.c,v 1.63 1997/09/23 02:39:15 perry Exp $ */ /************************************************************************** @@ -1465,7 +1465,7 @@ static void ncr_attach (pcici_t tag, int unit); #if 0 static char ident[] = - "\n$OpenBSD: ncr.c,v 1.40 1998/07/21 07:16:37 downsj Exp $\n"; + "\n$OpenBSD: ncr.c,v 1.41 1998/08/07 16:48:19 pefo Exp $\n"; #endif static const u_long ncr_version = NCR_VERSION * 11 @@ -3838,12 +3838,16 @@ static void ncr_attach (pcici_t config_id, int unit) } np->maxwide = np->features & FE_WIDE ? 1 : 0; -#if defined(__mips__) /* XXX FIXME - This is gross XXX */ - np->clock_khz = 66000; - np->clock_khz = 48000; +#ifdef NEED_PCI_SCSI_CLOCK_FUNC + { + int b, d, f; + pci_decompose_tag(pc, pa->pa_tag, &b, &d, &f); \ + if((np->clock_khz = pci_scsi_clock(pc, b, d)) == 0) + np->clock_khz = np->features & FE_CLK80 ? 80000 : 40000; + } #else np->clock_khz = np->features & FE_CLK80 ? 80000 : 40000; -#endif /*__mips__*/ +#endif if (np->features & FE_QUAD) np->multiplier = 4; else if (np->features & FE_DBLR) np->multiplier = 2; else np->multiplier = 1; |