Commit Graph

12808 Commits

Author SHA1 Message Date
cgd b4bfcf063f 21040 ethernet chip on AlphaStation 500 lives in slot 6 (a slot not
found on the AlphaStation 600), and interrupts on interrupt line 13.
Thanks to Andrew Gallatin for booting a test kernel 32 times (trying
each interrupt line, looking for the right one) to find this.
1996-08-19 04:14:58 +00:00
jonathan 4a1279de25 Import framebuffer drivers from 4.4-Lite2 as the root for NetBSD drivers.
Only change from Lite (or lite2, qv.c and qd.c do not change) is adding
NetBSD RCS ids.
1996-08-18 21:28:53 +00:00
hpeyerl f5f1393c35 Get rid of dkn stuff. It's deprecated. 1996-08-18 17:01:53 +00:00
leo 6aab91675e Revert to polled-DMA on Falcon. 1996-08-16 08:25:46 +00:00
jtc a05f11b6e1 Added prototypes for memcmp, memcpy, memmove, and memset functions.
Added #ifdef'd out macros which map b* function calls to their mem*
equivalents.
1996-08-16 01:23:46 +00:00
jtc 030f7ba872 Added to libkern in preparation for change from b* to mem*. 1996-08-15 22:59:11 +00:00
cgd e295ad51df clean up stray interrupt handling a bit. 1996-08-15 22:17:44 +00:00
mycroft 312e49bad1 After processing an AST, check for another one. Pointed out by ws. 1996-08-15 15:34:03 +00:00
explorer a9ef8aef84 This fixes a nasty little bug where traceroute (and other raw-ip sending
programs which attach their own header) can crash the machine.  The problem
in this case was:
	a variable "space" was set to the total data to copy,
	len was used to remember how much to copy in this chunk (mbuf),
	in one case, len = min(MCLBYTES - max_hdr, resid) but
		size -= MCLBYTES;
	 instead of
		size -= len;

Note that userland programs can still crash the machine by providing
bogus data in the ip->ip_len field I suspect.  I haven't verified this,
but will soon be doing so and applying a fix of some sort.  Probably
clamping the ip->ip_len value to the true packet size will be ok.
1996-08-14 05:53:18 +00:00
cgd b3703a8fcd oops; fix bogon in last. 1996-08-14 05:47:39 +00:00
cgd 1f675e847d say 'stray kn20aa irq' rather than 'stray PCI irq'; former is more correct. 1996-08-14 05:45:52 +00:00
cgd a96b24415d fix inadvertent reordering of switch which cases by slot number but
is ordered by interrupt number.
1996-08-14 05:44:31 +00:00
explorer 1177a1fc69 formatting fix only 1996-08-14 05:43:35 +00:00
explorer 13659c5c84 spelling error only 1996-08-14 05:43:19 +00:00
thorpej 5404d54edb Another %lx -> %x for ntohl() 1996-08-14 03:47:42 +00:00
thorpej 3ca11aa1ad Fix some DIAGNOSTIC printf() formats; ntohl() provides a 32-bit quantity,
and should be printed with %x, not %lx.
1996-08-14 03:46:44 +00:00
thorpej f124a6aaa9 Back out previous; this is a bigger problem than I expected. 1996-08-14 00:32:53 +00:00
thorpej a05a1045f7 The htonl(), htons(), etc. functions return u_long and u_short. Add
casts to the big-endian versions of these calls so that the compiler
won't complain when they're passed as arguments to printf().
1996-08-14 00:07:35 +00:00
thorpej d719cb7901 Inside some DIAGNOSTIC code, cast some pointer arithmetic results
to long to quiet the compiler.
1996-08-13 23:25:10 +00:00
thorpej 28df9248ce Fix a typo and an error in color plane offset calculation. Submitted by
Konrad Schroder <perseant@hitl.washington.edu>, PR #2695.
1996-08-13 20:52:43 +00:00
explorer c87188f1bd be quiet about read_subchannel. Some CD players use this to poll, and having
a screen filled with kernel messages isn't nice.  Closes pr kern/817
1996-08-13 08:55:38 +00:00
explorer 5c3b7a7213 Fix condition where disk_unbusy may not get called 1996-08-13 08:31:31 +00:00
jonathan 1cc7b834e4 * Add declarations for MIPS-III (r4000) locore entrypoints.
* Add initialization code to set MIPS-III exception vector and runtime
  jump-table for locore functions.
* Clean up for -Wall, pass 1.
1996-08-13 08:19:50 +00:00
chuck c0bae2d189 sync with sparc version:
repair XDC_HWAIT macro to handle the fact that waithead is now
unsigned.   should fix xdc watchdog timeouts noted in port-sparc
by nathanw@mit.edu.
1996-08-12 20:28:54 +00:00
chuck cfdb99f44c repair XDC_HWAIT macro to handle the fact that waithead is now
unsigned.   should fix xdc watchdog timeouts noted in port-sparc
by nathanw@mit.edu.
1996-08-12 20:19:27 +00:00
mycroft 1eba3fc001 Use to build `makemodes'. 1996-08-12 00:57:35 +00:00
mycroft 558d72128e Put into . Remove hooks for `config-dependent' and
`device-driver' flags.
1996-08-12 00:51:24 +00:00
mycroft 88578318ca Remove the only use of `config-dependent', as it isn't actually needed. 1996-08-12 00:16:25 +00:00
jonathan 99b43cc2bc * Apply LOCORE -> _LOCORE change so locore.S doesn't #include struct
definitions.

