Commit Graph

1463 Commits

Author SHA1 Message Date
pk a13464f5c9 Garbage collect. 1997-03-22 22:13:17 +00:00
pk f839bb9816 Add a `[ide]c_ncachelines' field to cacheinfo structure; initialize
and use it where appropriate.
Add `swift' and `turbosparc' cache enable function.
1997-03-22 22:03:25 +00:00
pk 8d0c0fd49b For each major "module", define a separate set of MMU control register bits. 1997-03-22 19:15:53 +00:00
pk e38b52a46b Thinko. 1997-03-21 16:29:34 +00:00
pk 1bc742e6dd cypress_cache_enable: clear bits explicitly before setting. 1997-03-21 15:35:51 +00:00
pk d584dba41d Use `setpgt4m()' in some more places. 1997-03-21 15:19:29 +00:00
pk 3a7c1b8d57 viking: flush cache before enabling MMU. 1997-03-21 14:30:19 +00:00
pk e221d20b5b Compute a cache attribute correctlier. 1997-03-21 08:39:40 +00:00
pk cb8601ae21 In viking_pcache_flush(), use a "flash flush" during boot-strapping. 1997-03-21 01:49:03 +00:00
pk 28350d7d18 Set pcache_flush_line function pointer for correct cache configuration. 1997-03-21 01:47:15 +00:00
pk 31f3ff5346 Store cache associativities in the `cacheinfo' structure, and use it
in computing the cache "alias distance" and in the viking cache line
flush function.
1997-03-21 01:32:15 +00:00
pk d79f5b1733 Add declaration. 1997-03-20 23:57:30 +00:00
pk 5704efd375 Replace many setpte4m() calls with a simpler helper function because
the address of the desired PTE location is readily available in the
callers context (setpte4m() retraces the entire 3-level structure
to arrive at the PTE location).

Also, in many cases we can do away with the distinction between pmaps
that have or have not allocated a context. This is really only useful
in cases where we're interested in the REF or MOD bits which can differ
in the TLB version of a PTE.  By doing this, we avoid getpte()'s which
in many cases instruct the MMU to start a table walk only to find out
that there's nothing there after going 2/3 of the way, or waste a TLB
entry because of TLB flushing soon after getpte() completes.

