Commit Graph

1886 Commits

Author SHA1 Message Date
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
scottr bfc4c6c42d Whoops; here's the rest of the Deferred Task Manager changes. 1997-05-12 07:53:04 +00:00
scottr 5842491f1c Add en implementation of the Deferred Task Manager, contributed by Paul
Goyette <paul@pgoyette.bdt.com>.
1997-05-12 07:29:29 +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
scottr 94e0a9b88d Update to current configurations. 1997-05-08 04:09:27 +00:00
lukem c4eb220ea5 minor whitespaco fixes 1997-05-07 00:32:44 +00:00
lukem 5352e2713a be consistent with use of spaces and tabs. 1997-05-06 00:31:49 +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 0852aa1f1a Use the new 8390 driver back end. 1997-04-29 05:17:13 +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
thorpej 6a00a9aa75 Adjust for <m68k/m68k/trap_subr.s> 1997-04-25 01:35:45 +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
scottr c1c244e0a3 Implement new crash dump format. Mostly taken from hp300, extended to
support multiple physical RAM segments by me.  Garbage collect functions
obsoleted by this change.
1997-04-23 19:15:16 +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
scottr e938a61ba3 Organize cpu_reboot() like hp300; this allows us to behave less
surprisingly if the power off sequence doesn't work as expected,
and simplifies the code a little.  Fix the doboot() prototype
to quash a warning from gcc.
1997-04-16 07:16:49 +00:00
scottr ac4989250c Use opt_mrg_adb.h header (missed in previous commit) 1997-04-15 07:02:50 +00:00
scottr 00631be59a Use genassym.sh to facilitate cross-compiling. 1997-04-15 06:11:38 +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 4cd7e839d7 Direct config to create an MRG_ADB option header. 1997-04-14 16:55:02 +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
scottr 4ed2d4414f Add copyright notice. 1997-04-14 06:25:32 +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
scottr 4765dedbf5 Move all splxxx() and softint-related macros and prototypes to intr.h,
and include it where appropriate.
1997-04-13 05:12:40 +00:00
thorpej 2da8464bdf - Use common mac68k sigcode.
- Garbage-collect icode; hasn't been used in eons.
1997-04-13 02:43:51 +00:00
scottr 319087fd92 Use common m68k sig_machdep.c, removing our local copies of these. 1997-04-11 00:58:23 +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
thorpej 05b9a6baa5 regdump() takes a struct trapframe * 1997-04-09 20:20:46 +00:00
thorpej eb1dd7d391 Garbage-collect regdump() and friends. 1997-04-09 20:19:08 +00:00
thorpej db6a46bc6e Use <m68k/m68k/proc_subr.s> 1997-04-09 20:17:24 +00:00
thorpej 2550431af9 regdump() is prototyped in m68k/cpu.h now 1997-04-09 20:12:44 +00:00
thorpej b7f72bd8a9 Remove redundant file directives. 1997-04-09 20:11:33 +00:00
scottr a2a2afbe56 Sigh. Bracket a label used only #ifdef COMPAT_SUNOS. 1997-04-09 07:22:12 +00:00
scottr 63d0d33c86 Make C-\\ work; from Bill Studenmund, who noticed the swapped keycodes.
Closes PR #3294.
1997-04-09 04:48:57 +00:00
scottr 58d41d0f98 Fix several more instances where the volatile modifier was needed.
From Allen.
1997-04-08 06:53:28 +00:00
scottr a051dc4e0f Fix typo: MRG_DEBUG -> MRG_ADB 1997-04-08 06:16:07 +00:00
scottr 042e6d3b98 Add 'done' symbol for last change. (oops.) 1997-04-08 06:02:04 +00:00
scottr bd9967862f Clean up unused code, KNF bus_probe() 1997-04-08 05:27: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 f1c1f7e54d Make new ADB driver the default. 1997-04-08 04:21:15 +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 bf23759b27 Add MRG_ADB option. 1997-04-08 03:00:37 +00:00
scottr b6a4a3826c Update for current configuration, including sbc reselect mode. 1997-04-08 02:59:16 +00:00
scottr 396cf17033 Fix SunOS user trace trap handling, from Gordon. 1997-04-07 22:54:44 +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 99d2687e23 Mask off 'internal slot' in check to see if we should enable nubus intrs. 1997-04-04 15:33:30 +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
christos 6c015f3a49 Add netatalk netisr 1997-04-03 15:59:54 +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
thorpej cb24b0200a Don't allocate mclrefcnt[]; it's dead and gone. 1997-03-27 21:01:20 +00:00
gwr 37b247edde Renames: /dumpconf/cpu_dumpconf/, /boot/cpu_reboot/ 1997-03-26 22:42:13 +00:00
gwr 71e43d14ab Move findroot/setroot stuff from configure() to cpu_rootconf(). 1997-03-26 22:38:40 +00:00
scottr 9614615f6f Add se driver 1997-03-24 18:28:40 +00:00
scottr 5fd56d4f40 Add se, and make some comsmetic changes for easier maintenance. 1997-03-24 18:20:10 +00:00
scottr f3f27175b6 Clean up after arp conversion; from Erik Bertelsen, closes PR 3372. 1997-03-21 21:42:39 +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
gwr 08f7a407f9 Separate bcopy and copypage stuff from copy.s 1997-03-17 19:46:36 +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
thorpej b6f3695cd1 Use <m68k/m68k/support.s> 1997-03-16 11:04:52 +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
briggs 6f71d88157 Specify SONIC for 040 powerbooks and for CLASSQ and CLASSQ2 machines. 1997-03-15 20:17:40 +00:00
briggs 6fc69ce7cb Add SONIC driver. Works on my Q700. Untested elsewhere. 1997-03-15 20:07:37 +00:00
scottr cc391b64de Remove obsolete MAC68K_BROKEN_VIDEO option. 1997-03-15 18:35:47 +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
briggs 3d16e320d6 Move physaccess/physunaccess prototypes. 1997-03-15 05:39:45 +00:00
mycroft f868dff8d3 Define the `cleankernel' target consistently with other ports. 1997-03-14 23:27:29 +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 47392571c5 Undo some damage that CVS somehow let me get away with. 1997-03-06 02:14:51 +00:00
briggs a2173962b8 Copyright foo. 1997-03-05 15:19:18 +00:00
scottr fd81cf2b92 Correct offsets in the memory size probe; bus_space uses byte offsets. Fix suggested by
Ken Nakata.
1997-03-04 15:12:04 +00:00
scottr 956ec2a47c The previous optimization of the interrupt handlers was a bit too
agressive.  Being a little more conservative pays the biggest dividend.
1997-03-04 04:11:52 +00:00
scottr f749003301 Fix part of last change: don't mask off the high bit of the VIA IER until
the interrupt has been unflagged.  Problem noticed by Paul Goyette.
1997-03-03 04:19:06 +00:00
scottr 93d8b2c8b0 Add the MAC68K_BROKEN_VIDEO option, which is a hack that delays enabling
NuBus interrupts until an Ethernet card is attached.
XXX  This should go away at some point, obviously.
1997-03-02 06:43:00 +00:00
scottr 152b0ab7d2 Adapt to sbc driver/attachment split 1997-03-01 20:22:16 +00:00
scottr 421abedbfe Split bus-dependent autoconfig code from the driver. This allows for
the future addition of a Duo Dock front end.
1997-03-01 20:18:58 +00:00
scottr df7f40213a Allow A1 to be used for passing arguments to ROM routines. Also, clean up
debugging printf() formats.  From Allen Briggs and Paul Goyette.
1997-03-01 17:20:34 +00:00
scottr a4b0e4c070 Protect MCLSHIFT definition so users can customize MCLBYTES, from Jonathan. 1997-03-01 06:57:45 +00:00
scottr 42be6ebfa7 Fix prototype for espmatch() 1997-03-01 06:38:36 +00:00
scottr 215c0b896a Convert to generalized VIA interrupt registration 1997-02-28 15:50:50 +00:00
scottr 705c637874 Define aesetup() to return an int, so that the attach function can
determine whether there was an error (if so, we unmap the slot space
for this device).  Use this functionality to tell the attach function
that we couldn't clear the card's buffer.

Also in aesetup(), eliminate the bogus repetition of the error message
we print when the buffer clear actually fails.  Noticed by Hauke Fath.
1997-02-28 08:56:05 +00:00
scottr 0b3eb5f3f2 Remove duplicate <machine/bus.h> include that crept in. 1997-02-28 07:54:02 +00:00
scottr 17fdd597df Move the NuBus-specific watchdog function from if_ae.c to if_ae_nubus.c,
and allow the attach function to override the default watchdog.  Also,
do some minor cosmetic surgery (rename bus space tags/handles and some
KNFing I missed the first time around).
1997-02-28 07:52:44 +00:00
scottr 359101fb43 Convert to generalized VIA interrupt registration 1997-02-28 07:46:59 +00:00
scottr 8f37a2983b Generalize VIA1 and VIA2 interrupt registration a bit, and do a slight
optimization on the VIA interrupt handlers.
1997-02-28 07:41:41 +00:00
briggs 5933eeaaed Add ncr53c9x flag to esp. 1997-02-27 14:07:59 +00:00
briggs 868344972a mac68k-specific portion of m.i. ncr53c9x driver. 1997-02-27 14:06:25 +00:00
gwr 2de163471e Minimal changes to adapt to removal of NCR5380_PERMIT_RESELECT.
This driver should be updated to allow per-target control over
disconnect/reselect, but I will leave that to the port masters.
1997-02-26 22:29:08 +00:00
scottr a2a40938b1 Move bus-independent setup code back into if_ae.c; enable the use of
configuration flags.  For NuBus cards, attempt to find the MAC address
in the declaration ROM resources.
1997-02-25 06:36:04 +00:00
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
scottr f03ee128a3 Add support for the Kinetics EtherPort SE/30, from Ken Nakata. 1997-02-24 07:34:18 +00:00
scottr 965cffaf20 NUBUS_SLOT_TO_PADDR -> NUBUS_SLOT2PA 1997-02-24 06:20:04 +00:00
scottr 155eb6369a Update to reflect ae driver/attachment code split 1997-02-24 06:05:20 +00:00
scottr 6b0774a865 Split out the NuBus attachment code, and convert to bus.h 1997-02-24 06:03:55 +00:00
scottr 5e77023e13 The bus space tag really isn't used; stop the compiler from complaining. 1997-02-24 05:55:14 +00:00
scottr 9c91a181d6 Update copyright and license. 1997-02-24 05:47:33 +00:00
scottr 7524900a0f Remove niggles that made it into the copyright, and correct the
license terms (added Jason Thorpe).
1997-02-22 04:56:17 +00:00
scottr db2ab09cf2 Add bus.h, in light of recent nubus_attach_args changes 1997-02-22 02:17:40 +00:00
scottr ec6725f267 Make this compile again; missed this file when fixing nubus.h errors. 1997-02-22 00:00:34 +00:00
scottr 5c8de7766a Implement bus_space_set_multi_N(), bus_space_set_region_N(), and
bus_space_copy_N().  Bus space support is now complete.
1997-02-20 05:53:00 +00:00
scottr b1e5912330 We need bus.h now, due to recent nubus_attach_args change. 1997-02-20 00:23:25 +00:00
scottr c079123e89 Add a bus space tag field to nubus_attach_args 1997-02-19 06:21:49 +00:00
scottr 25c49f276f Revive in simplified form; include GENERIC and enable md_root hooks. 1997-02-14 06:27:20 +00:00
scottr 150538df02 Add memory disk pseudo-device 1997-02-14 06:23:14 +00:00
scottr 0b91c7f0cb Use MAKEBOOTDEV macro to construct bootdev 1997-02-14 06:15:30 +00:00
scottr 662401449a Remove incorrect comment re: bootdev 1997-02-14 06:13:50 +00:00
scottr 967e257614 Implement bus_space_alloc() and bus_space_free(), borrowed from i386. 1997-02-14 06:10:53 +00:00
scottr 6066941306 Add prototypes for bus_space_alloc() and bus_space_free() 1997-02-14 06:02:57 +00:00
scottr f6f4cf1d40 Remove redundant info from bus_space_map() diagnostic in ascattach() 1997-02-13 19:55:48 +00:00
scottr 0f53b79607 #include <sys/systm.h> to bring in printf() prototype 1997-02-13 19:42:42 +00:00
scottr 603a2bd8f4 Add hsk and drq locators, which will be used only by SCSI devices. 1997-02-13 19:01:07 +00:00
scottr ed573bfb7c Split the obio interface into two forms: optional address only for most
devices (obio_norm) or optional address, HSK, and DMA for 5380-based SCSI
controllers (obio_scsi5380).  Update all obio-attached drivers
appropriately.

Also, attach fpu to mainbus, rather than obio.
1997-02-13 18:59:06 +00:00
scottr 570e1f1eb2 Attach the fpu to mainbus, not obio 1997-02-13 17:29:43 +00:00
scottr 7e1c9811f9 Move asc0 here from std.mac68k. Remove COMPAT_SUNOS, as it's dead weight
on this machine.  Add some minimal driver descriptions.
1997-02-12 04:47:05 +00:00
scottr 362d7e5473 Move asc0 here from std.mac68k. Add some minimal driver descriptions. 1997-02-12 04:31:35 +00:00
scottr 8807428ab4 Move asc0 here from std.mac68k, and enable PFIL_HOOKS option so that
the if_ipl LKM can be loaded.  Add some minimal driver descriptions.
1997-02-12 04:29:10 +00:00
scottr cdcbc525e6 Move asc to individual kernel config files 1997-02-12 04:26:05 +00:00
scottr f5ac9d5deb Add a bus space tag field to obio_attach args, initialize it in
obio_search(), and use it in the ASC driver.  Thanks to Jason for
pointing this out.  Minor KNFing while I'm here.
1997-02-11 22:44:25 +00:00
scottr f9e4592ed5 Add an addr locator to obio. 1997-02-11 21:25:07 +00:00
scottr 78098d98dc Remove dependency on asc driver, using generic console bell callback
instead.  Bell parameters are now entirely self-contained, as they
are managed by ite-specific ioctl()'s.
1997-02-11 07:51:18 +00:00
scottr 77e960bf17 Complete revamp of Apple Sound Chip support. The ASC can now be accessed
as a real device whose registers and buffers are available through mmap(2),
which makes further development of the driver considerably less painful.
1997-02-11 07:47:36 +00:00
scottr 2a2a70d39c Initialize and use extent manager for bus space mapping functions.
Tweak bus_space_{tag,handle}_t types slightly to facilitate this.
1997-02-11 07:37:41 +00:00
scottr 154aa56b01 Add asc character device; kill cdev_grf_init() macro. 1997-02-11 07:35:49 +00:00
scottr 876ad8d706 Console bell callback support prototypes 1997-02-10 22:13:40 +00:00
scottr e0be798a98 Add needs-flag to asc driver 1997-02-10 22:11:27 +00:00
scottr c1370f4435 Add console bell callback support 1997-02-10 22:06:20 +00:00
perry 19d153fc48 Nuke some options GENERIC residue. 1997-02-04 04:57:10 +00:00
perry 0b3a46d6b3 Nuke some GENERIC residue. 1997-02-04 04:31:55 +00:00
scottr d8deae5099 Convert to bus.h; this removes the need for the ASCBase global. 1997-02-03 17:36:00 +00:00
scottr f042e543c9 Implement basic bus space access macros/functions.
Note:  we currently do not use the extent manager.
1997-02-03 17:32:54 +00:00
scottr df2df037ca copypage() is now declared in m68k/cpu.h 1997-02-02 21:33:30 +00:00
scottr ea6b85a8db copypage() is now declared in m68k/cpu.h 1997-02-02 18:19:55 +00:00
thorpej 07ded04c6f Use zeropage() in pmap_zero_page() 1997-02-02 08:20:38 +00:00
thorpej 6bab515bce zeropage -> devzeropage, and make it static. 1997-02-02 08:18:58 +00:00
thorpej 2282bab9ea Garbage-collect extra copypage() 1997-02-02 08:17:46 +00:00
scottr 37fbc156dc Now that we can compile without warnings, enable -Werror 1997-02-01 21:55:23 +00:00
thorpej bb1cdc5027 Yet Another NFSCLIENT -> NFS. (I must be getting tired.) 1997-01-31 06:13:42 +00:00
thorpej 87e3085155 Adopt for new file system and root spec grammar. 1997-01-31 06:02:19 +00:00
thorpej 739f23a219 This file is obsolete; this information is now generated by config(8). 1997-01-31 05:12:49 +00:00
thorpej 5f46d3130a Use new machine-independent setroot(). 1997-01-31 01:51:17 +00:00
scottr b19a7547d4 Forgot PFIL_HOOKS; correct this. Also, organize options less insanely. 1997-01-26 18:41:19 +00:00
scottr db2c833016 Add LKM, ipfilter 1997-01-25 22:44:08 +00:00
scottr 818ebb4e22 Add `options LKM' 1997-01-25 22:41:40 +00:00
scottr 017d77a9f9 `::\' => `:\' ; per recent sys/lib/*/Makefile.inc changes. 1997-01-25 22:39:32 +00:00
thorpej 7b40f5228e "md" is declared in sys/conf/files, now. 1997-01-21 09:39:20 +00:00
scottr d19b3500e3 Define single-instruction implementations of setsoft*() and siroff(),
and declare ssir as volatile.  This avoids the problem of lost softints
should a hard interrupt cause a softint to be flagged while we are
clearing a different one.

