Commit Graph

1619 Commits

Author SHA1 Message Date
mycroft 91665cb6ef General cleanup, like other drivers. 1996-09-01 00:49:48 +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 0c0b33c781 General cleanup, like other drivers. 1996-09-01 00:09:30 +00:00
mycroft 44bb2d98e1 Split the UltraStor driver apart. 1996-08-31 20:26:48 +00:00
mycroft 06fdef11fd Split the BusLogic driver apart, and rename it to `bha (like BSDi). 1996-08-31 20:18:24 +00:00
thorpej 164af20154 Add a missing "int" in a function declaration. 1996-08-30 01:40:35 +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 11ec3588ad (1) add a 'channel' field to scsi_link.
(2) in scsibusmatch, match channel as appropriate.
(3) add a scsiprint() function, to do the "scsibus at..."
    and channel (if not SCSI_CHANNEL_ONLY_ONE) printing,
    i.e. the common functionality that all SCSI drivers currently
    should be doing.
1996-08-28 18:47:51 +00:00
cgd a4bb0a41da define PDQ_ASSERT directly in terms of __assert, because cpp doesn't seem
to do:
#define	foo(x)	...
#define bar	foo
like we'd like it to.
1996-08-28 16:01:29 +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 5c7192b20c Including user-land headers in kernel code is not allowed in NetBSD.
Therefore:
	(1) define offsetof here, and
	(2) implement assertion checking in terms of the libkern
	    assertion-checking macros.
1996-08-27 00:51:29 +00:00
cgd d32f475ed4 regen for new tcdevs 1996-08-26 23:41:46 +00:00
cgd 3076d34c84 add entries for DGLTA-FA and OTTO ATM boards, alphabetize and clean up
other entries.
1996-08-26 23:39:34 +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
ragge 3a504ef134 Modified to get cleaner match/attach code for different parent buses.
Fix so that resource wait queueing works.
Changed all functions to take a pointer to uba_softc instead of unit
number, except for ubareset(). This must be done later.
1996-08-20 13:37:57 +00:00
explorer c87188f1bd be quiet about read_subchannel. Some CD players use this to poll, and having
a screen filled with kernel messages isn't nice.  Closes pr kern/817
1996-08-13 08:55:38 +00:00
explorer 5c3b7a7213 Fix condition where disk_unbusy may not get called 1996-08-13 08:31:31 +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
mycroft ef186dd501 Look for the sequencer code in the right place. 1996-08-10 08:45:17 +00:00
mycroft 035c4e9b65 Compile the sequencer statically. 1996-08-10 08:36:48 +00:00
mycroft ed82d062fe Use HOSTED_C_C when building the assembler. 1996-08-10 08:24:59 +00:00
mrg 5abbf990f3 Change reboot(2) to take two arguments: bootopt like normal and also
a boot string for firmware that can do this, such as the SPARC and
the sun3 models.  It is currently silently ignored on all other
hardware now, however.  The MD function "boot()" has been changed to
also take a char *.
1996-08-09 10:30:23 +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
soda 9d1a802eba disable AHA-284x product ID, because it is now handled by ahc_isa.c. 1996-08-05 21:18:56 +00:00
thorpej eea135a8b9 Two changes:
- Convert to use <machine/bus.h>.

	- Also read station address in egattach().  The softc is no
	  longer required in the probe function.
1996-08-03 19:33:19 +00:00
thorpej a47a8c3f8c Oops, missed a couple of inb()s.. 1996-08-03 02:23:57 +00:00
thorpej c937985d60 Convert to use <machine/bus.h>, plus 2 bug fixes:
- In egstart(), if the Send Packet command fails, m_freem()
	  the mbuf chain before dequeueing another one (memory leak).

	- In egintr(), return 1 if a known interrupt was processed.
	  Would manifest itself as spurious interrupts.
1996-08-03 02:12:46 +00:00
chuck 9ee9129dc4 fix:
- fix memory sizing bug for 2MB cards.   driver now works for both 512KB
   and 2MB ATM cards (we just got 10 2MB cards).
1996-08-02 02:55:14 +00:00
mhitch ebe82deed0 Remove the "goto abort" (which currently reboots the machine) when the
FIFO is non-empty when the message-in phase occurs before the DMA output
starts.  This showed up on a Micropolis drive.
1996-07-30 06:18:40 +00:00
mycroft a2aa46e1c4 Add PCI_MAPREG_{IO,MEM}_SIZE(), and use them. 1996-07-26 07:13:52 +00:00
mycroft 53f21c73fb Changes PCI_MAPREG_IO_ADDR_MASK to 0xfffe. 1996-07-26 06:35:35 +00:00
thorpej b2b02e6893 Regen. 1996-07-25 20:22:45 +00:00
thorpej e1e89fe37b Add two vendor definitions:
FSI	Fore Systems, Inc.
	INT	Intel

Add product definitions for the FORE Systems EISA ATM cards and the
Intel EtherExpress 32 Flash ethernet card.
1996-07-25 20:22:16 +00:00
is 003947b965 Changed the driver to use bus_xxx(). 1996-07-25 18:59:12 +00:00
thorpej 27e2d3eee3 Match any Maxtor XT-8760S for the SDEV_NOLUNS quirk. Some of these
drives carry Sun OEM identifiers, as well.

Noticed by Taras Ivanenko <ivanenko@ctpa03.mit.edu>.
1996-07-24 20:50:23 +00:00
ragge 88a147e51b CPU determine code. ts driver converted to new config. May work, untested. 1996-07-20 19:00:22 +00:00
chuck b3bed30d80 fixes/update:
- adjust txhiwat and mindma params a bit

 - fixed a couple of incorrectly labeled panic calls

 - the "location" was being calculated incorrectly in some cases (forgot
   to subtract off MID_RAMBASE).   this only caused problem when trying
   to change the size of the tx/rx buffers (e.g. to 64KB).

 - fixed possible non-aligned DMA burst in the starting byte burst case.
        (e.g. if we could DMA 3 bytes, but only have 2 it is not legal
        for us to use MIDDMA_BYTE2 mode).

 - opt: on tx: try and avoid flushing the internal buffer by padding out the
        length of the last mbuf a bit (if possible)
1996-07-17 03:53:39 +00:00
chuck 1e5c811090 midway fixes + new stuff:
- merged multiple DRQ/DTQ ADD macros into a single DRQ and a single DTQ
   macro with a uniform interface to make the code simpler and easier to read.

 - en_start: only update atm_flags if EN_MBUF_OPT is enabled (which it
        should be)

 - for alburst: make sure we don't DMA more bytes than we need (on both
        tx and rx).   if the alburst is larger than we need, drop to
        MIDDMA_WORD mode.

 - major change: enable the use of byte and 2 byte DMA on the trasmit side.
   this allows us to DMA from non-word sized/aligned mbufs directly.
   [the old code would always call en_mfix which would copy (or move) the
    data in order to ensure proper alignment...   it turns out TCP gives
    us non-word sized/aligned mbufs when it is retransmitting, so we needed
    to handle this case more efficiently.]    the following functions
   were changed to make this work:
    - en_dqneed: add an arg to let us know if we are transmitting or not.
        if we are TX, then we must take into account byte DMAs when
        estimating the number of DTQs we will need for a buffer
    - en_start: only mfix mbufs if DMA is disabled
    - en_txdma: only set launch.nodma if we have en_mfix'd the mbuf chain
        also, we may need a DTQ to flush the chip's internal byte buffer
    - en_txlaunch: only attempt a copy if we have the proper alignment.
        add byte dma code for the front and end of the buffer.
        make sure the internal dma buffer is flushed out.
    - stats: keep track of how many times we have to use byte sized DMA

midwayreg:
 - add byte/2byte DMA defines

midwayvar:
 - add new stat counter to monitor less-than-word lengthed DMA
1996-07-16 22:11:05 +00:00
mhitch e4de48ff39 Don't flush the 53C94 fifo when starting dma_in. The fifo data is valid
at that point, and flushing the fifo will hang the system.
1996-07-16 15:20:38 +00:00
cgd b23ddc2150 regen for updated pcidevs 1996-07-15 22:55:14 +00:00