Commit Graph

4773 Commits

Author SHA1 Message Date
mycroft f2c4e7f8bd Use the correct interrupt sharing type, and set PCIC_INTR_ENABLE(!). 1999-02-18 23:41:40 +00:00
mycroft 74028ea9fd Regen. 1999-02-18 22:32:27 +00:00
mycroft b71baddba7 Add ID for MagicRam SwapBox PCMCIA controller card. 1999-02-18 22:31:32 +00:00
thorpej a473ed5477 Fix omission in previous. 1999-02-18 19:24:39 +00:00
mycroft 18e341a954 Add separate halt_input and halt_output methods in ad1848_isa, which disable
the DMA channel.
1999-02-18 17:27:39 +00:00
mycroft 9907eda026 spaces -> tabs 1999-02-18 16:09:01 +00:00
mycroft 81bc49921a Remove some superfluous softc elements. 1999-02-18 15:47:29 +00:00
bouyer 7e5acb7709 Don't print an extra newline if the controller doesn't support 32 bits access.
Pointed out by Dave Huang.
1999-02-18 14:45:31 +00:00
bouyer e96144a012 Add a missing ':'. pointed out by Dave Huang. 1999-02-18 14:44:34 +00:00
mycroft 699a815751 Pass the correct address (PCI bus address, not PA) to the card.
Also fix some typos and add more debugging printf()s.
This would work on the Alpha, but the card I have appears to have the upper
address bits chopped off, and the ring buffer gets mapped using the DGMAP,
which uses the upper bits.  Boom.
1999-02-18 09:22:17 +00:00
mycroft e0b748e50c Pass the correct address (PCI bus address, not PA) to the card.
Works on an Alpha now.
1999-02-18 07:59:30 +00:00
mycroft 5e2fc07a14 Add separate halt_output and halt_input routines. 1999-02-18 07:08:35 +00:00
mycroft c02bf3c4d7 Minor code munging. 1999-02-18 05:46:38 +00:00
thorpej cfb2342145 Fix the code in epic_attach() that frees resources when the attach fails. 1999-02-18 02:24:30 +00:00
thorpej 5c457e71fe Only do the multicast filter bug work-around if in 10Mbps mode. Also,
don't reset the interface if the multicast list changes.  Just reprogram
the multicast hash table.
1999-02-18 02:12:09 +00:00
thorpej 982603ce5b Don't reset the interface when the media changes. 1999-02-18 01:24:29 +00:00
thorpej 78e18b8d8c Back out to the previous stable revision of the fxp driver. The latest
one had too many stability problems.
1999-02-18 01:23:41 +00:00
mycroft 6ce15ae4e3 spaces -> tabs 1999-02-18 00:55:36 +00:00
mycroft f1e84a4ec5 A few things:
* Use the trigger interface.
* Permit different encodings for record and playback.
* Set AUDIO_PROP_INDEPENDENT.
* Fix the mmap(2) hole again.
* Use 16-bit mode for a-law and u-law playback.
1999-02-18 00:54:19 +00:00
mycroft 8b7b7cccc7 Fix a silly type. 1999-02-17 23:55:18 +00:00
mycroft 27963c294a Use the trigger interface, and clean up a pile of cruft. 1999-02-17 23:05:28 +00:00
mycroft 71105fbda7 Update comments. 1999-02-17 21:44:55 +00:00
thorpej 6d0cb6e410 Change a straggling splimp -> splnet. 1999-02-17 09:11:29 +00:00
thorpej 69a4436f8b Avoid initializing the interface in the SIOCSIFFLAGS if ! UP and ! RUNNING. 1999-02-17 03:40:59 +00:00
mycroft 7741cae143 Fix slight ommission in previous. 1999-02-17 02:43:13 +00:00
mycroft e5f5e628d2 Pass the direction to the allocm and round_buffersize methods.
Some drivers need this to properly allocate DMAable memory.
1999-02-17 02:37:38 +00:00
mycroft 88ad3aa42b If we have an 8-bit DRQ, always pass that to isa_malloc(). 1999-02-17 01:22:47 +00:00
is 2c7fa23c38 Fix Copyright dates 1999-02-16 23:34:10 +00:00
is dc068e0d1f Assign my files to The NetBSD Foundation, Inc. 1999-02-16 22:46:55 +00:00
bouyer 2ccd5cde74 Correctly compute PIO/DMA mode for sis and acer chips when the drive support
a DMA mode with higther capabilities than PIO mode.
1999-02-16 18:11:52 +00:00
bouyer d683e62685 Be less strict on ATAPI signature, at last one CD puts 0x00 in sc instead
of 0x01.
1999-02-15 18:47:59 +00:00
bouyer 13e811e874 Revert to 1.23, this was not supposed to be checked in yet. 1999-02-15 18:43:08 +00:00
bouyer 18496766b2 For CDIOCCLOSE, ignore media changes, as some drive seems to return this
info here.
1999-02-15 18:41:04 +00:00
bouyer 379429d4df If the REQUEST_SENSE command fails, issue a reset instead of XS_DRIVER_STUFFUP.
If REQUEST_SENSE succeeds but doens't return any data, return XS_SHORTSENSE
as the sense field will just contain a copy or the error register.
1999-02-15 18:40:01 +00:00
hubertf 56f2d188fc RCS ID police 1999-02-15 04:54:34 +00:00
augustss fd9002550c Make the reset even longer do cater for really bad devices. 1999-02-15 00:32:16 +00:00
tron 210b267f84 Regen from pcidevs. 1999-02-14 22:44:36 +00:00
tron acb24b6080 Add 3Dfx's Voodoo II. Fixes PR kern/7000 by Brett Lymn. 1999-02-14 22:38:18 +00:00
thorpej e523f4968b Make sure full-duplex is reflected in TXCON, and don't reset the interface
when the media changes.
1999-02-13 21:08:08 +00:00
minoura 4d5a04afc4 MI version of the Fujitsu MB89352 SCSI Protocol Controler (SPC) driver.
Based on experimental NetBSD/pc98 ISA/PISA version, which was derived
from the MD /sys/arch/x68k/dev/spc.c.
1999-02-13 17:33:14 +00:00
scw 94719c7b9a New MI front-end for the Cirrus Logic CD240[01] Multi-protocol
Communications Controller.

