Commit Graph

1577 Commits

Author SHA1 Message Date
thorpej 2317f9064e Garbage-collect pm_stchanged. 1998-01-06 08:40:50 +00:00
thorpej 07f835de1f Garbage-collect PMAP_ACTIVATE() call here; it's no longer necessary. 1998-01-06 07:49:36 +00:00
thorpej 61567b54de Garbage-collect pm_stchanged; it's not used by anything. 1998-01-06 07:02:58 +00:00
thorpej d11b109f2b Garbage-collect use of the PCB's copy of the user segment table pointer. 1998-01-06 06:51:40 +00:00
thorpej a8f80ad4fd Fix a bogosity apparently inherited from when the Utah 4.3BSD code base
was converted to use Mach VM for Net2/4.4BSD.  The user segment table
pointer was originally stored in the PCB.  When Mach VM came along,
however, it was also stored in the pmap, and loaded into the PCB in
pmap_activate().  pmap_activate() would then note that the PCB's USTP
was now in sync with the pmap's USTP, and the low-level context switch
code would use the value from the PCB.

However, pmap_activate() would also load the hardware MMU context if
the pmap was the current pmap (or, in the case where pmaps can be shared,
such as in NetBSD, if the proc was the current proc).  The low-level
context switch code would then reload the hardware _again_ using the
USTP from the PCB.

However, the optimization of not calling pmap_activate() if "stchanged"
was false ended up causing some processes to use stale USTP values from
the PCB when the low-level context switch code reloaded the hardware!
This was noticed by using a real vfork(2) (which worked for some time
before failing, surprisingly!)

Since I'm hard pressed to find any real optimization here (since the
hardware was always reloaded once, sometimes twice!), the code now always
calls pmap_activate(), which uses the correct USTP value (the one in the
pmap).  The PCB's USTP is now ignored, and should eventually be g/c'd.

Another optimization can actually be performed, and I have added a comment
describing what it is, but have not yet implemented it.

Also note that most of the loadustp() functions where actually incomplete.
This has been corrected.  These functions should probably be split up into
MMU-specific operations, and called indirectly, rather than doing constant
run-time decision making based on values that will never change during the
course of a boot's lifetime.
1998-01-05 23:16:21 +00:00
perry 3e0fad1868 RCSID Police. 1998-01-05 06:28:44 +00:00
thorpej b9f1b716f3 Now that all ports have pmap_activate(), and it has an identical interface,
prototype it in <vm/pmap.h>
1998-01-03 01:12:59 +00:00
thorpej dd966fca05 Change an argument name to PMAP_ACTIVATE() to more accurately describe the
semantics of the argument.
1998-01-01 20:05:23 +00:00
thorpej 287b63b321 - Make pmap_activate() and pmap_deactivate() take a struct proc *.
- Define active_user_pmap() and use it in the appropriate places (from hp300
  port).
1998-01-01 19:52:50 +00:00
scottr 6a7a3fb133 spurintr() is a low-level interrupt handler, and must not
be called by C code!  Spotted by Bill Studenmund, who also provided
#the substance of this change.
1997-12-19 05:38:00 +00:00
scottr e43a4bda4a Update for the NWO 1997-12-18 06:45:30 +00:00
scottr 0b62536fdf Make these more closely resemble the old configurations. 1997-12-18 06:44:15 +00:00
scottr 24d2f8120e Don't enable interrupts unless we are using reselect or interrupt-
driven PDMA modes.
1997-12-16 19:44:19 +00:00
wrstuden 5a67b7c680 Add initialization code for cs_wr5_dtr as the M.I. layer now tests
it in initializing during autoconfig. Similar to sys/arch/sun3/dev/zs.c
revision 1.47. Ought to fix hangs at first tty access reported by
Johnny Lam, <jlbg+@andrew.cmu.edu>.
1997-12-16 17:53:12 +00:00
scottr cebc1537c1 Update to match std.mac68k changes. 1997-12-16 17:22:53 +00:00
scottr 39aac67f16 Fix prototypes so that we can compile without DDB. Closes
PR 4633.
1997-12-07 17:47:47 +00:00
scottr ee70fa750a Shades of rev 1.13: Really, we shouldn't call Debugger() if we
haven't got ddb in the kernel.  Fixes PR 4632.
1997-12-06 19:41:46 +00:00
scottr 73a00edbd6 PR 4078: Enabling the SCSI IRQ interrupt to allow reselects to work
causes the MI interrupt handler to barf when we get a 5380 RST interrupt
while probing.  Worse, the VIA latches the interrupt, so simply having
all interrupts disabled during autoconfig doesn't resolve the problem.
[I demonstrated the latter on a IIci, which erroneously reports a
reselection attempt(!) after autoconfig is complete.  The latched
interrupt results from the SCSI bus reset we do when initializing the
bus.]

