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