This is still a work in progress, but it is functional enough to
be usable.
1999-02-13 17:05:19 +00:00
thorpej 70b91539e9 Restructure the interrupt handler and 1-second timer a bit, and tidy up
the lazy-transmit-interrupt logic, fixing a few minor logic problems.

Now unable to reproduce the lockup problem described in PR #6767.  Changing
PR's state to "feedback".
1999-02-13 02:12:59 +00:00
drochner 960dfa5227 oops - forgot to convert the trivial case (ASCII) to "match levels" 1999-02-12 15:49:43 +00:00
drochner 525932e022 make the probe stricter to catch cases where the chipset doesn't pull
the data lines to "high" for not-existant devices
1999-02-12 12:45:48 +00:00
drochner b515442160 Display the danish o-slash as phi/Theta as proposed by
Soren S. Jorvang <soren@t.dk>, with a lower match level.
Display the other accented characters which are not present in the IBM
character set by their non-accented equivalents, with an even lower
match level.
1999-02-12 11:32:50 +00:00
drochner dbdaf91650 change the "mapchar" interface to return a "quality" or "match level"
arguments which allows to find approximations for characters which are
not present in a font
1999-02-12 11:25:23 +00:00
drochner 2414f4ac80 "NEXT" is a keyboard type, not a keymap variation. 1999-02-12 11:14:49 +00:00
thorpej e8823cc3f3 Cleanup of the EPIC/100 driver I did while hacking on the Rhine driver:
* Macroize hardware and software descriptor access (much easier to read).
* Simplify and optimize the transmit loop a bit, and use IFF_OACTIVE as
  appropriate.