Idea from atari mtpr.h, modified/optimized by me.
1997-01-20 05:08:00 +00:00
scottr b8b7d0ba0c Kill uninitialized variable warning in trap(), plus mir KNFing 1997-01-20 04:30:05 +00:00
scottr 7c87e4e501 #ifdef out write hack, and fix possible uninitialized variable. 1997-01-20 04:27:49 +00:00
scottr 1c4a180f28 Compile with -O2 now. 1997-01-20 00:31:42 +00:00
scottr 82f443d641 Minor formatting cleanup, and remove an old comment 1997-01-20 00:30:56 +00:00
perry b89a3425b7 Eliminate obsolete TIMEZONE and DST options.
Eliminate obsolete global kernel variable "struct timezone tz"
Add RTC_OFFSET option
Add global kernel variable rtc_offset, which is initialized by
RTC_OFFSET at kernel compile time.
on i386, x68k, mac68k, pc532 and arm32, RTC_OFFSET indicates how many
minutes west (east) of GMT the hardware RTC runs. Defaults to 0.
Places where tz variable was used to indicate this in the past have
been replaced with rtc_offset.
Add sysctl interface to rtc_offset.
Kill obsolete DST_* macros in sys/time.h
gettimeofday now always returns zeroed timezone if zone is requested.
settimeofday now ignores and logs attempts to set non-existant kernel
timezone.
1997-01-15 01:28:28 +00:00
scottr 4ee6502e8b Whoops, forgot to include ipfilter.h 1997-01-13 23:46:11 +00:00
scottr d186ff0991 Add ipfilter (pseudo-) device. 1997-01-13 23:34:04 +00:00
scottr 121971f622 Compile with -O2 (need to update COPTS so we still get -m68030) 1997-01-13 07:08:51 +00:00
scottr 9792072925 Compile kernels with -O2 1997-01-13 07:06:51 +00:00
scottr e14ea342e3 Some changes to make ADB work when compiled with -O2:
- extdms_done is modified by things outside of our direct control;
    it needs to be declared `volatile'
  - CountADBs() fails when we call it the second time.  We can work
    around this by telling extdms_init() how many ADB devices we have,
    only calling CountADBs() once.
1997-01-13 07:01:23 +00:00
mikel aed485cdf2 add 'pseudo-device ccd' where necessary; PR kern/1830. 1997-01-11 09:11:37 +00:00
scottr 233a1d3f57 Use only FC $1 in TT0 in get_pte(), and map the entire address space. We
can then access the page table entries directly using user data space with
the MOVES instruction.  This should resolve the problem on the Duo 2x0
series with hard hangs in this function.

Warning:  do not call any function that accesses user data space (FC $1)
from get_pte()!
1997-01-09 07:28:12 +00:00
scottr 8bd4e6d18e Sync with current 040-related development:
- Figure out what CPU we have, rather than assuming the Booter knows,
   and set cputype variable accordingly.
 - Carefully rearrange the order of various MMU/ATC operations so as to
   eliminate possible side effects.  Also, re-order the initial bootstrap
   code to make clear what various sections of this code do.
 - Adjust to combined initenv()/genenvvars() (the latter has assimilated
   the former).
 - Add a function code argument to ptest040().
 - Use symbolic constants from assym.h where appropriate (and defined).
 - Some style cleanup.
1997-01-09 07:24:39 +00:00
scottr cd2817bffb Sync with current 040-related development:
- Combine initenv() and getenvvars().
 - Hardwire some PowerBook internal video addresses, from Takashi Hamada.
 - When printing out the machine model/CPU, use the new cputype variable
   instead of the Booter's PROCESSOR environment variable.
 - Use new ptest040() function code argument (though for now, the MMU is
   disabled on the 040).
 - Revert previous change in get_physical() that seems to have broken
   some machines; use an ADD instead of an OR when determining the PA.
 - Some (very minor) style cleanup of asm code.
1997-01-09 07:20:46 +00:00
scottr f832503ac5 Add CACHE40_ON, for locore 1997-01-09 07:14:17 +00:00
scottr 4211100164 Don't unlock the NuBus on PowerBooks; this bit controls the Power Manager
chip on these machines.  From Takashi Hamada.
1997-01-07 07:45:45 +00:00
scottr a54b50a58c If 040 MMU is enabled, attempt to get memory mapping. (At present, this
can't happen because we've faked a disabled MMU.)
1997-01-07 07:44:01 +00:00
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
mycroft 2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
mycroft fc3def4096 Remove duplicate declarations of LKM functions and macros. 1996-09-05 15:46:22 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
mycroft 30a617c634 Wrap the default definition of `S' in `.ifndef'. 1996-08-31 21:40:47 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
mrg b8e9f36083 add COMPAT_12. 1996-08-26 23:39:36 +00:00
scottr 7dff0aa247 After servicing an interrupt, check to see that there's not another
one pending before we clear the interrupt flag.  This avoids a condition
where the line appears to go catatonic (which is particularly easily
triggered by pppd).  From Bill Studenmund <wrstuden@loki.stanford.edu>.
XXX - we should probably log this if it gets excessive.
1996-08-26 14:09:19 +00:00
mycroft 558d72128e Put into . Remove hooks for `config-dependent' and
`device-driver' flags.
1996-08-12 00:51:24 +00:00
mycroft cf67f29afe * Add a HOSTED_C_C variable, which strips `-p', `-pg', and
`-nostdinc', and use it when building genassym.
* Use `-nostdinc' just to be sure we're self-contained.
1996-08-10 06:07:57 +00:00
mycroft f94052ed3a * Define CWARNFLAGS and MKDEP in some moderately consistent fashion.
* Make S expand to an absolute path at compile time.
* Use `-S' rather than `-x' to remove debugging symbols.
* Garbage collect unused variables.
* Reverse a handful of port-specific changes that do not correspond to
the common build model and are not needed.
1996-08-10 05:29:24 +00:00
mrg 5abbf990f3 Change reboot(2) to take two arguments: bootopt like normal and also
a boot string for firmware that can do this, such as the SPARC and
the sun3 models.  It is currently silently ignored on all other
hardware now, however.  The MD function "boot()" has been changed to
also take a char *.
1996-08-09 10:30:23 +00:00
scottr bfb6d245b5 Make the calculation of the PA returned by get_physical() agree with the
comment immediately preceding it:  We have to take the most significant
"numbits" from the returned value "ph", and the rest from our addr.  The
addition used previously introduced a carry which was causing great
difficulty in determining the correct PA of the framebuffer VA passed in
by the booter.
1996-08-06 04:03:33 +00:00
briggs d2ea50dad8 Fix improperly terminated comment. Noticed by brg@dgate.org (Brian Gaeke). 1996-08-05 23:20:46 +00:00
scottr 2985b9d676 Initialize conspa so ite_match() can attach to the proper device. 1996-08-05 04:36:45 +00:00
scottr 571519c310 Attach ite semantics to the appropriate grf device. 1996-08-05 01:52:13 +00:00
scottr 91d8e018e2 Attach ite semantics to the appropriate grf device, instead of obio. 1996-08-05 01:26:31 +00:00
scottr 1d6cd98d6a Attach ite semantics to the appropriate grf device, instead of obio. 1996-08-05 01:00:12 +00:00
scottr 89f4fddbfe Add a way to tell grf_establish() that internal video doesn't actually
occupy a slot.  This is necessary so that GRFIOCMAP can find the correct
physical address of the framebuffer.  Fixes P550, some LC models, and
perhaps the PB520.
1996-08-04 06:03:47 +00:00
scottr 9931b6b324 MRG vectors for the Quadra 630, from Jason Godfrey <jason@primenet.com> and
Bob Nestor <rnestor@metronet.com> (verified by Jason).
1996-08-04 04:08:25 +00:00
scottr 0e57c5bb15 Be much more careful with setting up the MRG ROM vectors. If we are using
a serial console and the PRAM read/write code happens to use the ADB ROM
vectors, we will have problems because the ADB hasn't been initialized.
For now, the only class of machines that we will set these up on regardless
of whether we are on a serial console or not is the original II series (II,
IIx, and IIcx).  Others can come later.
1996-08-04 03:53:15 +00:00
scottr c92399979d Back out previous; actually, this is never a problem for us. (Duh.) 1996-07-12 17:09:26 +00:00
scottr 73b545f8f1 Fix from Leo Weppelman: Change accesses to 'ssir' to inline asm macro's. 1996-07-10 18:31:49 +00:00
briggs 4043c93c6f Format the NetBSD Id string like it is elsewhere 1996-06-23 15:30:51 +00:00
briggs 9f01fc6ee4 Add a comment about the last change. 1996-06-23 15:02:58 +00:00
briggs 8d1606fcb9 Move splimp back to spl2 (from spl4). 1996-06-21 21:51:15 +00:00
scottr 231a66aa69 Minor style cleanup (avoid goto); no functional change. 1996-06-21 06:12:45 +00:00
scottr 08a2715e38 Test for serial console in adb_init() early, and abort if we're using it.
Initiialize ROM vectors regardless of this so that the PRAM RTC read and
write work regardless of whether a serial console is in use.
1996-06-21 06:10:56 +00:00
scottr 02f1ebc3de SPOT is now an NFS server, too. 1996-06-20 04:11:55 +00:00
scottr 758ea43e99 Completely revamp setroot() and friends. Since Chris' version of this code
is close to how I reworked it, I pulled in the (essentially MI) NetBSD/alpha
and added the appropriate support around it.

