Commit Graph

104 Commits

Author SHA1 Message Date
thorpej ac71bb86e2 This file was apparently accidentally ressurected. 1998-01-12 19:59:00 +00:00
thorpej 2d53e59a47 Update for changes to config. 1998-01-12 19:51:03 +00:00
matthias f0faff5a2f sync with /sys/arch/i386/i386/md_root.c. 1997-12-10 21:56:30 +00:00
phil 5050531ac6 Do transfers with interrupts off. 1997-11-24 12:35:20 +00:00
phil b34ae4f929 Get TRUE and FALSE defined again. 1997-10-22 03:35:56 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
jtk d36d6d14ab use locator defines in "locators.h" to index cf_loc[] 1997-07-17 02:01:26 +00:00
matthias bb66aaeadc * Make it possible to disable disconnect/reconnect on a per target base.
* Eliminate disable interrupts in ncr_pdma_in. No more fifo overflows at
  high baud rates :-) (Thank's to Ian Dall for this).
1997-07-09 19:28:25 +00:00
matthias c5e3d310a6 When booting from a md device set RB_DFLTROOT in boothowto. 1997-07-09 19:28:20 +00:00
matthias 9dd24ca41c * Print device information in md_attach_hook. Since this is a pseudo device,
we have to output the device name as well.
1997-04-21 16:20:39 +00:00
matthias 5a23a56e6b * Apply a fix from Ian Dall to reduce system load and fifo/silo overflows
when running at high speeds. This works by using hardware RTS again and
  using the receive fifo threshold as well as the transmit fifo provided
  by the sc26c92.
1997-04-21 16:16:16 +00:00
matthias 61d420149f * Use higher timeouts for PLIP.
* Do some cosmetic reformatting.
* If the interface is considered dead, re-enable receive interrupts from
  time to time.
1997-04-21 16:16:10 +00:00
matthias 9fea258541 * if queues have to be protected by splimp. Back out last change. Thank's
to Charles for watching out and notifying me about my mistake.
1997-04-04 09:51:26 +00:00
matthias b7624c248a * Add missing & in plipioctl.
* Remove some dead code in plipioctl.
* Use splnet, not splimp to protect IF_PREPEND/IF_DEQUEUE.
1997-04-02 16:36:25 +00:00
matthias 821b15ab3b * Add some missing casts to make this compile with -Werror when KGDB is
defined.
1997-04-01 16:31:53 +00:00
matthias e2a1653bf0 * Only cosmetic changes. 1997-04-01 16:31:45 +00:00
matthias b14adada8f * Include <sys/systm.h> to get printf prototype. 1997-04-01 16:31:37 +00:00
matthias bf4354241e * Use machine/conf.h instead of sys/conf.h to get the
lpt{open,close,write,ioctl} prototypes.
* Remove the cdev_decl(lpt). We get it from machine/conf.h.
* Add and use LPTSOFTC.
* Use level triggered interrupts (seems to work with less spurious interrupts).
* Do not use NLPT. Use lpt_cd.cd_ndevs to get the number of lpt devices.
* ether_ifattach now needs the ethernet address of the device. Supply a
  dummy address.
1997-03-22 08:29:52 +00:00
matthias b49a214439 * Don't reference NSCN.
* Use machine/conf.h not sys/conf.h to get the prototypes for the
  scn cdev functions.
* Include <sys/kgdb.h> to get prototypes for kgdb_connect and kgdb_attach.
* Add missing prototypes for some functions.
* Make ddb work before the console was opend. Thank's to Ian Dall
  for this change. His comment:
	Also, ddb doesn't work if a break is set before the console
	is opened. That is because DTR and RTS are not asserted. It
	would probably work if the console is wired to ingnore DTR
	or RTS. The change below is probably not very correct.
	Proabably the state of DTR and RTS should be saved and DTR
	and RTS asserted on the start of a polled serial input and
	the saved values restored on exiting polled input
* Remove unused function scn_ei.
1997-03-20 12:03:03 +00:00
matthias 80502accfe * Remove unused ncr_minphys prototype.
* Add prototype for ncr_ready.
* Add ncr_wait_not_req function from Ian Dall:
	The ncr_wait_not_req business is to avoid a potential race.
	When the pseudo DMA finishes, the target may not have
	lowered REQ yet. If we just charge ahead, we eventually test
	for phase when REQ is high. However, if REQ has not yet gone
	low for the last byte transferred, this will be the wrong
	phase. This is taken from the dp8490 application notes. The
	last ACK is not deasserted until the dma is completed.
	Deasserting the last ACK should be delayed until the last
	REQ is deasserted. I am not sure if there are ever devices
	this slow, but I believe the code is "more correct".
1997-03-20 12:03:01 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
matthias c6d2740564 Integrate Phil Budne's latest changes to the scn driver. From his README:
* Uses Counter/Timer dynamicly for rate generation; You can
	  have both 19200 and 38400 on one duart, and 57600 on another!
	* Improved scninfo program to dump driver internal information.
	  implemented counters for parity err, framing err, break
	* Delays changes until transmitter idle to avoid "glitches"
	* Cleaned up scn_softc member names
	* Untested support for sc26c92 (I don't yet have any to test with);
	  + Will use alternate rate tables (include 115.2kbps and 230.4kbps)
	  + Will raise FIFO rx interrupt threshold and watchdog timer
	    at higher rates.
	  + Unknown (to me) how fast pc532 MC145406 driver chips can go

	NOTE: It seems like it may be a BAD idea to use a sc26c92 as
	a console port for now; the PROM doesn't know to reset the
	chip back to scn2692 mode!!
1997-03-13 10:24:14 +00:00
matthias bda3351fc0 Some cosmetic changes. 1997-03-01 09:50:44 +00:00
matthias dd064fc88a Reset the scsibus only when bit 2 is set in flags. 1997-03-01 09:50:40 +00:00
gwr 2de163471e Minimal changes to adapt to removal of NCR5380_PERMIT_RESELECT.
This driver should be updated to allow per-target control over
disconnect/reselect, but I will leave that to the port masters.
1997-02-26 22:29:08 +00:00
matthias f3cdc89574 * Use Phil Budne's full name in the copyright header.
* Define RECOVER to something faster.
* Check for a valid softc in scnsoft. When there is
  a "hole" (e.g. you have scn0,scn1, scn4, scn5) the
  old code would panic. Thank's to Phil Budne for
  finding and fixing this bug.
1997-02-08 09:34:31 +00:00
matthias 47fe16475c * Use confargs in probe and attach routines.
* Irq and address are now printed by mbprint.
1997-01-11 10:58:12 +00:00
pk f750d179be rename: ramdisk => md 1996-12-28 23:42:33 +00:00
matthias 41cc99aa8c * Rearange duart_info and add hwflags to store uart type (Ian Dall).
* Define SCN_RING_HIWAT and add sc_rbhiwat to scn_softc. When the
  ringbuffer gets full up to this mark, rts gets asserted (Ian Dall).
* Add sc_rx_blocked to scn_softc. This is used to tell scnsoft that
  rxinterrupts are blocked (Ian Dall).
1996-12-23 08:37:11 +00:00
matthias 2c7e970491 * Define the bits in MR0 for the SCC26C92 (Ian Dall).
* Define SCC26C92-only commands (Ian Dall).
1996-12-23 08:37:10 +00:00
matthias b080d4fea0 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.

All the following changes were provided by Ian Dall:
* Remove SCN_HSOFT. Now that the pc532's software interrupt system is running
  from int14, this won't work anymore.
* Add code to detect uart type (SCN2681, SCC2692 or SCC26C92).
* Cleanup my RECOVER mess. Thank's to Ian Dall for reading the datasheet
  and removing all the unnecessary RECOVERs.
* Cleanup scnrxintr.
* Implement scnhiwflow.
* Do not use automatic RTS. This and scnhiflow and some changes to the
  interrupt system suggested by Ian fix the scn overrun problem at 57600
  baud.
1996-12-23 08:37:07 +00:00
matthias 70597563c6 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.
* Make transfersize configurable for input and output. Default the input
  transfersize to 128 bytes. That way interrupts won't be disabled for more
  then about 128us-256us for slow targets. This is necessary to prevent scn
  fifo overruns. Cleanup the pdma code. Thank's to Ian Dall for these
  changes.
1996-12-23 08:37:04 +00:00
matthias c3f3bc0228 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.
1996-12-23 08:37:02 +00:00
matthias a0117d39dd * Prototyping tweaks.
* Real probe code added.
* Duart info is now allocated only for devices that are present.
* Added IO-Recovery delays for 30mhz systems.
* Removed a few potential NULL-pointer references.
1996-11-24 13:32:53 +00:00
matthias ee943634a8 * Prototyping tweaks. 1996-11-24 13:32:48 +00:00
matthias dbaaf5e560 * rd_attach_hook/rd_open_hook. Stolen from sun3/dev/rd_root.c 1996-11-07 07:21:00 +00:00
matthias ddb9815a80 * We are using the mi ramdisk driver now. 1996-11-07 07:20:37 +00:00
matthias 4ae217f7fa * We are using the mi ncr driver now. 1996-11-07 07:20:29 +00:00
matthias df2a490d8f * Not in use for a very long time. 1996-11-07 07:20:28 +00:00
matthias 2336fbd2c6 * Phil Budne's much improved scn driver. 1996-10-23 07:52:35 +00:00
thorpej b12cf5890d RCS id police. 1996-10-15 21:59:03 +00:00
christos e37692f04d backout previous kprintf change 1996-10-13 03:29:05 +00:00
christos 848c9d8f02 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:39:22 +00:00
matthias f0c2efd752 * Remove ncr_minphys. Simply use minphys.
* Protect interrupt code with splbio.
* Don't use intr_disable/intr_enable in the pdma routines.
1996-10-09 07:29:58 +00:00
matthias f28c7ec9dd * Don't use ansi c prototypes. Use the __P() macro.
* Support for bpf added.
* Don't duplicate code, use ether_ifattach instead.
* Recode plipreceive and pliptransmit in assembler.
This improves performance from 40 kbyte/s to 50 kbyte/s
between a 30mhz pc532 and a 25mhz i386.
1996-10-09 07:29:55 +00:00
mycroft 0a59726320 Fix obvious typo. 1996-09-02 12:42:11 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
cgd af576d8a9f no need for a local implementation of SIOCGIFMTU; delete it.
s/ifr_metric/ifr_mtu/ where appropriate (in SIOCSIFMTU code), since
MTU data no longer (loggically) stored in ifr_metric.
1996-06-13 21:51:53 +00:00