Commit Graph

1408 Commits

Author SHA1 Message Date
thorpej 34f3cd7ce9 Use ETHER_*_LEN constants from <net/if_ether.h> instead of defining them
ourselves.
1999-03-25 23:20:22 +00:00
thorpej 88d8a91205 Use ETHER_*_LEN constants from <net/if_ether.h> instead of defining them
ourselves.  Fix a bug where packets wouldn't be padded to the correct
minimum length.
1999-03-25 23:19:59 +00:00
thorpej 9caa955278 Use ETHER_*_LEN constants from <net/if_ether.h> instead of defining them
ourselves.  Subtract ETHER_CRC_LEN as necessary to get the same values
for these constants as were previously defined locally.
1999-03-25 23:19:16 +00:00
thorpej ad22c1dd58 Use ETHER_*_LEN constants from <net/if_ether.h> instead of defining them
ourselves.
1999-03-25 23:16:37 +00:00
bouyer 1ff88ee466 Avoid busy-waiting when possible if we are not polling (real IRQ or timeout
callback). Shared PCI IRQ should now work (but still untested).
1999-03-25 16:17:36 +00:00
perry 8ade3b61ba Add two #ifdef BROKEN_LPT_DELAY's in to the central write byte
& strobe cycle. These bracket DELAY()'s of BROKEN_LPT_DELAY
microseconds. This can be used to kludge around mysterious hangs and
reboots some users experience. The cause of these failures is still
not known, but is conjectured to be hardware bug originated failures
in the bus cycle.
1999-03-25 02:17:38 +00:00
mrg d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
drochner 1c99e4196a Use BUS_SPACE_ALIGNED_POINTER() instead of ALIGNED_POINTER() where the pointer
in not just used to access memory but is bassed to bus_space_xxx_n()
methods. For debugging purposes, bus_space can have additional constraints
which will be properly met by BUS_SPACE_ALIGNED_POINTER().
1999-03-23 21:41:07 +00:00
bad f44fb0d91c A backend for Databook's TCIC family of PCMCIA chips.
Thanks to Andreas Lohrum, O'Reilly Verlag, Terry Moore, and Holger Czukay
for hardware, documentation, and support.
1999-03-23 20:04:14 +00:00
pk c3eb74e089 Check for Sbus slave access errors.
Call bus_dma_load() with elevated priority.
1999-03-23 00:32:27 +00:00
bad a4e508928f Oops. RcsID police. 1999-03-22 23:01:36 +00:00
bad 2c16793ee5 Chipset driver for TROPIC based Token-Ring cards.
Frontends for IBM and 3COM ISA cards.

By Onno van der Linden <onno@simplex.nl>.
1999-03-22 22:21:26 +00:00
drochner b2c812d776 set "fontset" variables to 0 if no appropriate font was found for a
freshly allocated screen, should fix panic if "vga_mapchar()" it
attempted later
1999-03-22 18:24:23 +00:00
erh fc841e81b5 Get the index on the buffer (in addition to the descriptor) correct. 1999-03-19 22:43:11 +00:00
mjacob 008b51d0a6 Update the driver with some infrastructure for the 1080. Fix an embarrassing
clock botch bug. Additional infrastructure for PDB change stuff.
1999-03-17 06:15:47 +00:00
erh f4ccb35266 Add a "+1" in sca_start which should fix the limit of 2 transmit buffers. Also, kill some duplicate code. 1999-03-16 21:29:23 +00:00
jonathan 69d2d27c1b Use bus_space tags and handles, embedded in MD hooks AM7930_{READ_WRITE}_REG
to handle MD delay and bus padding. Tested on sparc2 by David Brownlee.