Since interrupts must be enabled during autoconfig anyway (sigh), test
to see if autoconfig has completed in sbc_irq_intr().  If not, we don't
pass the interrupt up to the MI interrupt handler.  Also, make sure to
clear the VIA interrupt if we're servicing an unclaimed 5380 RST
interrupt.

Thanks to Bill Studenmund for providing the key insight needed to unlock
this problem.
1997-12-06 18:53:30 +00:00
tv 0a558b3f1f Standardize COMPAT_SUNOS -- remove all references to
sunos_exec_aout_makecmds() in machdep.c for various architectures and put
it in exec_conf.c like the other emulations; rename exec.h to
sunos_exec.h.
1997-12-04 15:33:17 +00:00
briggs 16b71d1871 Thanks to Paul Goyette <paul@whooppee.com> for a patch to clear the
interrupt properly on a SuperMac Spectrum/8 Series III, and thanks
to Dan McMahill for loaning the card to Paul.
I modified Paul's patch somewhat to change grfmv_intr_generic_{1,4}
to grfmv_intr_generic_write{1,4} and added grfmv_intr_generic_or4 to
handle this card.
1997-12-03 03:05:02 +00:00
kleink c87631771e Add COMPAT_13. 1997-12-01 14:52:51 +00:00
scottr 4be1bd1115 Correct a comment from previous commit. 1997-12-01 06:07:33 +00:00
scottr 355a8bbccd We don't do old-style miniroots anymore. 1997-12-01 05:51:51 +00:00
scottr fe3d2d5633 Make grfdebug a patchable variable, and default to no debugging messages.
Noticed by Hauke Fath.
1997-12-01 05:40:39 +00:00
briggs 343e078b95 Add extra FWB driver partition and Apple ATA driver partitions to the list
of partition type that we recognise and skip when filling the fake
disklabel.
1997-11-30 04:46:59 +00:00
briggs 8e1428e600 Support for the Lapis ProColorServer 8 PDS on the SE/30. This prevents
hangs when trying to use this video card in conjunction with an ethernet
card.  Thanks to David Condon <david@apk.net> for information and testing.
1997-11-30 01:02:44 +00:00
scottr 9cc64880e9 Major reorganization, based largely on the i386 GENERIC. This moves all
bus and device configuration out of std.mac68k, as well.
1997-11-26 07:23:20 +00:00
scottr 805d1043a6 Don't attempt to open the ADB device if it hasn't been initialized.
Also, don't allow more than one instance to be configured.
1997-11-26 06:28:50 +00:00
briggs 2241e4220c Only scan MAXPARTITIONS entries for a free partition table entry. 1997-11-26 04:18:20 +00:00
briggs 62ebaeb91b Ignore FWB Component and Apple_Driver_ATA partition types, too. 1997-11-26 04:14:07 +00:00
scottr 952c244eab In iteoff()/iteon(), don't try to do anything if we haven't
initialized the ite.
1997-11-25 20:56:13 +00:00
scottr 387294d4a5 Fix dependency generation for assembler files; closes PR 4476,
but differently since the suggested change breaks cross compiling.
1997-11-25 18:33:19 +00:00
briggs 2412580d6a Forgot a declaration in last change to esp.c. 1997-11-25 03:54:56 +00:00
briggs 1adbb93466 * Disable parity checking on all devices until we find a better way to
deal with cheap CD-ROMs and other devices that do not appear to have
  any way to enable parity generation.  In the future, it might be nice
  to have this configurable on a per-device basis with back-to-back
  parity errors automatically disabling parity for the device.  That
  would require some MI changes.
* Handle unaligned and odd-length transfers.
  This could probably be handled better in the future.
