Commit Graph

690 Commits

Author SHA1 Message Date
chuck 8bef431273 remove unused share map code from UVM:
- update calls to uvm_unmap_remove/uvm_unmap (mainonly boolean arg
        has been removed)
1998-10-11 23:20:59 +00:00
thorpej 29d472f53d Garbage-collect the open_target_lu and close_target_lu entry points from
struct scsipi_adapter; they were not used.

Add a scsipi_ioctl entry point to struct scsipi_adapter.  This will be
used to issue ioctl commands to the host adapters.

Inspired by PR #6090, from Matt Jacob.
1998-10-10 00:28:28 +00:00
scottr 9d1c9d8d38 Use correct devices for zs driver on AVs. From Dave Huang (PR 6107). 1998-09-10 21:40:42 +00:00
scottr 53907fe5a1 Support Cabletron Ethernet card, from John Marohn in PR 5762. 1998-08-12 07:19:09 +00:00
scottr 3e40b6ff15 A simple, obvious optimization, now that the loop has been
removed from zshard().  Pointed out by Bill Studenmund.
1998-08-12 06:55:24 +00:00
scottr 7d09ad09b4 New framework for handling processor interrupts, derived in part from
the hp300 port.

 - Interrupts 3-6 use this immediately.  Interrupt 7 is a special case,
   and the VIA interrupts (1 and 2) will be addressed when that code is
   rototilled.

 - Modify the zs front end to register with the appropriate interrupt
   controller:  through the PSC on the AV Quadras, and direct to
   interrupt 4 on the rest.  Arrange to have the appropriate zsc_softc
   supplied to us at interrupt time.

 - Modify the direct ADB driver (and its PowerManager cousin) to call
   intr_dispatch(), rather than zshard().  XXX This is a kludge, but at
   least limits the brokenness to the ADB drivers, now.

As a side effect, this should fix PR 5590.  Thanks to Bill Studenmund for
correctly determining the cause of the problem reported there.
1998-08-12 05:42:44 +00:00
scottr 63526c1ff1 New and improved console framebuffer initialization and autoconfig. This
resolves a great many issues, including Performa 58x interrupt handling
and offset displays on some models.

Programs that depend on the old (pre-NetBSD 1.1) grf interface may break.
That's actually a separate issue uncovered by this code, not caused by it.
1998-08-12 02:36:36 +00:00
briggs b3e5811a08 Patch from Takashi NAKAMURA <QZM00427@nifty.ne.jp> to support the
Contour 3-button mouse from the Contour Design Corp.
It looks like a Microspeed mouse.
1998-08-11 20:07:59 +00:00
scottr 6e47b1c654 mac68k/obio/if_mc_obio.c needs hide/integrate defines, too. Moved back to
if_mcvar.h.
1998-07-08 04:18:53 +00:00
scottr d5b30c1cb1 Revert last change. 1998-07-08 04:16:05 +00:00
jonathan 011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan fe484937cf defopt LLC 1998-07-05 03:14:41 +00:00
jonathan 8db0fcdbf7 defopt CCITT. 1998-07-05 02:12:22 +00:00
jonathan 3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
jonathan 466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
wrstuden 29f991cc2f Fixup last revision to zs.c. Keep a lot of the comment cleanup, and
keep the explicit clearing of interupts in zscnprobe.
1998-07-02 17:32:03 +00:00
wrstuden 4f500bad2e Another printf("%:"...) bites the dust (->vprintf(...)) 1998-07-02 00:47:30 +00:00
scottr f170a53f0b Add a GRF_COMPAT option so that old-style grf ioctl() code can be
removed from the kernel.
1998-07-01 14:49:07 +00:00
wrstuden 67b0c87dc3 Overkill patches to make serial console work again. Should also make
serial echo work, but not sure. Tested by Paul Goyette.