- No need for the GENERIC kernel config option.
- NFS-mounted root and swap are supported.
- If we can't figure out where the root filesystem is from what the Booter
  tells us, ask the user.
- Split the mainbus autoconfig code to a separate file.

Also, update/add copyrights as appropriate.
1996-06-19 03:21:03 +00:00
briggs 37472fd212 Remove Alice copyright. 1996-06-19 02:20:54 +00:00
briggs 09eef8070d Remove Alice copyright and comment from '92. 1996-06-19 02:19:13 +00:00
scottr 6c3aabe226 Update some comments, and the copyright 1996-06-19 01:47:28 +00:00
briggs b4c60fd801 port-m68k/2547: wrong bus error detection from is@beverly.rhein.de. 1996-06-15 21:25:21 +00:00
scottr 3f231717ab raise splimp() to spl4(); we need to block zs interrupts, too. 1996-06-14 04:42:50 +00:00
scottr 26f0e61730 Update for current reality 1996-06-11 03:39:20 +00:00
scottr c72d612674 Deal with interrupt flags more carefully, and use the correct offset
for PB500-series SCSI I/O.  While I'm here, update the copyright.
1996-06-11 03:20:23 +00:00
scottr c74cec9954 Add missing cpu model info for Powerbook 500, and correct the ROM
vectors for the same.
1996-06-11 03:11:06 +00:00
scottr 3bac925c32 Fix bounds check for fpu description array. 1996-06-11 02:56:22 +00:00
scottr 5057bf9c78 Add Powerbook 500 series machine ID 1996-06-11 02:52:54 +00:00
briggs 9697ef6407 Add machine/viareg for prototype of via_set_modem(). 1996-06-09 04:27:59 +00:00
briggs 2b220a1581 Implement suggestion from is -- handle _fpfault differently for 040 and better. 1996-06-09 01:53:42 +00:00
briggs b6759b3498 Fix typo. 1996-06-07 13:04:46 +00:00
briggs 04ad749207 Disable ROM vectors if booting from either serial console. PR#2525. 1996-06-07 10:48:26 +00:00
briggs 00c097a027 Changes from Bill Studenmund to support external clocks on the modem port. 1996-06-07 10:41:30 +00:00
briggs 4498ce3c90 Add constants for booter interface. 1996-06-07 10:27:19 +00:00
briggs 0d0487a98b Wait longer (2.5 sec) in wait_req_true/false. Some targets take a long time. 1996-06-07 02:44:15 +00:00
briggs 5c13e7184b Fix a typo. 1996-06-07 01:45:43 +00:00
briggs 79309c78d8 Patches from Bill Studenmund to get serial default settings from the booter. 1996-06-07 00:15:24 +00:00
briggs 6959d64eeb Some more constants from Bob Nestor--MacTV ADB works, now. 1996-06-04 03:04:49 +00:00
scottr d9953b15c4 Minor cosmetic cleanup left over from reverting interrupt handlers 1996-06-01 06:10:34 +00:00
scottr 701205b00d Add tty_attach() as appropriate (for pstat -t) 1996-06-01 00:13:39 +00:00
scottr cac1b831e9 - Simplify writes in sbc_drq_intr().
- When finished writing, if the SCSI bus has BSY asserted, write another
  byte to the SBC to ensure we get an interrupt.