In addition, there's a hook to flush the cache line corresponding to
the (kernel virtual) location of a PTE entry when it gets altered.
1997-03-20 23:48:37 +00:00
pk 6cea599cbf Add hook for flushing a single cache line. 1997-03-20 23:26:23 +00:00
pk 63c1c6ab1c Remove a bunch of no-ops. 1997-03-20 21:44:21 +00:00
pk 5718c246fd Define various no-op functions. 1997-03-20 21:16:20 +00:00
pk 7cf0d72881 Add a `no-op' function that the compiler can not touch. 1997-03-20 21:10:31 +00:00
mycroft 7a55cafeeb Implement set_format. 1997-03-20 16:51:38 +00:00
thorpej 9018eb5208 Use if_media to select media (or autoselect rules) on the Sun4m. 1997-03-17 03:24:26 +00:00
pk a372844a7a Add fix_align() and emulinstr() prototypes. 1997-03-15 22:25:15 +00:00
pk 27b2f0ec7c Fix a `new-ARP' pasto. 1997-03-15 22:13:55 +00:00
pk cc87278540 Remove trailing comma in enum definition. 1997-03-15 20:54:10 +00:00
pk ad1f2b7812 Remove call to mmu_pagein4m(), which is of little use. 1997-03-15 20:31:33 +00:00
pk f8918b9be9 Simplify `4m' versions of pmapbootstrap() and mmu_reservemon():
allocate and initialize all kernel page tables before looking at the
PROM maps, which allows mmu_reservemon4m() to simply walk the PROM tables
without having to allocate bits and pieces of our own kernel tables.

Slightly optimize getcontext() macros in mutli-arch kernels.

Remove un-needed `4m' version of mmu_pagein().
1997-03-15 20:24:09 +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
christos 4b697aa304 add emul.c 1997-03-15 02:36:00 +00:00
christos 358f6940ee - fix return value in case we failed to write to the destination register.
- pretty-print registers.
1997-03-15 00:39:51 +00:00
christos 2c62945461 - move instruction emulation and alignment fixing to emul.c
- add sparc-v8 {s,u}{mul,div}{cc,} instruction emulation
1997-03-14 23:57:58 +00:00
christos d9d8878ed1 Asi instruction struct was missing the immediate bit! 1997-03-14 23:54:07 +00:00
mycroft cbbcf185ae Put the genassym.sh output in a temp file, and mv -f it, in case
it fails spectacularly and doesn't clean up.
1997-03-14 23:23:45 +00:00
cjs ca5f101ba7 Remove code that stops transfers of >63K. The Sun 4 doesn't have this
limitation, and minphys() is supposed to catch this on other architectures.
1997-03-14 19:57:20 +00:00
pk 8a5abffaf5 Add some instrumentation to keep track of PMEG allocation.
Enabled #if DIAGNOSTIC.
1997-03-14 14:28:45 +00:00
cgd e36a5ca4de change microcode array definitions from "unsigned short" to the more
correct u_int16_t, and remove bogus casts that the old definition
required.
1997-03-13 04:07:44 +00:00
mycroft 919efaeb60 Make the microcode table const. 1997-03-13 03:33:03 +00:00
mycroft ac3b8b13b7 Don't share the silence block between devices. Make silence filling work for
more encodings, and make it device-independent.  From Lennart Augustsson, in
PR kern/3305.
1997-03-13 02:19:32 +00:00
cgd 96153388c0 add in the 'isp' device, for Qlogic ISP 1020-based Sbus SCSI board support 1997-03-13 00:46:13 +00:00
pk 9ceaaf3e7b Turn off "cache pagetables bit" on non-MXCC modules. 1997-03-12 22:52:19 +00:00
mycroft b8d7e3deab No longer needed. 1997-03-12 22:40:07 +00:00
cgd cf26d31ad2 NetBSD RCS ID tweaks, a few comment block tweaks. Also, make copyright
notices consistent (per Matt Jacob).
1997-03-12 21:06:41 +00:00
cgd 099e30a322 ISP 10x0 driver from Matthew Jacob of NASA Ames Research Center.
(March 12, 1997 version).
1997-03-12 20:44:50 +00:00
pk 8e4a126035 Use `mcxx' from cpuinfo instead of re-consulting the MMU registers 1997-03-12 15:44:28 +00:00
christos 0d71b22d50 Use genassym.cf 1997-03-12 15:17:13 +00:00
christos 3e35754576 Added genassym.cf 1997-03-12 15:16:35 +00:00
pk 6e3c9f3b59 Make sure to disable interrupts in the Interrupt Enable register as soon
as we've mapped it.
1997-03-12 11:04:35 +00:00
pk b197276005 Correct output from cpumatch_unknown() and add missing viking variant
to cpu table (noticed by Andrew Gillham).
1997-03-12 09:08:29 +00:00
cgd a0d3809966 specs for ISP 10x0 (isp) driver Sbus attachment. From Matt Jacob. 1997-03-12 06:43:25 +00:00
pk 92d853e309 4m memory fault traps: simplify fault address logic, since per-CPU
fault-status reading stubs pre-cook the arguments.

illegal instruction trap: catch iflush instructions that cause this trap
on some CPU/MMU combinations.
1997-03-11 01:20:25 +00:00
pk 01e424f233 Insert RCS Id. 1997-03-11 01:03:07 +00:00
pk abc39039f1 Move some parts of CP detection to cpu_attach() in cpu.c.
Call get_cpuinfo() for the boot CPU to collect the minimum information
to get the bootstrap rolling.
sun4/sun4c: the Interrupt Enable register is now mapped here after pmap
is initialized (was in locore).
Replace `cpumod' and `mmumod' with `cpuinfo.*' equivalents.
Allow more than one CPU to be configured in mainbus_attach().
1997-03-11 01:01:59 +00:00
pk 476ef3b431 Per-CPU information which is collected in cpu_attach().
Many things in here were imported from an earlier version from Aaron
Brown and are not yet used. This version has all the attributes of a
snapshot; more to come as addtional CPU/MMU details get implemented.
1997-03-11 00:55:24 +00:00
pk eb71a02a7f Re-write of CPU/MMU detection code.
Use a table driven classification based on CPU and MMU implementation/version
fields. Each CPU class or module defines a collection of routines that
implement CPU or MMU specific operations that can collect detailed setup
information.

All information is collected in a `cpu_softc' structure provided by the
auto-configuration code. However, in the interest of SMP support this
structure is located at a fixed virtual address identified by the
symbol `cpuinfo'. The `boot' CPU currently uses the the physical page(s) at
address 0x2000 for its cpuinfo. Consequently, the fixed virtual address
will be `KERNBASE+0x2000'.

The cache flush routines for several systems (sun4/4c vs. sun4m;
virtual vs. physical tags) have been factored out. Function pointers
to an appropriate set are located in `cpuinfo'. The former global
`cacheinfo' structure is now also a part of `cpuinfo'. Because of the
fixed virtual address of `cpuinfo' no extra performance penalties
are incurred by this move. In multi-architecture kernels, there's
no longer the need for run-time `cputyp' tests in this part of the system.
1997-03-11 00:44:00 +00:00
pk 8d2c03c810 Replace `cputyp' run-time tests by inserting multiple branches and NOPing
some at startup depending on architecture.

Use `get_faultstatus' field in `cpuinfo' (initialized in cpu.c) to branch
to CPU/MMU specific fault status reading stubs on memory fault traps.

