Commit Graph

107 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
scottr
fac0bcfedb Update a recently-added comment re: bytelanes values. 1997-05-13 13:22:56 +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
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
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
a653364eb1 Remove obsolete drsw diagnostic; make formatting consistent; KNF. 1997-04-22 20:32:08 +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
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
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
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
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
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
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