- Unflag SCSI interrupts on the VIA whenever we clear the interrupts
  on the SBC itself.
1996-05-29 14:26:33 +00:00
briggs 014b404127 Clean up the interrupt handling somewhat. 1996-05-25 16:42:24 +00:00
briggs 100623915b Clear via2 interrupts before processing, too. It is up to the drivers to clear
any interrupts that are flagged during processing.
1996-05-25 16:31:04 +00:00
briggs d6345a7855 More from Dave Huang (khym@bga.com)--set ROMLEN to 2MB and make another
class for AV machines (C660AV and Q840AV).
1996-05-25 14:48:38 +00:00
briggs 30e64f90b7 Patches from Dave Huang (khym@bga.com) to get MRG ADB working on his 660av. 1996-05-25 14:45:31 +00:00
briggs 10221fc1cd Do not let getty open ite if it's not been initialized. 1996-05-25 00:56:38 +00:00
briggs 78560abd91 Change the console banner message. 1996-05-23 05:18:48 +00:00
briggs 2126c0d3c1 Fix from Bill Studenmund to set flags sanely on serial console. 1996-05-23 02:06:53 +00:00
briggs 320adf52bf Add MACH_CLASSDUO. 1996-05-22 17:53:24 +00:00
briggs 4d059305ec Remove some dead code, as suggested by scottr, and clone a new machine
class off of the powerbook for the Duos.  They apparently use an RBV-like
chip for the VIA2.
1996-05-22 17:52:48 +00:00
briggs 534d58c701 Get rid of compiler warning if DBG_PID is not defined. 1996-05-22 17:16:45 +00:00
briggs 057adea27d Apparently the MRG ADB code becomes unstable if we handle via1 interrupts
properly, so go back to unflagging them all before processing any via1
interrupts.  Perhaps this can be changed back when we get ADB code that
does not rely on the ROMs?
1996-05-21 02:46:02 +00:00
briggs 3fb1d834fc Actually clear the interrupt on the RBV. 1996-05-21 00:04:18 +00:00
scottr 4b712a8c3f Due to the latching effect of the 6522 (VIA) chip, we need to unflag
interrupts only after the condition that caused the interrupt has been
cleared.  This is a particular problem with the 5380 SCSI controller,
since the Mac glue logic may raise (e.g.) the SCSI DRQ interrupt a number
of times during the course of a normal transfer.  By waiting to unflag it,
we effectively ignore all but the first.
1996-05-20 04:32:33 +00:00
scottr d28f9a6699 Fix the last change; CVS apparently biffed it. 1996-05-20 03:23:36 +00:00
scottr 820895162d Update for new grf attachment code. 1996-05-19 22:29:04 +00:00
scottr d048582c60 New grf attachment code, mostly by Jason Thorpe with some cleanup by me.
This will allow dt and X to work with a generic kernel, rather than
compiling different kernels that attach grf0 to a NuBus adapter or
internal video.
1996-05-19 22:27:04 +00:00
briggs 4029840249 Ooops. cut 'n' pasto. splzs should 4, not 2. 1996-05-19 04:30:32 +00:00
briggs 2635a9c602 Serial driver with interface to a slightly modified version of the machine-
independent z8530 driver.  When that driver is updated, the local copy
of those files may be removed.  From Bill Studenmund.
Compiler warnings fixed by me.
1996-05-18 18:53:50 +00:00
briggs 78c78f916e Fixup a few prototypes and put 'em in their place. 1996-05-18 18:52:41 +00:00
christos 8c29c79939 - remove cpu_exec_prep_oldzmagic and use exec_aout_prep_oldzmagic 1996-05-18 16:01:00 +00:00
briggs e9d5ab8b3a Set _kernel_text as recommended by Gordon--set before vector table. 1996-05-17 02:11:47 +00:00
briggs df57030b9c Add register use constraints to a bunch of asm() statements. 1996-05-15 03:23:10 +00:00
briggs 1350f9fb7d print the failure if we do not correctly determine the amount of RAM
on the ethernet card.
1996-05-15 03:20:22 +00:00
briggs 65b1980d5a Invalidate the pte for the peeked va in bus_peek(). 1996-05-15 02:51:00 +00:00
briggs 22637072e3 Set mac68k_vidphys outside of get_mapping() so the II and others will
get the default value correctly.
1996-05-15 02:34:33 +00:00
briggs df2dde6eb0 Some updates from Bob Nestor <rnestor@metronet.com> to get the Performa 550
working again.  I broke it when I moved the ROM mapping so it was no
longer mapped on a friendly address boundary.  Some cleanup.
1996-05-14 04:00:48 +00:00
briggs ce096d50d5 Add a short comment. 1996-05-14 03:57:32 +00:00
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
briggs 468b8f30c6 Get rid of the NuBus Superspace kludge--it should no longer be necessary
or even desirable.
1996-05-10 20:53:31 +00:00
scottr 5b680d94ba Make this compile if DEBUG is defined. 1996-05-08 15:14:53 +00:00
scottr e93e429cc5 Note that rtclock_intr() could be tweaked, but why it isn't. 1996-05-08 15:13:22 +00:00
briggs 8321085213 Minor fix to last patch--from Taras. 1996-05-08 13:36:41 +00:00
briggs 2b2cd22c69 Minor update from Taras Ivanenko <ivanenko@ctpa03.mit.edu>. 1996-05-08 04:00:44 +00:00
scottr 99e86ac209 Remove some gross hacks that were added due to interrupt grossness that
has been partially fixed.  Also, add a new flag (which rearranges them
a bit, unfortunately) to use PDMA for polled transfers.
1996-05-08 03:44:56 +00:00
briggs bfd10277d3 Wrap rtclock_intr in splclock()/splx() to make sure that hardclock is running
at splclock.  Passed along from Gordon via Scott.
1996-05-08 01:08:48 +00:00
briggs bcdf813a97 Initial cut at some ROM entry points for the MacTV. 1996-05-08 01:06:31 +00:00
briggs 40454f9798 A MacTV owner says that the MacTV is a repackaged Performa 550. Note this. 1996-05-07 21:21:11 +00:00
scottr 652b291390 - Rewrite scrollup(), scrolldown(), and clear_screen() to move/clear only
visible screen memory.  This results in a considerable performance win
  at all depths.
- Correct clear_screen() behavior when clearing to the top and bottom of
  screen; start at current cursor position, not current cursor row.
- Add local prototypes, and other KNF.
1996-05-07 15:52:19 +00:00
briggs 38b11e7c82 Get rid of some old, now meaningless macros. 1996-05-07 03:13:40 +00:00
briggs 8ed57c561e Clean up an error printf() and use proper macro. 1996-05-07 03:12:12 +00:00
briggs f56c26b14e No mac has a VAC. 1996-05-07 01:45:22 +00:00
thorpej 6de4db6bbc Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 01:08:15 +00:00
briggs af19dd53a3 This code has not been used in ages and there are at least 2 better 5380
drivers in the tree, now.
1996-05-06 22:34:09 +00:00
briggs 1d8ac2ad92 Update to something closer to the atari port. 1996-05-06 22:26:26 +00:00
scottr aef8f5c3bb Update for renamed sbc driver files 1996-05-06 06:40:03 +00:00
scottr c846476845 Update several comments. 1996-05-06 06:19:33 +00:00
briggs 18021dad20 Move grf0 at obio? from std.mac68k to the config files. Not all machine
have internal video.
1996-05-06 03:33:06 +00:00
briggs 03a7fd15ca grf0 -> grf* 1996-05-06 03:32:33 +00:00
briggs 314dd5b20b Set sc_slot--we need it later. 1996-05-06 03:27:20 +00:00
briggs 6026c5dfd7 Ooops. Remove debugging printf(). 1996-05-06 03:27:06 +00:00
briggs 042a16abd0 Add 1 page slop to the video length. Only reset mac68k_vidlog if non-zero. 1996-05-06 03:25:40 +00:00
briggs db495102be Do not depend on the nubus being mapped in one huge segment. 1996-05-06 01:08:24 +00:00
briggs 1b475d6b74 Do not print out the nubus ranges. We only use them for finding wierd
internal video locations.  Perhaps we can get rid of that in the future,
too.
1996-05-06 01:06:57 +00:00
briggs 333d8a1deb Do not allocate NuBus space at boot time. Do allocate enough space for
the console video, though.
1996-05-06 01:04:58 +00:00
briggs edd6e362c8 Pass struct fpframe * to m68881_restore(). 1996-05-05 17:19:04 +00:00
briggs 81db0f78d0 Remove extra prototype. 1996-05-05 16:50:34 +00:00
briggs f4bb6d51b2 Proto for lkmenodev(). 1996-05-05 16:39:24 +00:00
briggs 513a0d293b m68881_restore takes struct fpframe *, not int []. 1996-05-05 16:33:46 +00:00
briggs 2c9ba25cc1 Fix typo in last. 1996-05-05 16:21:20 +00:00
briggs 30023f7acd MicroSpeed mouse support from Taras Ivanenko <ivanenko@ctpa03.mit.edu>.
Also some updates to actually used #defined constants instead of numeric
constants.
1996-05-05 14:33:55 +00:00
briggs 1febcb957e Prototype for sunos_sendsig() is now in sunos.h as suggested by veego. 1996-05-05 12:02:41 +00:00
briggs eb2ad19d6d Include pcb.h for prototypes. 1996-05-05 11:45:41 +00:00
briggs c02d890ef9 Move a few prototypes into machine/cpu.h. 1996-05-05 06:54:09 +00:00
briggs aad6e71194 Prototype for sunos_sendsig(). 1996-05-05 06:43:33 +00:00
briggs 37163421a3 Prototype for -Wall -Wstrict-prototypes -Wmissing-prototypes -Wno-uninitialized
Also change the device probing scheme to use something a bit more rational.
A current side-effect is that nubus cards are double-mapped.  I expect
to fix that shortly.
Also change splclock() to block everything but serial hardware interrupts.
1996-05-05 06:15:56 +00:00
scottr b2af0c2297 Kill unused variables and fix prototypes. 1996-04-30 18:11:38 +00:00
scottr b50e8aab63 - Drop SCSI IRQ interrupts if we are already handling one. This works around
a condition that occurs with some slow SCSI devices when they disconnect
  (e.g. the AppleCD 600), generating spurious selection interrupts.