A few of these changes can probably be backed out, but I'm not sure which.
This part should work for now, and get things going again. These fixes
should also get rid of the problem of things crashing just as zstty0 gets
configured.
1998-06-30 18:13:21 +00:00
scottr da2f2cb79f Store the PA of the framebuffer in the softc. This eliminates the need
for the sc_phys callback; we can just store the PA in the grfbus attach
args, rather than a function pointer, which simplifies the code nicely.
1998-06-02 02:14:20 +00:00
scottr f2e26f6125 Handle a non-EMP Trackman the same way we handle a non-EMP Mouseman.
Patch from John Wittkoski.
1998-05-28 02:11:32 +00:00
scottr 22b90adcc2 Add the remaining kgdb pieces from sun3/hp300, with some mac68k-specific
adjustments to initialization.
1998-05-05 06:48:51 +00:00
scottr 9dfbdab6ec Move on-board I/O and NuBus drivers to their own directories
via repository copy, and make the necessary adjustments to reflect
the moved files.
1998-05-02 16:45:27 +00:00
scottr 487e3b222d Dead, unused, kaput. 1998-05-02 06:46:45 +00:00
scottr 1b01139f4f Dead, unused, kaput. 1998-05-02 06:32:39 +00:00
scottr cb160f72a3 Missed a prototype in the NuBus interrupt handler cleanup.
Fixes PRs 5365, 5367, 5368, and 5373.
1998-05-01 03:42:47 +00:00
briggs 1ab7701474 Deal with the video interrupt for the RasterOps 8/24XLi. Thanks for the
information go to Tadashi Ueda <ng6t-ued@asahi-net.or.jp>.
1998-04-26 16:47:39 +00:00
scottr aa1b4c6045 Garbage collect the second (slot number) parameter to NuBus interrupt
handlers.  (Only slot_ignore() and slot_noint() need this, and we already
have a place to put this information.)  Adjust add_nubus_intr() so that if
the client_data arg is specified as NULL, pass the slot number as
client_data to the interrupt handler.
1998-04-25 21:27:40 +00:00
scottr 8bcac06284 Checkpoint of UVM work to date. This includes a fully-functioning
MACHINE_NEW_NONCONTIG interface implementation, which is now enabled
on all systems.  Thanks to Jason Thorpe for his work on the hp300 port,
from which most of the code used here was derived.

XXX In spite of the fact that it works on the hp300, UVM does not (yet)
work well under load on mac68k.
1998-04-24 05:27:24 +00:00
briggs fc3bdd6128 Add interrupt support for two more video cards: the Formac color card II
and the Radius PrecisionColor 24Xp.  Thanks to <falk.stern@luene.net> and
<Mario_Magliocco@broder.com> for their remote sleuthing and testing.
1998-04-24 01:58:44 +00:00
scottr d87f21702e Make type explicit for egcs, from Erik Bertelsen in PR 5288. 1998-04-13 02:36:24 +00:00
mycroft 692fe3cc96 Use a 4-bit table to speed up the CRC even further, without increasing the
code size too much.
1998-03-29 23:14:14 +00:00
scottr 8e25cfb973 Better integration of Power Manager IC ADB driver into the direct ADB driver framework,
from Takashi Hamada.  Also includes a handler for unsolicited ADB
packets.
1998-03-29 03:50:30 +00:00
scottr 57191652f3 Don't map Opt-{1,2,3} to mouse buttons unless the ALTXBUTTONS option is
specified.  (Doing so breaks German keyboards!)  Fixes PR 4929.
1998-03-27 06:10:54 +00:00
scottr 5fa1b5f440 Add Performa 580/588 to the list of machines which have a Cuda chip.
XXX - we should really be using machine ID symbolic constants here, not
numbers.
1998-03-26 06:25:49 +00:00
scottr 82bda6ec9d The monitor sense code we have is not reliable on DAFB-based machines with
certain 17" monitors.  Change from Michael R. Zucca, PR 4988.