1997-11-19 13:01:32 +00:00
scottr 2311eecbad Fix emulation, mostly from Dave Huang in PR 4482 (one tweak by me for CUU/CUD, and
one from him to correct a fencepost error in {reset,clear}_tabs()).
1997-11-19 07:00:03 +00:00
lukem 6c986561ee * add commented out DDB_HISTORY_SIZE=100 if DDB exists in config file
* fix up use of 'options<SPACE><TAB>'
1997-11-17 01:57:23 +00:00
veego 86086729e7 if NARP -> if NARP > 0 1997-11-13 10:48:19 +00:00
thorpej ce4c770f88 Make sure CPP, AR, AS, and RANLIB are defined. 1997-11-12 23:11:50 +00:00
thorpej a421995756 Define LORDER, NM, and TSORT here, like we do the rest of the tools. 1997-11-12 22:25:31 +00:00
scottr d28cbedf2f Fix typo in last change that causes lossage depending on
whether the MRG_ADB option is used or not.
1997-11-11 17:31:11 +00:00
scottr a41bde2076 Get rid of MSGBUFPTECNT; fixes PR 4331. 1997-11-09 06:10:44 +00:00
scottr 60dd653baa KNF: Fix some whitespace inconsistencies. 1997-11-08 23:22:38 +00:00
briggs 527e5cbc44 Force the probe to find the internal video for the 63x/575 models. 1997-11-08 04:12:52 +00:00
briggs c1ed70f0d8 NetBSD RCSIds. 1997-11-07 13:31:15 +00:00
scottr a6c6c9c1ad Update from John Wittkoski: work around problem with mice that claim to
support Extended Mouse Protocol, but really don't; the Logitech Mouseman
is one such mouse (model M-AC13-4MD).
1997-11-07 07:38:10 +00:00
scottr 13fa4227b1 Update from John Wittkoski: bug fixes for Cuda support. 1997-11-07 07:33:11 +00:00
ender e38a307461 Recognize Apple Standard Keyboard (ISO layout) 1997-11-05 08:21:47 +00:00
briggs fde9e5e6c3 A first cut at faster SCSI for non-AV quadras. Could probably perform better,
but is a marked improvement.  This takes advantage of a pseudo-DMA hardware
hack of Apple's that exposes a 16-bit register that the Apple-designed
memory controller acts like a DMA controller and handshakes into or out
of the FIFO.  Wierd.
1997-11-05 03:33:35 +00:00
briggs 6683847f3b For the LC575/Q630 (comm-slot machines), try to derive the card settings.
Unfortunately, there does not seem to be a good way to determine what
variety of comm-slot card is present in a machine.  There is still an
interrupt issue preventing these cards from working--hopefully that will
be ironed out shortly.
1997-11-05 03:27:29 +00:00
briggs 138956b074 For level 4 (serial) interrupts: If the handler returns 0, take the
normal rei course.  If the handler returns non-zero, just rte.
This should allow better MACE response-time and still keep serial
interrupt overhead to a minimum on older, slower machines.
1997-11-05 03:23:20 +00:00
briggs 9daaf978aa Check for machine class, not for PSCBase as initial check in mc_obio_match(). 1997-11-05 01:56:27 +00:00
briggs cb6760281d Raise the number of transmit and receive buffers. 1997-11-04 13:03:48 +00:00
briggs 2ed7cf086f Fix a space-wasting bug found by David Huang in his work on the MACE driver. 1997-11-04 13:02:45 +00:00
briggs e19ba716d0 remove an obsolete comment. 1997-11-04 04:00:18 +00:00
briggs 81a98183d1 Puma will soon be looking a bit different. 1997-11-04 03:56:09 +00:00
briggs e658b8b476 Add in the if_mc ethernet driver for the AMD "MACE" part. This is the
internal ethernet on the Quadra/Centris 660av/840av.
Add initial support for the PSC (DMA controller) to support the above
(DMA SCSI remains unsupported).  This involved also changing the way
that several interrupts are handled.
Above from David Huang <khym@bga.com>
Since the interrupts changed somewhat, we must also make the ipls
dynamic, defaulting to their prior levels and adjusted for the AVs.
I modelled this on the hp300.
1997-11-04 03:44:42 +00:00
mycroft ec5fd4954e Set rr0_dcd.
Don't set DCD_IE and CTS_IE here; let the MI code do it.
Handle MDMBUF.
1997-11-02 08:05:06 +00:00
thorpej 7438e6c882 Adjust for ifmedia-related changes to dp8390 driver. 1997-11-02 00:25:11 +00:00
scottr 59498b56f8 From i386: initialize nfs_boot_rfc951 if either NFS_BOOT_BOOTP or
NFS_BOOT_DHCP are defined.
1997-11-01 21:11:07 +00:00
briggs 5298ea207d struct msgbuf -> struct kern_msgbuf. 1997-10-27 03:02:51 +00:00
briggs 8d24ce6b91 Change Q630 type to class-Q2. It's quite similar to the P575. 1997-10-27 02:49:29 +00:00
is a16fd7d74e Make these compile after m68k/m68k.h 1.4->1.5. 1997-10-26 21:41:34 +00:00
briggs 7d0ee36fdb The 16- and 32-bit Apple card types got reversed somehow. 1997-10-26 03:17:15 +00:00
briggs b7321b3d4f Handle interrupts on E-Machines Futura-SX. From Paul Goyette, PR 4348. 1997-10-25 23:17:58 +00:00
briggs 54770f54b4 Scan more than MAXPARTITIONS Mac partitions when loading the fake disklabel.
This allows us to use a root and/or user partition that's not one of the
first 8 partitions in the table, and it allows us to fill the fake disklabel.
1997-10-23 14:58:49 +00:00
briggs a2594d0b33 Lost changes from 1.168 somewhere along the line. 1997-10-22 18:54:24 +00:00
scottr ca99a37396 Enable ipfilter, and add a commented-out rnd pseudo-device line. 1997-10-20 22:52:48 +00:00
scottr 8630149cba Convert to MI 8530 SCC driver, from Bill Studenmund. The new front end
also supports DTR/CTS flow control.
1997-10-20 08:13:26 +00:00
briggs b7a14b5b80 Move sys/sysctl.h to be after vm/vm.h. 1997-10-17 02:28:36 +00:00
briggs 924c665227 Make this compile again. 1997-10-17 00:24:47 +00:00
thorpej 8b921485a0 Pulldown from marc-pcmcia branch: adapt to changes in the MI dp8390 driver. 1997-10-15 16:58:21 +00:00
lukem 28558b28eb rcsid fascism 1997-10-13 14:22:22 +00:00
scottr 1895730762 Fix an oversight in chrtoblktab[], kindly pointed out by Michael Graff. 1997-10-13 03:59:18 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
mycroft 20b05a6bc4 Make these closer to working. 1997-10-11 09:10:25 +00:00
scottr 017e6c7f10 Address PR 4120 by synchronizing v{,un}mapbuf() with the i386 vm_machdep.c,
v 1.27, pulling in changes made there by Charles Hannum.  Also, incorporate
a few tweaks made by Gordon W. Ross in the sun3 version of this change.
1997-10-11 06:38:45 +00:00
briggs 9f3c7b8b63 Treat an unknown A/UX partition as SCRATCH instead of ignoring it. 1997-10-11 01:03:47 +00:00
scottr a7515413d8 Remove advertising clause. 1997-10-10 05:54:48 +00:00
briggs 71a2747c66 Ignore partitions of type Apple_Driver43 when filling the fake disklabel. 1997-10-10 04:01:02 +00:00
jtc 4229acf79d Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:37:20 +00:00
briggs 4839f9406b Clear interrupts properly on the Radius PrecisionColor 8.
Thanks for the info go to Andrew MacGibbon <andrew-m@cs.auckland.ac.nz>
1997-10-09 01:25:52 +00:00
briggs 4220edeca5 Probe for the SONIC before saying that we found it. Some early Centris
models (low-end) shipped without ethernet installed.
1997-10-09 00:08:00 +00:00
briggs 9c8e4f24b0 Disable video interrupts on the AV machines. Thanks to Michael R. Zucca
(mrz5149@cs.rit.edu) for the addresses and hints as to how the interrupts
might be disabled, and thanks to Henry Hotz (h.b.hotz@jpl.nasa.gov) for
testing on the 840AV.
Unmap the DAFB regs on the other Quadras after attachment.  They're not
used.
1997-10-08 19:54:04 +00:00
scottr 9c7f82f7b8 The annoying message about trusting ourselves to write the PRAM should
really be dependent on DEBUG, not DIAGNOSTIC.  While we're here, add
a couple of DEBUG messages to mac68k_calibrate_delay(), and wrap them
all appropriately so that the messages aren't enabled unless we
specifically ask for them (by setting clock_debug).
1997-10-07 03:04:55 +00:00
thorpej 3b4ad2b60e Copyright assigned to The NetBSD Foundation. 1997-10-05 18:15:51 +00:00
thorpej 030188061e Copyright assigned to The NetBSD Foundation. 1997-10-04 17:36:56 +00:00
briggs 407e2e622f port-mac68k/4158: current kernel doesn't recognize some adb devices.
Patch applied.  Thanks to SUNAGAWA Keiki for the change-request.
1997-10-02 15:12:49 +00:00
briggs 13ceb16786 port-mac68k/4175: Need to add support for 33 MHz LC475/Q605.
Fix applied.  Thanks to David Johnston for the PR and the reminder.
1997-10-02 13:31:13 +00:00
christos 7f41ec0345 PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:50:53 +00:00
briggs a611bcde84 Add another Dayna card to the Apple-compa. list.
Define a constant for the SuperMac Spectrum/24 series III display card.
Thanks go to  Luca Falzoni <falzoni@jetai.unipv.it> for trying out the
code for the Dayna ethernet support.
1997-09-26 00:37:05 +00:00
leo 02f4c2f7e9 atari_round_page() -> m68k_round_page(). My fault, sorry... 1997-09-21 20:35:31 +00:00
leo c5ba7a3102 Move the definition of MSGBUFSIZE up to the machine-arch level if
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:06:37 +00:00
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
scottr 83bd421ad4 Set up base address of ASC for IIfx, per GtMFH. 1997-09-16 16:28:07 +00:00
scottr eb72408374 Clean up comments. 1997-09-16 16:13:47 +00:00
scottr 8dbfee6073 Add a comment about the sccA address on the IIfx. 1997-09-16 15:51:09 +00:00
scottr 19e555febb Check booter flags for a bit that tells us whether we should construct
bootdev from the SCSI ID passed in via the Booter's environment.
(Does the right thing for older versions of the Booter.)
1997-09-16 14:35:32 +00:00
mycroft a9155c5057 Set the status word as well, and remove a bogus comment. 1997-09-12 10:29:20 +00:00
mycroft 50cfb2fcdd Kill vestiges of Locore.c. 1997-09-12 07:55:17 +00:00
mycroft 982f24e698 Always initialize all registers in setregs(). 1997-09-12 07:00:30 +00:00
mycroft 16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
scottr 5dd9e25dca For consistency: VIA_initialize() -> via_init() 1997-09-10 04:38:47 +00:00
scottr d1feb13390 Move VIA_initialize() from configure() to locore.s, shortly after
setting up and enabling the MMU.  This has the effect of ensuring
that any stray interrupts that get posted before the IPL is lowered
will be handled gracefully, i.e. without an access fault or illegal
instruction exception.
1997-09-10 04:22:33 +00:00
scottr eb3c36eb89 Add ROM vectors and I/O info for the IIfx. 1997-09-10 03:43:48 +00:00
scottr 01c7934554 Define, implement, and use oss_intr(). 1997-09-09 17:37:10 +00:00
scottr da80f6c913 Catch bus error in sbc_pdma_out() and panic with a reasonable
error message.
1997-09-06 07:53:14 +00:00
scottr 18883bf3fc In itematch(), check to see if the framebuffer PA matches either the
$Fssxxxxx 1MB slot space documented in the old Inside Macintosh, or the
$Fs0xxxxx 1MB slot space documented in the new IM and Guide to Macintosh
Family Hardware.
1997-09-06 06:51:54 +00:00
scottr 093be63832 Back out last commit; it interfered with NuBus video, and will
have to be reworked.
1997-09-04 00:54:04 +00:00
scottr 7883fba4bf Two video-related changes:
- Only set mac68k_vidphys if we're on a machine that we couldn't get
   the Mac OS memory map.
 - If we could get the Mac OS memory map, use the framebuffer size found
   by get_mapping() rather than the size calculated using the Booter
   environment.