- Reorganize the debugging code slightly.
1996-04-30 17:07:17 +00:00
scottr 5e7380a531 Remove trash left from a merge (probably really my fault). 1996-04-29 21:36:17 +00:00
briggs 340e30dfbb shuffle some and change rd to pseudo-device. 1996-04-28 19:18:42 +00:00
scottr eb335437e2 Ooops. ncr_sbcreg.h -> sbcreg.h 1996-04-25 23:47:06 +00:00
scottr 90b5a113d9 Renamed the sbc driver files 1996-04-25 22:30:10 +00:00
scottr aca6a2e6da Renamed these files. 1996-04-25 22:26:52 +00:00
scottr 95101e1310 Renamed these files. 1996-04-25 22:02:58 +00:00
scottr a0bca74134 Remove some now-useless code. 1996-04-25 21:18:04 +00:00
scottr 18fd76201e We don't need to enforce the MAX_DMA_SIZE limit in dma_alloc();
this is handled properly by sbc_drq_intr() already.
1996-04-25 14:40:26 +00:00
scottr 2e936aa8ff - Remove several hacks that didn't do much but waste cycles.
- Disable interrupt-driven PDMA when writing (use polled PDMA instead).
- Be more careful about when to flag a transfer as completed.

The result of these changes is that interrupt-driven PDMA works well
enough to bring the system up.
1996-04-25 06:18:41 +00:00
scottr 424ce7590a Sync with prototype changes 1996-04-24 18:02:26 +00:00
scottr 27c9c12e72 Clean up sbc_drq_intr() a bit; also, be more paranoid about size of transfer. 1996-04-23 14:20:28 +00:00
scottr 509ace1016 Handle internal video interrupts on RBV-based machines differently so
that Ethernet cards have a chance to work.  In particular, this change
has been tested on the IIci, IIsi, and LCIII.  The crucial info behind
this code was the result of a lot of work by Julian Bean.
1996-04-23 03:53:26 +00:00
scottr ff35ddbb2a Update makeoptions to include 881 support 1996-04-13 19:12:46 +00:00
briggs da3dabc052 Add PPP_BSDCOMP and PPP_DEFLATE options. 1996-04-08 14:17:28 +00:00
scottr 9d1cd5e9be Make this compile again; will need to deal with matchbyname() later, though. 1996-04-04 06:59:29 +00:00
scottr c1c09c75e2 Add v2IRQ0 define for IIci-style internal video. 1996-04-04 06:55:29 +00:00
cgd 83f9bdc359 update for the fact that config_found() and config_rootfound() now
return pointers.  (Check vs. NULL, rather than just boolean tests.)
1996-04-04 06:25:00 +00:00
cgd 7bc2baeb01 update for the fact that 'alldevs' is now a TAILQ. 1996-04-04 00:27:24 +00:00
scottr bbb6251b0b Make CLK_INTERVAL depend on HZ; update comments to match. 1996-04-01 05:16:52 +00:00
scottr 5f20924433 Move the I/O map kludge for II-class machines into the MRG init code. No
effective change, but this is more correct and averts some potential
problems.
1996-04-01 04:30:23 +00:00
briggs 1fa595a2f1 Clean up for higher warning level. 1996-04-01 01:35:48 +00:00
scottr 8b3fdd9943 Make this compile again by including <sys/types.h> 1996-03-31 14:21:03 +00:00
christos 933d138841 Change %r -> %: as for recursive printf's 1996-03-30 21:01:21 +00:00
briggs 8326aadde5 via.h -> machine/viareg.h. 1996-03-29 02:27:42 +00:00
briggs b39b4939fc Fix minor oversight in a sanity check--caught by Jason, I think, and reported
by Scott.
1996-03-29 02:12:41 +00:00
briggs 08126b5bec via.h -> machine/viareg.h. 1996-03-29 02:06:04 +00:00
briggs fdcac3b557 via.h -> machine/viareg.h and some other prototyping fixes. 1996-03-29 02:00:38 +00:00
scottr 360590468a Remove bogus reference to BSDSRCDIR here; still doesn't work, though. 1996-03-27 03:56:22 +00:00
briggs b329936803 Fix for more pedantic -W options. 1996-03-25 03:27:51 +00:00
briggs 2422f1bc4e Get rid of a compiler warning about Debugger(); 1996-03-24 16:58:46 +00:00
scottr ecd20bc823 Add PPP compression options 1996-03-23 06:12:11 +00:00
scottr 32a38f24e7 DEBUG -> SBC_DEBUG, and fix comment regarding sbc_options 1996-03-21 04:49:20 +00:00
scottr 0b59005d3d Fix a long-standing bug uncovered by the new device attachment
model.  Thanks to Jason Thorpe for the fix (fixed PR 2235).
1996-03-20 05:10:54 +00:00
scottr 2d7b856ea6 Update to NetBSD 1.1B struct cfdriver naming conventions. 1996-03-18 06:52:54 +00:00
thorpej 82d914d090 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:26:49 +00:00
christos ab0e60a42f fdopen -> filedescopen 1996-03-14 21:20:59 +00:00
scottr 2a5cf25e29 Back out previous change; kernel longjmp() has 1 arg. 1996-03-14 16:42:44 +00:00
scottr 24dcca72bd Optimize user-side TLB invalidation when !defined(M68020). 1996-03-14 05:50:06 +00:00
scottr b4225290a4 Use 851-specific instructions only #if defined(M68020). 1996-03-12 23:46:32 +00:00
scottr 6208752b50 Oops; fix typo. 1996-03-12 21:34:57 +00:00
scottr d504ec531e Add "options M68020" so that 68851-specific code is only compiled when
we want it (we don't support the 020 without an 851 anyway).  Note that
M68030 no longer implies support for 020+851.

This also allows us to compile with -m68030 iff M68020 isn't specified
in the config file.
1996-03-12 21:06:22 +00:00
scottr 89f7d665d5 KNF. 1996-03-12 19:18:49 +00:00
scottr 04de5b5b08 Back out the previous change; we'll trust adjustments to the clock
except on shutdown.
1996-03-12 04:34:46 +00:00
scottr e11f39f4a9 Don't sync the RTC at shutdown time. 1996-03-12 04:24:47 +00:00
briggs 9e087f0d26 Pass 2nd arg to longjmp--even though it's ignored. 1996-03-10 19:55:22 +00:00
briggs 679b7627d0 Use label_t instead of jmp_buf and don't include setjmp.h. 1996-03-10 19:54:41 +00:00
briggs 1c817d1c3c Fix a typo in last. 1996-03-07 20:47:01 +00:00
leo 6da2ce259c Allow for a machine dependent match function - rd_match_hook() 1996-03-07 10:25:28 +00:00
briggs ddfeeb8c2d Add option to try linked commands on all devices for PUMA. 1996-03-07 02:48:33 +00:00
briggs 7c44b1180f Disable SCSI linked commands, but allow kernel option to override. 1996-03-07 02:26:37 +00:00
briggs d504670861 Fix for serial console handling from Bill Studenmund. 1996-03-06 23:22:41 +00:00
cgd 18ec26aa21 add _MACHINE and _MACHINE_ARCH, which are like MACHINE and MACHINE_ARCH,
execpt without quotes.  meant to be __CONCAT()ted for easy #includes
of machine-dependent headers for MI code (e.g. for the MI ISA/EISA/PCI/TC
bus code).
1996-03-04 05:04:10 +00:00
cgd 3d67685d36 Do not build vnode_if.[ch] for each kernel. Build them once, like the
various syscall sources/headers, and just compile them.  From PR 2142, OK'd
by mycroft.
1996-02-29 20:54:58 +00:00
briggs 883ff3e7f3 Changes from Walter Ruetten for P550 support. 1996-02-28 04:14:05 +00:00
briggs 92c6f5f0ee Get rid of some unneeded constants. 1996-02-27 03:29:16 +00:00
briggs 6ec37fa3df Use IOBase instead of INTIOBASE. 1996-02-27 03:25:47 +00:00
briggs db2f33c640 Clean out some unneeded constants. 1996-02-27 03:23:42 +00:00
briggs 1dcd5f9d15 For a bus error in nofault, if it's an 040, load the address from the
correct frame offset.  This is required for the 5380 driver to work
properly.
1996-02-27 03:17:00 +00:00
mycroft 2ce52ae489 Define build programs with `?=', so they can be overridden with `makeoptions'. 1996-02-26 02:53:20 +00:00
briggs 568f862aeb PR 2111: Do not update system clock until we can keep more accurate time. 1996-02-23 12:40:37 +00:00
scottr 738faf922f Add ^^ and ^_ codes to default keyboard layout 1996-02-23 05:43:48 +00:00
gwr 946696f064 Add m68k/db_memrw.c 1996-02-22 23:35:07 +00:00
scottr a7daa2d931 - Clean up DEBUG code.
- Setting the "monitor BSY" flag for polled PDMA is non-optimal.  The
  polled requests generate an interrupt that isn't serviced until the
  command has been cleared from the queue.
1996-02-22 14:31:26 +00:00
scottr 89179744bd Use unsigned variables to calibrate delay_factor. 1996-02-22 02:04:14 +00:00
scottr 5fd93a11ca Clear interrupt before enabling in calibrate_delay() (from John P. Wittkoski) 1996-02-19 21:40:48 +00:00
scottr 8fe7b2bbb7 Be a bit more careful when setting up the timer for calibrating delay(). 1996-02-19 05:20:54 +00:00
briggs ab3f741911 Update to latest Atari driver, but with some local modifications. 1996-02-19 02:51:03 +00:00
briggs 2efbb04ae0 Make delay() match prototype. 1996-02-17 19:23:03 +00:00
briggs f851e3e8b3 Move spl stuff from param.h to psl.h. Prototype delay() in param.h. 1996-02-17 14:50:40 +00:00
briggs 946dc72362 Get d_npartitions right. 1996-02-14 14:20:54 +00:00
briggs ef9b75f679 HZ used to be in Makefile.mac68k... It is 60 on the mac, not 100. 1996-02-14 04:26:38 +00:00
briggs 9401e46ed0 Change readdisklabel to check block 0 of the disk for a Macintosh magic
number before attempting to load the Macintosh partition info.  If the
first 32-bits of block 0 contain the BSD disklable magic number, treat
it as a NetBSD disklabel.
When loading the Macintosh partition map, check the first 32 partitions
for the root, usr, and swap partitions--instead of the first 8.  Still
only allows 8 total partitions for NetBSD use.
1996-02-11 22:31:47 +00:00
briggs d03a91c75f KNF-ified by Scott Reynolds a long time ago. 1996-02-11 15:23:19 +00:00
briggs 4323ae0307 Remove via_inited, as it is unused. 1996-02-11 01:20:46 +00:00
briggs 6945798b81 Correct ROM vectors for the LC 475. 1996-02-11 01:20:37 +00:00
briggs ffc19f58b0 Back out last change. Bad karma to initialize the VIA that early. 1996-02-11 01:20:23 +00:00
scottr 0ae8a51904 PETE was pretty useless; SPOT is my own machine, and will better
reflect the status of sbc driver configuration.
1996-02-11 00:17:13 +00:00
scottr af4f29bcb3 Identical to GENERIC, but uses the `sbc' driver. 1996-02-10 23:42:31 +00:00
scottr ed73ac3b48 New SCSI driver for Macintosh II family machines, implemented using
the MI 5380 driver.  It has been verified to work on the IIx, IIsi,
and IIci only, but should work with any Macintosh 5380-based SCSI
controller.

  -  This driver is _not_ intended to be a general purpose replacement
     for the `ncrscsi' driver.  It is an alternative for those having
     problems with that driver.
  -  Disconnect/reselect doesn't (yet) work, so don't expect SCSI tape
     or magneto-optical disk drives to function properly.
1996-02-10 23:28:41 +00:00
briggs 01c43471b9 Make a message more verbose for folks who try to boot in 24-bit mode. 1996-02-10 23:12:46 +00:00
mycroft 753fe3a25a Fix mkdep problems due to missing flags. 1996-02-09 02:21:13 +00:00
scottr 3c8605f0f7 Add sbc driver. 1996-02-07 16:34:28 +00:00
christos 2c8314f73c vm prototype changes 1996-02-05 02:06:38 +00:00
briggs 2a878c9a3a Move debugging defines, etc. into mac68k5380.c and use them instead of
something similar but different.  Make a few cosmetic changes.
1996-02-03 23:17:53 +00:00
briggs 3d8d566948 New delay() implementation from Scott Reynolds (scottr@edsi.org).
Also some minor rearranging of the VIA initialization (init earlier).
1996-02-03 22:50:22 +00:00
briggs 6b6a46ed2f Implement mac68k_register_via1_t1_irq(). Also, remove via_inited warning. 1996-02-03 22:50:19 +00:00
briggs d13a039f24 New delay() implementation from Scott Reynolds (scottr@edsi.org).
Also some minor rearranging of the VIA initialization (init earlier).
1996-02-03 22:49:52 +00:00
briggs 20123d5253 O2 breaks on this port. Use -O until we can fix it. 1996-02-03 15:14:39 +00:00
mycroft 5bc076e17e Use `-traditional-cpp' when building .s and .S files. 1996-02-03 00:43:50 +00:00
mycroft dcd66e9f4d Clone these, and fix many bugs. 1996-02-02 20:08:17 +00:00
mycroft 9db20bf150 Don't define _KERNEL here. 1996-02-02 19:42:08 +00:00
mycroft 9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
briggs 5336dade8e Force the talley counters to be read when we get the interrupt. GCC was
nicely optimizing the reads out for us.  Kudos for this one go to
Steven R. Weiss <srw@hvcn.org>.
1996-02-02 15:30:56 +00:00
mycroft cec913603e Don't special-case conf.c. 1996-02-02 13:38:05 +00:00
mycroft fc9d84fb46 assym.s -> assym.h
(Some ports did this already.)
1996-02-02 02:34:09 +00:00
mycroft 88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28:24 +00:00
briggs af9bcab2ce Clean up and comment a bit. 1996-02-01 03:40:26 +00:00
briggs cde62d494a Fix for delay(usec) for small usec. From Scott Reynolds <scottr@edsi.org>. 1996-01-29 04:10:00 +00:00
briggs 229c36d3dd Patch a few of the holes in the machine-dependent part of this driver.
Sync the m.i. part with the Atari.
1996-01-24 06:02:06 +00:00
briggs 1fd44da3df Change an &= to an & -- the former stopped working for some reason
that I need to delve into when I have time.
1996-01-24 05:52:58 +00:00
briggs af016e6224 Updates from Kelly Campbell <camk@ksu.ksu.edu> for some ROM addresses. 1996-01-15 12:29:48 +00:00
thorpej 57219ebad3 Remove vnode_if.[ch] during a "make clean", per PR#536 from
Dan Carosone <danielce@ee.mu.oz.au>.
1996-01-14 21:06:47 +00:00
briggs 0d6552d914 Fix typo in last change. 1996-01-13 14:03:38 +00:00
briggs 46c929801f Move splimp to 2 and spltty to 1. 1996-01-13 01:41:05 +00:00
briggs 2a61903be4 Patch to at least recognise FOCUS EtherLAN. From Erik Bertelson
<erik@sockdev.uni-c.dk>
1996-01-12 04:52:58 +00:00
briggs 46a202fc6a Fixes from PR #1931 w/ minor mod in vm_machdep.c 1996-01-12 04:16:25 +00:00
briggs 39f642161a Keep two states for pdma debugging. Turn debugging back on. Sigh. 1996-01-11 15:25:53 +00:00
briggs 631612b677 Move splzs to spl4 from splhigh. Really same difference... 1996-01-11 15:23:01 +00:00
briggs 2a9c1229ec Add some more first guesses at some machines. 1996-01-09 15:26:53 +00:00
briggs 1b99515858 Add #defines for some more machines. 1996-01-09 15:26:02 +00:00
thorpej 5b39541e48 New generic disk framework. Highlights:
- New metrics handling.  Metrics are now kept in the new
	  `struct disk'.  Busy time is now stored as a timeval, and
	  transfer count in bytes.

	- Storage for disklabels is now dynamically allocated, so that
	  the size of the disk structure is not machine-dependent.

	- Several new functions for attaching and detaching disks, and
	  handling metrics calculation.

Old-style instrumentation is still supported in drivers that did it before.
However, old-style instrumentation is being deprecated, and will go away
once the userland utilities are updated for the new framework.

For usage and architectural details, see the forthcoming disk(9) manual
page.
1996-01-07 22:01:38 +00:00
briggs f5269d0ff6 Fix from Paul Goyette for off-by-one error. 1996-01-06 15:56:12 +00:00
briggs 682c4ec08f Bring in a few changes from Atari port.
Add support from Paul Goyette for keeping more than just the last 2
states when debugging.
1996-01-06 05:18:06 +00:00
jtc 2fce159ff8 Changed name of sigaltstack's ss_base field to ss_sp to match XPG4.2 and
traditional usage.
1996-01-04 22:21:33 +00:00
mycroft 3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
mycroft ce000f04ef Remove deprecated cpu_setstack(). 1995-12-21 05:01:32 +00:00
briggs 0a1c6c4827 The IIci also needs an sccClkConst of 115200 instead of 122400. 1995-12-18 14:38:02 +00:00
briggs 486bcce207 Remove printf() that I forgot about. 1995-12-13 14:30:29 +00:00
briggs 405ac4248f Fix from Paul Goyette to disable linked commands on drives that
reject them for simple commands.  Leo W. reports that this does
not work for some systems.  It's better than what we have now,
though.  From Paul Goyette <paul@pgoyette.bdt.com>.
1995-12-13 03:48:07 +00:00
briggs 4b2a9a582d Update from Bill Studenmund <wrstuden@loki.stanford.edu> with some minor
cleanup from me.  Now supports serial console.
1995-12-13 03:09:57 +00:00
briggs 37b09a913d Double ring limits from Bill Studenmund <wrstuden@loki.stanford.edu>. 1995-12-13 03:08:12 +00:00
thorpej de6dad9228 Move bcopy/ovbcopy/memcpy into m68/m68k/copy.s, which is used by all
m68k ports already anyhow.  No use in keeping 6 identical copies of this
function around.
1995-12-11 02:37:55 +00:00
mycroft 0e0ac5ed68 cpu_fork() now returns void. 1995-12-09 04:37:23 +00:00
briggs 76b94759a1 Fix from Paul Goyette (paul@pgoyette.bdt.com) for drives that don't grok
linked commands.
1995-12-04 02:10:44 +00:00
briggs 99e494a984 Fix from Niklas Hallqvist / Chuck Cranor / Michael Hitch / OpenBSD to avoid
integer overflow in initial pmap setup.  Triggerred by high values for
maxusers.
1995-12-03 13:52:50 +00:00
briggs 1b03745209 cmdlen-2 is right for the last byte of the command. Ifdef out for right now,
though, as some devices apparently don't support linked commands and will
reject commands that have the link bit set in them.
1995-12-01 15:14:11 +00:00
briggs d416ec2cc9 Put the link flag in the right place.
Pointed out by Paul@pgoyette.bdt.com (Paul Goyette).
1995-11-30 14:25:40 +00:00
briggs 93d836857c RAMDISK stuff. 1995-11-21 05:06:28 +00:00
briggs 447b897889 Define DST and TIMEZONE 1995-11-21 05:05:51 +00:00
briggs e5a588356f Small RAMDISK kernel. 1995-11-21 05:02:02 +00:00
briggs 369e3de013 Get rid of obsolete time specs. 1995-11-21 05:00:34 +00:00
briggs f9ba6adcd7 Add rd_root.c from sun3. 1995-11-21 04:53:20 +00:00
briggs 0d91c3ff0b Back the sccClkConst off to 115200 for several classes of machines. 1995-11-21 04:00:43 +00:00
briggs 9afe66efa5 Add rd support at the same address as the Sun3. 1995-11-21 03:39:45 +00:00
briggs 83604dcbd6 Add call to doshutdownhooks() before we attempt to reboot. 1995-11-14 04:05:49 +00:00
briggs 5b38a18f42 include files.fpe instead of just fpu_emulate.c--to get the new fpe code. 1995-11-03 04:50:21 +00:00
briggs 3074f94137 Remove ser1 from init list. 1995-11-01 04:59:31 +00:00
briggs 9a1fb2674a Fixup error/debugging message. 1995-11-01 04:59:03 +00:00
briggs c587e77144 Remove bogus assignment. 1995-11-01 04:58:21 +00:00
briggs 819cd49aa7 Remove -fno-builtin 1995-11-01 04:53:34 +00:00
briggs 4d13774bbc Rearrange a bit. bpfilters -> 16 and ae0/ae1 -> ae*. 1995-11-01 04:52:46 +00:00
briggs 680ada5add port-mac/1707: mac68k mouse drag problems with Cmd+arrow keys
from Ken Nakata <kenn@remus.rutgers.edu>
1995-11-01 04:40:21 +00:00
briggs 8218c4005c Pull in all but one of Leo's changes from the atari copy. 1995-10-31 15:32:35 +00:00
briggs 47c507f8fd SUNOS_SYS_sunos_sigreturn -> SUNOS_SYS_
sigreturn.
1995-10-15 03:01:57 +00:00
briggs 67e41c3280 Remove extra serial device--forgot to check this in earlier.
The serial device now handles both channels.
1995-10-12 17:39:45 +00:00
briggs 712a3f32c4 Nuke blkclr and use thereof. 1995-10-10 04:14:18 +00:00
briggs 2738554927 Get rid of libkern duplicates. 1995-10-10 03:49:04 +00:00
briggs 5e13eea9b1 sysarch -> sys_sysarch 1995-10-10 03:48:33 +00:00
briggs fcb8923ffa Remove extra reference to LIBKERN. 1995-10-10 03:47:59 +00:00
briggs f5fae9d016 Port of Sun3/Sparc zs driver from wrstuden@loki.stanford.edu
(Bill Studenmund).  Should be massaged into machine independence
for 1.2.
1995-10-09 12:42:16 +00:00
briggs 685b9057c2 Pick up changes from leo's latest version. 1995-10-08 17:25:19 +00:00
mycroft 245f292fed Prefix names of system call implementation functions with `sys_'. 1995-10-07 06:25:19 +00:00
briggs 5479e941d9 Add a second ppp. It makes the kernel a whole 8 bytes larger on disk. 1995-10-04 11:05:25 +00:00
briggs 8ede165771 ae0 -> ae* and add a couple of vnd devices. 1995-10-04 03:42:18 +00:00
briggs 6e435f9152 Include ether.h to get NETHER. 1995-10-04 03:38:27 +00:00
briggs be8ef88444 Raise number of bpfs to 12 since CAP needs a minimum of 8. 1995-10-03 20:19:01 +00:00
briggs 1ddc4223b1 Add offset to mac68k_vidlog as suggested by chas@ohm.nrl.navy.mil. 1995-10-02 09:41:06 +00:00
briggs 633e32000c Wrap call to arpintr() in NETHER to avoid unresolved external if no ether
devices are present.  Suggested by Paul Goyette (paul@pgoyette.bdt.com).
1995-10-02 09:38:38 +00:00
briggs d510375b06 Change to allow nack_message() to take an argument and send
MSG_REJECT_MESSAGE instead of MSG_ABORT when we get an extended message.
This allows a DEC drive to work when it attempts to negotiate synch.
transfers on us.
1995-10-02 09:03:53 +00:00
briggs 0066d1a66f Finally get this right... Final fix from Paul Goyette paul@pgoyette.bdt.com 1995-10-01 05:10:20 +00:00
briggs 9de2a25e73 Surround Debugger(); with #if DDB. Different fix than encl. for PR#1553. 1995-10-01 02:29:32 +00:00
briggs c1138ce68a Yet another error in the (next-to) last changes. 1995-09-30 21:34:54 +00:00
briggs 890baf19ea Fix stupid error in one of my last changes here. 1995-09-30 19:42:34 +00:00
briggs d73008fe8b Always announce it when loading miniroot. 1995-09-28 04:17:24 +00:00
briggs b1d771eeb5 Simplify nubus interrupt routines a bit. 1995-09-28 04:11:18 +00:00
briggs a9f0a2f9c4 Fix PR 1514 from Walter Ruetten. 1995-09-28 03:15:54 +00:00
briggs 5a0bebbc54 Patch from Theo to finish clearing 040 kernel page tables. 1995-09-27 04:16:54 +00:00
briggs 232169396a Bullet-proof a little.
Make some more pdma code conditional on USE_PDMA.
Handle transfers of size > MIN_PHYS.
1995-09-27 03:38:57 +00:00
briggs 4d52f57876 Add Technology Works ethernet card. From
Kazunari Nakamura <kazu@nkk.co.jp>.
1995-09-24 14:13:56 +00:00
briggs e23598f24f Much improved pdma transfers.
Still not nearly as fast as FWB's drivers under the MacOS.
Uses the "blind" transfer method instead of polled pdma.
1995-09-23 01:11:42 +00:00
briggs 01be7f2b8c Need sys/mount.h for fhandle_t. 1995-09-21 11:27:43 +00:00
briggs 4a9cf8407c Fix a warning. 1995-09-21 11:13:27 +00:00
briggs fbd9919364 Fix warning and use __P for prototypes. 1995-09-21 03:36:25 +00:00
briggs b895726b5c MACCCLASSIC is Color classic. And it's more like an LC than hopeless. 1995-09-21 01:56:31 +00:00
briggs de36f970fb Fix a few oversights. From Walter Ruetten <walter@ghpc8.ihf.rwth-aachen.de> 1995-09-20 13:03:21 +00:00
thorpej c9dfdd20b6 Compile the kernel with -Werror and -fno-builtin. 1995-09-19 23:48:41 +00:00
thorpej 7d7396c414 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:53:47 +00:00
briggs 516ddf511f Wrap only the message in ifdef DIAGNOSTIC. 1995-09-19 03:18:15 +00:00
briggs 909842fb1f Correct jClkNoMem address for C650 from
nick@csua.berkeley.edu via Walter Ruetten.
1995-09-18 13:55:09 +00:00
briggs e8dbcda856 Do not define MIN_PHYS here--it is m.d.. 1995-09-18 13:52:43 +00:00
briggs cb5010a4fe Fix a spelling slight. Grab the faulting address if nofault in bus error. 1995-09-18 13:51:25 +00:00
briggs 927d165081 Optimize the via interrupt processing routines a tad. From
chas@ohm.nrl.navy.mil (Charles J. Williams).
1995-09-18 03:15:43 +00:00
briggs cb4eb50b28 Change HwCfgFlags4 to something a bit more mnemonic. 1995-09-17 21:28:33 +00:00
briggs 1c8c505974 Fixes from Walter Ruetten <walter@ghpc8.ihf.rwth-aachen.de>
to avoid panic()s when we read the PRAM values while ROM
vectors are missing.
1995-09-17 18:51:40 +00:00
briggs b528dcf5c2 Fix from Walter Ruetten <walter@ghpc8.ihf.rwth-aachen.de>
to prevent his last changes from causing a panic if some
values are not filled in in the ROM vector table.
1995-09-17 18:50:17 +00:00
briggs c4250f7102 Add rom vector for LCIII from Peter Kohler (kohler@ife.ee.ethz.ch)
via Walter Ruetten <walter@ghpc8.ihf.rwth-aachen.de>.
1995-09-17 05:22:57 +00:00
briggs a106882a85 Only use PIO instead of PDMA if DRIVER_NOINT. 1995-09-16 18:22:33 +00:00
briggs ccaff4431c Simplify doboot(). 1995-09-16 15:35:05 +00:00
briggs ea4e385abd Map in the VIA space for the bloody Mac II ROMs that directly reference
a hardware address.  Also map in the ROM space before we call doboot().
1995-09-16 15:33:54 +00:00
briggs 6ed4261a1b Fix segment table reference bug (from Michael Hitch). 1995-09-16 15:09:28 +00:00
briggs a8b0260a05 Sync. with atari ncr5380.c -- mainly whitespace changes. 1995-09-16 15:06:55 +00:00
briggs 214a1bac9f Fixes from walter@ghpc8.ihf.rwth-aachen.de (Walter Ruetten)
to use ROM routines to read and write PRAM times, etc..
1995-09-16 12:35:53 +00:00
briggs bee931c117 Set timezone to 0. The booter's GMT bias should be used, instead. 1995-09-16 12:33:06 +00:00
briggs 2e06f3f2bb More changes from walter@ghpc8.ihf.rwth-aachen.de (Walter Ruetten)
for correct handling of timezones and PRAM <-> system time conversion.
1995-09-16 12:31:13 +00:00
briggs 4dc81200f5 Rename scsi_main_irq() to pdma_ready().
Missed a few ATNs in last patch.  (pointed out by Leo).
Raise timeout from 100 to 1000.  From Leo.
1995-09-16 11:45:18 +00:00
briggs 048e948791 As Leo pointed out, my last change was not safe. This one should be.
I added two new bitfields to ncr_softc.  They flag which devices have
been selected, and which ones have failed to go to message out when
selected with ATN.  If a target fails to go to message out the first
time it is selected, it goes into the latter bitfield.  If it fails
thereafter, we treat it as we did before.
1995-09-15 01:52:18 +00:00
briggs a0d6a95720 indentify.
Bring in a few changes from Walter Ruetten (walter@ghpc8.ihf.rwth-aachen.de).
Assume that PRAM time - GMT bias (set in the booter) is the current time
in UTC.
1995-09-14 23:44:12 +00:00
briggs 1b34b69c93 Gah... The Asante SCSI/ethernet box doesn't answer the ATN request
for a 'MESSAGE OUT' phase, so add support in scsi_select() for the
phase to be either 'MESSAGE OUT' or 'COMMAND'.
1995-09-14 02:54:05 +00:00
briggs d8ab74fcf2 Honor new MACH_CLASSIIvx. 1995-09-14 02:49:11 +00:00
briggs 13c1f2d48b Shuffle MACH_CLASSes around a tad and add IIvx as a seperate class because
it may have a different method for accessing the 'via2' functions.
1995-09-14 02:48:09 +00:00
briggs 9c61c22d66 Clean up message a tad. 1995-09-14 02:43:51 +00:00
briggs 18a11cecc7 Update a comment. 1995-09-12 22:52:08 +00:00
briggs d8dc3d91c0 Update for Leo's changes. 1995-09-12 22:31:45 +00:00
briggs 1ae7af5b59 Updates from Leo's changes in the atari port. 1995-09-12 21:20:18 +00:00
briggs 639f90ef6e Update from Leo's changes. 1995-09-12 21:05:58 +00:00
briggs c91abc3e61 Remove infinite loop per Leo and Mycroft. 1995-09-05 11:21:34 +00:00
briggs 19a99aa395 Get softc as parameter in interrupt function, using new changes from
via.[ch]
1995-09-04 05:07:16 +00:00
briggs 129ca2cea9 Make VIA2 interrupts pass an argument in and let the scsi_register_*_intr
functions use that, too.
1995-09-04 05:05:58 +00:00
briggs 4f76655592 Fix a goof in the latest changes. 1995-09-04 05:05:11 +00:00
briggs 02883e7341 Remove an extra "talk" command--from Ken Nakata <kenn@remus.rutgers.edu> 1995-09-04 02:50:57 +00:00
briggs 86d6e121cd Add support for Extended Apple Mouse Protocol from
Ken Nakata <kenn@remus.rutgers.edu>.
1995-09-03 20:59:53 +00:00
briggs b394d7fc7d Enable ADB interrupts unconditionally if not using setup_egret(). 1995-09-03 20:47:21 +00:00
briggs de4100b643 Clean up a bit. 1995-09-03 14:54:31 +00:00
briggs 761b3a8340 Clean up some. 1995-09-03 14:51:38 +00:00
briggs 30c554fc9d Changes from Walter Ruetten <walter@ghpc8.ihf.rwth-aachen.de>.
This forces the need for booter version 1.8.
1995-09-03 14:37:16 +00:00
briggs 745cb60f16 Note that this is now an obsolete driver. 1995-09-03 03:39:38 +00:00
briggs e9a9533544 Make the new m.i. scsi driver the default. 1995-09-03 03:37:32 +00:00
briggs 166af00381 Make a local copy of the atari m.i. scsi driver sources for the time
being.  Some people aren't supping arch/atari and this allows those
people to get the sources.
1995-09-03 03:36:35 +00:00
briggs a7783604fd Optimize this some. Still seems slower than it ought to be.
Register interrupt functions with via.c.
Clean up somewhat.  Turn off DEBUG.
1995-09-02 19:29:42 +00:00
briggs 4ed102bbd4 Optimize accesses to VIA2 a bit.
Force SCSI driver to register interrupt functions and remove default
handlers.
Bring in a few changes from
Walter Ruetten <walter@ghpc8.ihf.rwth-aachen.de>--more to come later.
Define VIA interrupt functions as returning void, not long.
1995-09-02 19:27:34 +00:00
briggs 42d7c233d5 Very minor cleanup. 1995-09-02 05:44:07 +00:00
briggs 9f203a792f Weren't quite ready for the last change. 1995-09-02 05:41:12 +00:00
briggs e60752e507 Rearrange a bit. 1995-09-02 05:35:59 +00:00
briggs bee422d998 DTRT. This should be considered the base version of the file. 1995-09-02 03:19:37 +00:00
mycroft 29053c58b2 SA_ONSTACK --> SS_ONSTACK 1995-09-01 20:05:59 +00:00
briggs b6fb219037 Process via2/rbv interrupts from low bit to high bit. 1995-09-01 04:10:11 +00:00
briggs e46e8e7a57 A first pass at a scsi driver based on the Atari ncr5380{reg.h,.c} code. 1995-09-01 03:43:49 +00:00
briggs d3930dd627 In child_return(), pass oticks of 0 to userret() instead of p->p_sticks to
avoid slighting the child of a timer tick if it gets one after starting.
Thanks go to cgd for noticing this.
1995-08-31 03:22:55 +00:00
briggs 503d3c4927 Add constants for CSI's communications card. 1995-08-25 21:20:57 +00:00
briggs ac0af4229f Change VIA2:vPCR setting to allow scsi IRQ and DRQ. 1995-08-25 02:56:41 +00:00
briggs 1ed5c0babc Some code to support a vector passed in from booter 1.8. 1995-08-24 04:27:16 +00:00
briggs 0484bdaf59 Don't panic on NMI and only take notice if DDB. 1995-08-24 04:25:07 +00:00
thorpej 66dcd8fd69 Add entries for the ccd. 1995-08-17 17:40:42 +00:00
briggs 68b61ea1ad Fix comments. .space 0x1000 was accidentally left commented so it
still is--just explicitly, now.
1995-08-16 13:18:24 +00:00
briggs 37004a19e4 Missing cast and semicolon in last. 1995-08-16 05:17:31 +00:00
briggs 665a6a78bc Load the old MacOS ROMBase value back in before we jump to reset. 1995-08-16 04:48:34 +00:00
briggs ae51ffca30 Always fail when probed--until this driver works. 1995-08-14 03:55:28 +00:00
briggs 64ea04b1d0 Be more vocal about interrupts that we don't expect.
Include ncrscsi.h and ncr96scsi.h.
1995-08-14 03:16:07 +00:00
briggs 7d55e1196e Document spl()s a bit, order the splfoo()s in splX() order. 1995-08-13 01:52:16 +00:00
mycroft 7a9cad50cd Replace splnet() with splsoftnet(). Add splnet(). Make splimp() > spltty(). 1995-08-13 00:23:56 +00:00
mycroft 80d7b0695a minphys() functions really should return void. 1995-08-12 20:30:45 +00:00
briggs 52e968da1a Fix oversight in last. 1995-08-12 18:48:47 +00:00
briggs 1fd03600dd Get rid of cpu040 for good. 1995-08-12 04:08:29 +00:00
briggs 8f58d57321 Don't fake these values. 1995-08-11 17:48:19 +00:00
briggs 72d557cf87 The serial console works again (at least on the Q700). 1995-08-11 03:29:07 +00:00
briggs d192d70a87 Note that we've been initialized. 1995-08-11 03:02:04 +00:00
briggs 100380f075 Do the serial console a bit better (still has problems). 1995-08-11 03:00:15 +00:00
briggs 81cc5998a1 Missing increment operator for if_opackets in last change. 1995-08-09 12:16:10 +00:00
briggs b4eecb5362 We need to set cpu040 for just a while longer. 1995-08-09 03:25:25 +00:00
briggs 53af1e73b8 Make sure we don't remap video/serial before we're done writing to it. 1995-08-09 03:23:57 +00:00
briggs 71b21ba74e Don't go bonkers if we don't have a real swap device. 1995-08-09 03:22:50 +00:00
briggs dbdcebe34b Fix a few 040-isms, remove an old comment, and add a few things for the future. 1995-08-09 03:21:59 +00:00
briggs 3b5979d56c Remove cpu040 use from here. It should only be used at boot time.
Take out old method for determining load address for IIci/si.
Set all but IIsi/ci to use a clock initialization value of 115200 (not
the baud rate... ;-).
1995-08-06 04:39:56 +00:00
briggs 110cf98100 Get rid of int_video_{start,length} and wierd nubus mapping. 1995-08-04 03:21:46 +00:00
briggs 70065c2ed5 Nuke int_video_start in favor of consistent use of mac68k_vidlog.
Don't find the internal video more than once.
Probe for internal video before nubus instead of after.
1995-08-04 02:55:06 +00:00
briggs fb5e0a34bb Be consistent and use mac68k_vidlog instead of int_video_start. 1995-08-04 02:47:31 +00:00
briggs b0a1bd6e17 Use panic() instead of printf();Debugger(); 1995-08-02 11:53:02 +00:00
briggs a76e2adfab Get rid of reference to Debugger(). 1995-08-02 11:50:43 +00:00
briggs f60a2bbccf Add kludge for LC video and change IIvx to assume 1MB of VRAM if we can't
figure out how much there really is.
1995-08-02 04:15:41 +00:00
briggs fc8739097d Fix signed/unsigned gaff in last.
Bring up-to-date with latest rash of changes to if_ed.c.
1995-07-30 21:39:17 +00:00
briggs ff5fa674dd Fix the internal video probe again. 1995-07-30 21:35:00 +00:00
briggs 80cd97e743 delay(7) instead of delay(20) seems sufficient 1995-07-30 21:30:57 +00:00