Commit Graph

197 Commits

Author SHA1 Message Date
cgd
197d80c63a update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:25:23 +00:00
leo
91c17fedfa The atari has a pci_machdep.h file. 1996-12-01 21:02:18 +00:00
jtk
15aad8e10b forgot to regenerate these after committing pcidevs for its NetBSD header tag 1996-11-30 15:16:22 +00:00
jtk
ebc2675469 add Cirrus CL-7541, 7543 and ACC 2188; regen .h files 1996-11-28 16:29:59 +00:00
thorpej
c645414c6e Regen. 1996-11-28 00:49:48 +00:00
thorpej
5d9878b0be Fill out the Intel section of this a bit, and note the URL of a
periodically updated list of PCI vendor/product codes.
1996-11-28 00:46:35 +00:00
cgd
828f1f3aa1 Provide a routine so that ISA/EISA bridges can set up a callback so
that their child busses can be attached after the PCI bus
autoconfiguration for their parent bus is done.

This works because:
	(1) there can be at most one ISA/EISA bridge per PCI bus, and
	(2) any ISA/EISA bridges must be attached to primary PCI
	    busses (i.e. bus zero).

That boils down to: there can only be one of these outstanding
at a time, it is cleared when configuring PCI bus 0 before any
subdevices have been found, and it is run after all subdevices
of PCI bus 0 have been found.

This (or something like it) is needed because there are some (legacy)
PCI devices which can show up as ISA/EISA devices as well (the prime
example of which are VGA controllers).  If you attach ISA from a
PCI-ISA/EISA bridge, and the bridge is seen before the video board is,
the board can show up as an ISA device, and that can (bogusly)
complicate the PCI device's attach code, or make the PCI device not be
properly attached at all.

This could be done with machine-dependent code, but as more ports
add support for PCI (and PCI-ISA/EISA bridges) more will need it.
The i386 port could (perhaps should) be converted to use it as well.
1996-11-23 21:58:16 +00:00
cgd
f1482e61d8 cast pointers to long, not int, and fix the resulting printf format goof. 1996-11-23 21:42:28 +00:00
perry
a797b925b2 Incorporate updated version of fixes from FreeBSD submitted in PR
2841, plus some fixes to make the patches work on the Alpha. Seems to
improve the NCR driver a lot. We probably should try to incorporate
any updates that have happened since, too.
1996-11-20 21:26:48 +00:00
cgd
71f1ac1e29 print ptrdiff_t's by casting to long and printing with %l<whatever>.
(This fixes problems with the printf format fixes i checked in yesterday.
ptrdiff_t is an 'int' on the i386 but a 'long' on the alpha, so the cast
really is necessary...  *sigh*)
1996-11-14 20:33:04 +00:00
cgd
2bf9f4b20a fix a bunch of printf format botches 1996-11-13 19:34:31 +00:00
thorpej
4ad70417a0 Centralize the declaration of the "en" driver (Efficient Networks, Inc.
155Mb/sec ATM interface).
1996-11-12 23:58:01 +00:00
jonathan
79b026a8f3 * Add command struct and modifier definitions for controlling the
ISA-compatible port space of PCI buslogic cards.

* Add call to bha_pci.c to disable the ISA-compatible ports of a PCI
  device.  The ISA-compatible ports are enabled by default, which
  causes the card to be autoconfigured a second time as an ISA device,
  which appears to deadlock the card.

* Change bha_cmd() to return the number of bytes it actually received
  in response to a command, or -1 on error.

*  Use heuristics (checking for bha-only registers, and checking the size
   of the response to BHA_INQURE_EXTENDED) to bha_find, to make sure the
   bha driver never matches an aha (Adaptec    1542 or compatible) device.

A single kernel should now boot on either Adaptec or BusLogic controllers,
provided we always probe for BusLogic devices before Adaptec devices,
but this has not yet been verified.
1996-11-05 03:04:28 +00:00
cgd
2ab4192195 update alpha_XXX_dmamap() invocations to match prototype. 1996-10-25 21:33:30 +00:00
cgd
702e7ec138 make script_kvars an array of unsigned longs, and cast when assigning the
elements, to avoid warnings (with -Wcast-qual) about 'volatile'
qualifiers being discarded.
1996-10-25 00:33:00 +00:00
cgd
2e7c250f84 update drivers to use the new NetBSD/alpha DMA mapping hack, since
the old one is not workable with the new bus.h.
1996-10-23 04:37:31 +00:00
thorpej
546c8abcee New bus.h implementation/interface:
- No more distinction between i/o-mapped and memory-mapped
	  devices.  It's all "bus space" now, and space tags
	  differentiate the space with finer grain than the
	  bus chipset tag.
	- Add memory barrier methods.
	- Implement space alloc/free methods.
	- Implement region read/write methods (like memcpy to/from
	  bus space).