1997-09-03 06:40:15 +00:00
scottr e68adcb18e Initialize the bus error and address error vectors explicitly for all
CPUs, and set up the VBR just to be certain.
1997-09-03 06:34:08 +00:00
scottr f30496c3f2 When identifying the CPU, print the scaled factor resulting from
calibration of the delay() loop.
1997-09-03 06:28:55 +00:00
scottr c0f620b961 Don't initialize the bus error and address error vectors; as we do that
in the startup code already.
1997-09-03 06:16:24 +00:00
scottr c4ab61a0cf Eliminate the use of the register keyword, and use standard
type names.  Also, eliminate an unnecessary DEBUG printf().
1997-09-03 06:14:42 +00:00
scottr 59d6043196 Do run-time determination whether to save the TC value for AV
Macs; this way at least those models can configure intvid0.
From Dave Huang.
1997-08-30 22:29:10 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
mjacob 6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
briggs e39cac5a38 Get the correct fault address on a bus error on a 68040. 1997-08-16 23:10:49 +00:00
briggs 2a83a9363a Add interrupt handler for SuperMac GFX.
Tested by Kai-Yew Lum <kaiyewl@engin.umich.edu> back in May.
1997-08-15 00:15:32 +00:00
scottr c7079260e5 More machine support:
- Add entries for the LC520, Color Classic, and PB150 to intvid_info[].
 - Make the PB150 a Duo-class machine, as it seems to work better this way.