XXX - This can cause problems on system with the DAFB chip which currently
use only a NuBus-based video adapter.  In particular, grf devices may not be
attached properly in this case.  This unfortunate situation is less annoying
than not having a reasonable console, however.  A reasonable, reliable
monitor sense algorithm for the DAFB would resolve the problem.
1998-03-22 23:40:52 +00:00
scottr 15c668e600 Disable Valkyrie interrupts on the Quadra 630. Part of a change
from Michael R. Zucca, PR 4988.
1998-03-22 23:13:52 +00:00
scottr 20a21d162e Sync mc_rint() prototype with if_mcvar.h. (How did this
one slip by?  Forty lashes for me...)
1998-03-09 23:05:28 +00:00
scottr c1a185be97 Mostly KNF. There's still a bunch of ugly comments and some problems
with long lines, but this is at least a big step in the right direction.
1998-02-23 03:11:26 +00:00
scottr e50238f77a Rewritten II-series ADB code from John Wittkoski. Also, a whole
lotta KNF.
1998-02-23 03:09:40 +00:00
scottr 81d2791bd9 Unify ADB options and place them all into opt_adb.h. Provide a knob to
enable ADB debugging messages if ADB_DEBUG is configured.
1998-02-21 00:37:07 +00:00
scottr 0ca6188f89 Fix for ADB hang while probing, based on information from Colin Wood:
Rather than waiting indefinitely for a mouse or extended keyboard to
respond -- which may not even exist -- time out after 2 seconds and
continue.  This corrects a very common problem with the MRG-based ADB
driver that has bitten many people running 1.3.
1998-02-20 18:14:10 +00:00
scottr 8df1b7a0f8 Now, correct the problem the correct way: s/cfattach/cfdriver/ 1998-01-17 17:32:07 +00:00
scottr 696871f9e3 Back out previous change. 1998-01-17 17:28:35 +00:00
scottr 5f3c1d48e0 We haven't needed a driver-specific minphys() for quite some time now. 1998-01-17 09:27:03 +00:00
scottr 4c69a8b2ea Update for bus.h changes. 1998-01-13 19:15:32 +00:00
scottr 3b7ef50f8e Missed a change for the updated config(8). 1998-01-12 23:56:26 +00:00
thorpej 36760d9d94 Update for changes to config. 1998-01-12 18:59:04 +00:00
scottr 867cdfc734 Another update from John: if we're polling, e.g. in ddb, pass the
keystroke to the upper half directly.
1998-01-09 06:59:29 +00:00
scottr 4567c69fea Update from John Wittkoski: the Color Classic and Color Classic II
have Cuda hardware, not IIsi-based.
1998-01-07 07:33:36 +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 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
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
scottr 4be1bd1115 Correct a comment from previous commit. 1997-12-01 06:07:33 +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 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 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
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
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
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 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 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
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
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 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
scottr a7515413d8 Remove advertising clause. 1997-10-10 05:54:48 +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
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 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
scottr 83bd421ad4 Set up base address of ASC for IIfx, per GtMFH. 1997-09-16 16:28:07 +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
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
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 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 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 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 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
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
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 0b7e64bbfa Update for mac68k_buserr_addr -> m68k_fault_addr change. 1997-06-29 06:10:35 +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
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
veego 61e0a78f37 s/mac68k_btop/m68k_btop/ 1997-06-10 20:29:10 +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
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
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
scottr ee80f1200e Implement new NuBus slot space mapping/probing code, utilizing bus.h (and
our MD bus_space_probe() extension).  This has several side effects:

 - NuBus drivers must map and unmap slot space, rather than relying
   on this happening before they are attached.
 - Functions exported to NuBus drivers from nubus.c now need to be
   supplied with a bus space tag/handle pair.
 - Old bus map/peek functions can be garbage collected, as can pmap
   support for the same.

