Commit Graph

8555 Commits

Author SHA1 Message Date
ragge
9f1148c9c4 Use the same device driver for both uda and mtc. Actually, the only
difference is vcid. The unit names must differ, so that it is possible
to distinguish them at autoconf time.
1996-08-20 13:49:15 +00:00
ragge
3a504ef134 Modified to get cleaner match/attach code for different parent buses.
Fix so that resource wait queueing works.
Changed all functions to take a pointer to uba_softc instead of unit
number, except for ubareset(). This must be done later.
1996-08-20 13:37:57 +00:00
oki
b4ffdaad58 Oops, added forgotten "-". closes port-x68k/2706. 1996-08-19 17:22:14 +00:00
cgd
eb9c65ce77 add a version of GENERIC which is always compiled with
profiling enabled.  (named the same as what GENERIC kernel
would be named if configured with config -p, which would end up
generating the same kernel as this.)
1996-08-19 04:53:24 +00:00
cgd
15f9c59baf check in the code used to build the kernel that Andrew Gallatin used to
figure out the correct IRQ for the ethernet on the AlphaStation 500.
That code is enabled via KN20AA_BOGUS_IRQ_FROB (but hopefully won't be
needed any time soon, and won't link w/o slight changes to other code).
Basically, when establishing an interrupt that we don't know what to
do with, prompt the user for what interrupt line to enable.  If you
get stray interrupts when you try to use the device (but not before),
then you've got the right line.
1996-08-19 04:28:25 +00:00
cgd
3c7eaa04e2 fix typo in comment 1996-08-19 04:19:01 +00:00
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
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
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
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
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
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
mycroft
5c2e33fc0a Put back `waittime' variable. 1996-08-10 13:47:54 +00:00
mycroft
cdfce2d74f Theres no microcode/Makefile.inc now. 1996-08-10 08:40:53 +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
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
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
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
briggs
d2ea50dad8 Fix improperly terminated comment. Noticed by brg@dgate.org (Brian Gaeke). 1996-08-05 23:20:46 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
cgd
3e323f7a08 update for new alpha_cpu.h definitions, -Wall cleanups, and make
things compile with the new work-in-progress pmap code.
1996-07-11 03:53:23 +00:00
cgd
192e4b94c0 update for new alpha_cpu.h definitions. 1996-07-11 03:52:44 +00:00
cgd
9aa794a63d update for new alpha_cpu.h definitions 1996-07-11 03:52:16 +00:00
cgd
f8f96d4b7d clean up for -Wall 1996-07-11 03:47:55 +00:00
cgd
742da2e049 compile with new pmap code 1996-07-11 03:47:46 +00:00
cgd
4d024971bf update to use new definitions in alpha_cpu.h 1996-07-11 03:46:00 +00:00
cgd
436a892738 Add definitions for:
Process Control Block
	Interrupt/Exception/Syscall Stack Frame
	Machine Check Error Summary Register
	Machine Check Logout Area
clean up some, and add prototypes for all of the CPU instruction and
PALcode function stubs.
1996-07-11 03:44:50 +00:00
cgd
3986cf9624 make this compile with pmap work in progress 1996-07-11 03:33:25 +00:00
cgd
7a83b5d468 some cleanup for -Wall 1996-07-11 03:30:11 +00:00
ragge
e9d6f189c1 Add MSCP tape to this file. 1996-07-10 23:51:53 +00:00
ragge
02d0803c80 Add spl4 - spl7 macros, easy to use when playing with buses. 1996-07-10 23:51:08 +00:00
ragge
4d687fb39d Slow down DELAY for 11/785. 1996-07-10 23:48:42 +00:00
ragge
9c24877b23 Remove tmscp protocol definition file; which was actually the same
as the mscp protocol.
1996-07-10 23:44:17 +00:00
ragge
5d6b8719b2 Remove old (tape-only) tmscp driver. Add new uba/qba driver
for common MSCP routines.
1996-07-10 23:42:05 +00:00
ragge
cb355cf8d5 Add support for tape drives. More extensive error checking. 1996-07-10 23:35:58 +00:00
scottr
73b545f8f1 Fix from Leo Weppelman: Change accesses to 'ssir' to inline asm macro's. 1996-07-10 18:31:49 +00:00
cgd
b119b40c59 it compiles, but DEFINITELY does not run 1996-07-10 03:17:09 +00:00
cgd
77ba495772 temporarily move new pmap code into a seperate header, so changes to
one version won't spam people compiling with the option to get the other.
1996-07-09 22:22:25 +00:00
cgd
db0b3ca200 kill a typo 1996-07-09 22:08:28 +00:00
mycroft
353cfc3523 Oops; remove something that shouldn't be here. 1996-07-09 09:23:03 +00:00
cgd
c5d7ffec0d fix a few botched names 1996-07-09 04:18:13 +00:00
cgd
0cefc7ef74 clean and update for new defintions, prototypes, etc. 1996-07-09 00:53:48 +00:00
cgd
b9659c52a5 add -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes as
CWARNFLAGS in the Makefile, but (for the time being, i.e. until that
works) override that with 'makeoptions' in std.alpha.
1996-07-09 00:46:01 +00:00
cgd
8c87bcbe93 definitions and constants which are part of the Alpha AXP
Architecture, and which relate to the OSF/1 PALcode.
1996-07-09 00:40:58 +00:00
cgd
2ba2d62b9b redefine lots of things in terms of definitions in alpha_cpu.h 1996-07-09 00:39:24 +00:00
cgd
48f29c8bc0 this file should not exist, for now 1996-07-09 00:38:37 +00:00
cgd
c3a7b67f3d Everything which would be defined here is defined in
alpha_cpu.h, and this file is no longer necessary for the
Alpha.  However, some machine-independent code (e.g.
/sys/compat/common/kern_exit_43.c) still wants a file with
this name to be around.
1996-07-09 00:37:51 +00:00
cgd
c2cd1ae6f5 profile_swpipl() -> _alpha_pal_swpipl() 1996-07-09 00:35:05 +00:00
cgd
04294813bd various cleanup, move setsoft* and spl* into intr.h. 1996-07-09 00:33:20 +00:00
cgd
29a40482db clean up comments, add OSF/1 rdmces and wrmces PALcode function calls. 1996-07-09 00:30:22 +00:00
cgd
2eab3353db delete cruft, clean up constants 1996-07-09 00:28:25 +00:00
oki
6b8ffeacd0 fixed format error 1996-07-08 16:36:28 +00:00
oki
f8e8e90f15 move wait for insert system floppy to mountroot_hook stuff 1996-07-08 16:32:12 +00:00
is
7c66bb9bef Cleaned up copyright notice, fixed a typo, and sync the comment in the
GSP assembler file with reality.
1996-07-08 13:28:41 +00:00
abrown
0c6696de2d Take advantage of new am7990 sc_nocarrier() function in order to do auto-
matic media detection on Sun4m machines which support multiple media
(UTP and AUI). New function lenocarrier() switches media type when called
if no link? flags are set.

Redefine link flags for Lance ethernet (le):
	<none>:	switch between media as needed to find carrier (autodetect)
		Preference to whatever the PROM is using (AUI if not booted
		from the network)
	link0:	use UTP port only
	link1:	use AUI port only

This allows Sun4m machines with dual media Lance ethernet adapters to
boot from the network on the UTP port.
1996-07-06 00:01:34 +00:00
leo
4b5bff0d0f During a rather lengthy debug session with Markus Kilbinger (Thanks again!),
we managed to kill the following SCSI-driver bugs for the Falcon:
   - The Byte_Count_zero bit of the falcon DMA controller does not always
     tell the truth! This caused the SCSI-driver to choke on devices that
     disconnected in the middle of a DMA-transfer (mostly removables).
   - Printing debug info about the 5380 on the Falcon is *only* permitted
     when DMA is not active.
   - Some functions forgot to remove possibly pending sofware interrupts
   - Some debug options didn't allow debugging a single target while they
     could easily be made to do so. This is fixed.
1996-07-05 19:35:35 +00:00
leo
f1af6a2252 Add missing spl0() call. 1996-07-05 19:22:21 +00:00
mark
f5ee3d4ce6 Make sure all routes through vt_curadr() range check the x and y coordinates.
This fixes a nasty bug that could kill the kernel without ever reporting
a panic.
1996-07-05 19:07:55 +00:00
leo
ec3f2031a8 Change accesses to 'ssir' to inline asm macro's. 1996-07-04 07:25:13 +00:00
chuck
e13b96dbf2 add native mode atm soft interrupt 1996-07-04 03:18:39 +00:00
chuck
59896583e3 add softnet interrupt for native mode atm 1996-07-04 03:17:53 +00:00
pk
a6adfa8db7 Fix label sector confusion, per der mouse (PR#2598). 1996-07-03 22:02:09 +00:00
mycroft
de867628ce Migrate m->m_data and m->m_len into Q regs to enable 10% code size reduction. 1996-07-03 18:20:38 +00:00
mycroft
7217b32126 Eliminate an instruction. 1996-07-03 14:05:16 +00:00
mycroft
b056ddef2a Add a few mbuf fields. 1996-07-03 13:10:46 +00:00
mycroft
8663d62627 Minor cleanup. 1996-07-03 13:07:17 +00:00
mycroft
5f51da7a03 Translate in_cksum() to assembler, and speed it up a bit. 1996-07-03 13:01:40 +00:00
cgd
808bbc3d50 minor cleanups to fit into the NetBSD source tree better (e.g. remove
RCS Log messages).  Haven't even tried to compile it yet.
1996-07-02 22:51:46 +00:00
cgd
255c6be565 pull in the Mach3 alpha pmap, as a base for the new pmap module. Modified
from the mach3 versions only as much as necessary to allow the old
NetBSD/Alpha pmap code to compile.  THESE WILL NOT WORK AS-IS, and at
minimum will require code to implement reference- and modified-bit
emulation.
1996-07-02 22:42:39 +00:00
cgd
6d3cc133ad define OLD_PMAP for all Alpha kernels. Eventually, when a new pmap module
works, this will be removed.
1996-07-02 22:34:02 +00:00
cgd
31f2acb42e if OLD_PMAP defined, don't usee alpha/pmap.c and use alpha/pmap.old.c instead. 1996-07-02 22:32:16 +00:00
cgd
9241c534de if OLD_PMAP defined, pull in <machine/pmap.old.h> and ignore the other
contents of this file.
1996-07-02 22:22:20 +00:00
ragge
1e3ab3cb1e uda -> ra and tms -> mt (mscp changes). 1996-07-01 21:50:29 +00:00
ragge
d969a7e16e Changed data structures due to removal of old config system. 1996-07-01 21:31:36 +00:00
ragge
f6fb3bf1ab Change to new config and to support new MSCP system. 1996-07-01 21:24:48 +00:00
ragge
f85a693859 Update to match new MSCP device handling.
Remove support for old config system.
1996-07-01 21:07:25 +00:00
ragge
dfdb4e6863 Remove old config support code. 1996-07-01 20:48:58 +00:00
ragge
f19e0bacab Rewritten and moved to vax/mscp. 1996-07-01 20:47:27 +00:00
ragge
60af617a5d Totally new approach for MSCP devices; they are now handled more like SCSI.
All Unibus dependencies are removed.
Can support different controllers on different buses.
Allows cloning of devices.
TODO:
	Write support for MSCP tapes.
1996-07-01 20:41:30 +00:00
ragge
97756165b8 Remove code that took care of old config devices. Don't support
old config anymore, all devices should use new config by now.
Add structures to handle DMA devices using new config.
Fixed bug that caused unwanted ubareset's on 11/780.
1996-07-01 20:17:56 +00:00
abrown
410fea854a Implement asm macros to allow 64-bit load/store to alternate address space.
Use new ldda() and stda() to make MultiCache initialization work on
SuperSparc-II machines (these machines require 64-bit access, even
to a 32-bit register).
1996-07-01 18:01:26 +00:00
is
6e4842626b There are Blizzard boards without SCSI options - we need to probe for the
existence of the SCSI hardware in the boards adress region.
Thanks to Oster Nerhus for the detailed bug report and to Ralph Schmidt for
the recommended probing method.
1996-07-01 08:00:02 +00:00
pk
d71930e6c9 Put native NetBSD disk label in a piece of wasteland within a SunOS label.
read_disk_label() uses the native label if present.
write_disk_label() constructs a SunOS label around the native one.
1996-06-29 22:38:11 +00:00
pk
80c64cc71d Put native NetBSD disk label in a piece of wasteland within a SunOS label. 1996-06-29 22:33:16 +00:00