Now that we're doing the latter, it points out something I missed a long
time ago when I added Duo support:  CLASSDUO was being ignored in
mac68k_set_io_offsets().

PowerBook 150 changes and bug fix provided by Dave Huang <khym@bga.com>
in PR 3970.
1997-08-14 18:23:20 +00:00
scottr f9904b191f Recognize the Sigma Designs ColorMax card, and handle the interrupt. Code
provided by Brian Foley <bfoley@gpo.iol.ie> via Allen Briggs, updated for
bus.h by me.
1997-08-14 06:16:46 +00:00
scottr c988c6f85f Make #include directives consistent. All MD headers are of the form:
#include <mac68k/{dev,mac68k}/foo.h>
1997-08-11 22:53:26 +00:00
ender 85f80dd2c7 o Fixed definition of PowerBook extended keyboard from previous commit
o Added recognition of some additional ADB device types
1997-08-09 20:21:45 +00:00
ender f8f304c76c Add recognition of more keyboard types (including ISO layouts) 1997-08-08 17:58:48 +00:00
scottr 3aa6a4e333 Make the diagnostic panic message when we don't have a pcb consistent
with the message one normally gets when the kernel panics due to
some other unhandled trap.
1997-08-07 21:37:03 +00:00
scottr 740b91a80c Add the Classic II to intvid_info[] 1997-08-07 21:30:20 +00:00
scottr c03541be22 Strip down to bare essentials for these machines. 1997-08-07 19:07:08 +00:00
scottr 06ac03dd55 Fix typo found by Colin Wood, PR 3934: ga_handle should get the value of
the handle, not the tag.
1997-08-03 16:44:24 +00:00
scottr 6f33c6446c Drop splsched() to spl3(), so that it no longer blocks serial interrupts. 1997-08-03 07:20:40 +00:00
scottr 741cf383d0 Adjust prototype for ga_phys field in grfbus_attach_args. 1997-08-03 07:17:31 +00:00
scottr cd74e0d31a Adjust grf_establish() prototype. 1997-08-03 06:52:23 +00:00
scottr f4ef74ae32 Fix grf{i,m}v_phys() prototypes. 1997-08-03 06:42:29 +00:00
scottr dfa83e4861 Overhaul grf drivers to correct recent problems with X and dt
(address error faults), as well as other reported problems:

 - Simplify grfmv_phys() to work like grfiv_phys(), and eliminate the
   second argument to both, as we don't use it anyway.
 - Handle fbbase and fboff consistently throughout.  Closes PR 3862.
 - Eliminate grfaddr() by pulling it into grfmmap(), which is the
   only place it was used, previously.
 - grfmap() now gets the physical address of the framebuffer from
   the appropriate driver, rather than try to compute it by itself.
   Be careful with aligning the base to a page address and increase
   the length of the mapped region appropriately.  Closes PR 2867.
