Commit Graph

1068 Commits

Author SHA1 Message Date
scottr c0af85f6f3 Add CPU_XXX macros to assym.h 1997-01-07 07:42:17 +00:00
scottr 3753710f38 Fix typo in last: cf->cf_unit -> sc->dv.dv_unit 1997-01-07 07:40:46 +00:00
scottr 3afad659e2 Add basic support for a Duo dock SCSI controller, from Daishi Kato.
XXX - This could probably be improved if all docking hardware has a
NuBus declaration ROM that we can get to.  This should be investigated
further.
1997-01-05 10:01:42 +00:00
scottr 8a30e067ed Sync COMPAT_SUNOS trace trap handling with other m68k ports; no
functional change.
1996-12-31 06:32:17 +00:00
pk f750d179be rename: ramdisk => md 1996-12-28 23:42:33 +00:00
pk 603b61c3e0 rename: ramdisk => md 1996-12-28 23:22:07 +00:00
scottr e8b8d1b050 Clean up a few bogons+typos introduced in the removal of the broken indirect
config code.
1996-12-19 21:48:17 +00:00
scottr 9d67345760 Correct asm operands in mrg_Delay(); it has one output operand, and no
input operands.  This corrects an uninitialized variable warning, and
may also explain some erratic behavior of the MRG ADB; gcc could throw
away the value of the `ticks' variable (but I haven't traced through
any ROMs, myself).
1996-12-18 07:21:06 +00:00
scottr 3ac126bc23 Work around another uninitialized variable warning 1996-12-18 05:44:31 +00:00
scottr 94714822e7 Work around another gcc initialization warning. 1996-12-18 05:17:44 +00:00
scottr affc68cf0c Work around another bogus uninitialized warning, and fix a legitimate one.
Clearly mark the former.

XXX The bogus warnings show up with -O, but not -O2.  Unfortunately,
    NetBSD/mac68k can't (yet) use -O2.
1996-12-18 05:04:22 +00:00
scottr e70f884a92 Fix the potentially uninitialized variable in clear_screen() (correctly
pointed out by gcc -Wall).
1996-12-18 03:06:06 +00:00
scottr e330279eea Work around uninitialized variable warning 1996-12-18 02:54:43 +00:00
scottr 1460fbef53 Remove -Werror for now (sigh). Somehow this slipped through several
kernel compiles without getting caught.  Lame gcc optimizer bug.
1996-12-17 13:58:26 +00:00
scottr 5b7c2842ae Take avantage of COPTS appropriately. 1996-12-17 07:33:01 +00:00
scottr 1999f88fac Add sample sbc config line; format 'options' lines for consistency. 1996-12-17 07:22:30 +00:00
scottr e9ce47936c Add -Werror, remove -Wno-uninitialized. 1996-12-17 07:04:21 +00:00
scottr a7dc02ac8a Remove __BROKEN_INDIRECT_CONFIG, since we are no longer broken. 1996-12-17 07:00:12 +00:00
scottr 07bde0d4e7 Revamp mainbus and obio autoconfiguration, with some direction (and the
indirect bus code framework) from Jason Thorpe.  This allows us to dump
bus_scan() and bus_print(), and move bus_peek() and bus_mapin() to the
NuBus code (since they'll eventually go away, anyway).
1996-12-17 06:47:37 +00:00
scottr b96c3097ed Define struct nubus_attach_args 1996-12-17 03:56:11 +00:00
scottr 9b4055eb72 Convert all foo_match() functions to use a `struct cfdata *' for their
second argument.  The NuBus autoconfig code had to be reorganized as a
result of this, and looks much more like a directly-attached bus now.
These changes eliminate __BROKEN_INDIRECT_CONFIG.
1996-12-16 16:17:02 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
thorpej ef5333043b Copyright assigned to The NetBSD Foundation. 1996-12-09 17:46:44 +00:00
cgd 96acdadef7 First step inn removing config_scan() and the hacks that gave devices
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:

Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
jonathan 4c1d96de78 * Replace explicit -O2 in CFLAGS with COPTS macro. Default COPTS?= -O2.
Lets users over-ride with makeoptions COPTS="..." in kernel config files.

  Leave `mandatory' flags (like  -msoft-float which  on m68k enforces no
  FP in kernel) in CFLAGS.
1996-12-01 06:12:25 +00:00
scottr 86b50e865d Add missing ss, uk, and rd devices to cdevsw 1996-11-21 08:33:22 +00:00
scottr 1e3acdfc88 Kill the conspa variable, and use mac68k_vidphys instead. Where we used
to initialize conspa was invalid on non-040 machines, since we don't
know which MMU we're using on those, yet.  On the other hand, by the time
we get to check_video() on the 040 machines, the MMU has been disabled.
Compromise:  get the video PA in setmachdep() on the 040, and in
check_video() on the others.  (This is not optimal.  *sigh*)
1996-11-19 07:17:47 +00:00
scottr 1ad7567f7f - Move non-optional options SWAPPAGER, VNODEPAGER, and DEVPAGER to std.mac68k
- Catch up with vm/vmparam.h (remove MACHINE_NONCONTIG)
- Fix space/tab niggles in SPOT config
- MYSTERY now includes the esp driver
1996-11-19 00:38:05 +00:00
briggs 1372eab6c5 Include MACHINE_NONCONTIG here. It isn't needed on all macs, but it has been
used for all macs for quite some time.
1996-11-15 14:21:00 +00:00
briggs cca82e59db Remove scsi96 driver. 1996-11-15 14:16:42 +00:00
thorpej a0dffcafc2 Use bitmask_snprintf(). 1996-11-13 07:00:30 +00:00
scottr 563b939722 Remove unused MAXFDESCS option. Closes PR 2927, noticed by Erik
Bertelsen <erik@aarhus1.uni-c.dk>.
1996-11-11 18:02:57 +00:00
scottr b0aafba53e Remove TIMEZONE and DST, as they default to 0 anyway 1996-11-11 17:56:11 +00:00
scottr df8e1c8a09 VT220-related emulation additions:
- Add reset attribute sequences for bold, underline, and reverse
 - Add insert/delete line sequences
 - Recognize but ignore G0/G1 character set sequences

Performance:
 - Speed up clear_line() when clearing the entire line

Also, some stylistic changes for checking/setting scroll region bounds
and in putc_getpars().

These changes make the ITE work properly with the 1.2 termcap file.
1996-11-10 09:35:04 +00:00
briggs 51d658e787 Check to make sure that ASCBase is accessable before claiming that we
have an Apple Sound Chip.  Make sure that we have configured the device
before allowing accesses to ASC memory.  Among other things, this
prevents the 660AV and 840AV from getting a kernel bus error when trying
to beep on the console.
1996-11-09 17:26:26 +00:00
briggs f75767628e Dump out type, code, v on panic for no pcb in trap(). 1996-11-09 15:36:14 +00:00
cgd 8a3333b2a9 Fix an inconsistency that came in with Lite: setrq() was renamed to
setrunqueue(), but remrq() was never renamed.  Rename remrq() to
remrunqueue().
1996-11-06 20:19:19 +00:00
scottr 047ae9a04d LC III+/Performa 460 series use same vectors as the LC III.
Verified by Bob Nestor and Pete Nush.
1996-11-05 07:20:09 +00:00
briggs bbd25d0c38 - Move offset for 2nd scsi controller (Q900/Q950/WGS95) to 0x402
instead of 0x400.
- Restructure interrupt handling for more performance--continue to
  read/write data as long as the device keeps us in a data xfer phase.
  There is still a lot of room for speed improvement here.  Perhaps it
  lies is speeding up the interrupt path in general?
1996-11-04 21:20:01 +00:00
scottr 9da963b048 Remove include of ncr96scsi.h, since it's now an artifact, and the
unused include of ncrscsi.h while we're here.
1996-11-02 07:18:53 +00:00
briggs 7685e9d70b Improve reliability on my Q700, at least. Was getting the occasional
glitch--an extra byte on occasion.
1996-11-02 06:52:24 +00:00
briggs 20c7b48d76 macs with scsibase offset 0x10000 from iobase use a SCSI CLK of 16.5MHz
(off PrimeTime)--all others appear to use 25MHz.
1996-10-30 05:39:21 +00:00
briggs d5e58a6b20 Fix spelling error in panic. Double since of ResHndls[]. Use I/O kludge on
all systems, not just CLASSII--A bunch of Quadras apparently have hardcoded
I/O addresses in the ROMs, too.
1996-10-30 05:30:57 +00:00
briggs a4d7da78e4 Add esp1 at obio? 1996-10-29 06:16:29 +00:00
briggs 50c2da8f27 Interrupt-driven, but slow, NCR 53c96 driver for the 040-based macs. Contains
some guesses for the machines that have two of these buggers (I don't have
such a machine).  This driver is a copy of the sparc/alpha esp with a
minimum of changes--after we get it performing a bit more respectably,
we should see about re-normalizing the sources.
1996-10-29 06:08:58 +00:00
briggs 32e07b8b3a Add prototype for mac68k_register_scsi_b_irq(). 1996-10-29 05:42:16 +00:00
briggs 215afb273e Flag Q900/950 as having a second scsi controller. 1996-10-29 05:36:15 +00:00
briggs 487a6bebfc Add a function to install an interrupt handler for 2nd scsi bus (Q900/950).
Take a guess that it's at via2, bit 0 (where 5380 DRQ is).
1996-10-29 05:33:37 +00:00
briggs 35667ae56f ncr96scsi -> esp for consistency with sparc and alpha. 1996-10-29 04:26:57 +00:00
briggs 3c34dac1d0 Obsolete. 1996-10-29 04:23:50 +00:00
briggs 1e7948408e Most 040 models have scsi regs at base + 0x10000, not base + 0xf000
like the Q700.
1996-10-28 03:54:08 +00:00
briggs 4675aac3cf Set SCSIBase properly on Quadras. Separate out CLASSAV. From Dave Huang
<khym@bga.com>.
Also fix COMPAT_NOMID to compile again.
1996-10-23 14:12:37 +00:00
briggs 0363bd9a12 Include ether.h since we're now using NETHER, also use NETHER > 0 not NETHER. 1996-10-23 13:35:41 +00:00
scottr 289b73be85 Fix a raft of printf format strings and some declaration problems for
the case where we define DEBUG.  From Erik Bertelsen, closes PR 2871.
1996-10-21 05:42:23 +00:00
briggs 084b3f6a4c Fix two bugs noticed by Taras Ivanenko <ivanenko@ctpa03.mit.edu>
via.c: don't allow spl to remain at splhigh on error.
mainbus.c: Make sure that variable is initialized.
1996-10-21 01:59:31 +00:00
scottr a6865e3d2b Don't try to reference nfsbootdevname if we have no ether devices.
Fixes PR 2860, from Paul Goyette <paul@pgoyette.bdt.com>.
1996-10-21 00:31:18 +00:00
scottr 6bb6fab4ce Changes from the hp300 trap.c:
- Fix up usage of MBD_ISPID().  (from Jason Thorpe)
- Be careful not to deref bad pointers in the MMU fault handler.  (ditto)
- Ensure trap() never deals with a NULL proc, and if our proc has
  no pcb, punt.  (Suggested by Gordon Ross)
1996-10-17 06:42:44 +00:00
scottr ccaecc2dda Some changes from hp300 (thanks Jason!):
- Initialize proc0.p_addr just after setting up the kernel stack, to avoid
  getting NULL pointers in trap().  Change suggested by Gordon Ross.
- Panic if main() returns.
1996-10-17 06:32:13 +00:00
scottr e326c3123f We're paranoid; disable the IIci's cache card. 1996-10-16 04:00:28 +00:00
scottr 3370e6c419 External cache card on the IIci is enabled by default;
use DISABLE_EXT_CACHE to turn it off.
1996-10-16 03:55:21 +00:00
scottr a6bbf8fc5b Define MACH_CLASSQ2, used by Performa 575.
Remove susword() because of prototype conflict with <sys/systm.h>.
1996-10-15 14:42:49 +00:00
scottr b599d4a3f6 We no longer need 'options GENERIC' 1996-10-15 07:25:55 +00:00
scottr dca6a7e025 Critical fix from Bill Studenmund: if CTS is deasserted and then
immediately reasserted before we get a chance to process the interrupt,
we can inadvertantly get stuck with zs_tx_stopped set.  Move the delta
detection to the hard zs interrupt handler; the softint handler
will notice that something has happened with CTS and restart the
transmitter if it's asserted.
1996-10-15 06:57:43 +00:00
scottr 6cd86aa894 BSD -> NetBSD 1996-10-15 06:41:48 +00:00
scottr f4eeb69eab Several 68040/68LC040-related changes; we're not there yet, but this
brings us closer to basic operation.

  - Verified/updated ROM vector entries for many systems, and new vector
    table entries for LC 520, LC 575/577/578, and Quadra 950
  - Implement a new machine class (MACH_CLASSQ2) for the LC 575 series
  - Use the ptest040() helper function in get_physical().

Also, in straytrap(), only enter the debugger #ifdef DDB.
1996-10-15 06:40:39 +00:00
scottr 31d8d5c176 Implement ptest040(), a helper for get_physical(). 1996-10-15 06:31:07 +00:00
scottr 534c6caa6b Add EXEC_AOUT and EXEC_SCRIPT 1996-10-14 07:01:10 +00:00
christos ad67e04154 backout previous kprintf change 1996-10-13 16:50:51 +00:00
christos 40ecbf8e72 backout previous kprintf change 1996-10-13 03:21:13 +00:00
scottr 2903ee4df5 Add second Quadra class and machineid (gestalt value) for Color Classic II 1996-10-12 07:35:29 +00:00
christos 06555645c2 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:24:36 +00:00
cgd e36e19cf1e repoint at shared aout_machdep.h, not exec.h 1996-10-08 13:07:26 +00:00
cgd 472889f8e4 moved to aout_machdep.h (via repository copy) 1996-10-08 12:57:37 +00:00
scottr 872c12f95f Update ROM vectors for PB 500 1996-10-07 04:05:02 +00:00
scottr 4d11703980 Disable 040 caches in doboot(), and some minor stylistic changes to make
the hand-coded assembly consistent throughout.
1996-10-07 01:37:20 +00:00
scottr d036bd234e Sync with Chris' changes to the alpha setroot() and friends to resolve some
problems with entering "halt" at prompts.
1996-10-04 14:07:03 +00:00
scottr 0f40954572 Add ROM vectors for the LC III, verified by Mike DeLima
<miked@netrover.com>.
1996-09-27 06:55:29 +00:00
scottr 21761e4ec0 Update for recent config(8) changes. 1996-09-22 06:49:09 +00:00
briggs 197a86e724 Don't allow get_physical to attempt get_pte if mmutype is 68040.
(At least until get_pte works on the 040).
1996-09-18 03:33:23 +00:00
scottr d13cb4414c Convert `fpu_type' to the more consistent `fputype', and use the new
#defines from m68k/include/cpu.h.
1996-09-16 18:00:26 +00:00
scottr 3cf197cef1 Somehow the last change got mangled. Do over. 1996-09-16 05:24:21 +00:00
scottr 014f910806 Add ZS_CONSOLE_ABORT 1996-09-16 04:35:25 +00:00
scottr debc473329 - Add a ZS_CONSOLE_ABORT option to enable a serial console break to
force a drop to the system debugger.  WARNING:  this used to be the
  default behavior!  Modify custom kernel configs accordingly.