This interface provides a better abstraction for dealing with
machine-independent chipset drivers.
1996-10-21 22:56:24 +00:00
jonathan
3bd4c6caee regen from pcidevs 1.20 1996-10-19 13:04:51 +00:00
jonathan
7717235f4c Add productId for RealTek 8029 PCI ethernet board. 1996-10-19 13:01:49 +00:00
christos
7ad3f1a832 regen 1996-10-15 23:42:42 +00:00
christos
c354418add Use the official 3com part names; from Curt Sampson 1996-10-15 23:41:56 +00:00
christos
898d3e0b34 regen 1996-10-13 22:21:15 +00:00
christos
b3de746da6 Apply PR/2840: Recognize more 3com models... 1996-10-13 22:19:19 +00:00
christos
86373f8cf9 backout kprintf changes 1996-10-13 01:37:04 +00:00
christos
95e30eafe7 printf -> kprintf, sprintf -> ksprintf 1996-10-10 19:58:18 +00:00
christos
bf78c76b40 - move a variable declaration that is unused under NetBSD into the ifdef
for FreeBSD
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 19:55:48 +00:00
christos
9cbe3b9d5f - printf -> kprintf, sprintf -> ksprintf
- include systm.h
1996-10-10 19:53:03 +00:00
christos
9cc736c839 - printf -> kprintf, sprintf -> ksprintf
- remove unused variables.
- fix cleanup code in case of probe failure.
1996-10-10 19:52:10 +00:00
gibbs
b9c06e6fa3 dev/microcode/aic7xxx/aic7xxx.seq,
dev/microcode/aic7xxx_seq.h,
dev/ic/aic7xxxreg.h:
  Remove intrinsic knowledge about SDTR and WDTR messages and replace it
  with a generic message system that allows the kernel driver to handle
  SDTR, WDTR and any other type of extended message it chooses too.  This
  makes the sequencer code much simpler, makes extended message handling
  debuggable since the bulk of the work is in the kernel driver, and saves
  lots of instruction space.

  Regen microcode header file.

dev/ic/aic7xxx.c, dev/ic/aic7xxxvar.h:
  Add code to handle WDTR and SDTR negotiation in light of the changes in
  the message interface to the sequencer.  Don't reject targets that
  negotiate async by sending an SDTR with a 0 offset.  Use an sdtr message
  with 0,0 to negotiate async when a target suggests a period that is too
  long for us to handle.  Some tape and cdrom drives don't like us doing
  the message reject that we did in the past.

  Fix a problem with handing the QUEUE FULL condition.

  Fix a race condition (most likely the cause of the SCB paging problems) that
  might allow the sequencer to get unpaused before the condition that caused
  it to be paused (a SEQINT) was handled.

  Race condition pointed out by Doug Ledford <dledford@dialnet.net> and
  by "Dan Willis" <dan@plutotech.com>.

dev/pci/ahc_pci.c:
  Add support for the 2940AU, an aic7860 based controller.

dev/pci/pcidevs.h, dev/pci/pcidevs_data.h:
  Add product IDs for the 2940AU, aic7860 and aic7855.

  Regen data file.

scsi/scsi_message.h:
  Add MSG_EXT_SDTR_LEN and MSG_EXT_WDTR_LEN - the length of bytes in these
  extended messages.

Thanks to Chuck Cranor <chuck@maria.wustl.edu> for testing these changes
out for me.
1996-10-08 03:04:02 +00:00
christos
169edbf5a3 Don't epstop() at the and of the attach 1996-09-29 11:20:32 +00:00
christos
e76a4ef86b New cyclades driver from Timo Rossi. 1996-09-24 17:59:33 +00:00
christos
7c744984f3 New cyclades driver from Timo Rossi. 1996-09-24 17:47:14 +00:00
cgd
4463616051 put set of 'channel' field of scsi_link in the right #ifdef 1996-09-20 22:38:37 +00:00
mycroft
70944d2e2c Minor changes. 1996-09-01 00:20:20 +00:00
mycroft
e8b5bd5b35 Update. 1996-09-01 00:10:55 +00:00
mycroft
06fdef11fd Split the BusLogic driver apart, and rename it to `bha (like BSDi). 1996-08-31 20:18:24 +00:00
cgd
a84c80e23c regen for new pcidevs 1996-08-29 21:36:01 +00:00
cgd
d29b00b3c3 add entry for the IBM 82351 PCI-PCI Bridge 1996-08-29 21:34:22 +00:00
thorpej
c4366945e5 Quiet the ahc driver down a bit by only enabling some of less useful
messages #if defined(DEBUG) in the NetBSD case.
1996-08-28 23:39:40 +00:00
cgd
71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd
2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
cgd
00209d1db1 remove include of <sys/types.h> (it's implied by including
<sys/param.h>, and historically has been), and add include of
<sys/systm.h> for prototypes.
1996-08-27 16:24:18 +00:00
cgd
de2285c4d2 #undef assert before defining it, so the new libkern definition doesn't
conflict with this one.
1996-08-27 01:00:00 +00:00
cgd
6b5b72905d regen for new pcidevs 1996-08-26 20:20:02 +00:00
cgd
8080fdf200 add ids for the PGXGB (TGA2), and DGLPB (OPPO). 1996-08-26 20:12:16 +00:00
cgd
3c435c25c4 regen for new pcidevs 1996-08-23 04:36:41 +00:00
cgd
6269a2a911 add an entry for the FORE PCA-200e 1996-08-23 04:35:41 +00:00
mycroft
121dfd8f1b Change PCI_MAPREG_{MEM,IO}_SIZE() to use the standard `x & -x' trick to select
the lowest bit set.  This isn't any more or less valid according to the PCI
spec, but it deals with lame devices that don't implement all of the top
bits.
1996-08-10 15:42:33 +00:00
mycroft
988597c420 Eliminate reference to stddef.h. 1996-08-10 09:25:11 +00:00
cgd
f160e92962 revert PCI_MAPREG_IO_ADDR_MASK and PCI_MAPREG_IO_SIZE_MASK to their old
values, i.e. 0xfffffffe and 0xffffffff respectively.  The changed
definitions were incorrect, according to the PCI Local Bus Specification
(Revision 2.0).  Further rationale and a workaround for the broken
devices that instigated the change provided in a message to
current-users@netbsd.org, dated Mon, 05 Aug 1996 22:06:58 -0400,
message ID 16773.839297218@ux2.sp.cs.cmu.edu>.
1996-08-06 02:11:25 +00:00