Because of some current limitations of the bus space specification, we
are violating the abstraction in grf_mv (NuBus grf driver).  All such
violations are clearly marked /* XXX */, and must be addressed when
the specification is updated.
1997-05-11 19:11:27 +00:00
briggs 5230506ca5 Support for clearing interrupts on a Rasterops Colorboard 364.
Thanks go to Michel Chalufour <michelc@tiac.net> for grovelling around for
me.
1997-05-03 02:29:54 +00:00
briggs 1b2e317732 Thanks to Tobias Beal <tbeal41@maine.maine.edu>, we can clear interrupts
on at least one Radius Precisioncolor 8 board.
1997-05-02 00:54:28 +00:00
briggs aba671db48 Treat drhw 118 and 119 the same for Apple ethernet cards. 1997-05-01 18:17:13 +00:00
briggs a64bc3c19c Clear the interrupts properly on an E-Machines Futura II LX and make a wild
guess at clearing them on a Futura II SX/DSP and RasterOps ColorBoard 364.
Thanks to Michel Chalufour <michelc@tiac.net> for loaning me the II LX.
1997-05-01 03:34:07 +00:00
briggs ef185efb22 Add in a couple more board types. 1997-05-01 03:31:07 +00:00
scottr 19f1b8dd3f Remove dependency on if_aereg.h for vendor constants; these are really
driver-, not architecture-specific.
1997-04-30 19:47:11 +00:00
scottr b28e1b9459 Fix typo in last change. 1997-04-30 19:32:32 +00:00
scottr 4a36cdfd19 Adjust to use16bit -> dcr_reg change in MI driver. 1997-04-30 18:10:37 +00:00
scottr 63ac9ee6e0 Use the new MI 8390 driver, and garbage collect. 1997-04-29 04:40:22 +00:00
scottr c69d32662f From Mycroft: Oops; forgot to GC the last mbuf allocated when
out of clusters.
1997-04-28 20:31:16 +00:00
scottr 70dcf0b5f6 Undo a hack added in the last overhaul (which caused an extraneous byte
to be written to the target).  Also, use the sc_min_dma_len field
to determine whether to use PDMA or PIO.
1997-04-28 15:59:20 +00:00
briggs d25f63a7bf What was I thinking? 1997-04-27 19:26:48 +00:00
briggs e861dbf8c7 A couple of performance improvements from Denny Gentry <denny1@home.com> 1997-04-25 03:40:09 +00:00
scottr 72111ae284 From Mycroft: If we fail to allocate a cluster to hold a large packet,
simply drop it rather than using a chain of tiny mbufs.
1997-04-24 16:52:05 +00:00
briggs ed74d8f653 On video devices, if we're loading non-default resource values, save the
resource ID.  Thanks to Paul Goyette <paul@pgoyette.bdt.com> for spotting
this one.
1997-04-23 13:37:43 +00:00
scottr 9784a8d3cf space vs. tab formatting, KNF 1997-04-22 21:00:04 +00:00
scottr b09a74e8b9 If we can't map SONIC register space, just print a diagnostic message and
continue.  Make formatting consistent and KNF while here.
1997-04-22 20:56:15 +00:00
scottr a653364eb1 Remove obsolete drsw diagnostic; make formatting consistent; KNF. 1997-04-22 20:32:08 +00:00
scottr 65673e5ec2 Make formatting consistent; inline -> __inline__; KNF. 1997-04-22 20:26:24 +00:00
scottr 2111f73a90 Remove obsolete drsw diagnostic 1997-04-22 20:21:59 +00:00
scottr e733e600d3 #ifdef DIAGNOSTIC, print the NuBus type fields for unrecognized boards. 1997-04-22 20:20:32 +00:00
briggs d13ebf0e72 Make sure that we unmap the space that we mapped if we can't identify the card. 1997-04-22 13:45:38 +00:00
briggs d2a4acec48 Initialize 'offset' to make gcc happy. 1997-04-22 03:04:33 +00:00
scottr 43f35682d8 April 18 update from John Wittkoski, w/space vs. tab KNFing by me. 1997-04-21 18:04:28 +00:00
briggs fc43576e8d Take care when accessing DAFB--some quadra-class machines use other video
controllers.
1997-04-21 00:57:59 +00:00
scottr 7e00ee54d8 Fix itematch() for case where fboff is not zero. From Dave Huang,
closes PR #3501.
1997-04-20 20:31:18 +00:00
scottr 19c5134870 For small writes, use PIO rather than PDMA; this increases the reliability
of the driver (considerably, on some systems/targets).
1997-04-18 17:38:08 +00:00
briggs bbc4732fd1 Fix from Denny Gentry--initialize receive seq. counter. 1997-04-18 12:04:37 +00:00
scottr 11b0f01c17 Make sure to call adbop() on Power Manager-based machines. Noted by
Takashi Hamada, who also provided the code I based this modifcation
on.
1997-04-18 05:53:41 +00:00
briggs 16865d719a Take a stab at making this more reliable. 1997-04-15 03:22:50 +00:00
scottr aae8cccb0f Use the new opt_mrg_adb.h header. 1997-04-14 16:56:26 +00:00
scottr 7793be9949 Purely cosmetic cleanup:
- Remove unused `register' modifier on declarations
  - Reverse the sense of some tests to make the code more clear
  - Type casts per KNF
  - Move a static variable into the only function that uses it (perhaps
    we can eliminate it entirely, someday?)
1997-04-14 16:28:34 +00:00
briggs 90754f0770 Capslock support from Steve Brown <sbrown@best.com> 1997-04-14 01:02:47 +00:00
briggs 13175a1a16 Use an offset parameter when loading the reg_map--some cards use the "other"
16 bits of the words.
1997-04-14 00:44:01 +00:00
briggs 6d338ace93 Oops. We do not want to unmap something that we've used bus_space_subregion
to get.
1997-04-13 16:42:34 +00:00
briggs 4a3016b6b6 Some updates based on information from Bob Nestor <rnestor@metronet.com>
about his SONIC-T LC/PDS card.
1997-04-13 14:21:09 +00:00
briggs 306e81deb2 Ignore SE/30 faux-video card. 1997-04-10 20:34:23 +00:00
briggs 0350ba7412 Some patches from Bob Nestor <rnestor@metronet.com> and myself to edge
toward support for an Apple SONIC-based ethernet card.  Some cards, like
his, were being missed and/or probed like video cards!
1997-04-10 03:28:54 +00:00
briggs b38a17b793 Comment video cards and add define for SuperMac Thunder/24. 1997-04-10 03:25:02 +00:00
briggs 6287b4096d Changes from Denny Gentry <denny1@home.com>:
Change in the way receive buffer areas are handled.  Before we gave
the chip 16 buffers, each 1536 bytes (big enough for one packet).
Now we're handing the chip 8 buffers, each 4 Kbytes, and letting
the chip fit as many packets as it can in each one.  This should
help keep it from running out of buffer space.  Also make some of
the performance-crucial routines inline.  It made no measurable
difference except to make me feel better

Changes from Bob Nestor <rnestor@metronet.com> to get closer to support
for his Apple SONIC-based nubus card.

Changes from me to try to get SONIC's MAC address from MacOS settings if
we can't read the PROM space.
1997-04-10 03:22:45 +00:00
briggs 574874a2a9 Changes from Bob Nestor to come closer to supporting his Apple SONIC-based
nubus card.
1997-04-10 03:19:46 +00:00
scottr 58d41d0f98 Fix several more instances where the volatile modifier was needed.
From Allen.
1997-04-08 06:53:28 +00:00
briggs df0a7e0440 Changes from Michael R. Zucca <mrz5149@cs.rit.edu> for 16-bit and 32-bit
console support.
1997-04-08 04:47:08 +00:00
scottr 4d9095b0b0 Updates from John Wittkoski for new ADB driver. 1997-04-08 03:19:04 +00:00
scottr 76c66a06b3 Direct-to-hardware ADB interface/driver, written by John P. Wittkoski. 1997-04-08 03:16:18 +00:00
scottr 484820c623 Power Manager interface/driver, written by Takashi Hamada. 1997-04-08 03:11:37 +00:00
scottr f65f7e9b21 Always enable SCSI IRQ interrupt; the SBC_INTR flag now controls only
the SCSI DRQ interrupt, for "blind" transfers.
1997-04-07 05:56:28 +00:00
scottr 29c981b924 Rework PDMA read/write functions based on Matthias Pfaller's pc532 ncr
driver.  Major highlights:

 - Protect with splbio(), now that interrupts from the chip might be
   enabled by default;
 - Wait for current transfer to complete before returning, rather than
   wait for previous transfer to complete before starting another;
 - Instead of logging a "timeout" message when a target disconnects,
   just return, letting the sbc_ready() and sbc_wait_not_req() print
   timeout messages if such really did occur.

With interrupt changes to sbc_obio.c, disconnect/reselect now works if
configured into the kernel.
1997-04-07 05:48:35 +00:00
briggs 28af7de8a4 Do not set DCR_SYNC for the C/Q[68]xx systems.
Thanks to Steve Brown <sbrown@best.com> for working with me to find this.
1997-04-04 14:54:44 +00:00
briggs ca0531b7f4 Add DrHW for RasterOps CB264--From Scott Reynolds--and link it in to the
proper interrupt routine.
1997-04-01 13:31:38 +00:00
briggs 71bf5ccd79 Remove tag. 1997-04-01 13:31:03 +00:00
briggs a3d5b32614 - Support DAFB machines mo' better. Actually detect if a monitor is
present and initialize a few things.  No color support, yet.
  - Properly disable interrupts for DAFB.
  - Rearrange for better nubus display card interrupt support.  Only register
    an interrupt if we know how to clear it.
  - Complain if we don't know about a given display card and can not install
    an interrupt handler.
  - Change MYSTERY stuff to cb264--still need to get the DrSW so we can
    actually call the routine to clear an interrupt from this card.
1997-04-01 05:41:59 +00:00
briggs 2606fe6cbd Some new SONIC code from Denny Gentry <denny1@home.com> with a couple of
tweaks and bug fixes by yours truly.

Here's what Denny had to say:

nubus.h:
        - add a drsw entry for my card
	[ I also added a couple of constants for more display cards ]
if_sn.c:
        - allocate sc->space using malloc (Scott wanted this).
        - make csr accesses use NIC_PUT/GET, remove sc->sc_csr.
        - add multicast and IFF_PROMISC support. multicast isn't
                well tested, but I made sure the unicast case still
                works.
        - finish the new arp interface, remove sc->sc_enaddr
if_snreg.h:
        - remove struct sonic_reg
if_snvar.h:
        - add NIC_PUT and NIC_GET macros a la if_ae
        - remove sc_txhead, it isn't used.
if_sn_nubus.c:
        - clean up support for my SE/30 card.
        - Move add_nubus_intr from if_sn.c (to keep if_sn.c MI)
if_sn_obio.c:
        - make Q610, C610, Q650, C650, Q800 use EXBUS.
        - PB500 had a "return" where "break" was intended. PB500
                probably wasn't working.
        - move add_nubus_intr from if_sn.c.
        - add an "explanation" why Apple's ethernet addr is encoded
                in token ring format in the PROM.
1997-03-30 19:51:44 +00:00
briggs e15f7fac43 Fix bug that would have prevented PB5xx series from detecting the SONIC.
Bug noticed by Denny Gentry.
1997-03-29 02:34:40 +00:00
scottr 1c9987dab4 Several minor changes:
- Indent some comments appropriately per KNF.
 - Output all diagnostics using the device name rather than a static string.
 - Fix a (mostly marmless) bug in snintr(), where loss of heartbeat wasn't
   properly ignored and could mask the `receive descriptors exhausted'
   diagnostic.