- Check for ZS_HWFLAG_CONABRT in zs_abort(), and don't abort if it's
  not set.
1996-09-16 04:32:28 +00:00
scottr 696dd783a4 Move check for ZS_HWFLAG_CONABRT to zs_abort(). 1996-09-16 04:19:26 +00:00
scottr a4b22a046a Implement poll(2). 1996-09-14 06:08:01 +00:00
scottr 19d545f1ae - Implement poll(2)
- Convert splhigh() -> spladb()
- Guard references to adb_evq_tail and adb_evq_len!
1996-09-14 06:01:12 +00:00
scottr 81543dc7c9 Implement poll(2). 1996-09-14 05:54:53 +00:00
scottr 4ddcca6bc8 Update prototypes to match Chris' cfprint_t change. Also, update comments
in autoconf.h to reflect the mainbus.c split.
1996-09-14 05:43:24 +00:00
scottr e09160652b Sync with m68k/cpu.h changes. Also, test fpu_type instead of mmutype
when handling fp exceptions.
1996-09-12 21:25:31 +00:00
scottr d3beac22f0 Sync with m68k/cpu.h changes 1996-09-12 21:25:29 +00:00
scottr 027b51f1f9 Define spladb() (conservatively, at least for now). 1996-09-12 20:39:19 +00:00
scottr d407764c72 Add uk, remove ch device 1996-09-12 05:34:59 +00:00
scottr 7a6fae71e8 Add ss, uk SCSI devices 1996-09-12 05:33:41 +00:00
scottr a453e56ffd This is the development/debug machine 1996-09-12 04:50:43 +00:00
scottr 7b33c93009 Update to current reality. 1996-09-12 04:49:52 +00:00
thorpej e469c7beca Use <m68k/cpu.h>. 1996-09-11 00:11:42 +00:00
thorpej 1710b024c0 Document COMPAT_M68K4K, but leave it disabled by default. 1996-09-10 22:26:50 +00:00
mycroft b3ffba62a6 Move strip(1) flags into a separate variable, so that $STRIP can
be passed to subordinate make(1)s.  Remove $TOUCH.  Add HOSTED_CC,
HOSTED_CPPFLAGS, and HOSTED_CFLAGS, and use them when depending genassym.
1996-09-09 21:06:55 +00:00
thorpej de5110f41e Use <m68k/exec.h>. 1996-09-08 01:00:35 +00:00
mycroft e6dd44f034 Use SIGBUS iff we get a legitimate bus fault. Use SIGSEGV for page protection
violations (per Solaris, SVR4, AIX, Linux, Irix, and SunOS).
1996-09-07 22:26:41 +00:00