* Fix a potential race condition in the transmit loop.  This change has
  made the driver significantly more stable (almost completely eliminated
  the "device timeout" errors that have plagued this driver).
* Implement transmit interrupt pacing.
* Add missing bus_dmamap_sync() calls (on transmit and receive descriptors
  and fraglists).  (Draining the write buffer when accessing these structures
  may have also contributed to the increased stability of this driver on
  the Alpha.)
1999-02-12 05:55:27 +00:00
thorpej 873e1d2a51 Fix printf format problems on Alpha. 1999-02-12 01:51:37 +00:00
thorpej 1ab6db8e5f Fix printf format problems on Alpha. 1999-02-12 00:50:09 +00:00
thorpej 94962b67c7 Fix some printf format problems on Alpha. 1999-02-12 00:46:11 +00:00
thorpej f83663b7ba Garbage-collect some unneeded definitions. 1999-02-12 00:37:07 +00:00
thorpej 7b516b31bd Major overhaul of the Rhine/Rhine-II driver, structuring it a little more
like the SMC83C100 EPIC/100 driver:
* Rather than using pointers to the head and tail of the transmit and
receive rings, use wrapping indexes into arrays.  This is a little more
obvious when reading the code.
* More cleanly separate the hardware descriptor from the software descriptor.
* bus_dma it everywhere.
* Implement interrupt pacing and avoid a potential race in the transmit
loop.

Now this looks more or less like the Rhine driver I was working on when
this driver was committed :-)  Update copyright notice to reflect that.
1999-02-12 00:36:48 +00:00
oster 6d72c8f0e7 Minor cleanups that got missed last time through. 1999-02-11 01:23:32 +00:00
minoura c5847e98a9 void* -> u_int32_t 1999-02-10 16:00:54 +00:00
bouyer 6dd47fe65f Abort transfer if b_blkno is negative. Closes PR kern/5553 by Johan Danielsson. 1999-02-10 12:29:50 +00:00
sakamoto 0b4e481612 add "mii" to vr driver. 1999-02-09 02:04:36 +00:00
mjacob 1a911bb798 roll internal release level 1999-02-09 00:54:07 +00:00
mjacob 3c21a2493b Roll internal release tag. Print out if we're in a 64 bit PCI slot.
Use fast memory timing NVRAM parameter. Clean up and fix establishment
of default target parameters. Don't use NVRAM if are flagged as not to
do so (I had a busted NVRAM setup which I couldn't edit that enabled SYNC
mode but disabled disconnect/reconnect and wide!!). Fix delays after
resets. BUS resets not done in isp_init anymore- relegated to OS
specific outer layers. Fix a buglet where you can get in a loop for
a NULL xs in the completion list in isp_intr. Add in some defines that
can disable fast posting. Add in code for Loop Up/Loop Down events that
call into the outer layers as to what to do.
1999-02-09 00:52:23 +00:00
mjacob 0cf98e4e12 Roll internal release tag. Roll core version minor. Fix broken DPARM_DEFAULT
define. Add a new config flag param (ISP_CFG_NONVRAM) whose intent it is
to cause NVRAM to be ignored. Add ISPASYNC_LOOP_DOWN and ISPASYNC_LOOP_UP
isp_async enums.
1999-02-09 00:46:25 +00:00
mjacob d8d9458410 fix a couple of NVRAM defines 1999-02-09 00:44:42 +00:00
mjacob c1adc949c2 roll internal release tag 1999-02-09 00:44:06 +00:00
mjacob 6a8ebccd6a Do SCSI Bus resets in this layer (now). Don't do it for Fibre Channel yet
(we get LOOP DOWN events, and we'll hang on that at this time).

Add other isp_async cases- ISPASYNC_LOOP_DOWN and ISPASYNC_LOOP_UP. DOWN
will cause internal queuing until UP, whereupon a timeout will fire up
any pending xfers. It doesn't really keep commands from getting destroyed
by loop down events, but at least minimizes the damage. This was much
easier to implement with CAM.
1999-02-09 00:42:22 +00:00
mjacob ee45547dde Roll platform revision level. Add blocked flag and waitq to osinfo structure. 1999-02-09 00:37:35 +00:00
mjacob c47d6855db clean up pci configuration a bit 1999-02-09 00:35:35 +00:00
tls e8690f9bd1 Fix ESS/SB confusion for 1868 and 1869 chips: because isapnpdevs is parsed by an awk script, you *must* comment out each line separately, which is why ess was still trying to attach chips it couldn't cope with. Note that this leaves isapnp ess with no matches -- shouldn't the 188X be in here? Also, add another isapnp PCIC. 1999-02-08 22:10:09 +00:00
bouyer f6f9f8a965 Change DIOCEJECT to do what's needed to eject a device before the eject
command (unlock for sd and cd) if no other partitions are open, return
EBUSY otherwise. DIOCEJECT will have the old semantic if its argument is not
0. The old ioctl has been renamed to ODIOCEJECT for binary compatibility.
1999-02-08 16:33:16 +00:00
bouyer 1e0e78854a There's no ATA draft where it is required for the drive to set DRDY | DSC when
the disk is ready to transfer data, and in ATA-5 the DSC has been obsoleted.
So only wait for DRQ to transfer data. This can be made conditional on the
ATA version if it's proven to break with some drives (worked with all the
drives I have access to).
While I'm there correct a few typos.
1999-02-08 15:22:28 +00:00
sommerfe 999d27da77 Don't bother copying output queue into automatic buffer; instead, pass
contiguous chunk of outq to emulation routine.  Fix based on patch
from M. Drochner, modified to call output routine once with each
contiguous chunk when the ring buffer wraps around.
1999-02-08 14:48:07 +00:00
sommerfe 95ee03319d Change WSDISPLAYBURST from OBUFSIZ-1 to OBUFSIZ*4, for a ~15x
improvement in the "cat /usr/share/misc/termcap" benchmark on 486/75