1997-08-03 06:25:56 +00:00
scottr e083a60af2 KNF 1997-07-26 18:13:30 +00:00
scottr ef8ecc05da cli_offset should be a bus_size_t now, and cli_value is an unsigned 32-bit int. 1997-07-26 08:28:20 +00:00
scottr f65445ce80 Add support for Macintosh Display Card, using information provided
by Taras Ivanenko <ivanenko@ctpa03.mit.edu> in PR 3862.  (The PR
is still open, due to an unresolved issue regarding the fbbase
field.)
1997-07-26 08:21:15 +00:00
scottr 5825a3f29c Add option-{1,2,3} as an alternative to option-{,left,right} for mouse
button emulation.  From SUNAGAWA Keiki <kei_sun@ba2.so-net.or.jp> in
PR 3887.
1997-07-25 23:08:15 +00:00
scottr 0f06fa608f Add NETATALK, and be pedantic with a few comments. 1997-07-25 19:53:59 +00:00
scottr 35884534c1 Remove HOSTED_* targets; define and use CPP and SIZE symbols, as inspired
by cgd's recent changes for the Alpha port.
1997-07-24 05:48:51 +00:00
scottr ef7df42303 Since spltty() will not lower the spl, only raise it, we need to
use splx() to undo the effect of the splzs() in zstty_softint().
1997-07-23 07:20:01 +00:00
scottr 3518ffabce The PA of the framebuffer may not be page aligned, so make sure to
do this before comparing against the result of pmap_extract().
1997-07-23 07:17:52 +00:00
scottr c2362b1d29 Remove unused option MAPMEM, as suggested by Erik Bertelsen
<erik@erik-be.uni-c.dk> in PR 3896.  Also, revert to MRG_ADB
(for now), disable NETATALK, and remove unused drivers.
1997-07-23 06:42:40 +00:00
scottr 1a5689c4af Remove unused option MAPMEM, as suggested by Erik Bertelsen
<erik@erik-be.uni-c.dk> in PR 3896.
1997-07-23 06:36:59 +00:00
scottr ec622ce63c GC unused MMSEG definition, from Erik Bertelsen <erik@erik-be.uni-c.dk>.
Closes PR 3898.
1997-07-23 06:33:53 +00:00
scottr 257d26f174 New implementation of _splraise(): use word-length operands where possible
by implementing entirely in assembly.  This saves some 6 bytes on all MPUs,
and about 8 cycles on the 030.