Should use regmaps, but that breaks sparc pDMA assembly code.
1999-03-14 22:29:00 +00:00
minoura 1ff51fea1a Some x68k conditionals (I don't know why these are needed...). 1999-03-14 16:14:54 +00:00
bouyer a6365676fa Add a new disk flag: DRIVE_OLD for pre-ATA disks. probe routine will now set
DRIVE_OLD, DRIVE_ATA or DRIVE_ATAPI based on register signatures.
The attach routine will issue a IDENTIFY command for ATA/ATAPI disk,
to detect flase matches by the probe routine.
probe/attach should now be fully compliant with ata-4/ata-5. As a side
effect, ATAPI drives which improperly use ATA register signatures should now
be attached as ATAPI.
1999-03-10 13:11:43 +00:00
bouyer ba74f49e60 Keep track of CRC errors in Ultra-DMA mode. If we noticed a CRC error and we
need to downgrade, downgrade to PIO, as it has been shown if we got CRC errors
in Ultra-DMA mode, we will have silent data corruption in multiword DMA mode
(isn't IDE wonderfull ? :).
Set timeout to 1s for "normal" ata I/O, to minimise the effects of missed
interrupts.
1999-03-07 14:02:53 +00:00
dante 199f99d192 fix second level interrupt handler to allow 64 bits pointers 1999-03-04 20:15:53 +00:00
pk 80b321b11a sparc => __sparc__ 1999-03-03 12:58:14 +00:00
explorer 3ebb419571 Update to slightly altered rnd_attach_source() api 1999-02-28 17:08:05 +00:00
dante 198f1f5c48 Fix AdvanSys Narrow driver to work on Alpha 1999-02-25 20:21:33 +00:00
dante eab52d94b3 Fixed AdvanSys Ultra Wide driver to work on Alpha. 1999-02-23 20:18:16 +00:00
scw fc658e2d3e Don't update the CORx registers unless they really have changed.
Also make console Tx handling wait until the Tx FIFO has drained and
the shift-register is empty before sending console characters.
1999-02-21 14:01:50 +00:00
abs b86f85e1cc wdcwait is called initially without any device on my thinkpad.
This breaks the first WDCDEBUG_PRINT. Handle this case.
1999-02-21 02:07:52 +00:00
hubertf 99626f33a3 Only #define WDCDEBUG if it isn't already defined (e.g. by some options
in the kernel config file).
1999-02-20 23:47:52 +00:00
drochner bd047d30a0 complete mapping table for pcvt fonts, make dual-font selection work
as intended
1999-02-20 18:27:53 +00:00
drochner 9ad8930d16 complete mapping tables a bit so that ASCII (ie vt100) art looks better
even without extra fonts loaded
1999-02-20 18:26:13 +00:00
scw 3a5b0d88ca That #define splserial() really didn't want to be there... 1999-02-20 16:23:39 +00:00
scw 0ed9dc11d7 Delay serial port parameter changes until the Tx FIFO has emptied. 1999-02-20 00:27:29 +00:00
leo e54f78017e This one needs <machine/bswap.h> too. 1999-02-19 20:58:51 +00:00
minoura 38803874bb Translated Japanese comments. 1999-02-19 16:19:53 +00:00
mycroft 28bc4dfeca Oops; PCIC_INTR_ENABLE does something *very* different. 1999-02-19 03:14:00 +00:00
mycroft 70d4ac07b6 Yet another path where we need to set PCIC_INTR_ENABLE. 1999-02-19 00:27:45 +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
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
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
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
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 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
hubertf 56f2d188fc RCS ID police 1999-02-15 04:54:34 +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
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
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
minoura c5847e98a9 void* -> u_int32_t 1999-02-10 16:00:54 +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
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
thorpej 6eedee5c9d Add entropy gathering. 1999-02-07 01:54:50 +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
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
marc 9231ba8603 - make sure that sc->handle[i].flags is initialized in all cases
- check PCIC_FLAG_SOCKETP before disabling the CSC_INTR.
1999-02-01 22:17:05 +00:00
wrstuden 36c50aaa14 Add the patch I floated on tech-kern. Andreas Eltrich <elchy@dahoam.de>
says it got pppd working for him.
1999-01-31 21:41:00 +00:00
minoura 8ed711f1bc MC68450 DMAC regs. 1999-01-30 14:58:26 +00:00
mjacob 6bcdc2b5d2 Implement and use Fast Posting for both parallel && fibre. Redo a bit of
the startup code. Implement a call to outer framework function so that
asynchronous events can be handled (e.g., speed negotiation, target mode).

Roll internal release tags.
1999-01-30 07:31:50 +00:00
drochner a7f50b8178 Debugger() -> console_debugger() to honour the ddb_fromconsole sysctl 1999-01-26 17:08:37 +00:00
wrstuden ccf442a971 Fix thinko in part of rev 1.53.
Thanks to Scott for pointing this out to me (I got his mail and figured out
this change before seeing the discussion on tech-kern) and to Charles for
the initial explanation.
1999-01-25 17:53:13 +00:00
msaitoh 88176e7d20 Fix about insertion/removal event problem. 1999-01-21 07:43:32 +00:00
bouyer a1471db64a move wd.c:print_wderror() to ata.c:ata_perror().
In wdc_probe_caps() add code to guess the ATA revision supported (if
ATA4 if Ultra-DMA, ATA2 if PIO mode > 2). We can't rely on param.atap_ata_major
here, at last one Ultra-DMA drive claims to support only ATA-3.
Use the ATA version in ata_perror(), and to try a flush cache command
in a shutdown hook for IDE drives.
1999-01-18 20:06:24 +00:00
mjacob 83270f242f If you're BIG_ENDIAN and use bswapXX, pull in the header file that prototypes
these functions.
1999-01-18 19:17:00 +00:00
pk ed55ba4db9 Need <machine/bswap.h> 1999-01-18 11:51:43 +00:00
ross 5709f532d1 Random compile nits in BHADEBUG code. 1999-01-14 04:47:18 +00:00
drochner 23cfea8327 -implement new wscons font handling with separate download and selection
calls
-support use of 2 fonts simultanously; this costs the ability to
"highlight", ie to use the upper 8 colours
-define screen types "80x25bf" and "80x50bf" which use this ability
-add conditional code to deal with the weird mapping of pcvt's
supplemental fonts
1999-01-13 16:48:58 +00:00
christos e79b8222a6 Put back modem control ioctl's 1999-01-13 11:55:20 +00:00
drochner 9b1eddc4f1 - Set up the interface watchdog timer on sends. This fixes the hangups
reported by Matthias Scheler <tron@lyssa.owl.de> in PR kern/6772.
- After receiving, check whether the receive DMA pointer became 0
  what obviously happens if the list runs out of entries. Simply reinit
  in this case. This fixes receive lockups after DDB use observed
  by myself.
  Unstall the receive engine if the ELINK_UPPKTSTATUS indicates that it
  was stalled. (Don't know when this might happen. FreeBSD does so.)
1999-01-10 14:19:46 +00:00
mjacob 9d702f60ed + Some basic deadchip detection.
+ Enable FIFO bursts, but also detect bogus 1040A with busted FIFO.
+ Use new MEMZERO crossplatform define.
+ Handle RQCS_QUEUE_FULL status case and let upper layer parse SCSI ststus
  byte if nonzero (should be 0x28- Queue Full status)
+ Fold ISP_NVRAM_FIFO_THRESHOLD_128 into isp_fifo_threshold tag.
1999-01-10 05:07:53 +00:00
mjacob f1dfa06e13 bump isp_fifo_threshold tag top 3 bits 1999-01-10 05:04:46 +00:00
mjacob b503bb5337 cross platform define MEMZERO added 1999-01-10 05:04:18 +00:00
drochner 98e630dbe0 Allow to deallocate also the currently visible virtual screen (unless
it is the console).
This requires vva_show_screen() to catch the case where it has no screen
to switch from, ie no need to save the current state.
1999-01-09 15:29:26 +00:00
augustss 0d32a9a78b Fix more `void *' arithmetic. 1999-01-08 19:22:34 +00:00
thorpej 71c86e3e92 Changes to NCR53c9x driver necessary to add support for the AMD Am53c974
PCscsi-PCI SCSI controller.  From Izumi Tsutsui, PR #6654.
1999-01-06 19:19:38 +00:00
christos dfd0f0f949 PR/6669: Michael Eriksson: pcic_chip_mem_alloc() can't handle large requests 1999-01-01 14:05:18 +00:00
augustss 44df4dcc85 Add a wscons display type `unknown' that the generic VGA driver can
return until someone fixes it for real.
1998-12-30 13:54:03 +00:00
mjacob e5e787230b clean up headers; move uninit/watch to outer layers 1998-12-28 19:10:43 +00:00
msaitoh 2718914e14 fix incorrect panic message 1998-12-25 16:50:08 +00:00
nathanw 788ff053de Fix up support for PCI attachments of pcic devices on i386 in general,
and the Cirrus Logic CL-PD6729 in particular.

From danw@mit.edu in PR port-i386/6436.
1998-12-20 17:53:28 +00:00
thorpej 92229a04c1 Quiet some diagnostic messages when we might expect them to happen.
PR #6460, Rafal Boni.
1998-12-18 21:50:16 +00:00
bouyer c37bf0ccb4 Keep track of DMA errors, and downgrade the transert mode (UDMA ->DMA,
DMA->PIO) in case of 2 consecutive errors. Don't downgrade if the
PIO/DMA/UDMA modes were forced by a config flag.
1998-12-16 13:02:03 +00:00
bouyer 94f32463dc Add a callback to re-compute the modes used on a channel. 1998-12-16 12:46:47 +00:00
mycroft 95aa0d0b7d Simplify the copy loops a bit. 1998-12-12 16:58:10 +00:00
mycroft 90b7cbc727 Simplify argument to MGET(), to generate better code. 1998-12-12 16:36:24 +00:00
mycroft a6717054a4 Slight simplification to previous. 1998-12-12 16:31:34 +00:00
bad fe3ce4e89a Simplify the code dealing with the mbuf chain in dp8390_get(). 1998-12-11 18:03:55 +00:00
bad ba8bdebedd Change a comment to reflect reality. 1998-12-11 16:01:16 +00:00
tls 2fbbdcc0cb Fix bug that caused all ifp's to have if_xname ntwo0, which was rather inconvenient. Should use config_found on each port instead, but this works for the moment and it's quick. 1998-12-09 23:25:41 +00:00
thorpej 7a9cc5bfbc Update for changed scsipi_xfer struct. 1998-12-09 08:37:50 +00:00
leo 5335909035 BVME410 ethernet driver by 'maximum entropy'. 1998-12-09 07:33:59 +00:00
augustss 1b499d8ce6 Make the OPL information string more informative. 1998-12-08 14:26:56 +00:00
bouyer 997074f17c Add a missing 'return' in an error path; noticed by Matthias Drochner. 1998-12-08 13:29:31 +00:00
mjacob d610e1ad3f Update BA for new max_lun parameter for SCSIbusses. Clearify maximum luns
for FC HB based upon a SCCLUN define (15 for normal- 255 out of a possible
65535 for SCCLUN). Propagate loopid as adapter_target.

Roll minor platform version. Roll core version number.

Update mailbox definitions with cleaner target mode structure definitions.
Clean up some ENDIAN stuff. Correct botched ISP2100_NVRAM_HARDLOOPID offset.
1998-12-05 19:48:23 +00:00
mjacob 74bc9f26d5 Update HBAs to incorporate the new max_lun property. 1998-12-05 19:43:33 +00:00
pk 19f705b094 Cast bus_space_{read,write}_multi arguments. 1998-12-03 23:33:45 +00:00
bouyer 47ab212504 Rename pio_mode, etc ... to PIO_cap, etc ... for consistency with the
ata_drive_datas struct. Suggested by Soren S. Jorvan.
1998-12-03 18:24:30 +00:00
bouyer 71f33dbfa5 UDMA->Ultra-DMA in a printf 1998-12-03 17:30:32 +00:00
bouyer 2b28c858d8 add a udma_mode field to wdc_softc, and use it the same way dma_mode is used
(higthest ultra-dma mode supported). There may be a higther ultra-dma mode
defined ...
1998-12-03 15:38:59 +00:00
bouyer 1d5d5ab40a In struct wdc_xfer, change 'channel' to a pointer to a channel_softc, to avoid
a double-pointer dereference at run-time. Suggested by Matthias Drochner.
1998-12-02 15:53:34 +00:00
bouyer 45675ab14b - change drive_flags from u_int8_t to u_int16_t
- keep the modes supported by the drive in struct ata_drive_datas (will be
  later used for downgrading the DMA/PIO mode on error)
- use config flags to force/disable PIO/DMA/UDMA modes
- For the CMD PCI0643/6 setup DMA mode to DMA Read multiple.
1998-12-02 10:52:24 +00:00
pk adbfb3777a Update previous: we don't have the required information all the time. 1998-11-30 07:54:29 +00:00
pk 0f8cfb66f0 Some more misc. cleanup in the same style as previous. 1998-11-30 07:44:24 +00:00
pk 9860d69b7e Announce negotiation of async mode consistently (Soren Jorvang; PR#6512) 1998-11-30 07:34:06 +00:00
bouyer 5f088e0243 wdcstart(): Re-add support of shared xfer queue across multiple channels
(was lost between 1.44 and 1.45).
1998-11-29 17:34:49 +00:00
thorpej 96da1decd9 Fix media probe on non-MII chips. 1998-11-29 01:40:46 +00:00
thorpej 18e7f69220 Update for new pcmciabus attribute. 1998-11-27 21:59:18 +00:00
augustss 9726cfd1fb Make the copyright header conform to the NetBSD template. 1998-11-25 22:17:06 +00:00
kenh 1f676cda09 Implement the AT_READREG flag. This is needed for the CHECK POWER MODE
ATA command (among others).
1998-11-23 23:02:11 +00:00
wrstuden f0559087e0 Changes to deal with mac serial ports having clock sources on DCD or CTS.
- When doing a first open, don't enable receive & status interupts before
	the MD layer has had a chance to set things up.
- Enable logic to only enable DCD/CTS interupts if we are looking for/
	expecting interupts on those pins. Disable otherwise.
- in zs_param, only pass up the state of ZSRR0_DCD if we have enabled
	interupts on that pin.

Henry Hotz (<hotz@jpl.nasa.gov>) and Greg walsh <gwalsh@artec.com> have
tried these changes to get certain printers from hanging at boot. They
work in a 1.3.2 kernel for Greg.
1998-11-23 22:10:09 +00:00
drochner 3e38051bc5 in wdc_softc: access the per-channel data via a pointer array instead of
an array of fixed-sized channel_softc elements. This way IDE controllers
which more than 1 channel (pciide) can extend the channel data easily
for private needs.
To avoid the double dereference at runtime, change the argument of
wdcstart() to the channel data pointer instead of the array index.
1998-11-21 15:41:41 +00:00
kml ba30effcf8 Changes to support a HIPPI Framing Protocol device, which allows raw
HIPPI packets to be written without having to go through the network
stack.
1998-11-20 04:12:57 +00:00
thorpej 4ba3417429 Implement reference counting for ATA adapters. 1998-11-20 01:22:37 +00:00
kenh 396aa17f77 Sigh, my bad. Check for chp->wdc being NULL before trying to deference it.
(I didn't realize the ISA wdc front-end doesn't fill in chp->wdc).
1998-11-19 22:50:21 +00:00
thorpej 5f0577babc Adapt to the new scsipi_adapter interface. 1998-11-19 21:43:00 +00:00
thorpej afc84158d1 Back out revision 1.40. That change couldn't have POSSIBLY worked, since
when wdcprobe() is called, the wdc_softc pointer in the channel_softc
hasn't even been intialized!
1998-11-19 19:52:42 +00:00
kenh 1461c4fb20 __wdccommand_done() needs to call wdcstart(), otherwise you can run
into deadlocks when using wdc_exec_command().
1998-11-19 04:07:54 +00:00
thorpej 3e086bd63d Add support for detaching "com" instances. 1998-11-18 23:58:52 +00:00
kenh 58932a8415 Quirk out the first test in the beginning of wdcprobe(); the Vaio
CD-ROM drive doesn't like it for some reason.
1998-11-18 19:12:08 +00:00
thorpej 1d0f24882d Now that the *_activate() functions don't do things which are attachment
specific, move them into the chipset drivers.
1998-11-18 18:34:52 +00:00
thorpej dd6750820c Expose the "enable" and "disable" functions so that the front-ends can
access them.
1998-11-17 20:25:00 +00:00
bouyer b64b7c2964 New IDE xfer flag: C_SENSE, set by the ATAPI back-end sense info needs to
be retrieved.
1998-11-17 14:14:52 +00:00
thorpej 0c3ca7b31e Finish implementing interrupt-driven card insertion and removal support.
- Deactivate the card on removal and queue a REMOVAL event for the socket's
event thread to finish the detach.
- Queue an INSERTION event for the socket's event thread on insertion.

Implement a few missing infrastructure pieces to support this.

Hot swapping of PCMCIA cards now "works".  (Not quite; things like network
devices need changes for their respestive subsystems.  These changes are
coming soon...)
1998-11-17 08:49:11 +00:00
thorpej fc44652721 Implement a kernel thread per PCMCIA socket to handle card insertion and
removal events.
1998-11-16 22:41:01 +00:00
thorpej d2afdb5b59 Fix some whitespace lossage, canonicalize some media names. 1998-11-16 19:13:31 +00:00
mycroft 8146c925da If we get a TX interrupt with no packets buffered, ignore it. This can occur
if the chip is reset while transmitting.

XXX
This occurs at boot time because the SIOCADDMULTI always resets the interface
when adding the `all hosts groups' -- usually while the ARP packet is being
transmitted.  All drivers should be fixed to not reset the interface when
changing the multicast filter, if possible.
1998-11-12 13:18:26 +00:00
bouyer 1e71e76d6c - clearify the boot messages (features supported vs features used). Thanks to
Havard Eidnes for his complains about this :)
- fix some typo in comments
- hoppefully better detection of drives reporting bogus PIO modes.
1998-11-11 19:38:27 +00:00
msaitoh 21e1b057bc Sorry, I forgot to revert "#if 0". 1998-11-09 07:01:47 +00:00
veego 2749e8b74a We don't need the pci headers here. 1998-11-08 22:02:25 +00:00
kenh e58cf6b359 Add definitions for the ATA power management commands 1998-11-05 22:49:09 +00:00
msaitoh 37bbf03777 fix pcic_chip_socket_enable() to works on more machines. 1998-11-05 07:55:48 +00:00
fvdl 7b10c3e7e4 Add the 'ex' driver, a DMA driver for 3Com 90x and 90xB cards. Rename
constants from EP_ to ELINK_ since they're now used in the ex driver as well.
1998-11-04 00:29:28 +00:00
thorpej cd7f7eff85 Code common to RealTek 8019 and 8029 NE2000-compatible Ethernet chips.
Includes media selection support and support for Full-duplex.
1998-10-31 00:44:33 +00:00
thorpej fa97a53c11 Multiple inclusion protection. 1998-10-31 00:31:43 +00:00
thorpej 992f2906ba Move the RTL8029 register definitions to <dev/ic/rtl80x9reg.h>, and add
the registers/bits present in the RTL8019 (ISA version).
1998-10-31 00:27:41 +00:00
nisimura 074bc27605 - Add filenames for VDAC/cursor sprite hardware descriptions; bt431reg.h,
bt459reg.h, bt463reg.h and ims332.h as pointed by Klaus Klein.
1998-10-30 00:18:16 +00:00
dante 2cb48d6c4e Add support for macppc.
Very special thanks to Itsumi Tsutsui for his invaluable collaboration.
1998-10-28 20:39:45 +00:00
kleink 026fcd0ce2 RCS Id police, canonicalize multiple-inclusion protection symbol names. 1998-10-28 16:26:01 +00:00
nisimura 675a2afc89 - Brooktree Bt459 135 MHz Monolithic CMOS 256x64 Color Palette RAMDAC.
- Brooktree Bt431 Monolithic CMOS 64x64 Pixel Cursor Generator.
- Inmos IMS G332 Color Video Controller.
1998-10-28 04:10:36 +00:00
thorpej 56066ad5fb Add media list, media list count, and default media arguments to
ne2000_attach().
1998-10-28 00:13:47 +00:00
thorpej 3a9e6f3a29 Define a "page 3", used on some chips which emulate a dp8390, but also
provide extensions.
1998-10-27 23:34:17 +00:00
scottr 3a7a7177cc Update for changes to NCR5380_READ() and NCR5380_WRITE(). 1998-10-26 04:44:04 +00:00
scottr 8ed7c47c7a In order for the SCI_CLR_INTR() and SCI_BUSY() macros to work, we
must actually use the softc pointer provided.  Adjust NCR5380_READ()
and NCR5380_WRITE() appropriately.
1998-10-26 04:42:47 +00:00
scottr d4e6677111 Replace architecture-dependent tag/handle field names with
architecture-independent versions.
1998-10-25 23:48:29 +00:00
christos fab7faf6a4 Fix typo 1998-10-25 18:49:18 +00:00
christos 906db1e920 PR/6274: John Ruschmeyer: Add support for the ncr53c80 driver on the i386. 1998-10-25 17:26:41 +00:00
bouyer 88d1b8138c If WDC_DIAGNOSTIC is defined, check in wdcstart() that we are called at
splbio.
1998-10-21 09:12:46 +00:00
is a2386d4325 fully implement soft callback usage 1998-10-20 22:18:13 +00:00
chuck ce89209d42 when transmitting we cannot totally fill the circular buffer (i.e.
we can't use up all of the remaining sc->txslot[chan].bfree free
bytes) because that would cause the circular buffer read pointer
to become equal to the write pointer, thus signaling 'empty buffer'
to the hardware and stopping the transmitter.  spotted and fixed
by Kenjiro Cho <kjc@csl.sony.co.jp>
1998-10-20 17:53:54 +00:00
bouyer 794fadcf0a Donc reset the disk state to 0 in wd.c, set a flag which will cause it
to be reset to 0 at wdcstart(). This fixes a race condition between
normal I/O and wdioclt().
1998-10-20 17:00:26 +00:00
is 3ebe847640 Stopgap fix for stupid pasto. Fix for the BAHSOFTCOPY case will be provided
after more sleep.
1998-10-19 22:00:14 +00:00
bouyer 96a0812fd8 Kill an extra printf("\n"). 1998-10-15 11:38:04 +00:00
mycroft d2d873481a pcic_wait_ready(): If we didn't get READY, print out the current status. 1998-10-15 04:04:43 +00:00
perry 6413810bf3 Stop spurious lpt messages from being printed -- approved by fvdl. 1998-10-14 20:09:06 +00:00
dante 773dc968ad Remove some debugging printf 1998-10-14 13:28:47 +00:00
dante de1d4ba9b0 Change the way uCode is loaded into board LRAM, to let it work on macppc. 1998-10-13 22:57:26 +00:00
bouyer e8322de657 Add a new drive flag, DRIVE_MODE, set when the drive properly reported its
PIO/DMA modes. Don't try a SET_FEATURE if it didn't report its mode.
1998-10-13 15:18:46 +00:00
bouyer 7545a59b8c In debug message, always print controller:channel:drive 1998-10-13 15:02:41 +00:00
bouyer ff0134b99f Properly separate DEBUF_XFERS and DEBUG_FUNCS: DEBUF_XFERS is for data
transfers (may be called often), where DEBUG_FUNCS is for setup functions
(not used for normal contitions).
1998-10-13 09:33:59 +00:00
bouyer da5d0a6f17 pciide.c: don't define WDCDEBUG, so it compiles on alpha. Correct a bogon
in the printing of DMA mode (piix3/4 only)
others: set the debug_mask to 0, so that debug messages are turned off by
default but can be easily turned on.
Reset drive_flags to 0 for unconfigured devices, so that they are ignored
later. For configured devices, reset state to 0 after probe/attach.
1998-10-13 08:59:45 +00:00
msaitoh 39c8c94fa5 make it compile with GWETHER again. 1998-10-13 08:33:05 +00:00
bouyer 19fddaeeb5 Merge bouyer-ide 1998-10-12 16:09:10 +00:00
thorpej 29d472f53d Garbage-collect the open_target_lu and close_target_lu entry points from
struct scsipi_adapter; they were not used.

Add a scsipi_ioctl entry point to struct scsipi_adapter.  This will be
used to issue ioctl commands to the host adapters.

Inspired by PR #6090, from Matt Jacob.
1998-10-10 00:28:28 +00:00
dante 423c1d8dd3 Make AdvanSys narrow driver compile on BIG_ENDIAN machines.
Thanks to Izumi Tsutsui
1998-10-06 14:44:21 +00:00
thorpej 11bc54234b In epic_init(), attempt to start output on the interface once the interface
is initialized.
1998-10-05 19:10:22 +00:00
matt d9cb3415b1 Fix typo (pointed by Matthias Drochner). 1998-10-02 20:00:28 +00:00
drochner 1693b8b4a6 minor changes to console handling in zstty_attach():
-wait 20ms between printf() and reconfiguring the hardware
-set cn_tab->cn_dev here because this is the place where the real minor
 number is known
1998-10-01 18:52:42 +00:00
matt bf8783afa4 Fix the receive length so it includes the extra bytes in the fddi_header. 1998-09-28 20:37:12 +00:00
matt 43b462df88 Insert the FDDI control bytes in pdq_ifstart before we load the dmamap
and dmasync the data.  Fix pdq_os_receive_pdu to use PDQ_OS_HDR_OFFSET
instead of PDQ_RX_FC_OFFSET.
1998-09-28 18:01:43 +00:00
matt a1528c368d Fix transmit handling (this also should speed up transmits
slightly).
1998-09-28 17:13:54 +00:00
dante b2a68e14db Change sources to be KNF 1998-09-26 19:53:34 +00:00
dante da0a3e615e Add support for AdvanSys Ultra Wide boards ABP-9xxUW 1998-09-26 16:09:32 +00:00
dante c6ccd1d83f Remove Wide boards references
Adjust copyright

At this time this driver support the following AdvanSys boards:
- ABP-9xx
- ABP-9xxU
- ABP-9xxUA
1998-09-26 16:02:56 +00:00
mark 7d6c07a559 Use the data32iot and data32ioh members of the wdc_attachment_data
structure for 32 bit transfers.
Test for 32 bit capability on data transfers currently restricted to 16 bit
only.
1998-09-22 00:27:51 +00:00
mark 962edcdc03 Add data32iot and data32ioh members to the wdc_attachment_data structure.
This bus space tag and handle is used for 32 bit data transfers i.e.
when WDC_CAPABILITY_DATA32 is enabled as the 32 bit data register may
not be part of the standard drive registers.
1998-09-22 00:21:16 +00:00
pk 0b10e1ddab Parallel port support routines. 1998-09-21 21:26:51 +00:00
matt ad921921e4 Add softserial to the alpha port. This significantly improved PPP
throughput on com ports.
1998-09-21 00:33:16 +00:00
matt 08e1d890a4 Changes so that BPF readers will get the data in fddi packet aligned along
normal boundaries.  This makes tcpdump much happier.
1998-09-20 02:36:08 +00:00
matt 935fbed4fe Make sure data in FDDI packets are aligned nicely (for alpha, etc.) 1998-09-19 21:21:25 +00:00
mjacob 1dac5b5291 Several changes, including some stub fibre target mode stuff. Establish
a slightly different fibre startup (print ALPA now too). Change
the way that return values from dma setup is done. Make debug messages
out of some queue overflow situations. Turn PORT LOGGED OUT into
Selection Timeout equivlaent. On isp_restart actions don't blow off
the commands with HBA_BOTCH (XS_DRIVER_STUFFUP) - set them with HBA_BUSRESET
(which is defined as XS_DRIVER_STUFFUP until someone decides whether
the suggested change to the midlayer NetBSD is worthy of inclusion).
1998-09-17 23:05:46 +00:00
mjacob a0a31568e8 cleanup header to be just NetBSD, roll rev, change QDEPTH to QAVAIL macro 1998-09-17 22:52:54 +00:00
mjacob 0e0010df41 cleanup header to be just NetBSD 1998-09-17 22:52:14 +00:00
mjacob cb787c768d add some target mode definitions 1998-09-17 22:51:54 +00:00
mjacob 24717f3c3a cleanup header to be just NetBSD 1998-09-17 22:50:53 +00:00
is 95807e512a Garbage collect unused 3rd parameter to comprobe1(). 1998-09-16 21:30:58 +00:00
scottr 7aa4d4483e Revert the last change: returning COMPLETE is clearly the wrong thing to do
if we weren't polling to begin with.
1998-09-16 05:36:35 +00:00
scottr 0af57c2461 Correct a serious problem that affects at least front ends that can only
use PIO (or equivalent) code to do asynchronous transfers:  In
ncr5380_scsi_cmd(), test to see if the request has been completed after
the call to ncr5380_sched(), and return COMPLETE if so.  This avoids
going into an infinite loop in scsipi_execute_xs() while waiting for an
interrupt to trigger completion of the transfer... which, of course,
never happens, since it's already done.
1998-09-14 05:56:14 +00:00
mycroft 32f42fe1e9 Make sure all voices are deallocated on close. 1998-09-13 04:41:34 +00:00
jonathan ea4898c76c Add arc as a target platform. 1998-09-11 19:39:28 +00:00
kenh 9539399333 Add support for passing device quirks from the attachment routine,
and add support for a NO_EXTRA_RESETS quirk (required by the TEAC
IDE Card/II, which the Vaio uses).
1998-09-10 19:24:45 +00:00
mjacob 4a1ccd2fe7 turn into a debug message an ABOUT F/W failure. Add ISPCTL_UPDATE_PARAMS isp_control case 1998-09-10 17:10:27 +00:00
thorpej 9ce5ae6b97 Protect Debugger() call a'la uha driver. PR #6070, Gary D. Duzan. 1998-09-09 05:28:58 +00:00
thorpej d1fba4e7e5 Don't use M_WAITOK to allocate the ring buffer; we could be in interrupt
context.  Reported by Lennart Augustsson.
1998-09-09 05:17:53 +00:00
mjacob a79310ba38 Major reworking of initialization code, addition of NVRAM reading, usage
of device speed updating, etc... A lot of FC and other case statement
handling. Whew. Too much to really detail here.
1998-09-08 07:28:50 +00:00
mjacob 6e2341ae63 Roll major revision. Change some definitions around. Add more current device
state stuff. Make DPARM flags full 16 bits (no shifting needed) and add
the 2 new ones for the 7.55 f/w.
1998-09-08 07:27:04 +00:00
mjacob 542648bf0e Move all ASYNC definitions here (after all, they're mailbox registers).
Clarify FC initialization control block. Add macros for setting WWN
into same. Add a wad more definitions in this area.
1998-09-08 07:24:23 +00:00
mjacob 170521610e Add more ASYNC event codes here. Add NVRAM definitions. 1998-09-08 07:22:06 +00:00
mjacob c0eabb441f add case for going from probetime to runtime speeds 1998-09-08 07:19:58 +00:00
mjacob 9752520872 roll revision, change default tagging to simple tags 1998-09-08 07:18:56 +00:00
pk b871ab5f2c Use the new "%b" format for the various control register bits. 1998-09-06 21:39:33 +00:00
christos 344ed1eaef Assign copyright to TNF. 1998-09-05 14:20:01 +00:00
mark ba8c6b9828 arm32 now supports soft serial interrupts. 1998-09-05 04:25:35 +00:00
is a3ee69c87a Split SMC chipset ARCnet driver into
- machine independent chip driver, in dev/ic/smc90cx6.c/...reg.h,...var.h,
  using bus_space methods
- ZBUS frontend in arch/amiga/dev/if_bah_zbus.c
- added IPL_SOFTNET to arch/amiga/include/intr.h, for this
Implementing the ISA bus frontend is left as an exercise to the reader.
1998-09-02 22:32:06 +00:00
pk 380e88d4f0 Adjust some comments. 1998-09-01 22:56:00 +00:00
jeremy 6693724a83 Changed inaccurate comment on the sc_freq member of the driver's softc
structure.  The frequency is represented in MHz rather than Hz. [PR/6805]
1998-09-01 22:22:03 +00:00
pk fec2fa9e43 Typo in device Id mask. 1998-09-01 21:04:43 +00:00
cgd d58173741d kill the last remnants of __BROKEN_INDIRECT_CONFIG. (only the pica port
used it, and it's non-working and apparently slated for replacement.)
1998-08-31 22:28:04 +00:00
pk 860867bfec macro argument protection. 1998-08-31 11:13:10 +00:00
pk 73b946e04e LSI64854 DMA engine driver.
Currently used by Lance Ethernet and NCR SCSI front-ends on sparc/sparc64.
1998-08-29 21:42:03 +00:00
dante 17759893b0 Add rcs id 1998-08-29 13:44:49 +00:00
thorpej 370a38c007 Add braces to make egcs happy. 1998-08-28 20:03:10 +00:00
thorpej f3bfb08d45 When determining the default media on the Vortex/Boomerang, don't pick
the full-duplex variant.  XXX We should check the EEPROM for "default to
full-duplex".
1998-08-28 18:16:02 +00:00
pk b1447741da Nuke Dprintf; fix formats. 1998-08-28 08:59:14 +00:00
pk dd0709d28d Add selected `%b' bits. 1998-08-27 20:05:11 +00:00
pk 142bff0170 Add missing entries and make it slightly more verbose. 1998-08-27 19:53:02 +00:00
pk b3279eb3dc Move a few prototypes.
Whitespace cleanup.
1998-08-27 18:45:12 +00:00
pk fc397afa14 debug level 0 1998-08-26 15:06:37 +00:00
dante d9e417cde9 Add AdvanSys 930U and 940U SCSI controllers 1998-08-26 14:13:58 +00:00
augustss 6633896a67 Do some renaming of registers and make sure we get sound in both
channels on OPL3.
1998-08-26 13:08:10 +00:00
augustss bb3c56652c Make the OPL driver turn on the sound on sound cards that require it.
That makes it much more likely that we get any sound.  DUH!
1998-08-26 12:10:22 +00:00
thorpej bc21c243cd For non-MII Vortex/Boomerang, set full-duplex in the MAC CONTROL register
in epsetmedia() if full-duplex is selected (new feature on these cards!)

On MII Boomerangs, set the full-duplex bit in MAC CONTROL in the statchg
callback from the MII layer.  Should fix full-duplex on these cards.
1998-08-26 01:32:41 +00:00
thorpej 19b759c2e4 Define the full-duplex bit in the W3 MAC CONTROL register. 1998-08-26 01:29:03 +00:00
pk d4ec33b5f0 The new MI part of the AD1848 driver. 1998-08-25 22:36:40 +00:00
tv 54bf4389f9 egcs brace warning 1998-08-24 02:34:44 +00:00
augustss f2ff59edc5 Change debug output. 1998-08-22 22:54:11 +00:00
pk 177621555f remove sparc hack: there's a bus.h now. 1998-08-20 11:42:55 +00:00
pk 1f007a13cc Cast bus_size_t to u_long in printf() args. 1998-08-20 11:42:13 +00:00
thorpej b43fc64da6 Registers for the Brooktree Bt463 RAMDAC. 1998-08-18 07:43:09 +00:00
thorpej 6bfd748b46 First-crack at RoadRunner (3c574-TX 10/100Mbps PCMCIA). Doens't yet use
any of the RoadRunner speed hacks.
1998-08-17 23:20:39 +00:00
augustss cd09067eb4 * Redo the way the way the MIDI driver attaches to audio devices.
* Improve the midisyn layer a little.
* Add a driver for the Yamaha OPL[23] FM synths.
  The opl driver is not finished yet; it sounds pretty awful.

For some strange reason I cannot get any FM sound from my SB64 cards,
but a regular SB16 works fine.
1998-08-17 21:16:09 +00:00
mycroft a1ac68819f Assign my copyrights to TNF. 1998-08-17 00:26:32 +00:00
matt 2a5371253c splnet() is not appropriate for everyone. Raise and lower SPL via
macros defined in pdqvar.h
1998-08-16 03:44:42 +00:00
thorpej cbcc3cfa46 Oops, back out something that I didn't intend to commit. 1998-08-16 01:16:57 +00:00
mycroft d07b3639a4 Assign my copyrights to TNF. 1998-08-15 17:47:15 +00:00
thorpej c2f2b0d431 RoadRunner has a bit in Reset Options that must be set to enable the MII.
Define that bit.
1998-08-15 16:50:07 +00:00
thorpej a0aca43d11 Reset Options is in Window 3; correct a comment. 1998-08-15 16:47:30 +00:00
thorpej 479d8b25bf The 3c515 (Corkscrew) and 3c574 (RoadRunner) have their Window 1 registers
offset!  Define an inline function to compute the Window 1 register offset
and use it.
1998-08-15 16:20:51 +00:00
thorpej 31a3d86b80 Define the Corkscrew chipset - used by the 3c515 ISA 10/100mbps cards. 1998-08-15 16:15:40 +00:00
mycroft 62b1bf3e2e Assign my copyrights to TNF. 1998-08-15 10:51:16 +00:00
mycroft 6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +00:00
thorpej 7d0d0346fa Define the RoadRunner FIFO count registers. 1998-08-15 08:28:22 +00:00
thorpej ccf620bfab Define the 3Com "RoadRunner" chipset; like the Boomerang, but for PCMCIA.
No DMA is wired up, it has a shared memory interface, and a FIFO buffer
which can be used to speed up PIO transfers.  (The latter two are
PCMCIA-specific speed hacks to deal hide the performance lossage from
using a PCMCIA->PCI bridge internally.)
1998-08-15 07:28:04 +00:00
mycroft cc8a78e783 Assign my copyrights to TNF. 1998-08-15 04:42:42 +00:00
mycroft b2827b9d36 Assign copyright to TNF. 1998-08-15 04:16:55 +00:00
mycroft 6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
drochner cea8e0a23f explicitely select the master before trying to access its registers 1998-08-14 20:39:04 +00:00
eeh a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
thorpej b170caf730 Completely rewrite media selection. Add support for the MII/PHY on
the 3Com 3c905-TX and 3c905-T4.  Fix handling of the MII on the
3c595-MII and 3c597-MII (can't talk to the PHYs on these cards; just
use "manual" for the external MII port).

Fixes kern/4782 (Chris Demetriou).
1998-08-12 18:51:52 +00:00
scottr 53907fe5a1 Support Cabletron Ethernet card, from John Marohn in PR 5762. 1998-08-12 07:19:09 +00:00
thorpej 7b8168e675 Adapt to new MII code. 1998-08-11 00:12:52 +00:00
wrstuden b1bb9aa490 Oops. We do still need to set t_dev in the first open part of zsopen,
so we get ttyXX vs cuaXX right. Leave the initialization in attach.
1998-08-09 18:36:45 +00:00
wrstuden 26e55969e4 Initialize the struct tty's t_dev field at attach rather than first open.
The attach routine calls zsparam if we're setting up the console, and
zsparam needs this field to tell which zstty to set up. Otherwise, we
set up zstty0 even if it's not the console!
1998-08-09 06:17:07 +00:00
mycroft e2686d0a1b Use splnet, not splimp. 1998-08-08 23:51:39 +00:00
wrstuden 06761b1ed4 Merge in a register definition mentioned only in passing in one place in
the Zilog docs.
1998-07-31 05:08:38 +00:00
is 0d257affa0 Add some constants. 1998-07-28 16:03:49 +00:00
augustss daed8d7ce1 Fix obsolete code in waiting for calibration on the ad1848.
(Sigh, the ad1848 driver should be rewritten.)
1998-07-28 12:13:34 +00:00
explorer c5e450957a add (hopefully) bus-independent hd64570 driver, for the Hitachi serial
controller chip.
1998-07-26 03:26:57 +00:00
drochner 3d545acb51 Overload the generic "copyrows" function by a private one which implents
a "fast scroll" by setting the display start in memory.
(Only implemented for "scroll up" because this is more used. "scroll down"
is easy to add.)
This moves the semantics of "copyrows" to something like "moverows";
the contents of the new visible lines at the bottom is undefined.
The emulations can live without the original "copy" semantics.
1998-07-24 16:20:14 +00:00
drochner 7764b57db5 allow the displayed area to start anywhere in display memory,
add a "dispoffset" variable to control this
1998-07-24 16:12:18 +00:00
drochner e81ad8e2c6 add random generator hook 1998-07-24 13:42:29 +00:00
drochner 6dc9297499 remove unneeded typecast 1998-07-24 13:41:52 +00:00
thorpej 458ba64f3a Slight variation on last; be a bit more zealous about fixing up the
clock source.  Now, when my EtherPower II locks up, it eventually recovers!

(Geez, I'd like to know why it does this, and only apparently in 10mb/s mode).
1998-07-23 17:37:38 +00:00
drochner 9a59784f70 Split the LANCE driver into a part specific to the classic chip with
24-bit DMA addresses, and an independant part.
Implement support for the 32-bit mode in the newer (79c9xx) chips.
1998-07-21 17:26:45 +00:00
thorpej 9e17315847 Write the CLOCK TEST bit *at least 16 consecutive times* during initialization,
as the clock source will be set incorrectly otherwise!  From SMC Application
Note 7-15.  Thanks to Christoph Badura for the pointer!
1998-07-20 21:39:05 +00:00
thorpej 79f77cc9ce The mystery bit in the TEST register is actually the CLOCK TEST bit. 1998-07-20 20:45:06 +00:00
is 6054d626f9 Switching dev/ic/lpt.c to use spllpt() instead of spltty(). It doesn't use
tty structures, and on some machines (namely the DraCo internal lpt, and some
multi-i/o boards for Amigas and DraCos), tying spltty to the pretty high printer
interupt level would hurt serial performance.

On all affected ports but Amiga, spllpt() has been defined in machine/intr.h
to be spltty(), thus preserving old behaviour. Portmasters are encouraged to
change is, if they feel something else is better (e.g., one of its own were
possible).
1998-07-18 21:27:25 +00:00
mjacob a455ce7531 Locking is now in the outer framework for isp_init/isp_reset- this allows
us to call isp_reset/isp_init internally with impunity.

Rename isp_phoenix to isp_restart and make it global. Clean it up a tad.

If we get an ASYNC_SYSTEM_ERROR code in isp_intr, call isp_restart and
return- the f/w is toasted at this point (usually), so we have to bring
things back to a known state.

In isp_mboxcmd, when we don't see the HOST_INT bit go clear, try and
find out if the isp is trying to tell us something and try again. This
may avoid a potential deadlock where the previous mailbox command hasn't
been cleared by the ISP.

In isp_init don't try and get device parameters if we already have them-
this typically doesn't work if we're in the middle of an isp_restart.
1998-07-18 21:10:16 +00:00
mjacob 9afa921bc1 roll core version number and add a global visible isp_restart function 1998-07-18 21:06:20 +00:00
mjacob 35c8fecf3a fix headers 1998-07-18 21:05:39 +00:00
mjacob b85bf24ed5 fix bogus comments 1998-07-18 21:05:04 +00:00
mjacob 576988940f roll revision 1998-07-18 21:04:46 +00:00
mjacob e8f976016e Some major thrashing to handle building for other than NetBSD.
There is one change of note- build a list of completing commands in
ispintr and then say you're done- this avoids some re-entrancy issues
that had surfaced.
1998-07-15 19:50:16 +00:00
mjacob d96bd50c07 NetBSD OS specific routines and definitions. 1998-07-15 19:44:04 +00:00
drochner 2ba4227a6e from OpenBSD:
date: 1998/06/24 20:05:03;  author: deraadt;  state: Exp;  lines: +4 -4
initialization error; joel@wmi.com

(affects debug printout only)
1998-07-07 14:13:51 +00:00
thorpej 88139fff5a Never, ever, ever, ever include "assym.h" in C source file. 1998-07-07 02:02:53 +00:00
jonathan 011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan fe484937cf defopt LLC 1998-07-05 03:14:41 +00:00
jonathan 8db0fcdbf7 defopt CCITT. 1998-07-05 02:12:22 +00:00
jonathan 3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
jonathan 466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
mjacob 205c293676 Patches from Justin that handle some REV B AIC7880 problems 1998-07-03 23:45:10 +00:00
hpeyerl 7931fb2172 Fix spalling misteak: indentify -> identify 1998-06-30 00:08:32 +00:00
drochner 3f10af182d do the charcter mapping in a separate function 1998-06-26 21:05:20 +00:00
drochner 88e3d10d30 mapping tables for IBM character set 1998-06-26 21:00:27 +00:00
jonathan dbe5213b11 Split arch/sparc/dev/amd7930.c into:
* MI sys/dev/ic/{am7930.c,am7930var.h} chipset driver
  * sparc frontend.
Presere revision history (this time).

TODO: bus.h'ify,  and padded register mappings.
1998-06-24 11:09:23 +00:00
jonathan b40ead2c73 Split sparc am7930 driver into sparc attach and "MI" sys/dev/ic/am7930
chipset driver.  Needs bus'ifying and  register-access.
1998-06-24 10:52:53 +00:00
sommerfe d64d1a0381 defopt a bunch of AHC specific options 1998-06-22 20:02:54 +00:00
christos 3127da532a Add register definitions for the ns8477 floppy controller. This is a superset
of the nec765.
1998-06-21 18:48:12 +00:00
drochner bf42a9e321 adapt to wscons changes, treat incoming characters always as ISO
(ie, convert to IBM)
1998-06-20 21:55:05 +00:00
drochner 0fb233923b do the former at one more place 1998-06-17 20:48:02 +00:00
drochner 39452d9720 avoid sign extension if a character >=128 is passed 1998-06-17 20:44:16 +00:00
cgd 651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
drochner 96840772f5 reserve the VGA BIOS area (but don't worry if it fails) 1998-06-12 18:41:01 +00:00
thorpej ab7bc85ff7 Pull in <sys/timepps.h> here so that other things that include comvar.h
will compile.
1998-06-11 02:01:58 +00:00
jonathan bbc2d1522a PPS support from April, reworked and extended to match the PPS-API
Internet Draft (draft-mogul-pps-api-02.txt).
1998-06-10 12:06:23 +00:00
bouyer de7be831ac Make this compile with the recent ISA DMA changes. 1998-06-10 10:24:13 +00:00
thorpej 4ad627c09b Do the unaligned buffer fixup without copying data, more-or-less lifted
from the Shark CS8900 driver.
1998-06-10 01:15:50 +00:00
thorpej be62e9cb1b Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-09 07:35:06 +00:00
thorpej e41f7ca1b8 Make this build w/ EGCS. 1998-06-08 07:11:51 +00:00
thorpej e12c6ddaf2 No need for an explicitly-sized type for sc_flags. 1998-06-08 07:06:41 +00:00
fair b91a2393c1 the AM7990 is a controller, not a "card"; repair a misleading diagnostic. 1998-06-07 08:08:20 +00:00
pk 573196b6ba Check for the ether broadcast address in promiscuous mode (PR#5527). 1998-06-04 20:35:44 +00:00
enami 770c4bfb9d Make this compile with WDDEBUG 1998-06-04 02:27:33 +00:00
thorpej 5852faaf84 Device driver for the SMC 83c170 Ethernet PCI Integrated Controller (EPIC/100)
used in the SMC EtherPower II.

Media control isn't yet supported, due to some MII infrastructure
problems which I hope to address soon.  This isn't a huge deal, since
the PHY defaults to auto-negotiate mode.

Also, the device just programs the multicast hash table to accept all
multicast, to avoid a hardware bug that causes the multicast address
filter to lose in 10Mb/s mode.  This bug will be fixed in a more sane
way once the media control issues are dealt with.
1998-06-02 01:29:41 +00:00
drochner b84dbbb37c Put definitions and subroutines needed for all PC display adapters
(MGA/GCA and compatibles) into global headers / source files.
Let the VGA driver use them.
1998-05-28 16:48:40 +00:00
matt 769e4e6e81 Another bug fix (clear transmit done before trying to queue more transmits). 1998-05-28 03:07:49 +00:00
matt dd77920e3e Only enable transmit done interrupts when output ring is full. 1998-05-27 14:01:02 +00:00
matt 5fb5017c94 Fix syncing of consumer block. 1998-05-27 01:17:53 +00:00
thorpej 5442fd5420 If we have an NCR53CF9x (indicated by the front-end by setting a flag
in the softc's new "features" word), set FSCSI bit in CFG3 if the sync
period is <= 200ns, or clear it otherwise.
1998-05-26 23:17:34 +00:00
matt 1f8a0caf0a Success! With these changes, the DEFTA now under NetBSD/pmax!! 1998-05-26 15:33:16 +00:00
matt 2d80e4786e Verify the driver work if PDQ_NO_BUS_DMA is defined. 1998-05-25 21:24:21 +00:00
matt 05f603434f More pmax coherency stuff. Getting close.. 1998-05-24 22:37:23 +00:00
matt 144c41e986 Fix dmamap leakages. fix transmit bug. fix receive bugs. fix mips
coherency problems.
1998-05-24 21:40:05 +00:00
matt 18319c0048 Changes so that these compile on NetBSD/alpha as well as NetBSD/i386. 1998-05-23 18:32:29 +00:00
matt 9eb77bf49a Change 21040 modes slightly. Prevent infinite autosense loop of 21143 that
is not connected.  Make TULIP_STS_LINFAIL only valid for chips with that
status bit defined.
1998-05-22 18:50:59 +00:00
matt cfbb5f3f21 Add bus_dma(9) support for the DEFxA FDDI driver 1998-05-21 20:44:02 +00:00
augustss 74545baf39 Add a Yamaha OPL3-SA3 driver and clean up all AD1848 drivers.
Submitted by Constantine Sapuntzakis <csapuntz@reeducation-labor.lcs.mit.edu>
and originally written for OpenBSD.
1998-05-20 16:19:41 +00:00
pk 11c8871c83 Erase spurious end-of-comment. 1998-05-20 16:06:56 +00:00
pk 9299239520 Cirrus Logic CD1190 parallel port chip definitions; from Iain Hibbert. 1998-05-20 14:47:36 +00:00
pk 9c1918e458 Add CD1400_PAR_FIFO_SIZE. 1998-05-20 00:03:11 +00:00
kml 051be14326 Correct copyright date. 1998-05-17 16:46:06 +00:00
drochner 7bd61ed6be needed for VGA text attributes 1998-05-14 23:11:03 +00:00
drochner 95bdb660ed Simple screen attribute handling for wscons.
The graphics device driver passes a "default attribute" for normal text
output to the wscons framework. If the emulation module needs more
attributes (for different "renditions") it can allocate them via a
callback.
For now, only the "sun" emulation makes use of it.
1998-05-14 20:49:55 +00:00
matt 1442b419df Fix alignment crashes on Alphas... 1998-05-14 18:24:00 +00:00
kml e72782a137 Driver for Essential Communications' RoadRunner HIPPI (800 Mb/sec network)
card.  With some modification, this could probably also work for their
Gigabit Ethernet card based on the same chipset...
1998-05-14 00:04:57 +00:00
kleink d2db996158 Fix some arithmetics lossage on typeless pointers. 1998-05-07 21:13:23 +00:00
mjacob 128cb933b4 there is an (unimportant) difference between 1020 && 1020A 1998-05-05 22:10:36 +00:00
enami 2eb37a4e87 When changing power, wait enough to keep timing constraint
described in PCMCIA specification.
1998-05-05 00:37:24 +00:00
pk 6ba2c64ae6 Eliminate the degenerate loop in `ncr53c9x_intr()'. Retain the delay heuristic
it implemented under the label `shortcut:' and only use it in these
cases: (1) after successful re-relection, (2) after receiving command-complete
status, and (3) during message-in handshake.
1998-05-04 14:47:48 +00:00
pk 0d3d41fa21 Allocate SCSI message buffers in ncr53c9x_attach(), with a provision
for front-ends to override the allocation to avoid alignment
handling in their DMA engines. Note that that ncr53c9x_msgout()
can request a 1 byte DMA transfer that would be difficult to break up.
1998-05-04 11:11:24 +00:00