Commit Graph

1018 Commits

Author SHA1 Message Date
mrg 3d26a04acb add "int" type to static tzops array (egcs warning) 1998-08-29 16:14:15 +00:00
nisimura e37ce1c5b6 Make spl(9) rountines target port dependent. delay() is also port
dependent anticipating a target with high resolution timer available
for on-the-fly re-programming.  Enum decstation_t was removed from MI
trap.c.
1998-08-25 01:55:38 +00:00
jonathan 71c8693225 Add missing "-a" to mkdep line for pmax locore_machdep.S.
From Noriyuki Soda.
1998-08-04 20:17:09 +00:00
simonb 8ed2fad5f9 Add missing trailing $ to $NetBSD$ line (PR #5530). 1998-07-26 09:47:22 +00:00
simonb b454e7c097 Add mainbus0 and cpu definitions, remove extra DS_5100 option. 1998-07-26 09:45:25 +00:00
drochner 49bb9d8214 adapt to LANCE driver split 1998-07-21 17:36:01 +00:00
thorpej 2fc1260cc0 Implement bus_dmamap_load_uio(). 1998-07-17 21:09:59 +00:00
jonathan e2ff73afa7 Compute SFB pixel dimensions at attach time for PMAGB-BB users.
(qvss-compat needs revision, but should be replaced with wscons anyway.)
1998-07-12 06:26:37 +00:00
thorpej d47ea67c1f Define one page free list, and put all pages on it. 1998-07-08 04:43:18 +00:00
jonathan 466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
mhitch bb85c60cdc Add "mainbus0" and "cpu*" entries that used to be in std.pmax. GENERIC
should now 'config' without errors.
1998-07-03 20:06:09 +00:00
lukem bd8d501f7e remove options FIFO; it's now the default 1998-06-26 01:53:43 +00:00
thorpej 21592147a1 defopt COMPAT_ULTRIX 1998-06-25 23:27:56 +00:00
jonathan df7a377771 Correct the ioasic interrupt symbol definitions for MAXINE ISDN. 1998-06-22 11:57:47 +00:00
jonathan 4f688e084b * Garbage-collect ancient 4.4bsd model-specific aliases for
ioctl asic  interrupt masks.
* include sys/dev/tc/ioasicreg.h, not  pmax asic.h (as prep for merge).
1998-06-22 09:37:40 +00:00
jonathan 5d58262d89 * Update pmax db_init() to match db_aout.c rev 1.19 (tv's Shark changes).
Add headers to get prototype of db_init().
* Copy i386 logic for  entering  Debugger() if  RB_KDB set on entry.
1998-06-19 22:44:48 +00:00
cgd 651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
thorpej 0b25bb43b3 Adjust bus_dmamap_sync() for the R4000; in that case, use the stashed
virtual address for the segment, rather than the physical address, and
adjust the cache call appropriately.
1998-06-03 05:10:23 +00:00
thorpej 63be85fc62 Fill in the virtual address of each DMA segment as we load the map. 1998-06-03 04:41:30 +00:00
thorpej 691e8af708 Add a "virtual address" private member to the pmax bus_dma_segment_t, for
use in R4000 cache flush operations in bus_dmamap_sync().
1998-06-03 04:38:41 +00:00
thorpej 47724b2eb9 Sync w/ i386 port. 1998-06-03 04:33:28 +00:00
thorpej c13f81fd52 Correct some comments. 1998-06-01 19:33:59 +00:00
thorpej a7f360c6c9 Specify a non-profiling C rule. 1998-05-31 23:25:41 +00:00
matt 5c082547cd Add fat since it now works. 1998-05-28 00:57:55 +00:00
thorpej e208d8972b Ouch, key debugging printfs off BUS_DMA_DEBUG, not DEBUG ... noisy! 1998-05-27 03:57:49 +00:00
matt 3dc4f22908 A few fixes to make it really work. 1998-05-27 01:16:47 +00:00
thorpej 4631dca956 Rewrite at least the R{2,3}000 case for bus_dmamap_sync(), in hopes of
making performance of bus_dma drivers not completely suck on the DECstation.

XXX R4000 case is still abysmal, because some other data structure
modification is required to deal with the virtually-indexed R4000 cache.
1998-05-26 18:21:10 +00:00
matt 7a1e3fe2ea Allow serial consoles *without* any graphics devices. 1998-05-23 18:21:43 +00:00
thorpej c8092e5d3b Provide bus_space and bus_dma data structures to the TurboChannel bus. 1998-05-22 21:14:40 +00:00
thorpej 7a9c58e1b1 Complete from-scratch rewrite of the DECstation bus.h, brining it
up-to-date with the current API, and implementing preliminary
support for bus_dma.
1998-05-22 21:14:04 +00:00
drochner bd9ed5a6fd STANDALONE->_STANDALONE (cpp definition)
closes PR kern/5481 (Erik Bertelsen <erik@q610.ebe.uni-c.dk>)
1998-05-22 12:56:35 +00:00
thorpej aaf43a156e Make this build for a 3MAX-only kernel. 1998-05-21 17:41:29 +00:00
simonb 76e48472e6 Include pmax/pmax/pmaxtype.h for definition of DS_PMAX 1998-05-19 04:31:27 +00:00
simonb 469658d533 - Allow all valid SCSI id's to work on the SII and first two ASC
controllers (including SCSI id 7 on the 2100/3100).
- On the pmax (2100,3100) set the host SCSI id to 6.
- Move disk and tape config for the second ASC controller from the GENERIC
  config file to scsi.pmax so all configurations can use the second
  controller.
1998-05-08 00:05:19 +00:00
thorpej 1686aca01d Pull in opt_gateway.h as appropriate. 1998-04-29 23:11:00 +00:00
simonb 8afb70fa32 Pull in declaration for the variable "cold" in dec_5100_memintr(). 1998-04-27 06:10:32 +00:00
jonathan cb015e952e Resync 3max (kn02) support. 1998-04-25 16:29:06 +00:00
jonathan 6c0abe64fc defopt NTP and PPS_SYNC, in preparation for adding PPS support. 1998-04-22 07:08:11 +00:00
jonathan bd51370674 Fix indexing bug in bt459 colourmap update.
Causes symptoms in PR# port-pmax/4174.
1998-04-20 05:24:17 +00:00
jonathan bdf3cb0884 * Fix typo in ROM name of mfb (PMAG-AA)
* Use TC_ROM_LLEN instead of constant, add space for sentinel.
* Don't print fb dimensions at console-probe time.
1998-04-20 02:46:59 +00:00
jonathan fc2608c7a2 Define TC_KV(), TC_C() here for benefit of model-specific TCbus initializers. 1998-04-19 11:16:18 +00:00
jonathan bab2163883 Remove kn01var.h. Superseded by ibus. 1998-04-19 10:57:23 +00:00
jonathan cf6765a49c Attach ibus to mainbus.
Commit updated dec_3100.c with  interrupt-enable code for ibus.
1998-04-19 10:54:54 +00:00
jonathan 1a283ae18b Use new ibus attach args. 1998-04-19 10:47:06 +00:00
jonathan 6525db3fdb Update dc_ds.c to use new ibus attach args.
Garbage collect obsolete front-end from dc.c backend.
Partially clean up console init code.
1998-04-19 10:44:41 +00:00
jonathan 1116cb8578 Cleanup comment typos. 1998-04-19 10:22:45 +00:00
jonathan c7597ae8b8 Rework, based loosely on suggestions from Tohru Nisimura.. 1998-04-19 10:18:20 +00:00
jonathan 02e88fb06e ibus devices and 5100 attachment. 1998-04-19 08:47:54 +00:00
jonathan 539856584c Garbage collect obsolete motherboard options from non-GENERIC kernels.
Add "ibus" to configs with  3100 support.
1998-04-19 08:46:50 +00:00
jonathan d47bc69126 Rework pmax kernel config:
* ibus (virtual bus for baseboard direct-attach deviecs)
 * 5100 support, using ibus
 * rename "clock" to mcclock for future support of Qbus machiens
 * use sys/dev/dec mcclock_pad32 machinery for pmax mcclock
 * reworked TC config code.
1998-04-19 08:39:42 +00:00
jonathan 59125ec0c9 Define delay() for pmax asc driver, mips_mcclock. 1998-04-19 08:22:22 +00:00
jonathan 85e00b2364 Add -D__pmax__. Leave -Dpmax until all uses changed to __pmax__. 1998-04-19 08:01:01 +00:00
jonathan 9caaf18836 Rework pmax turbochannel config, as suggested by Jason Thorpe.
Also make TC framebuffer-console search table-driven.

Does not yet include "tcasic" layer; there's no such hardware on DECstations
and nothing for a tcasic layer to do.
1998-04-19 07:59:13 +00:00
jonathan e487483678 oops, diffs to use dev/dec/mcclock_pad32 were in a different tree. Fix. 1998-04-19 07:54:45 +00:00
jonathan c84f4e94d9 Copy alpha/tc/mcclock_ioasic.c (duplicated in pmax/tc/mcclock_ioasic.c)
into sys/dev/dec and split into a clockfns layer and a "middle" layer
for other DEC systems which use mcclocks with each onchip byte
register padded out to a 32-bit word.

Clone alpha/alpha/mcclock (also duplicated in pmax port) into
sys/dev/dec, and ifdef for default clockrates on pmax and alpha.

Use new machinery on pmax for ibus,ioasic attached mcclocks.
1998-04-19 07:50:25 +00:00
jonathan 9873ee237f Add dependencies on Makefile for SYSVSHM, SYSVIPC options. 1998-04-19 04:51:18 +00:00
jonathan d4a24f85d6 Support shared Decstation 3100 and Decsystem 5100 baseboard devices
using a virtual "ibus" for  baseboard devices.
1998-04-19 02:52:45 +00:00
jonathan 53c671e26c Add locore assembler functions to read mips3 cycle counter, and
read and write compare register (controls cycle-driven periodic interrupt).

Use cycle counter for microsecond time on mips3, but for now only on
3min motherboards (5000/150).  the MAXINE baseboard microsecond
counter is more stable and I don't ave no 5000/260 to test.

XXX clkread() is a mess, it should be rewritten.
XXX should add nanotime() to give inkernel nanosecond resolution,
    and then microtime() reworked to use nanotime().
1998-04-19 01:48:34 +00:00
jonathan 4ea6444493 Decsystem 5100 (aka mipsmate aka kn230) support:
* dec_5100.c: sysconf, interrupt, and  motherboard (drain writebuffer)
   support for 5100.
 * support for hardware kludge in 5100: sii DMA buffer is hardware
   padded to alternate 32-bit words, not alternating 16-bit  halfwords.
 * 5100 has no framebuffer, console is wired to serial port 0.

With ibus support, boots as far as exec'ing init, and hangs.
1998-04-19 01:27:02 +00:00
tv b21bfbde11 Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
jonathan d850158a7e Garbage-collect pmax_boardtype. Remoe pmaxtype.h includes from TC
framebuffer code. Elsewhere, use systype.
1998-03-31 11:32:52 +00:00
jonathan e485e43d44 Add writebuffer-flush for Decstation 5400, 5100 which use
coprocessor 3 for writebuffer control.
1998-03-31 11:04:10 +00:00
jonathan 88d943c976 Add emtpy entries for unused systypes between 5400 (0x6) and 5500 (0xb) 1998-03-31 11:00:01 +00:00
mhitch 57f61ecbbd Modify TK50 check to also check for a TZ30 tape, and adjust the modesense
data length accordingly.
1998-03-30 19:50:47 +00:00
jonathan ba4e7c74a9 Remove ancient non-MI pmax/tc/tc.c code. 1998-03-30 10:41:34 +00:00
jonathan 2f23758d46 garbage-collect "extern int systype" 1998-03-30 09:52:11 +00:00
jonathan 9d3e5cca36 garbage-collect old integrated frontend from sii backend. 1998-03-30 09:47:51 +00:00
jonathan 05bfc158d1 Undo previous rev; systype is declared extern in pmaxtype.h (while it lasts). 1998-03-30 09:44:03 +00:00
jonathan fff42c01c8 Define IPL_ constants for pmax. 1998-03-30 09:07:08 +00:00
jonathan 920f9e8dc9 Declarations for shared 3max(kn02)/3maxplus(kn03/kn05) memory
subsystem and NVRAM code.
1998-03-30 09:02:03 +00:00
jonathan e7e94824b9 Move sprintf() of model string after call to model-specific *_os_init()
routine, so that cpu_mhz is set.
1998-03-30 06:45:37 +00:00
mrg ca86fc945e <pmax/pmax/trap.h> has been obsoleted... 1998-03-30 04:45:50 +00:00
jonathan b800227f95 Garbage-collect old code for direct attachment. 1998-03-30 02:34:25 +00:00
jonathan e7312dce1d * Mouse reset blocks waiting for response for mouse.
Only initialize the mouse if we are using rcons as the console device.
1998-03-30 02:15:37 +00:00
jonathan 0e0d7a04aa Split 3max (kn02) and 3maxplus (kn03, kn05) memory-error handling out
dec_3max.c into a shared file. These models have compatible memory
subsystems, the same memory slots, and (apparently) the same error reporting.

Add markers for where MNN probes for configurations with a mixture of
RAM sizes and for Prestoserve NVRAM (in normal RAM slots) should go.
1998-03-29 01:12:14 +00:00
jonathan 6b2d0fa8a0 * Create /sys/arch/mips/include/intr.h, with extern declaration of
interrupt-callout vector from mips locore dispatch code to port code.
* Move branch-emulation declaration to mips/include/trap.h.
* Garbage-collect pmax/pmax/trap.h.
  Not needed now pmax/pmax_trap.c is gone, and after above tidy-up.
1998-03-26 12:46:33 +00:00
jonathan 01be9f533f Add extern declaration of old "systype" global variable holding model type,
until all pmax code uses platform support.
1998-03-26 11:44:28 +00:00
jonathan 4d3f17a9f7 Garbage-collect oldstyle model-select options from GENERIC. 1998-03-26 11:35:42 +00:00
thorpej dd3d062237 Delete a couple of gratuitous printfs. 1998-03-26 06:36:36 +00:00
thorpej 8a86fd47be It's Just Wrong to configure a KN02 system slot as an IOCTL ASIC, but
since it's currently done that way, nuke the gratuitous printf that
reports the behavior.
1998-03-26 06:35:27 +00:00
thorpej 38d5126caf Set cpu_model in the dec_foo_init() functions, make them consistent and
descriptive, and print the model before reporting physical memory size.
1998-03-26 06:32:37 +00:00
thorpej b6fca1a9c8 The line between "family" and "model" are ... very fuzzy on the DECstation.
So, don't bother.
1998-03-26 06:27:57 +00:00
thorpej d654444e88 Right now all platforms use the tc_slot_info[] stuff, so put it in a place
where everyone can get at it.
1998-03-26 03:12:05 +00:00
thorpej 17513c206c make this compile 1998-03-26 01:09:04 +00:00
thorpej 60e832dc24 Make this compile. 1998-03-26 01:01:13 +00:00
jonathan b40a3c98f5 Use an MD name for the FPU-interrupt mask, as in PR # 4399.
mips-based Sony news wire the FPU to hard-interrupt 3, rather than 5
as recommended in Kane.
1998-03-25 08:35:39 +00:00
jonathan 5456233e69 Garbage-collect old warnings.
Cvs: ----------------------------------------------------------------------
1998-03-25 07:43:12 +00:00
jonathan 5aa93520b5 Pause after failing to find the same driver as the PROM. 1998-03-25 07:35:05 +00:00
jonathan a47a813037 Reinstate workaround for old PROM (3100) return values. 1998-03-25 07:30:28 +00:00
jonathan 5dbbcd7d4d Garbage-collect BRAINDAMAGEd code (see pr 4438).
Attachment of keyboards and mice needs more work.
1998-03-25 06:27:32 +00:00
jonathan 383ff0cb59 * Use new defopt model-specific options and opt files.
Replace all DS5000_* and DS3100 ifdefs with ifdefs on DEC_ options.
* Use MI declarations, not pmax-specific, in model-specific init
  that uses baseboard (ioasic) registers.
* Further cleanup of machdep.c.  Clock-tick still needs more thought.
* Use 'ibus' names for 3100 baseboard devices in MI code.
1998-03-25 06:22:19 +00:00
jonathan ee65226ab6 Declarations for shared 3min/maxine memory handler. 1998-03-25 06:04:31 +00:00
jonathan dace384659 Update config files after splitting model support. 1998-03-25 04:17:08 +00:00
jonathan 7c6a97f474 Update GENERIC and R4000 configs after splitting model-speciifc support. 1998-03-25 04:05:35 +00:00
jonathan 6975dc93a9 Split sys/arch/pmaxpmax/{machdep.c,trap.c} as suggested by Jason Thorpe:
* add "Platform" support inpmax/pmax/sysconf.c and pmax/include/sysconf.h
   (based on Alpha cpuconf.[ch], with a namechange to avoid clashes with
   support for  models of MIPS cpus. They  differ more than Alphas).

 * For each supported model of DECstation, create a separate file
   with the support for that model.  Use model codenames, since
   support is really baseboard-specific and CPU daugherboards can change.
   Move code from machdep.c and pmax_trap.c,
   Add sysconf (nee "cpuconf") support.

 * Rename model-specific functions to match sysconf names.

 * Clean up autoconf.c.  Use platform callbacks.

 * Retire pmax_trap.c.

Leaves  I/O bus configuration and console configuration untouched.
1998-03-25 03:57:53 +00:00
jonathan 6a3abc10f7 Create in rconsvar.h, with exported variables and RCONSDEV. 1998-03-24 09:51:23 +00:00
jonathan 1c0730217a Rewrite pmax console-probing code from scratch
as pmax/dev/findcons.c:
 *  Follow the same logic: look for the device the PROM is using.
 *  If it's a framebuffer and we don't have a driver for it, try other
 *  framebuffers in PROM search order.
 *  If no match found, warn user and fall over to serial console.
 *  if no serial console found, go back to PROM.

Rework tc/scc.c attach routine to give cleaner initialization semantics.
Prune out old 'braindamage' code.
1998-03-24 08:39:02 +00:00
jonathan 3172e096d3 Move pmax PROM-console I/O callbacks out of pmax/pmax/cpu_cons.c
into pmax/dev/promio.c, with decls in promiovar.h.

Remove obsolete cpu_cons.c and old pmax console-probe code.
1998-03-24 08:31:34 +00:00
jonathan fd312c64ee Fix off-by-one botch in cdevsw entries which broke ipf, tun.
Rearrange to match existing MAKEDEV entries. Add lkm back in.
1998-03-24 04:17:58 +00:00
jonathan 6d836436ac Commit snapshot of pmax console rework as basepoint for 1.3.2 pullup:
* Do rcons output properly, using cn_tab->cn_dev which points
   at rcons cdevsw entrypoints.

 * The pmadx console code was using keyboard (serial) device
   (major,minor) for raster consoles with special code in the keyboard
   drivers to catch output intended for consoles, pull it off the device
   queue, and print them via cnputc().
   Ifdef out  RCONS_BRAINDAMAGE.

* Other minor cleanup to pmax scc driver.
1998-03-24 00:23:55 +00:00