Commit Graph

1158 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