ttwrite queues data for us in OBUFSIZ chunks.  If we only consume
OBUFSIZ-1 bytes per call to wsdisplaystart(), we're *guaranteed* to
fall behind when given maximum-sized reads (which will defer
processing the leftovers until ttrstrt gets called, after a timeout)

Note that OBUFSIZ*4 may be overkill; OBUFSIZ*3 may be sufficient to
get maximal performance; OBUFSIZ*2 resulted in only about a 2.5x
performance improvement, but it's 2am and I've done enough tweaking
for the night.
1999-02-08 07:05:51 +00:00
sommerfe 0d3a9dfce7 Don't bring scsi/atapi common files in under the "atapi" attribute.
Bring them in under atapibus since they're not needed unless something
attached to an atapibus is also attached.
Tested on i386 and arm32.
1999-02-07 22:58:43 +00:00
jonathan c9d036d796 defopt MEMORY_DISK_{HOOKS,SERVER,IS_ROOT}. 1999-02-07 09:34:58 +00:00
thorpej 6eedee5c9d Add entropy gathering. 1999-02-07 01:54:50 +00:00
cgd 6b77f11d67 put in better name/description for Simon G's board 1999-02-06 06:55:15 +00:00
cgd 04046c6dd7 add code to cope with multiple ports per BAR, as are found, for instance,
on the 8 port card Simon Gerraty has.  In general, cards which have
this lots of ports also have a separate interrupt status register, but
this change is just to talk to the various ports independently.  It works,
but it's not optimal.  (XXX still need a good name for the card in the
comments, and to update the manual page.)
1999-02-06 06:29:54 +00:00
thorpej 23382bdfcb Regen. 1999-02-05 22:55:40 +00:00
thorpej 0955479f29 Add some Olicom Ethernet device IDs, from FreeBSD's tl driver. 1999-02-05 22:55:19 +00:00
thorpej d95d5b1488 Make this driver work on the Alpha. Apparently the receive DMA mechanism
has the same 4-byte alignment requirement that the transmit side does.  This
causes the packet payload to be misaligned.  So, on systems which require
strict alignment, we must copy the incoming frame to a new packet buffer,
suitably aligned.
1999-02-05 22:09:46 +00:00
thorpej b52d1e44d0 Fix the interrupt handler to actually acknowledge the interupt to the
dispatch code (!!!).  How did this work even on the i386 before?
1999-02-05 21:20:31 +00:00
thorpej 58beb19c16 Regen. 1999-02-05 20:20:04 +00:00
thorpej 53089c1ade Add oui for Davicom Semiconductor, and add Davicom DM9101 10/100 PHY. 1999-02-05 20:19:44 +00:00
thorpej dde3694c4c Fix some formatting nits. 1999-02-05 08:42:03 +00:00
thorpej 82a54250be Remove some duplicate softc members, and comment some of the softc
fields.
1999-02-05 08:27:46 +00:00
thorpej 8bf66d3eb2 Remove some unnecessary splnet's. 1999-02-05 08:21:31 +00:00
thorpej 50faf19d7d splimp -> splnet 1999-02-05 07:53:24 +00:00
thorpej adc9c40688 Use the generic MII support code, not our own. 1999-02-05 02:58:38 +00:00
thorpej f9467ddb8e Some PHYs are really braindead, and report incorrect IDs. Simplify the
test for this, and probe for PHYs based on media in the BMSR.
1999-02-05 02:46:34 +00:00
thorpej ebf3a97519 Use MII command opcodes from <sys/dev/mii.h> 1999-02-05 01:17:24 +00:00
augustss eade8dcad9 Don't use ess driver for ESS186[89], it doesn't work. 1999-02-05 01:15:01 +00:00
thorpej 909b90d2d4 Rename VR_MIICMD_DATAIN and VR_MIICMD_DATAOUT to actually match what the
data sheet says.  (The names and their usage were exactly reversed in the
code.)
1999-02-05 01:10:30 +00:00
oster 0014588545 Phase 2 of the RAIDframe cleanup. The source is now closer to KNF
and is much easier to read.  No functionality changes.
1999-02-05 00:06:06 +00:00
mycroft 0c7afe477d Separate the tiocm code into functions, like the z8530 code, and fix the same
DTR bug.
1999-02-03 23:57:27 +00:00
mycroft 568f4aa704 Minor changes to tiocm code. 1999-02-03 23:51:06 +00:00
pk 6db0ff6627 Update last prototyping change. 1999-02-03 23:40:22 +00:00
mycroft 9be96dda95 Fix an inconsistency: PPS was turned off on first open, but the mode may have
still claimed it was enabled.
1999-02-03 23:22:11 +00:00
mycroft 535f59cc81 Slight redux in PPS code. 1999-02-03 23:20:33 +00:00
mycroft b3a56d0097 Catch up with a change to the stint interface. 1999-02-03 20:22:28 +00:00
mycroft b63b0fd80b Redo the N previous changes, plus a couple of other things:
* Move the printf() delay to just after the printf(), where it actually makes
  sense.
* Use zstty_stint() and zstty_softint() from zsparam(), to force an immediate
  update of the carrier and flow control status.  Abuse this in the attach and
  open functions to defer all of that work.  This insures that we don't lose
  any status updates.
* Don't screw with register 1 when closing the console.
* Fix bugs in TIOCM??? (stay semicolon, clearing DTR while transmitting).
* Add comments in a couple of places.
1999-02-03 20:15:51 +00:00
mrg 4553ce553c use <dev/sbus/sbusvar.h> not <sparc/dev/sbusvar.h> 1999-02-03 06:03:37 +00:00
pk 4bd6ed2a8b Make this pass the `strict prototype' test. 1999-02-02 22:23:44 +00:00