Remove code top map the Interrupt Enable register on sun4/sun4c. Its VA
has moved to a high location and is now mapped in autoconf.c after
pmap has initialized. Note: this renders NMIs during bootstrap() fatal
(maybe loading %tbr should be deferred).
1997-03-11 00:09:29 +00:00
pk 7d6231865e Use cache flush routines provided in `cpuinfo'. 1997-03-10 23:55:40 +00:00
pk 129d9d5cf6 Move VA of the sun4/sun4c Interrupt Enable register from locore.
Define VA for the per-CPU `cpuinfo' structure.
1997-03-10 23:54:41 +00:00
pk a566decb35 Use many things from the newly defined `cpuinfo' structure:
- vcache_flush_*() routines.
	- cpu_type/cpu_flags
	- per cpu context table and context administration glue.
	- different macros to enable sun4/3-level mmu support.

Simplify sun4m version of pmap_bootstrap() a bit; more to do still.

Move installation of page tables in MMU into a separate routine, in
anticipation for SMP.
1997-03-10 23:26:11 +00:00
pk ca1c4cc6c3 Define CPUINFO_FAULTSTATUS for use in locore.s 1997-03-10 23:15:03 +00:00
pk 4f30101165 Leave `has_iocache' unset if cache not enabled. 1997-03-10 23:13:59 +00:00
pk 593dbcc7dd Replace `cpumod' with `cpuinfo.cpu_type' equivalent. 1997-03-10 23:09:55 +00:00
pk d1be7c7ea4 New location of Interrupt Enable register on sun4/sun4c. 1997-03-10 23:08:31 +00:00
pk d8fc2afd1e Replace `cpumod' with `cpuinfo.cpu_type' equivalents. 1997-03-10 23:01:40 +00:00
pk 3811437545 Redo attach code somewhat. Have a go at matching le's and lebuffer's on
machines where the PROM does not provide a parent/child relationship.
1997-03-10 22:58:22 +00:00
pk 9119c9c189 Add a field indicating this instance has attached to an `le', so we
can have a go at matching le's and lebuffer's on machines where the
PROM does not provide a parent/child relationship.
1997-03-10 22:56:54 +00:00
pk e5f0b8a132 Remove `cpumod' and `mmumod' and several related constants.
This functionality is now taken over by cpuvar.h
1997-03-10 22:50:37 +00:00
pk 95d5138e93 Move some constants from param.h in here 1997-03-10 22:47:52 +00:00
pk 137dda4ac6 Add getmid 1997-03-10 21:49:11 +00:00
pk 18b2bdb000 Fix calculation of max virtual memory to be gobbled up by the buffer cache.
Apply "stop-gap" nbuf clamp only on sun4/4c and if nbuf not explicitly
configured in.
1997-03-03 23:07:15 +00:00
thorpej e33bdc63ae Update for MI 53c9x driver. 1997-02-27 01:30:05 +00:00
thorpej f868730b6a esp carries ncr53c9x attribute 1997-02-27 01:17:09 +00:00
thorpej 5464afa761 Convert the SPARC esp driver to be a front-end for the MI 53c9x driver. 1997-02-27 01:16:19 +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
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
abrown 4ca0768334 Fix bug in pmap_page_copy and pmap_page_zero that caused data corruption
when paging on Sun4m machines with SuperSPARC processors. Essentially,
the copy/zero operations were done via uncached memory accesses, which
bypassed the snooping logic of the write-back caches, causing stale data
to be copied or generated.
Pointed out by Chris Torek <torek@bsdi.com>
1997-02-22 00:06:06 +00:00
pk ddb0d6fa06 Add `-mno-fpu' to compiler flags; pulled up from 1.2 version. 1997-02-05 00:12:46 +00:00
pk 095b310e77 db_expr_t is now a long. 1997-02-05 00:01:50 +00:00
pk 79da30bb31 typo. 1997-02-04 21:59:26 +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
mrg 96c21c1fcf no need to delcare mcount here; fixes warnings(errors) when compiling a kernel with profiling. 1997-02-01 20:56:40 +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 2525eee053 Use new machine-independent mountroothook code. 1997-01-31 02:15:54 +00:00
thorpej 801f7e1a0e Use new machine-independent setroot() and mountroothook code. 1997-01-31 02:07:29 +00:00
thorpej f159c829df Adopt for new file system and root spec grammar. 1997-01-31 02:06:41 +00:00
pk 772b81afe0 In cpu_startup(), after configure() returns, re-zero proc0's user area.
This largely nullifies the effect of proc0's stack running into the
user area during auto-configuration.
1997-01-27 21:18:17 +00:00
pk 4364fc8f2c Adapt to sys/lib/lib{sa,kern}/Makefile.inc changes 1997-01-24 01:18:22 +00:00
pk 0a5eeae37c `::' => `:' ; per recent sys/lib/*/Makefile.inc changes. 1997-01-24 00:58:20 +00:00
thorpej e256e03227 Arrange the code that sets the options flags such that the user can
completely override the defaults (including disabling DMA) in the
kernel config file.
1997-01-23 02:11:23 +00:00
pk a9142bd25b Drop strchr(), it's in libkern now; we didn't use it anyway. 1997-01-21 21:07:04 +00:00
thorpej 7b40f5228e "md" is declared in sys/conf/files, now. 1997-01-21 09:39:20 +00:00
mrg 152f8d880d add MSDOSFS. 1997-01-17 03:43:56 +00:00
mrg c71a371532 use pseudo-device ipfilter, not ipl. 1997-01-07 11:35:01 +00:00
mrg 394d540361 add PFIL_HOOK and ipl, both commented. 1997-01-06 07:35:39 +00:00
mrg fb5d192bc3 include the GENERIC kernel, and then map the disks. 1997-01-06 07:34:14 +00:00
mrg ad6281b640 use NIPL. 1997-01-05 21:32:15 +00:00
mrg ca896854ef add ipl device. 1997-01-05 13:43:04 +00:00
pk a0f6df960f RAMDISK_HOOKS => MEMORY_DISK_HOOKS 1997-01-01 23:46:29 +00:00
mrg 718a70d239 oops; rd -> md paul left behind... 1996-12-31 07:12:43 +00:00
pk d5b11782b5 rename: ramdisk => md 1996-12-28 23:27:00 +00:00
pk 603b61c3e0 rename: ramdisk => md 1996-12-28 23:22:07 +00:00
pk 31045b4490 Annul `__builtin_classify_type' and `__extension__' if __lint__. 1996-12-27 20:55:28 +00:00
pk be41891152 For now, define `__indr_reference' and `__warn_references' as empty
macros if __GNUC__ not defined.
1996-12-27 20:51:31 +00:00
pk 269e64e16b asm => __asm__ 1996-12-27 20:48:56 +00:00
pk bb12d8fd9a Prevent `unused function' warning (from Robert Evans; PR#2770). 1996-12-23 01:46:30 +00:00
thorpej e34f47039d XXX Stop-gap for larger MAXBSIZE: limit nbuf to 128, so we don't chew
XXX up all of the available pmegs lower-model SPARC CPUs.
1996-12-21 06:21:56 +00:00
pk 9b87837f21 Panic if `auxreg' is requested but is not there. Not much we can do about
users of AUXIO_REG; they'll die with a data fault.
1996-12-11 00:51:06 +00:00
pk 2f296724a8 Not all sun4m's have an `auxio'. 1996-12-10 23:24:56 +00:00
pk e0df2a7e78 Kill __BROKEN_INDIRECT_CONF. 1996-12-10 23:19:38 +00:00
pk 3f316d7783 Comply with recent autoconfiguration changes. Diffs graciously supplied
by Chris Demetriou.
1996-12-10 23:19:13 +00:00
pk 841d1ec634 Comply with recent autoconfiguration changes. Diffs graciously
supplied by Chris Demetriou.
1996-12-10 22:54:46 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
pk 92c4c71040 Finish import of floppy formatting code; not really usable yet, lots of
data overruns.
1996-12-10 14:44:53 +00:00
thorpej ef5333043b Copyright assigned to The NetBSD Foundation. 1996-12-09 17:46:44 +00:00
pk 10a182e399 Revise communication between hw & sw interrupt handler.
Deal with sun4m software interrupt mechanism.
1996-12-08 23:41:39 +00:00
pk 837dd8e3e1 Import formatting code from the i386 version.
Revise communication between hw & sw interrupt handler.
1996-12-08 23:40:32 +00:00
pk 6b31797b23 Detect `lebuffer' parents and use the provided buffer. 1996-12-06 22:07:59 +00:00
pk d539e60bb2 Uncomment lebuffer devices 1996-12-06 22:02:32 +00:00
pk 554078cb87 Declare lebuffer 1996-12-06 21:57:57 +00:00
pk 31b46bcf59 Special Lance buffer glue. 1996-12-06 21:52:01 +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
pk 0d4df7bdb3 Handle T_IDIV0 like T_DIV0. 1996-12-01 23:21:07 +00:00
pk 08b929f619 trap 0x2a: divide by zero for hardware [su]div instruction. 1996-12-01 23:19:00 +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
jtc 9da5f60715 PROF -> GPROF 1996-11-30 02:48:57 +00:00
pk c5c074b053 remove header munging hack. 1996-11-29 15:00:25 +00:00
pk 48830f7cb1 ffs bootblock install can be simplified since installboot(8) handles that now.
To install a TFTPable boot image, we have to play the header tricks here.
1996-11-29 14:59:32 +00:00
pk af0ec0d1d4 installboot(8) now handles required a.out header munging.
Also, the munging is extended by inserting an instruction that branches
past the header, so the same boot image can be used on all supported
sun platforms.
1996-11-29 14:55:20 +00:00
pk b2f875fce9 Handle Sbus burst settings in dma reset(). 1996-11-28 10:30:34 +00:00
pk 7e3ef21ca4 Fix typo in D_BURST* macros. 1996-11-28 09:37:34 +00:00
pk 4d21d576ef Add some `DMA ESC gate array' specific constants. 1996-11-27 21:50:42 +00:00
pk 13ad3421cd DMA draining macros have moved to dma.c 1996-11-27 21:49:53 +00:00
pk c7f438cd11 Handle the `ESC gate array' variant of the DMA engine, including an
essential bug work-around. Graciously supplied by David Miller.

Also re-arrange the macros that do the dma drain song-and-dance for
better clarity.
1996-11-27 21:48:19 +00:00
pk c0a9fe4e7a Cancel any queued timer events before re-scheduling a timeout, so esp_abort()
can be called from other places besides the timeout handler.
1996-11-27 21:34:59 +00:00
pk 4526babc82 Pay attention to DMA errors as reported by DMAINTR() returning -1. If this
happens reset everything.

Re-schedule a timeout when first attempting to abort an operation.
1996-11-27 21:24:20 +00:00
pk c1274b3cff Stabilize timeout values in fdcresult() and out_fdc() by adding delay()s.
Noted by Jason Thorpe over in the i386 driver.
1996-11-27 21:14:33 +00:00
pk 3cb63476b7 One control block per target is insufficient if you have a full complement
of targets attached and access those simultaneously (like in a ccd(4) array).
We (now) allocate (somewhat arbitrarily) three per target.
Noticed by Marshall Midden.
1996-11-22 22:36:57 +00:00
pk 1ab7502adf Initialize cache aliasing bits for MicrosparcIIs. 1996-11-18 11:23:32 +00:00
pk ab9677d1d6 Move *PAGER options and `machine sparc' to std.sparc. 1996-11-18 00:10:19 +00:00
pk 89b8591c60 Add explicit casts to `%l*' formatted arguments. 1996-11-16 23:14:58 +00:00
pk b61f7eb526 Remove `unused variable' warning. 1996-11-16 23:00:24 +00:00
pk ba50a4fa6e Remove "trap#29" debugging code. These traps have disappeared since a bug
was fixed in the pamp code ("stale PTEs", pmap.c rev. 1.62).
1996-11-16 20:45:13 +00:00
jtc 16b48272c4 Define _BSD_CLOCKID_T_ and _BSD_TIMER_T_ 1996-11-15 22:38:45 +00:00
thorpej 35c9c776fe Use bitmask_snprintf(). 1996-11-13 06:13:39 +00:00
thorpej 4ad70417a0 Centralize the declaration of the "en" driver (Efficient Networks, Inc.
155Mb/sec ATM interface).
1996-11-12 23:58:01 +00:00
pk 037130a502 Allow larger text (64MB) and data (256MB) segments.
On sun4/sun4c with a virtual address hole (starting at 512MB), this seems
like a reasonable compromise: about 196MB left for shared libs and sysv-style
shared memory segments.
On the sun4m the limits can easily be made larger: consider turning
MAXTSIZ and MAXDSIZ into tunable variables..
1996-11-12 21:08:51 +00:00
cgd 000ff895c3 sync with alpha version 1996-11-12 21:06:21 +00:00
pk 8896ec778e Declare `cgtwo' and `rd' character devices. 1996-11-11 23:57:12 +00:00
pk 615fe88f6f Add missing entries: cgtwo, uk, ss 1996-11-11 23:54:56 +00:00
pk a65399dce0 Need to include <machine/param.h> 1996-11-11 23:53:45 +00:00
pk d9a980c066 Adapt pmap_dumpsize() and pmap_dumpmmu() to new-style kernel crash
dumps according to the layout in <sys/kcore.h> and <machine/kcore.h>.
1996-11-09 23:08:56 +00:00
pk 155ab54456 New-style crash dump format requires a slighty different interpretation of
the variable `dumpsize' (used by savecore(8)) and that the CPU specific data
gets dumped first.
Also, squash a typo that prevented the crash dump to be shifted towards the
end of the swap partition. In fact, the entire dumpconf() routine has been
redone, mostly by pasting large chunks from the alpha port.
1996-11-09 23:02:17 +00:00
pk 0217df3897 Define new-style kernel crash dump format. 1996-11-09 22:52:22 +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
pk aa965ce3bf Declare device `audio' at sbus. 1996-11-03 11:18:15 +00:00
pk 92d21510ef Drop in a sun4m version of AUDIO_SET_SWINTR; thanks to Nick Sayer for
the reminder.
1996-11-01 23:32:15 +00:00
pk 33558b9e5f Take care of the sun4m way of raising soft interrupts. 1996-11-01 23:30:09 +00:00
pk 19b8bfdf3d Declare device `audio' at sbus where it resides on Microsparc machines,
from Nick Sayer's PR#2908.
1996-11-01 23:15:51 +00:00
pk 59b640b2fc Call kvm_uncache() from dvma_malloc() where it belongs and make sure
it's called when SUN4M is nor defined.
Merge in changes from Jason to make dvma_mapin() work on (sun4c) machines
with a write-back cache.
1996-10-28 23:02:54 +00:00
abrown cafb62af25 Fix timer initialization so that we don't gain one extra microsecond per
second on Sun4m machines. Although this was in the noise of the unstable
Sun clock crystals before, the discrepancy amounted to about 100 ppm, and
thus made NTP perform poorly. NTP now works happily on my SS20...
1996-10-28 00:20:31 +00:00
pk fd8ac8b221 If no specific kernel architecture is requested, define the CPU_* and
NBPG et.al. as in the generic case. This would be the expected thing to do
when compiling LKMs and such.
1996-10-22 19:11:19 +00:00
pk 52acac0518 Regroup the definitions of NBPG, PGOFSET and PGSHIFT into the section that
enumerates the possible SUN? combinations.
1996-10-20 20:26:52 +00:00
pk 62c32ff2dc Drop a duplicate `#include ppp.h'; noted by Chris Demetriou. 1996-10-20 19:32:42 +00:00
pk 4dd0b24bf9 Make sure to refer to `sc_ovtype' only when SUN4 is defined, as noted
by `r.evans@ic.ac.uk'.
Also, explicitly testwhether we're dealing with a pfour.
1996-10-20 19:18:00 +00:00
pk b246894d9b Document `-a karch' option.
Fix a formatting nit.
1996-10-20 16:17:04 +00:00
pk 5ced353a7a Add `-a <arch>' switch to force the target architecture. Retain `-h' for
compatibility.
1996-10-20 16:00:14 +00:00
thorpej 150c33e60b Use ${INSTALL}. 1996-10-18 05:55:26 +00:00
thorpej c9592404ce Clarify the comment about enabling interrupts above level 11, suggested
by Andrew Gillham.
1996-10-18 01:36:16 +00:00
christos 8d9699acda backout previous kprintf change 1996-10-13 02:59:55 +00:00
christos 7d1960f502 backout previous kprintf change 1996-10-13 02:59:38 +00:00
christos 0039d4aa0c backout previous kprintf change 1996-10-13 02:59:25 +00:00
christos 19d8368f2f printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:44:42 +00:00
christos de08983084 add in_addr_t and in_port_t 1996-10-11 00:43:00 +00:00
cgd 472889f8e4 moved to aout_machdep.h (via repository copy) 1996-10-08 12:57:37 +00:00
mrg a632bcbe9c update for kern/sa lib Makefile.inc changes. 1996-10-05 23:46:43 +00:00
mrg 7b71cdec46 minor copyright update. 1996-10-05 23:41:53 +00:00
thorpej 5c34a4ce35 Use FBTYPE_RESERVED3 for our `unknown' fbtype ... RESERVED1 seems to
have disappeared.
1996-10-04 20:35:53 +00:00
thorpej 3db7555465 Returning ENODEV is not correct in a poll entry point. Instead, since
read/write returns an error, use seltrue().
1996-10-04 20:34:33 +00:00
abrown 748b2c4bbe Add cgfourteen framebuffer to generic configs 1996-10-03 00:05:41 +00:00
mrg 14d1592766 update for exec changes. 1996-10-02 07:11:45 +00:00
abrown 7557090650 Add cgfourteen_poll() entry point to sync with recent changes in frame
buffer cdev code.
1996-10-01 00:06:45 +00:00
abrown c04e2bf00c Add cgfourteen to conf.h.
Add new framebuffer types for recent-model graphics devices to fbio.h.
1996-09-30 23:45:10 +00:00
abrown 1547bff1c4 Add cgfourteen frame buffer at device major number 99. This is what Solaris
uses; I don't have access to a SunOS system with a cg14 to tell what
it uses.
1996-09-30 22:49:12 +00:00
abrown e46ca2d67c Add cgfourteen driver as device "cgfourteen" 1996-09-30 22:43:38 +00:00
abrown 19b3f7f50b Initial commit of cg14 framebuffer driver for Sun4m SPARCs.
- This driver supports the on-board mbus-based cgfourteen (sometimes referred
  to as "SX") video hardware present on SS20-class machines.
- It does *not* support any of the SX acceleration features.
- It does support the 8-bit mode of the hardware, and looks to X like
  a cgthree.
- It does support the cg6-style hardware cursor, even when running X in
  cgthree emulation.
- It does support DPMS power-down of compatible displays on later-revision
  cg14's.
- There is code to support the true color (32-bit) mode of the cg14 as
  cg8 emulation, but it is disabled by default because it is most likely
  broken. #define CG14_CG8 to turn it on.

The driver is not yet installed in the conf files, but I will do so
shortly...
1996-09-30 22:41:01 +00:00
mycroft 4cd799d5a9 Remove unused variable. 1996-09-28 03:37:36 +00:00
mycroft aaad0e1149 Sync with Alpha version. 1996-09-28 03:21:04 +00:00
thorpej 8d5c3b9cd1 Sync with the alpha version, fixing several SCSI protocol bugs.
NOTE: THESE FILES ARE NOW IDENTICAL TO THEIR ALPHA COUNTERPARTS.
The C preprocessor does the Right Thing when these files are built
on a SPARC.  This makes it significantly easier to diff the two
versions (until a real MI 53c9x driver is done, hint hint).
1996-09-28 01:49:06 +00:00
abrown 28068e33c0 Oops. Last change will slow down a GENERIC kernel. Add a CPU type test
for cleanliness.
KNF a return statement.
1996-09-27 18:30:15 +00:00
abrown d7ef005a81 Fix long-standing bug with Lance ethernet and Sun4m's, where each packet
would generate two interrupts, one real and one spurious. The solution
is to force a drain of the SBus->MBus write buffers after writing to the
lance to clear the interrupt. Thanks to Chris Torek for pointing out a much
easier way to do this than I had planned...
1996-09-27 15:11:43 +00:00
cgd 0e097578a2 add and use a machine-dependent header, which currently defines some
macros to use to remove #ifdefs from the machine ID case check.
Eventually, these headers will contain other information, e.g.
machine-dependent relocation information, etc.
1996-09-26 21:50:55 +00:00
christos 869fd46175 Implement T_FIXALIGN by adding code to fix unaligned accesses and a bit
in md_flags. This should bring the solaris mac emulator software a step
closer to working.
1996-09-26 18:58:33 +00:00
christos e33f712af6 Initialize md_flags. 1996-09-26 18:55:51 +00:00
christos 9db40d9ba8 Add md_flags so that we can have a fix-misalign-accesses flag. 1996-09-26 18:51:17 +00:00
thorpej ab49e34013 Don't attach an rcons to a cgfour/cgeight overlay plane; it doesn't work
properly.  Problem reported by Charles Hannum.

XXX This is temporary until someone with the hardware has time to fix it!
1996-09-20 17:35:49 +00:00
mrg c98a14ad90 update these for poll(2) changes. 1996-09-12 01:35:34 +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
cgd adeb6b4058 replace sequences of 8 spaces with tabs (only one instance). kill
unnecessary newlines after return statements but before function
close-braces.
1996-09-09 18:01:30 +00:00
mycroft 2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
thorpej fa0e4a3082 Make the SPARC kernel compile again after recent tty cdevsw changes. 1996-09-05 09:32:47 +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
pk 686dd328c0 Faster checksumming, contributed by Zubin Dittia. 1996-08-29 20:14:49 +00:00