1997-03-20 17:47:51 +00:00
scottr 1c0a3c8ce7 Several more changes to move us toward MI-ness:
- Use more consistent and portable types in the softc.
 - Map registers using an array of bus_size_t offsets, and set up the
   mapping in the attach code (thanks to Jason Thorpe for suggesting
   this!).
 - Disable the ae-specific watchdog, which is no longer necessary in
   the general case.

Still remaining:  split out functions used to copy data to/from the
card, and retain a way to have a local driver name with the MI code.
1997-03-19 08:04:38 +00:00
briggs 79c7b2b3f4 Help this compile and get the nubus address into myaddr instead of
sc->sc_arpcom.ac_enaddr.
1997-03-18 00:34:31 +00:00
scottr 52348e9646 Some cards we identify as InterLAN cards do not seem to have the MAC
address in the configuration ROM.  For these, fall back to the old method
if we can't find the expected sResource record.
1997-03-17 20:26:01 +00:00
scottr 3c9709606d Clean up some missed pieces of the new ARP conversion. 1997-03-17 18:37:17 +00:00
briggs b315c448dc Flip around Takeshi Yanagisawa's name. Add back a physaccess() call that I was a bit hasty
in removing.
1997-03-17 13:11:24 +00:00
briggs 559613a9a7 *Blush* It's Denton, not Dennis, Gentry. 1997-03-17 12:26:52 +00:00
briggs e716e490a1 Make this compile again. XXX - save ethernet address in softc until multicast is supported. 1997-03-17 04:57:56 +00:00
briggs c20d7dc997 Integrate a couple of changes suggested by Scott Reynolds and Takeshi Yanagisawa. 1997-03-17 04:38:28 +00:00
is 530a88d144 On request from Allen Briggs, converted this to new ARP
system. Somebody should actually test if this compiles (and works) on
Mac68k... I only carefully checked cvs diff -u.
1997-03-16 13:41:14 +00:00
briggs 4b6b2bb9f8 SONIC driver--originally from pica. Much work done by Dennis Gentry and
Takeshi Yanagisawa to get it working.  Some minor hacking by me here and
there.
1997-03-15 20:26:35 +00:00
scottr 702735759b Defer enabling NuBus slot interrupts until all slots have been probed
and drivers attached.  This removes the need for the MAC68K_BROKEN_VIDEO
option.  From Allen Briggs.
1997-03-15 18:33:44 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
scottr 12098dae8a Add missing call to ae_nb_get_enaddr(), from <kei_sun@ba2.so-net.or.jp>.
Fixes PR 3312.
1997-03-10 17:55:15 +00:00
briggs a2173962b8 Copyright foo. 1997-03-05 15:19:18 +00:00