pk
fa75ea39e1
Move delay() to locore, so we control code generation and can avoid
...
touching memory locations whose caching disposition can perturb timings.
1996-04-29 21:08:37 +00:00
pk
e147a74bbb
Chip needs much more time to think things over (up to 2 seconds to complete
...
a `recalibrate' command if no flop present).
1996-04-29 12:07:32 +00:00
thorpej
dc5ff52131
dk_establish() returns void.
1996-04-28 20:25:59 +00:00
pk
646acc51d0
Map the pixels explicitly on the VME32 bus.
1996-04-23 19:34:05 +00:00
pk
ee8f3dc1b8
Turn delay() into a calibrated loop. It's more accurate and compiles into
...
a `leaf' routine, avoiding unexpected large delays by overflowing the
register windows.
1996-04-23 19:25:25 +00:00
abrown
6b768c677a
Now that we have lehwinit() for the Sun4m, make sure that we wait 20ms
...
after changing the cable type, as specified in the chip documentation.
Also, sanity-check that sc_dma is valid in case a Sun4m ever exists without
a ledma.
1996-04-22 03:57:29 +00:00
christos
90bc31d478
remove include of <sys/cpu.h>
1996-04-22 02:50:20 +00:00
christos
a897ec996a
Remove dependency on <sys/cpu.h>
1996-04-22 02:42:00 +00:00
christos
bebf990150
Oops the name of the UTP/AUI bit changed under me...
1996-04-22 02:39:49 +00:00
christos
5253b892e9
Add a hardware dependent initialization function lehwinit()
...
to support selecting UTP media on sun4m
1996-04-22 02:37:10 +00:00
abrown
709298a10a
- Changed Sun4m DMA chip support to detect and use maximum available SBus
...
burst size when transferring data.
- Changed ledma attach code to pay attention to the PROM's notion of what
cable type is being used. Note that this patch does not fix the problem
recently discussed on port-sparc; in most cases the PROM doesn't know
what cable type is being used. The default is now TP rather than AUI,
though. A complete fix is forthcoming.
1996-04-22 02:34:53 +00:00
cgd
d7d306aeb7
change LANCE copy & zero functions' names to start with amd7990_, and
...
remove their 'integrate' (usually defined to be 'static') keywords.
when lance drivers are split up by attachment, more than one file will
reference the copy/zero functions (i.e. not just the file that pulls in
am7990.c... and eventually inclusion of am7990.c should go away entirely).
1996-04-18 00:25:11 +00:00
abrown
a0b7376b16
Add prototype and fix return type of blink() so "options BLINK" works
...
with -Wall -Werror
1996-04-13 17:40:03 +00:00
thorpej
b3897170bd
Haven't used "options RCONSOLE" for a long time. Update to the new
...
"options RASTERCONSOLE". Noticed by cgd.
1996-04-11 21:54:13 +00:00
thorpej
e17cddf913
If the power device is configured, don't forget to compile the driver.
...
Also, add some whitespace for readability.
1996-04-11 21:05:42 +00:00
thorpej
41a08fd254
Include fdc.h, not fd.h, due to change in files.sparc.
1996-04-11 19:20:03 +00:00
pk
c0919485d4
Move some of the SCSI target juggling to autoconf's fake_bootpath() routine.
...
Fix incorrect interpretation of bootpath's val[2] as a SCSI unit.
1996-04-10 20:48:35 +00:00
pk
e4394459a1
`bootdv' is gone. Instead, set the device pointer in the `struct bootpath'
...
that is passed in the attach arguments.
1996-04-10 20:46:05 +00:00
pk
c28fcc3539
Use extra value in `struct bootpath' to describe the PROM's bootpath better.
...
Use the bootpath[] array in setroot() to determine partition info in case
of boot devices of type DV_DISK. Also, precook more SCSI device info in
fake_bootpath() to simplify dk_establish().
1996-04-10 20:40:14 +00:00
pk
5f2d466997
Make room for another `value' in struct bootpath. Drop the global `bootdv'
...
in favour of storing the device pointer in the bootpath[] element corresponding
to the boot device. This also allows the opportunity to get to "intermediate"
devices (e.g. busses) should the need for this ever arise.
1996-04-10 20:33:38 +00:00
pk
4c26e95dde
Initialize relevant elements of the `romaux' structure in romprop().
1996-04-09 15:24:00 +00:00
pk
1a1a8ba8c9
Undo unintended change in previous commit: _mcount is static.
1996-04-08 20:55:36 +00:00
thorpej
940ccbc5df
Fix typo that caused sun4 machines to be misidentified as sun4c-class.
...
Fixes reported problem of binstall not stripping the a.out header from
the boot block on sun4 machines.
1996-04-07 20:00:12 +00:00
thorpej
77366064b8
Fix oversight in sun4m changes: the CPU attach code moved, so the CPU
...
was never getting attached on a sun4 machine. Fix this so that the
cache and FPU get enabled on sun4 machines. (Believe me, a 4/260 is
slot enough, *with* the cache...)
1996-04-07 06:02:20 +00:00
thorpej
56fed0c102
Fix slight oversight in previous change.
1996-04-07 05:50:59 +00:00
thorpej
d68e57ee64
Make this compile again on a SUN4-only kernel. (Avoid "unused foo"
...
warnings from gcc -Wall. While the optimizer is smart enough to
eliminate dead code, it looks like the rest of gcc doesn't Get It.)
1996-04-07 04:48:46 +00:00
chuck
e50fc72424
make netbsd/sparc boot on sun4 once again. the sun4m changes introduced
...
config lines for obio0 devices without addresses (thus cf->cf_loc[0] took
the default value of -1). we now ignore these entries on a sun4 since
they could never be valid (eliminates a 'panic:alignment' fault at bootup).
1996-04-05 21:50:05 +00:00
chuck
a7c600676f
make netbsd/sparc boot on sun4 once again. the sun4m changes introduced
...
config lines for obio0 devices without addresses (thus cf->cf_loc[0] took
the default value of -1). this caused autoconf.c to map memreg0 to
obio physical address -1 (invalid). as soon as we took a memory fault
the code in memfault_sun4 [locore] would get a Watchdog timeout when trying to
read memreg0 (a.k.a. par_err_reg).
1996-04-05 21:44:25 +00:00
pk
8eeab3102b
Probe clock registers on sun4s to make sure we attach the correct device
...
(sun4m has clocks at obio too).
1996-04-04 23:55:47 +00:00
pk
8e427a346f
Check for frame pointers we can handle (i.e. in kernel space). This prevents
...
data faults when tracing proc0's context.
1996-04-04 23:25:35 +00:00
abrown
1372d856d7
cpu.c: correctly identify Sun4m associative caches
...
kgdb_stub.c: make it compile again with Sun4m-only kernel
1996-04-04 23:06:32 +00:00
abrown
1068aa5751
Add back support for cached DVMA on SuperSPARC (sun4m) machines that was lost
...
during merge
1996-04-04 23:05:22 +00:00
pk
b0fd2dabcb
Include fd.c if (fdc | fd), so we're not obliged to define a device
...
at fdc.
1996-04-04 22:57:55 +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
pk
7311f0da23
Late-breaking patch from Aaron.
1996-04-01 21:09:39 +00:00
christos
10ffa5da40
Fix warnings when SUN4M is not defined.
1996-04-01 19:16:41 +00:00
christos
3dbbc8d3e9
Fix another printf format argument.
1996-04-01 17:37:08 +00:00
christos
4bdb6550cb
Added missing prototypes and include files, fixed parentheses so that it
...
compiles cleanly.
1996-04-01 17:36:20 +00:00
christos
362a6875bf
Remove last dependency to dev_conf.h and the file itself.
1996-04-01 17:34:34 +00:00
christos
f34addbb3b
- remove dependency to dev_conf.h
...
- remove unneeded casts for %b
1996-04-01 17:33:10 +00:00
christos
34f644d1b9
Remove casts of printf args for %b format.
1996-04-01 17:31:38 +00:00
christos
dc6ff48df6
Eliminated dependencies on dev_conf.h
1996-04-01 17:29:44 +00:00
pk
25b6ab86fe
Update device list.
1996-04-01 00:20:31 +00:00
pk
3cf5ed1f30
Various cleanup; mostly trailing spaces/tabs.
1996-03-31 23:44:53 +00:00
pk
8347d3f584
The sun4m name for this device is "auxio".
1996-03-31 23:43:21 +00:00
pk
301e978cf8
Various sun4m-related changes straight from Aaron.
1996-03-31 23:38:29 +00:00
pk
e0344005b4
Changes to match 4m-aware locore.s. Note changed `trapbase' and
...
`sparc_interrupt_{44c.4m}' labels.
1996-03-31 23:35:20 +00:00
pk
e743dda2a9
Update for 4m locore.s. Remove some items, since locore.s now #includes
...
param.h
1996-03-31 23:28:03 +00:00
pk
cf4009e56c
Include support for sun4m timers and counters: hardware register layout
...
has changed. There is a counter for each CPU (currently, just one supported).
1996-03-31 23:24:59 +00:00
pk
8de1fd22bc
Add sun4m support. Many, many changes..
...
Note on multi-architecture kernels: most architecture dependent traps are
forked off directly by having a separate trap table for each (sun4,sun4c,sun4m)
This reduces the number of tests on `cputyp' significantly, and it's easier
on the mind. There are still some entry points that need to test `cputyp',
most notably microtime().. yuck.
1996-03-31 23:19:22 +00:00
pk
6d76616bf0
The sun4m IOMMU "device".
1996-03-31 23:09:32 +00:00
pk
7b55c61c27
Include support for sun4m timers and counters: hardware register layout
...
has changed. There is a counter for each CPU (currently, just one supported).
1996-03-31 23:07:59 +00:00
pk
df2a68f25b
Add sun4m VA definitions (for clock and interrupt).
...
Make these generic for all architectures (i.e. avoid `#if defined(SUN4*)'s).
1996-03-31 23:03:31 +00:00
pk
ff109a19a3
Accomodate sun4m CPUs and caches (Aaron). Cache handling needs to be
...
revised.
1996-03-31 23:00:40 +00:00
pk
df08150880
Updates for sun4m.
1996-03-31 22:57:09 +00:00
pk
35802bf06b
Accomodate sun4m device layout (v3 PROM) and special 4m startup goo.
...
Heavily cleaned from most `#if defined(SUN4*)' stuff in favour of
CPU_ISSUN4* macros.
1996-03-31 22:55:33 +00:00
pk
678fbb4806
sun4m device definitions and bus structure.
1996-03-31 22:52:38 +00:00
pk
b2d12c182b
Aaron's sun4m-related trap handling (memory faults).
...
Note that fork() no longer return in syscall() in the child.
Add a couple of `#ifdef DEBUG's.
1996-03-31 22:51:58 +00:00
pk
d15de4b09b
Initialize DMA addresses properlier in cpu_startup().
...
dumpsys(): do not try to dump first physical page, this fucks up pmap_extract().
1996-03-31 22:48:24 +00:00
pk
3c89c0901d
Aaron's SRMMU/sun4m pmap implementation.
...
Note: multi-architecture kernels use function pointers for several PMAP
entry points.
Cut down the `#if defined(SUN4*)' mess severely by using CPU_ISSUN4*
macros (see machine/param.h) wherever possible.
1996-03-31 22:42:59 +00:00
pk
2f3ec93250
Various cleanup; mostly trailing spaces/tabs.
1996-03-31 22:38:29 +00:00
pk
66539854e8
Diddling of the `power' bit in machine control register (Aaron).
1996-03-31 22:34:40 +00:00
pk
954302ae70
Handle sun4m `ledma' and `espdma'.
...
DMA setup requires services of the IOMMU.
1996-03-31 22:32:45 +00:00
pk
7e45b3449f
Re-arrange a bit to stear clear of gcc `-Wall' bites.
1996-03-31 22:30:50 +00:00
pk
25aa56ae29
Handle sun4m `obio' devices.
...
Cleanup `#if defined(SUN4*)' mess.
1996-03-31 22:28:38 +00:00
pk
96f175d477
Add sbus_translate() to deal with slot address translations, including
...
new v3 PROM style "range" properties. This routine is also called from obio.c
(which can be viewed upon as just a another Sbus slot).
1996-03-31 22:27:15 +00:00
pk
345295ff08
Deal with sun4m le/ledma. Work around spurious interrupt problem (aaron).
1996-03-31 22:22:52 +00:00
pk
bb0897eec6
Various cleanup; mostly trailing spaces/tabs.
1996-03-31 22:21:21 +00:00
pk
1c8b452515
Add a non-interrupt-priority-lowering version of SPL(). Used by splpmap()
...
at the moment.
1996-03-31 22:20:14 +00:00
pk
76404b0bbe
Add sun4m CPU/MMU identifications.
1996-03-31 22:18:16 +00:00
pk
5703b83d00
Move autoconf subroutine prototypes to autoconf.h
...
Deal with sun4m `software interrupts'.
1996-03-31 22:17:14 +00:00
pk
8d9fbd0949
Add some v3 PROM glue.
...
Move autoconf subroutine prototypes here (from cpu.h).
1996-03-31 22:12:34 +00:00
pk
0ab4a52862
Add SRMMU/sun4m support. Size and layout of `struct pmap' has changed.
1996-03-31 22:09:13 +00:00
pk
922201e06a
Add SRMMU/sun4m definitions.
...
Cleanup (i.e. mostly delete) `#if defined (SUN4*)' in here.
1996-03-31 22:06:55 +00:00
christos
b646bc023a
New md conf.h per Jason's plan.
1996-03-30 21:17:55 +00:00
christos
393ad3332b
Don't need this anymore; it's data are moved to <machine/conf.h> and conf.c
1996-03-30 21:15:03 +00:00
christos
2d29d17da3
Deprecate use of *_conf.h and use only <machine/conf.h> and <sys/conf.h>
1996-03-30 21:13:53 +00:00
christos
c3a3efa9e6
Fix db_printf formats.
1996-03-30 21:13:02 +00:00
christos
32fe9b6a79
iUse <machine/conf.h> instead of sparc_conf.h
1996-03-30 21:12:16 +00:00
christos
e4397b82d7
Use machine/conf.h, instead of sparc_conf.h
1996-03-30 21:11:33 +00:00
christos
a1777d0168
Remove u_int casts from the printf %b formats.
1996-03-30 21:10:37 +00:00
christos
564084ce99
- add the GETHRTIME and GETHRVTIME traps. Do the best we can for them.
...
- getcontext() fills the stack_t portion of the context with an 8k size
stack, 0 flags, and below our current stack pointer. I am not sure where
to set the pointer. Thanks pk [2-2] for noticing that.
Now netscape and java work...
1996-03-26 19:09:31 +00:00
christos
70e15a2ba9
Make fpu_regs a union of doubles and ints to get the alignment of the
...
machine dependent portion of the context correct. Thanks pk [1 of 2]!
1996-03-26 19:04:48 +00:00
pk
c299fd2d61
Bitfields are unsigned.
1996-03-26 01:28:50 +00:00
pk
a8564828ee
Back to normal printf()s, now that gcc understands `%b'.
1996-03-26 00:35:25 +00:00
mrg
8d14f53bd0
install stand tools.
1996-03-25 22:48:09 +00:00
pk
3d5031d609
PROM does not like %p's..
1996-03-25 20:46:56 +00:00
pk
2dd9317452
Remove reference to sense code "internals".
1996-03-23 21:09:04 +00:00
christos
3c3a955cf2
Avoid unused label warning.
1996-03-18 21:48:19 +00:00
christos
4d4d2d999a
Remove 'volatile' from the romhalt and romboot routines, and local prototype
...
declarations.
1996-03-17 21:40:11 +00:00
cgd
94907fa254
adjust to deal with expression support for optional file specs
1996-03-17 13:21:09 +00:00
pk
59ff996be6
Avoid "unused variable" warning.
1996-03-17 03:19:34 +00:00
thorpej
3cd14f7597
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 02:00:30 +00:00
mrg
4fe3a900f3
comment: LEAPYEAR is not entirely correct
1996-03-17 00:56:24 +00:00
christos
5b2bf5a548
add rom routines declarations
1996-03-16 23:51:44 +00:00
christos
64356e6df3
fix printf format strings
1996-03-16 23:31:45 +00:00
christos
dafa7f2c60
fix format strings. move rom routine decls in bsd_openprom.h
1996-03-16 23:31:42 +00:00
christos
ed2239daea
Fix format strings in panic()
1996-03-16 23:31:40 +00:00
christos
0c4805af23
Fix typo in fsrtoname() use && as intended instead of &
1996-03-16 23:31:36 +00:00