Now that it's optimized, define spltty() in terms of _splraise() so that
we don't inadvertantly lower the SPL.
1997-07-23 06:24:33 +00:00
jtk d36d6d14ab use locator defines in "locators.h" to index cf_loc[] 1997-07-17 02:01:26 +00:00
scottr 3284008cff Add DrHw value for the Macintosh Display Card 1997-07-15 15:45:38 +00:00
scottr ec40091111 In nubus_print(), always print the NuBus slot number. Also, refine it so
that when no driver matches, our output is a little more consistent with
existing practice.
1997-07-15 07:43:12 +00:00
scottr 034bf6b188 Clean up some DIAGNOSTIC messages: use %x to display the slot number. 1997-07-14 23:05:35 +00:00
leo 198bd713f2 Generate assym.h dependencies when making 'depend'. 1997-07-12 22:07:36 +00:00
thorpej d9d9b2f705 Remove a comment that has not been applicable for some time. 1997-07-12 19:03:11 +00:00
perry ad1710ce1e update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson 1997-07-12 16:18:36 +00:00
scottr 7a1c9e3d1a Remove a stowaway that got in on the last commit. 1997-07-12 06:13:08 +00:00
scottr 0dd96574d4 Fix from Dave Huang <khym@bga.com> for my exception vector botch for
the '040 and '060 in initcpu().  "D'oh!"
1997-07-12 06:07:24 +00:00
scottr a628a48bba Cosmetic changes to intvid_info[] initialization 1997-07-11 06:02:26 +00:00
scottr a41c255aa0 Update for vm/lock.h -> sys/lock.h change 1997-07-10 18:00:40 +00:00
veego 1450ec3f1b Restore the define of NPTEPG. 1997-07-10 08:23:03 +00:00
is e03fce55ed addql does set condition codes, so we are not allowed to put it in between
the andl and the jeq.
Mea maxima culpa.
1997-07-04 20:52:50 +00:00
scottr 9fc7759ee2 Optimize the bus error handlers a bit; save a couple cycles by dropping
through a branch rather than taking it in the case of an MMU fault,
which also has the desirable side effect of possibly avoiding an
I-cache miss.
1997-07-04 04:49:15 +00:00
scottr d00173ae5a Add support for Portrait Video Card. From SUNAGAWA Keiki
<kei_sun@ba2.so-net.or.jp> in PR 3821.
1997-07-01 19:04:18 +00:00
scottr f2bdde942a Due to reliability problems on some models, back out the more radical of
the pc532/dev/ncr.c-inspired changes; in particular, wait for previous
transfer to complete before starting another, as we used to do.  Retain
splbio() protection and simplified sbc_pdma_in().
1997-06-30 05:24:35 +00:00
scottr ea99cc2796 Fix tyop in last; will link 040-enabled kernels now. 1997-06-29 19:54:57 +00:00
scottr 4428f246a1 Split up CPU-dependent bus error/address error handlers. Mostly from
the Amiga port, but with an extension to save the actual fault
address (in m68k_fault_addr) when we catch a bus error.
1997-06-29 19:02:07 +00:00
scottr 6eb0e7c503 Prototype DCIS(). 1997-06-29 18:56:11 +00:00
scottr 0b7e64bbfa Update for mac68k_buserr_addr -> m68k_fault_addr change. 1997-06-29 06:10:35 +00:00
scottr 7044c8fd8a Get several cleanup chores out of the way. The code is functionally
identical to the previous incarnation.

 - Update using m68k asm.h macros
 - Move initialization towards the front of the file
 - Rename mac68k_buserr_addr to m68k_fault_addr
 - Reorganize trap 15 handler, similar in structure to -- though not as
   complete as -- the hp300 version
 - Reorganize doboot() for easier integration of external cache, and
   make room for the latter (#ifdef __notyet__)
 - General garbage collection of unused code/data
1997-06-29 06:07:39 +00:00
scottr a3bfbcf80a Remove unused (#ifdef'ed) vector 0 initalizer 1997-06-29 05:52:11 +00:00
scottr be164c61ed Garbage collect bad{,b,w,l}addr() 1997-06-29 00:26:12 +00:00
scottr 494cda5d27 Use <m68k/include/asm.h>. 1997-06-28 23:35:02 +00:00
scottr b1f4ee5c2a Identify and use the Apple Twisted Pair NB card properly, from PR 3789
submitted by Denny Gentry <denny1@home.com>; investigation on the hardware
done by Bob Nestor.
1997-06-26 21:08:10 +00:00
briggs 9979fcd706 Fix from camk@telecom.ksu.edu (Kelly Campbell), via Ken Nakata, for a
problem causing SIGSEGVs under FP emulation on the 68LC040.  The size
for the type 4 exception frame was not properly defined.
1997-06-25 12:44:05 +00:00
scottr b43dd86019 Mask off page offset when building a pte for mapping the
framebuffer; from Walter Ruetten, closes PR 3147.
1997-06-19 17:00:02 +00:00
scottr 9dfb9a7f87 Add support for Mouse Systems A3 mouse. From Colin Wood. 1997-06-16 06:35:26 +00:00
scottr db9068c773 Don't call Debugger() if we don't have ddb. Fixes PR 3744. 1997-06-15 20:34:15 +00:00
scottr 36b75f2735 Update from Denny Gentry <denny1@home.com>, PR 3685:
Simplify the way transmit buffers are managed, remove assumptions about
NBPG, simplify sonic_get handling, update snioctl to be more like other
current drivers, and probably a few other changes I've now forgotten about.
1997-06-15 20:20:07 +00:00
mrg 1258c8d25b remove now obsolete "swap on..." lines. 1997-06-12 18:41:58 +00:00
mrg 552af779d2 bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:46:19 +00:00
mrg dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
kleink c41a940888 GC obsolete MDP_AST flag. 1997-06-11 08:58:09 +00:00
veego 61e0a78f37 s/mac68k_btop/m68k_btop/ 1997-06-10 20:29:10 +00:00
veego d9f8fea042 The 'Mach derived conversion macros' are now in <m68k/param.h> 1997-06-10 19:15:03 +00:00
veego 6d72d4542c s/mac68k_btop/m68k_btop/ 1997-06-10 19:13:36 +00:00
veego e4b7dd88ce s/mac68k_round_page/m68k_round_page/ s/mac68k_trunc_page/m68k_trunc_page/
s/mac68k_btop/m68k_btop/ s/mac68k_ptob/m68k_ptob/
1997-06-10 19:11:26 +00:00
veego ef9394e96d s/mac68k_trunc_page/m68k_trunc_page/ s/mac68k_btop/m68k_btop/
s/mac68k_ptob/m68k_ptob/
1997-06-10 19:09:05 +00:00
veego f4068b5345 s/mac68k_round_page/m68k_round_page/ s/mac68k_trunc_page/m68k_trunc_page/ 1997-06-10 19:03:38 +00:00
veego 0dc0a3ca5e s/mac68k_btop/m68k_btop/ 1997-06-10 19:02:33 +00:00
veego dd62be796a s/mac68k_trunc_page/m68k_trunc_page/ 1997-06-10 19:01:35 +00:00
veego 0cd13fe0b5 s/mac68k_round_page/m68k_round_page/ s/mac68k_trunc_page/m68k_trunc_page/
s/mac68k_btop/m68k_btop/
1997-06-10 19:01:00 +00:00
veego 931d90fcee Use the MI <m68k/param.h> include. 1997-06-10 07:54:35 +00:00
veego a204fb7981 Initialize machine from MACHINE. 1997-06-08 23:54:19 +00:00
scottr 4f74abe8b7 Remove redundant cpu_set_kpc() prototype, found by Paul Goyette. 1997-05-22 18:40:10 +00:00
scottr a777c246ad Adjust for previous m68k/pcb.h change 1997-05-20 03:25:07 +00:00
scottr d93126b350 Use common m68k/pcb.h; noted by Erik Bertelsen <erik@sockdev.uni-c.dk>,
closes PR 3650.
1997-05-19 17:36:45 +00:00
scottr a0d035c410 Fix some printf format inconsistencies; from SUNAGAWA Keiki
<kei_sun@ba2.so-net.or.jp>, fixes PR 3619.
1997-05-19 17:23:09 +00:00
veego a078a4be55 Fix lossage from the latest vm_pmap changes. 1997-05-19 10:14:47 +00:00
gwr a8af683eb9 Eliminate references to vmspace.vm_pmap 1997-05-13 18:00:49 +00:00
scottr fac0bcfedb Update a recently-added comment re: bytelanes values. 1997-05-13 13:22:56 +00:00
scottr 5b80f9077f Tweak sbc_drq_intr() (interrupt-driven PDMA interrupt handler); it
now works properly on at least some disks.  Further testing is
necessary.
1997-05-13 06:34:00 +00:00
scottr 3b7a1d3ab0 Convert several interrupt handlers to bus space model, removing some
XXX's.  Also, fix a bug in grfmv_intr_generic() that I found and
confirmed with Allen.
1997-05-12 20:35:50 +00:00
scottr 61322b7b85 KNF and other cosmetics. 1997-05-12 07:53:58 +00:00