* Include <mips/cpuregs.h> in <cpu.h> so kern_clock.c has user/kernel
  status bits in scope.  Still needs  work; r2k/r4k previous-mode bits
  are different.

* Include <mips/mips_param.h> in pica/include/param.h, for locore declarations,
  and definitions of vm and  other constants that should be shared across
  NetBSD/mips  systems to esnsure user-level binary compatibility.
1996-08-11 23:30:22 +00:00
jonathan 14bd2765a1 Fix old lint and changes not pulled back from pmax, pass1:
* include <mips/locore.h> where callbacks into locore are made, to get
    prototypes in scope.  Cast calls appropriately.
  * include <mips/cpuregs.h>, not the old Sprite-derived <machine/machConst.h>.
    machConst.h is deprecated.
  * dk_establish() must return void, not int.
1996-08-11 22:35:46 +00:00
oki e575454bf6 fixed kernel couldn't boot from most machines. more generic for x68k. 1996-08-11 15:37:42 +00:00
oki 33f551acdb fixed major number of vnd and cd. (PR#2635) 1996-08-11 15:34:56 +00:00
oki c85101f816 drive 2 (or 3) couldn't access with drive 0 (or 1). fixed this. 1996-08-11 15:32:49 +00:00
oki 95d984309f fixed use of uninitialized pointer. 1996-08-11 15:28:36 +00:00
veego 2ca67bae05 Bring in changes from the 1.2 branch which where only in the release 1996-08-11 12:27:50 +00:00
veego 66bb4a489f Disable the Hardwarecursor on the RetinaZ3 to solve the problems with
wrong mouse jumps under X11.
Remove the not working options KGDB from DRACO and GENERIC and added
an option to enable the HWC for the RetinaZ3
1996-08-11 09:48:17 +00:00
mrg cd658e4447 oops, need to copyinstr() here. how come it worked anyway? 1996-08-11 04:05:33 +00:00
mrg db019893b4 update sunos_sys_reboot() to actually work again. 1996-08-11 03:16:26 +00:00
mycroft 121dfd8f1b Change PCI_MAPREG_{MEM,IO}_SIZE() to use the standard `x & -x' trick to select
the lowest bit set.  This isn't any more or less valid according to the PCI
spec, but it deals with lame devices that don't implement all of the top
bits.
1996-08-10 15:42:33 +00:00
mycroft 5c2e33fc0a Put back `waittime' variable. 1996-08-10 13:47:54 +00:00
mycroft 988597c420 Eliminate reference to stddef.h. 1996-08-10 09:25:11 +00:00
mycroft 118b9b478d sys/dir.h -> sys/dirent.h 1996-08-10 09:08:26 +00:00
mycroft 3d7adb4768 sys/dir.h -> sys/dirent.h 1996-08-10 08:48:24 +00:00
mycroft ef186dd501 Look for the sequencer code in the right place. 1996-08-10 08:45:17 +00:00
mycroft cdfce2d74f Theres no microcode/Makefile.inc now. 1996-08-10 08:40:53 +00:00
mycroft 035c4e9b65 Compile the sequencer statically. 1996-08-10 08:36:48 +00:00
mycroft ed82d062fe Use HOSTED_C_C when building the assembler. 1996-08-10 08:24:59 +00:00
veego ee871d0972 Fixed pr#2681
The prototyp of adoscaseequ was right in adosfs.h
1996-08-10 07:28:49 +00:00
mycroft cf67f29afe * Add a HOSTED_C_C variable, which strips `-p', `-pg', and
`-nostdinc', and use it when building genassym.
* Use `-nostdinc' just to be sure we're self-contained.
1996-08-10 06:07:57 +00:00
mycroft f94052ed3a * Define CWARNFLAGS and MKDEP in some moderately consistent fashion.
* Make S expand to an absolute path at compile time.
* Use `-S' rather than `-x' to remove debugging symbols.
* Garbage collect unused variables.
* Reverse a handful of port-specific changes that do not correspond to
the common build model and are not needed.
1996-08-10 05:29:24 +00:00
mycroft 811315ca92 Add anchors so that only exactly `-I. is modified. 1996-08-10 04:01:29 +00:00
mycroft 9c5b0780c0 Convert the -I. to -I${.OBJDIR}, so that the `machine symlink is available. 1996-08-10 03:00:51 +00:00
mrg 72bad48e62 implement RB_STRING, derived from SunOS, via compat_sunos. 1996-08-10 00:23:14 +00:00
is 0f2514d2a0 Add manu/prod id for the DMI resolver board here. (No, no driver yet) 1996-08-09 18:18:05 +00:00
mrg 5abbf990f3 Change reboot(2) to take two arguments: bootopt like normal and also
a boot string for firmware that can do this, such as the SPARC and
the sun3 models.  It is currently silently ignored on all other
hardware now, however.  The MD function "boot()" has been changed to
also take a char *.
1996-08-09 10:30:23 +00:00
mrg c01edc3a02 use sc_unit instead of pointer arthimetic. 1996-08-09 08:34:00 +00:00
mhitch 79fb4c0c30 Add missing #include of "ppp.h" to get definition of NPPP so that the
pppintr() call is actually included.  This fixes ppp so that it actually
works again.
1996-08-09 05:11:02 +00:00
thorpej 6054b19d94 Add EX_NOALIGN and EX_NOBOUNDARY macros to be used as arguments to
allocation calls in the event the caller does not wish to utilize those
features of extent map allocation.

Suggested by Matthew Green <mrg@eterna.com.au>
1996-08-09 00:00:13 +00:00
thorpej b276d02b9d Fix typo, pointed out by Greg Hudson <ghudson@mit.edu> 1996-08-08 23:42:30 +00:00
mycroft 44f440543f We dont need to pass down COMPATDIR and KERNDIR. 1996-08-08 15:15:16 +00:00
mycroft 3f0b5a641e Run the child make in the source directory, so that nothing here needs to be
changed when the compile directory is outside the source tree.
1996-08-08 15:06:39 +00:00
cgd 440a942944 fix bogus returns from dec_kn20aa_intr_map(), and slightly simplify interrupt
mapping code.  (instead of using a "slot" and multiplying by 4 and adding the
pin number later to get the IRQ, just use base IRQ value and add the pin
number.)
1996-08-07 04:33:21 +00:00
cgd efec732f4d fix a typo, add a function kn20aa_disable_intr() to disable a given
kn20aa interrupt line.
1996-08-07 04:22:40 +00:00
scottr bfb6d245b5 Make the calculation of the PA returned by get_physical() agree with the
comment immediately preceding it:  We have to take the most significant
"numbits" from the returned value "ph", and the rest from our addr.  The
addition used previously introduced a carry which was causing great
difficulty in determining the correct PA of the framebuffer VA passed in
by the booter.
1996-08-06 04:03:33 +00:00
cgd f160e92962 revert PCI_MAPREG_IO_ADDR_MASK and PCI_MAPREG_IO_SIZE_MASK to their old
values, i.e. 0xfffffffe and 0xffffffff respectively.  The changed
definitions were incorrect, according to the PCI Local Bus Specification
(Revision 2.0).  Further rationale and a workaround for the broken
devices that instigated the change provided in a message to
current-users@netbsd.org, dated Mon, 05 Aug 1996 22:06:58 -0400,
message ID 16773.839297218@ux2.sp.cs.cmu.edu>.
1996-08-06 02:11:25 +00:00
briggs d2ea50dad8 Fix improperly terminated comment. Noticed by brg@dgate.org (Brian Gaeke). 1996-08-05 23:20:46 +00:00
soda 9d1a802eba disable AHA-284x product ID, because it is now handled by ahc_isa.c. 1996-08-05 21:18:56 +00:00
soda 9e413208a9 adding AHA-284x VL front-end to ahc driver by Jason Thorpe. 1996-08-05 21:15:58 +00:00
soda d2bb4c7a65 AHA-284x VL front-end to ahc driver by Jason Thorpe.
This is tested under both netbsd-1-2 branch and main trunk.
1996-08-05 21:14:29 +00:00
scottr 2985b9d676 Initialize conspa so ite_match() can attach to the proper device. 1996-08-05 04:36:45 +00:00
scottr 571519c310 Attach ite semantics to the appropriate grf device. 1996-08-05 01:52:13 +00:00
scottr 91d8e018e2 Attach ite semantics to the appropriate grf device, instead of obio. 1996-08-05 01:26:31 +00:00
scottr 1d6cd98d6a Attach ite semantics to the appropriate grf device, instead of obio. 1996-08-05 01:00:12 +00:00
is 480910aa2e Program around the Fastlane's DMA hardware shortcomings.
Fix by Matthias Scheler (PR #2672), based on information provided by Ralph
Schmidt/Reinhard Grams (Phase 5), forwarded by Jerome Lovy. Thanks to all.
1996-08-04 11:25:36 +00:00
scottr 89f4fddbfe Add a way to tell grf_establish() that internal video doesn't actually
occupy a slot.  This is necessary so that GRFIOCMAP can find the correct
physical address of the framebuffer.  Fixes P550, some LC models, and
perhaps the PB520.
1996-08-04 06:03:47 +00:00
scottr 9931b6b324 MRG vectors for the Quadra 630, from Jason Godfrey <jason@primenet.com> and
Bob Nestor <rnestor@metronet.com> (verified by Jason).
1996-08-04 04:08:25 +00:00
scottr 0e57c5bb15 Be much more careful with setting up the MRG ROM vectors. If we are using
a serial console and the PRAM read/write code happens to use the ADB ROM
vectors, we will have problems because the ADB hasn't been initialized.
For now, the only class of machines that we will set these up on regardless
of whether we are on a serial console or not is the original II series (II,
IIx, and IIcx).  Others can come later.
1996-08-04 03:53:15 +00:00
thorpej eea135a8b9 Two changes:
- Convert to use <machine/bus.h>.

	- Also read station address in egattach().  The softc is no
	  longer required in the probe function.
1996-08-03 19:33:19 +00:00
neil 78bddbd393 Prototypes and definitions for ICMP Router Discovery, From FreeBSD.
rdisc coming soon! :-)
1996-08-03 15:48:18 +00:00
thorpej a47a8c3f8c Oops, missed a couple of inb()s.. 1996-08-03 02:23:57 +00:00
thorpej c937985d60 Convert to use <machine/bus.h>, plus 2 bug fixes:
- In egstart(), if the Send Packet command fails, m_freem()
	  the mbuf chain before dequeueing another one (memory leak).

	- In egintr(), return 1 if a known interrupt was processed.
	  Would manifest itself as spurious interrupts.
1996-08-03 02:12:46 +00:00
is af6e1b10a8 Kludge to get back "Fusion Forty" fastkick memory. 1996-08-02 18:00:30 +00:00
ragge fdcabd43da Do not use any emulated insn's in boot program. (in this case cmpc3).
Add strncmp to get around this.
1996-08-02 16:18:39 +00:00
is 8311e65b64 Rewrite of the last bugfix wrt. Z2 bounce buffer memory allocation:
Don't manipulate the memlist passed from the kickstart rom + bootloader, as
we want it unchanged in case we boot via /dev/reload.
Instead, make z2mem_start known to pmap.c; and use int in pmap_bootstrap to
detect the right segment to correct and the amount.

XXX The transformation of z2mem from physical to virtual kernel addresses
in amiga_init.c must not be done before the pmap_bootstrap() call now!
1996-08-02 15:07:23 +00:00
pk 7a26a7952d Fill in `pcb_psr' in the PCB before copying it to the new child PCB. 1996-08-02 13:44:48 +00:00
ragge 5e04d04d68 Add support for booting Vaxstations; from MFM and SCSI. (PROM-based boot). 1996-08-02 11:21:41 +00:00
chuck 9ee9129dc4 fix:
- fix memory sizing bug for 2MB cards.   driver now works for both 512KB
   and 2MB ATM cards (we just got 10 2MB cards).
1996-08-02 02:55:14 +00:00
jonathan 36c640a447 * Remove old, unused SLIP variables from softc.
* Fix radio error-message parsing bug: old comparison against error
  prefix string  off by the size of the Starmode link-level protocol field.
* Fix radio reset finite state machine, given that parsing works properly.
* Add debugging messages about reset FSM if IFF_DEBUG is set.
* Remove #ifdefs notdef around back the check that discards newlines at
  the beginning of a frame. Every error message from the radio has a newline,
  as the radio send error messages terminated by \r\n, not  just \r like data
  frames. Not dropping the \n garbles the following data frame.
* Remove unused low-level debugging routines.
* Reformat the low-level bytestuff/RLL code to match the canonical source.
* Reduce MTU to 1100 bytes; 1200 bytes can overflow the radio buffers if the
  bytestuff/RLL does poorly.
* Fix radio-probe string to _not_ include a frame delimiter (\r): sending
  a \r to the radio tickles a bug in the firmware, causing the radio to
  smash the next frame sent after  the "**\r" probe string.
* Add calls to the tty t_oproc routine to make sure the probe and reset
  strings get sent to the modem promptly, rather than waiting for the next
  packet.
* Add PPP-style calls to the tty start-output function; seems to
  reduce latency marginally.

still to do:
* Flush output queue if resetting, since the radio is going to drop
  frames on the floor anyway if it needs resetting.
* Reduce tty start-output calls.
1996-08-02 02:53:39 +00:00
phil 318585cf7f Removal of some dead code. Moving of data definitions. (From Matthias) 1996-07-31 16:47:30 +00:00
mhitch 5b0728f9a2 Correct update of DMA address register when saving DMA state on a
message-in.  The remaining transfer count restored when a device is
reselected needs to be saved.  The saved value is needed to compute
the number of bytes transferred if another disconnect occurs.  This
fixes a random read data corruption that occurs on certain disks that
may disconnect more than once in the middle of a DMA transfer.
1996-07-30 06:36:33 +00:00
mhitch ebe82deed0 Remove the "goto abort" (which currently reboots the machine) when the
FIFO is non-empty when the message-in phase occurs before the DMA output
starts.  This showed up on a Micropolis drive.
1996-07-30 06:18:40 +00:00
is 721e767ea2 Deal with two bugs in the bounce buffer memory reserve code:
If z2 memory is used for bounce buffers, it used to be stolen in
amiga_init.c, but would not be removed from the memory list there, but
in pmap.c the memory list would just be corrected.

a) the sizes subtracted got out of sync.
b) the memory segment to subtract from was guessed in pmap_init, and not
necessarily right. (e.g. consider a graphics board whose fraem buffer gets
mapped in by the RO at 0x200000, and a memory board which maps at 0x400000)

The new code subtracts the stolen aount of memory from the memlist parameter
given to the kernel by the loader, and pmap_init just doesn't see it anymore.
1996-07-29 20:53:35 +00:00
is 14da7556a0 Add $(DESTDIR). 1996-07-27 18:21:35 +00:00
is faea95eae8 Delete the NOMAN and BINDIR lines. They're imported from ../Makefile.inc
anyway, and the BINDIR here was even wrong (missing $(DESTDIR)).
1996-07-27 18:15:42 +00:00
is 89931b5a83 Add $(DESTDIR) to the BINDIR= 1996-07-27 18:09:42 +00:00
is 894618ff5f Oops; somehow got the wrong version. 1996-07-27 18:08:15 +00:00
is 72855270d6 Get this onto the Main branch. 1996-07-27 17:54:13 +00:00
mycroft a2aa46e1c4 Add PCI_MAPREG_{IO,MEM}_SIZE(), and use them. 1996-07-26 07:13:52 +00:00
mycroft 53f21c73fb Changes PCI_MAPREG_IO_ADDR_MASK to 0xfffe. 1996-07-26 06:35:35 +00:00
thorpej 3946240709 Fix unititialized variable warning. Pointed out by Aaron Brown. 1996-07-25 20:41:48 +00:00
thorpej b2b02e6893 Regen. 1996-07-25 20:22:45 +00:00
thorpej e1e89fe37b Add two vendor definitions:
FSI	Fore Systems, Inc.
	INT	Intel

Add product definitions for the FORE Systems EISA ATM cards and the
Intel EtherExpress 32 Flash ethernet card.
1996-07-25 20:22:16 +00:00
is 003947b965 Changed the driver to use bus_xxx(). 1996-07-25 18:59:12 +00:00
is 0d2955977e Fix two bugs which were inserted when adding '060 support:
- due to a merge error, 2 line were missing making all the kernel data area
  cache inhibited.
- due to a misunderstanding of "kstsize" units, all but the first page of
  the kernel segment table was copyback cached on the '040/'060 which
  should have caused sporadic user process segmentation faults or
  kernel endless loops on the '060, under heavy load (when lots of
  userland pagetables are in-core), although the problem was not yet
  observed.
1996-07-25 14:38:40 +00:00
thorpej 27e2d3eee3 Match any Maxtor XT-8760S for the SDEV_NOLUNS quirk. Some of these
drives carry Sun OEM identifiers, as well.

Noticed by Taras Ivanenko <ivanenko@ctpa03.mit.edu>.
1996-07-24 20:50:23 +00:00
abrown 062b2cdd6b Fix unused variable warning for an "int i" left over from the old disk
statistics code.
1996-07-24 16:13:04 +00:00
thorpej aba7675464 In extent_alloc_subregion(), don't adjust the initial boundary check
value if we're not concerned with boundary checking.  Avoids a stupid
infinite loop.
1996-07-23 23:09:10 +00:00
is 8918d3a437 Note Blizzard IV and Blizzard 2060 (scsi?) options. While we're here,
correct a typo in a comment.
1996-07-22 11:14:52 +00:00
jtk 517f2ace37 One more fix as pointed out by enami tsugutomo <enami@ba2.so-net.or.jp>:
check slen before accessing cp[1] in GETNUM macro.
1996-07-21 04:01:01 +00:00
leo 1285fe171c Checkpoint integration of 68040 MMU support. Also fix oversight in allocation
of (virtual) I/O area address range.
1996-07-20 20:52:30 +00:00
leo 95c6d227a5 Add a prototype. 1996-07-20 20:48:36 +00:00
ragge cbca944854 LANCE driver for vaxstations. 1996-07-20 19:01:55 +00:00
ragge 88a147e51b CPU determine code. ts driver converted to new config. May work, untested. 1996-07-20 19:00:22 +00:00
ragge 15409eef53 Update config files for VAX8200 and VAXstations. 1996-07-20 18:56:58 +00:00
ragge 38b1264285 SCSI and ST506 support for the VAXstation architecture. 1996-07-20 18:55:09 +00:00
ragge a8f6512e6d VAXstation CPU and serial console support. 1996-07-20 18:29:49 +00:00
ragge 7707223bc4 Locore changes for VS and VAX8200. 1996-07-20 18:20:42 +00:00
ragge 1abb214901 Bugfix causing erroneous address displaying. 1996-07-20 18:17:29 +00:00
ragge fd3f596fa3 Reflect the changes of CPU determination. Add support for VAXstations. 1996-07-20 18:14:41 +00:00
ragge aab842833e Put in rd (ST506 disk), sd and st. 1996-07-20 18:08:19 +00:00
ragge a6c464a5f7 Add vmapbuf/vunmapbuf for VAXstations that need them. 1996-07-20 18:02:47 +00:00
ragge caff7b03d4 Numerous changes to be able to put Bertram Barth's VAXstation support in.
(Some) Support for VAXstation 2000/MicroVAX 2000, VAXstation 3100/76.
1996-07-20 17:58:12 +00:00
ragge 7ac59ffe68 Reworked time handling; now also handles clock chip CPUs correctly. 1996-07-20 17:35:41 +00:00
ragge 5b0992267c Support for VAX8200; the ka820/ka825 CPUs. 1996-07-20 17:33:06 +00:00
jtc d69119311f Provide alternate memmove() entrypoint for memcpy(). This will help
in the transition from b*() to mem*().
1996-07-20 01:53:42 +00:00
ragge c828b7ce6d Support for the VAXBI bus, and KDB50 device driver (MSCP disk).
Parts of this written by Chris Torek at the beginning of time.
1996-07-19 14:26:52 +00:00
explorer 5e5a09d83e revert to 1.26 1996-07-18 20:01:43 +00:00
explorer 67b1de765f Add compile-time and run-time control over automatic niceing 1996-07-17 21:54:04 +00:00
explorer 471c23385f Add compile-time and run-time control over automatic niceing 1996-07-17 21:43:22 +00:00
is a9c73c9405 Being bored, decided to scan the existing drivers for further additions
to the "not configured" list:
Added some devices, replaced an obvious placeholder.
1996-07-17 14:35:01 +00:00
is 397d9b2133 Add two manufacturer/product id combinations which I stumbled over analyzing
an unrelated bug report. This will make kernel startups a bit more readable
in the presence of unsupported hardware.
Information contributed by Andreas Bussjaeger.
1996-07-17 13:33:28 +00:00
chuck b3bed30d80 fixes/update:
- adjust txhiwat and mindma params a bit

 - fixed a couple of incorrectly labeled panic calls

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

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

 - opt: on tx: try and avoid flushing the internal buffer by padding out the
        length of the last mbuf a bit (if possible)
1996-07-17 03:53:39 +00:00
oki 72dd2d1350 XXX grf has some routines call ite function directly.
XXX check whether grf has no associated ite.  fixed PR/2626.
1996-07-17 01:51:43 +00:00
thorpej cc1c24bbec RCS id police. 1996-07-16 23:23:55 +00:00
chuck 1e5c811090 midway fixes + new stuff:
- merged multiple DRQ/DTQ ADD macros into a single DRQ and a single DTQ
   macro with a uniform interface to make the code simpler and easier to read.

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

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

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

midwayreg:
 - add byte/2byte DMA defines

midwayvar:
 - add new stat counter to monitor less-than-word lengthed DMA
1996-07-16 22:11:05 +00:00
explorer 58400ed329 Increase FD_SETSIZE to 2048 from 256 -- might require a library recompile 1996-07-16 17:04:17 +00:00
oki 4e7614daa6 call Debugger() with options DDB, added #ifdef. 1996-07-16 16:29:16 +00:00
oki de609f142b From Ignatios Souvatzis <is@NetBSD.ORG>:
properly distinguish between a bus error and an MMU fault
	on systems with 68030 MMU
1996-07-16 16:18:34 +00:00
mhitch e4de48ff39 Don't flush the 53C94 fifo when starting dma_in. The fifo data is valid
at that point, and flushing the fifo will hang the system.
1996-07-16 15:20:38 +00:00
cgd 2549add59e rework bootstrap/startup process to match the BSD pmap startup model.
start adding back in tracing printfs.  add support for the virtual page
table.  Now it gets to user-land code, but fails because i've not
added support to the context switch code to activate and deactivate pmaps.
1996-07-16 04:51:16 +00:00
cgd 6713334e56 if !OLD_PMAP set up proc0 pcb asn and ptbr before return to assembly. 1996-07-16 04:42:49 +00:00
cgd f385991329 do TBIA rather than TBIAP after initial context switch 1996-07-16 04:40:32 +00:00
cgd b23ddc2150 regen for updated pcidevs 1996-07-15 22:55:14 +00:00
cgd da383d28de clean up, sort a few entries. Add many new entries, based on information
gleaned from the XFree86 3.1.2E release.
1996-07-15 22:52:16 +00:00
ws 7d29fb5aaa Allow renaming when destination exists.
Fixes PR#2629
1996-07-15 19:12:13 +00:00
cgd effd413ecd before #defining the vtophys() hack for the alpha, #undef vtophys since
it may be a macro.
1996-07-15 16:40:27 +00:00
ragge ce30ddd46b Obsoleted by now. 1996-07-15 11:50:40 +00:00
ragge 640bda0d46 Put in boot support for VAX 8200. 1996-07-15 11:11:01 +00:00
cgd 892dd0455b add FIX_UNALIGNED_VAX_FP. It wastes space, but hey, this kernel includes
netweird...
1996-07-15 08:32:30 +00:00
cgd c087540e8c actually implement code to handle unaligned VAX FP reg loads and stores.
Not tested yet, but also not compiled into the standard kernel.
1996-07-15 08:28:09 +00:00
leo 5a1a623e41 keymap -> keymaps 1996-07-15 06:35:43 +00:00
cgd a906c164d2 frob the mask so that only the low set bit is set, to avoid lossage. 1996-07-15 05:20:19 +00:00
cgd 3f38b4d7ad add an assembly version of ffs(), copied down from libc 1996-07-15 03:13:41 +00:00
cgd 14c123b28d include all PCI drivers that actually compile, clean up list, alphabetize,
and add descriptions.
1996-07-14 21:14:46 +00:00
cgd 6be650149e include 'microcode' dependencies, in case the aic7xxx driver is ever made
to work on 64-bit systems or in case other drivers need it eventually.
1996-07-14 20:20:10 +00:00
cgd ec9e01a05f #ifdefs are not allowed in macro invocations. 1996-07-14 20:13:08 +00:00
cgd 8ab5d16b77 insert the normal NetBSD/Alpha vtophys() hack, so that this will compile
and link nicely on the Alpha.  It may even run, if well written.
1996-07-14 20:05:31 +00:00
cgd ba9149a53e treat all "chipset drivers" similarly: include their file specs
up with the definitions of their attributes.  Previously, this was done
for most but not all, and there was no good reason to be inconsistent.
1996-07-14 20:03:44 +00:00
cgd ce626bee48 rename translation buffer invalidation macros to start with ALPHA_,
like all other macros defined in alpha_cpu.h.
1996-07-14 20:00:15 +00:00
cgd f632c1cea9 fix bogus casts from pointer to unsigned int. Use unsigned long for this. 1996-07-14 19:36:56 +00:00
cgd 4285a42e76 alphabetize by driver name 1996-07-14 19:13:22 +00:00
cgd c62727acea print the label for the opcode in unaligned access printf as "op" not "type" 1996-07-14 04:36:21 +00:00
cgd 0fb84b3c3f (1) Remove old trap definitions, define trap and interrupt handling
more naturally in terms of way the OSF/1 PALcode delivers traps and
interrupts.  Clean up fault/exception handling code and system entry
points.  Seperate ASTs into a seperate C function.
(2)     Add unaligned access fixup code to fix unaligned quad, long,
and IEEE S and T floating datum loads and stores.  VAX floating data
types not yet supported, and in the future will only be supported if
FIX_UNALIGNED_VAX_FP is defined.  (No point in wasting the space when
most of the time there will never be VAX FP loads and stores.)  Right
now, these features can be controlled only by sysctl.  The (boolean)
integer sysctls machdep.unaligned_print, machdep.unaligned_fix, and
machdep.unaligned_sigbus control printing about unaligned accesses
(defaults on), fixing up of unaligned accesses (defaults on), and
forcing a SIGBUS on unaligned accesses (defaults off).  If an access
is not fixed up (for lack of method or explicit decision), a SIGBUS is
always generated to keep programs from using bogus data.  At some point,
these three choices should be controlled by per-process flags, as well.
1996-07-14 04:22:12 +00:00
cgd 6cb84cdd13 (1) Removed unused (and not likely useful) PALcode assembly stubs.
(2)     Minor cleanup.
1996-07-14 04:21:53 +00:00
cgd b431daf1d1 (1) Remove old trap definitions, define trap and interrupt handling
more naturally in terms of way the OSF/1 PALcode delivers traps and
interrupts.  Clean up fault/exception handling code and system entry
points.  Seperate ASTs into a seperate C function.
(2)     Add a boot flag ('H' and 'h') to make sure the kernel never
reboots after panic.  Useful for debugging kernels which panic early
on after user processes have started, to fend off infinite reboot cycles.
Sort boot flag switch.
(3)     Add unaligned access fixup code to fix unaligned quad, long,
and IEEE S and T floating datum loads and stores.  VAX floating data
types not yet supported, and in the future will only be supported if
FIX_UNALIGNED_VAX_FP is defined.  (No point in wasting the space when
most of the time there will never be VAX FP loads and stores.)  Right
now, these features can be controlled only by sysctl.  The (boolean)
integer sysctls machdep.unaligned_print, machdep.unaligned_fix, and
machdep.unaligned_sigbus control printing about unaligned accesses
(defaults on), fixing up of unaligned accesses (defaults on), and
forcing a SIGBUS on unaligned accesses (defaults off).  If an access
is not fixed up (for lack of method or explicit decision), a SIGBUS is
always generated to keep programs from using bogus data.  At some point,
these three choices should be controlled by per-process flags, as well.
1996-07-14 04:21:33 +00:00
cgd 2db316d75f (1) Remove old trap definitions, define trap and interrupt handling
more naturally in terms of way the OSF/1 PALcode delivers traps and
interrupts.  Clean up fault/exception handling code and system entry
points.  Seperate ASTs into a seperate C function.
(2)     Clean up interrupt handling slightly.
(3)     Add machinery to make [fs]uswintr be a bit more careful when
determining if a fault was actually their fault.  (Unfortunately, they're
not actually implemented now, anyway.)
(4)     Minor cleanup.
1996-07-14 04:21:09 +00:00
cgd 775cca7853 (1) Restructure and improve machine check and correctable error
handling based on information in the 2nd Ed. of the Alpha Architecture
Reference Manual.
(2)     Clean up interrupt handling slightly.
(3)     Clean up badaddr().
1996-07-14 04:20:40 +00:00
cgd 43588a48d5 (1) Remove old trap definitions, define trap and interrupt handling
more naturally in terms of way the OSF/1 PALcode delivers traps and
interrupts.  Clean up fault/exception handling code and system entry
points.  Seperate ASTs into a seperate C function.
(2)     Add machinery to make [fs]uswintr be a bit more careful when
determining if a fault was actually their fault.  (Unfortunately, they're
not actually implemented now, anyway.)
1996-07-14 04:20:22 +00:00
cgd 3a2af0734c (1) Add machinery to make [fs]uswintr be a bit more careful when
determining if a fault was actually their fault.  (Unfortunately, they're
not actually implemented now, anyway.)
(2)     Minor cleanup.
1996-07-14 04:15:27 +00:00
cgd 5beb1a522c (1) Add unaligned access fixup code to fix unaligned quad, long,
and IEEE S and T floating datum loads and stores.  VAX floating data
types not yet supported, and in the future will only be supported if
FIX_UNALIGNED_VAX_FP is defined.  (No point in wasting the space when
most of the time there will never be VAX FP loads and stores.)  Right
now, these features can be controlled only by sysctl.  The (boolean)
integer sysctls machdep.unaligned_print, machdep.unaligned_fix, and
machdep.unaligned_sigbus control printing about unaligned accesses
(defaults on), fixing up of unaligned accesses (defaults on), and
forcing a SIGBUS on unaligned accesses (defaults off).  If an access
is not fixed up (for lack of method or explicit decision), a SIGBUS is
always generated to keep programs from using bogus data.  At some point,
these three choices should be controlled by per-process flags, as well.
1996-07-14 04:15:10 +00:00
cgd 5a367fefb1 (1) Clean up interrupt handling slightly.
(2)     Clean up badaddr() definition.
1996-07-14 04:12:59 +00:00
cgd deb9f8f4b6 (1) Remove old trap definitions, define trap and interrupt handling
more naturally in terms of way the OSF/1 PALcode delivers traps and
interrupts.  Clean up fault/exception handling code and system entry
points.  Seperate ASTs into a seperate C function.
(2)     Restructure and improve machine check and correctable error
handling based on information in the 2nd Ed. of the Alpha Architecture
Reference Manual.
(3)     Removed unused (and not likely useful) PALcode assembly stubs.
1996-07-14 04:12:46 +00:00
cgd 43dae279eb (1) Remove old trap definitions, define trap and interrupt handling
more naturally in terms of way the OSF/1 PALcode delivers traps and
interrupts.  Clean up fault/exception handling code and system entry
points.  Seperate ASTs into a seperate C function.
1996-07-14 04:12:03 +00:00
cgd f72a611ccc (1) Clean up interrupt handling slightly.
(2)     Include more headers to bring necessary prototypes into scope.
1996-07-14 04:08:56 +00:00
cgd 644f74f9f2 (1) Clean up interrupt handling slightly. 1996-07-14 04:08:41 +00:00
cgd c915721a81 (1) Include more headers to bring necessary prototypes into scope. 1996-07-14 04:08:21 +00:00
cgd 9905bce8a5 (1) Clean up interrupt handling slightly. 1996-07-14 04:06:27 +00:00
cgd 38a0da40ee allow people to use the (slower) MI in_cksum.c vi 'options GENERIC_IN_CKSUM' 1996-07-14 03:46:05 +00:00
jtk a6c08ef5e8 fix PRs 219, 2295, 2612: speaker bugs on i386 port: remove overruns due to
faulty bounds checking; repair faulty octave limiting.
1996-07-14 01:03:13 +00:00
explorer 41239f1024 Suggestion from Noriyuki Soda <soda@sra.co.jp> to update the comments for
these files, since the driver was updated to deal with more devices.
1996-07-14 00:10:11 +00:00
fvdl 8e6a25cd1d Make this compile with PCVT_SCANSET == 2 (PR #2622) 1996-07-13 23:26:03 +00:00
explorer 73cb5a96f8 aic, not aix... Stupid typo 1996-07-13 06:20:11 +00:00
explorer 00f9b22eb8 Remove aic7xxx_seq.h on clean, build it on depend. This closes pr 2608,
2441, and part of 2600.  2436 is left open to remind me that Chris's
comments are probably correct.  This file should be built statically and
committed to the tree, not built on a per-kernel basis.
1996-07-13 06:19:34 +00:00
thorpej 0462d3063c Remove old-style disk instrumentation code. 1996-07-12 22:00:42 +00:00
thorpej eeaf8d15ef Remove the old-style disk instrumentation code. 1996-07-12 21:55:48 +00:00
scottr c92399979d Back out previous; actually, this is never a problem for us. (Duh.) 1996-07-12 17:09:26 +00:00
is a7efb38d4c Some MUSTEK scanners fill the vendor string in the SCSI identify
string with 0xFF instead of 0x20. Shorten the compare to 6 bytes to
take care of this.

Fixes PR #2617 by myself, which is based on a private problem report
by Neil Brewitt.
1996-07-12 16:49:50 +00:00
leo 50bb4b170b Sync with cleanup of atari_init.c 1996-07-12 13:27:37 +00:00
leo 5d0677fbdf Fix a prototype warning. 1996-07-12 13:17:45 +00:00
leo 38cbb4640f Sync with atari_init cleanup 1996-07-12 13:16:31 +00:00
ws 17d0816194 Allow newer IEEE version of Rock Ridge CDs
Note that this should really handle the multiple ER/ES entries, sparse files
and probably the file serial number field in PX entries.
1996-07-12 13:15:29 +00:00
leo a6a57e8631 - Cleanup a bit
- Remove mapping of page zero
- Remove hackery around the first 8 bytes that were mapped to ROM by hardware
1996-07-12 13:14:23 +00:00
leo f8f011861e - Cleanup a bit
- Remove the kernel-jump-to-zero code as page zero mapping is removed
- Weed out cpu040 usage, use mmutype instead
- Fix doboot code
- add fill for page zero
- use m68k/sigreturn.s
1996-07-12 13:12:40 +00:00
cgd 45ca1fa22f rename rei() to exception_return(). rename proc_trampoline() to
switch_trampoline().
1996-07-11 23:02:19 +00:00
cgd 15fbec10d4 rename rei() to exception_return(). rename proc_trampoline() to
switch_trampoline(). clean up trap/exception/syscall entries and
eliminate common code where appropriate.  clean up bootstrapping
code.
1996-07-11 23:01:09 +00:00
chuck 6ae82431b5 fix:
- en_mfix shouldn't touch M_EXT mbufs.    change to avoid this [at
    the expense of allocating a new cluster mbuf to copy to].

    XXX: en_mfix is getting called more often than I hoped it would
    (seems to happen when TCP retransmits... we get all sorts of odd
    sized, odd lengthed data mbufs, yuck).    i may revise the xmit
    DMA code to use non-word sized dma.
1996-07-11 22:48:10 +00:00
cgd 9310a8c8aa don't save and set the USP at every trap entry and exit. It's
unnecessary, and given that there's no reason to waste time and
add complexity in trap handlers.  This means that code which sets and
uses the USP has to be a bit more careful, but that doesn't happen much.
1996-07-11 20:14:17 +00:00
ragge a5b04afcd8 Automatic changing of root device after boot now works. 1996-07-11 19:33:50 +00:00
thorpej bf2c897818 COMPATOBJS -> COMPAT_OBJS (already done on release branch)
Also, sys/compat/common/kern_prot_43.c no longer exists on the trunk,
so don't attempt to compile it.
1996-07-11 16:52:10 +00:00
cgd 105697388d Instead of treating the trap/syscall/exception frame like a struct
containing a substruct (the hardware frame) and an array of registers,
treat it like one big array of registers, for easier and prettier
access.  Update everything to deal with that.
1996-07-11 05:31:16 +00:00