275 Commits

Author SHA1 Message Date
phk
ce7e00f64f A couple of prototypes moved out from here. 1994-10-08 22:27:58 +00:00
phk
4ffcc0d5e9 Added prototypes. 1994-10-08 22:21:34 +00:00
phk
cbcc30050b db_disasm.c: Unused var zapped.
pmap.c: tons of unused vars zapped, various other warnings silenced.
trap.c: unused vars zapped.
vm_machdep.c:  A wrong argument, which by chance did the right thing, was
corrected.
1994-10-08 22:19:51 +00:00
rgrimes
c447e587f4 Correct #ifdef for nfs_disless support is #ifdef NFS, there will be no
option DISKLESS for the 2.0 nfs diskless support.   A 2.0 diskless kernel
simple needs NFS linked in statically.
1994-10-08 06:20:52 +00:00
dg
17204bbc08 #ifdef DISKLESS the copying of the nfs_diskless structure. Not the best
solution, but the only one I have time for at the moment.
1994-10-07 05:45:27 +00:00
rgrimes
5ff3d9fc6c 1. Eliminate unused esym global from locore, our boot code never supported
that and when it does it will be done differently.

2.  The kernel now does a frame setup on entry so it ``looks'' like a
    real function call.  This will be needed by future boot code and
    debuggers.

3.  Clean up stack offsets to all be in decimal and use %ebp when copying
    parameters in from the boot code.

4.  Implement version 1 of the uniform boot code passing mechanism with
    support for kernelname passing and nfs_diskless structure passing.

5.  Document the 3 different ways the kernel is called depending on what code
    is calling it.
1994-10-06 09:22:47 +00:00
ache
9372070b25 Add code to handle CPU_DISRTCSET 1994-10-04 18:44:21 +00:00
ache
9861089c20 Add disable_rtc_set variable to block resettodr() call, needed for
adjkerntz -i, per Bruce suggestion
1994-10-04 18:39:10 +00:00
ache
0683676e4a CPU_DISRTCSET added to disable resettodr(), needed in adjkerntz -i,
per Bruce suggestion
1994-10-04 18:25:51 +00:00
ache
7625b88d83 RTC_CENTURY usage ifdefed out by USE_RTC_CENTURY compile option,
pointed by Bruce
1994-10-04 13:59:44 +00:00
phk
1f6d0ff1e2 Avoid ddb getting a panic if the code-segment isn't the usual one... 1994-10-02 19:36:30 +00:00
dg
a7840d2aa8 Patch from HOSOKAWA Tatsumi to fix bug in the size of apm_current_gdt_pdesc
Submitted by:	HOSOKAWA Tatsumi
1994-10-02 18:57:15 +00:00
phk
29627a3d7d apm_bios.h: removed the equiv-stuff. Not needed now that the kernel module
works correctly.

clock.h & reg.h: prototypes.
1994-10-02 17:31:29 +00:00
phk
69c48d96e9 Unused variables, except one with a omnious comment. 1994-10-02 17:29:51 +00:00
rgrimes
c2769e77fe If you are building a kernel without NFS statically linked in you
must #define NFS before including <sys/mount.h> to pick up some of
the definitions needed for struct diskless.  Be sure to undef it after this
so you do not effect other code.

This is kinda sick, but it does the job.  Problem found by davidg.
1994-10-02 07:19:43 +00:00
dg
3b0f093fdc "idle priority" support. Based on code from Henrik Vestergaard Draboel,
but substantially rewritten by me.
1994-10-02 04:48:21 +00:00
rgrimes
2d378393a1 1. Remove all references to cyloffset, it has been unused for some time.
2.  New detection code so we know what boot code called us.

3.  Remove old DISKLESS support code and halt if we are called by that boot
    code as it will NOT work with the new nfs_diskless structure.

This is really in preperation for new boot code and new diskless support.

Reviewed by:	davidg
1994-10-02 01:32:53 +00:00
rgrimes
bb84ef83fb Add code to generate NFSDISKLESS_SIZE for use in locore for copying the
nfs_diskless structure in from the boot code.
Reviewed by:	davidg
1994-10-02 01:28:38 +00:00
dg
b329c83425 Laptop Advanced Power Management support by HOSOKAWA Tatsumi.
Submitted by:	HOSOKAWA Tatsumi
1994-10-01 02:56:21 +00:00
swallace
0835249aca Add #ifndef ALLOW_CONFLICT_IRQ
Reviewed by:	jkh
1994-09-30 05:35:55 +00:00
sos
d3edb28dc2 Updated pcaudio.c to latest from 1.1.5.1
Enabled timer reprogramming in clock.c (this could use more work).

Obtained from: FreeBSD-1.1.5.1
1994-09-29 08:24:45 +00:00
bde
5d7666d68b Ensure normal selection and alignment of the text and data sections before
including files.  vector.s sometimes left the data section misaligned
(depending on the configuration) so all the time-critical globals in icu.s
were sometimes misaligned.
1994-09-28 03:37:49 +00:00
pst
40864c38bc Make Cyrix CPU flush internal cache any time it goes into hold state.
(Meant to commit this a long time ago... oh well).
1994-09-26 16:56:22 +00:00
dg
2bffa61402 Inlined ins/outs functions.
Obtained from:	NetBSD
1994-09-25 21:31:55 +00:00
dg
f13b791bdb Undo last change: the ins/outs functions DO NOT return a pointer! 1994-09-25 20:03:41 +00:00
phk
f73f358983 While in the real world, I had a bad case of being swapped out for a lot of
cycles.  While waiting there I added a lot of the extra ()'s I have, (I have
never used LISP to any extent).  So I compiled the kernel with -Wall and
shut up a lot of "suggest you add ()'s", removed a bunch of unused var's
and added a couple of declarations here and there.  Having a lap-top is
highly recommended.  My kernel still runs, yell at me if you kernel breaks.
1994-09-25 19:34:02 +00:00
dg
fb2315b514 Shuffled macros and definitions around to facilitate architecture
independance.
1994-09-24 21:37:01 +00:00
dg
5d9042e837 Nuked splnet before sync. Not only is this unnecessary, but it appears
to cause problems by making it impossible to sync NFS related buffers
when rebooting.
1994-09-24 12:22:47 +00:00
dg
f92f1b6305 Increased SHMMAXPGS from 512 to 1024 now that there is plenty of kernel
virtual memory.
1994-09-23 07:00:12 +00:00
dg
5f25a8f303 From 1.1.5:
>revision 1.8
>date: 1994/06/03 06:42:30;  author: davidg;  state: Exp;  lines: +2 -2
>Patch from Bruce Evans: npxintr() needs to mask softclock().
1994-09-22 14:44:16 +00:00
bde
a547491c3d Don't provide bogus source operands in some asms. This probably shouldn't
matter, but similar bogusness in npx.c causes compiling without -O to fail.

Use __volatile in all asms.

Parenthesize macro args.

Change the names of the macros to avoid namespace pollution.

Remove unnecessary "#ifdef __i386__".

Sort #defines.

Add comments.
1994-09-20 22:26:37 +00:00
bde
8c3a24d674 Don't supply the `usermode' arg to softclock(). The 2.0 softclock() doesn't
take an arg.
1994-09-20 21:35:49 +00:00
bde
04ba736b88 Don't lose the RTC interrupt in resettodr(). 1994-09-20 21:20:46 +00:00
bde
4361273583 Remove the alias splnone() for spl0(). It was used only once. 1994-09-20 05:07:32 +00:00
ache
1e403a60b2 resettodr() now exists, enable it 1994-09-20 00:32:40 +00:00
ache
8f3cc72a79 resettodr() implemented, inittodr() fixed
Submitted by: me & chris@gnome.co.uk
1994-09-20 00:31:07 +00:00
bde
9d05f27318 The previous revision got the wrong log message (for clock.c). It should
have got the following:

Back out the changes in the previous revision.  Function-like macros
were replaced by compound statements that work in less contexts.

Unoformize idempotency #ifdef.
1994-09-18 23:18:32 +00:00
bde
11781e43fd Remove some unnecessary #includes.
Restore the simple leap year calculation as a macro and document it so
that it doesn't become complicated again.  The simple version works
for all leap years covered by 32-bit time_t's.  The complicated version
doesn't work for all leap years covered by 64-bit time_t's since among
other reasons, the solar system is not stable for long enough.

Fix declarations.

Nuke spinwait().
1994-09-18 23:08:56 +00:00
bde
89067f38ec Clean up #includes. <machine/spl.h> has to be included by almost everything
in case an spl inline is used, so this is not the place to include it.

Uniformize idempotency #ifdef.
1994-09-18 21:37:56 +00:00
wollman
9028bd50ff Redo Kernel NTP PLL support, kernel side.
This code is mostly taken from the 1.1 port (which was in turn taken from
Dave Mills's kern.tar.Z example).  A few significant differences:

1) ntp_gettime() is now a MIB variable rather than a system call.  A few
fiddles are done in libc to make it behave the same.

2) mono_time does not participate in the PLL adjustments.

3) A new interface has been defined (in <machine/clock.h>) for doing
possibly machine-dependent things around the time of the clock update.
This is used in Pentium kernels to disable interrupts, set `time', and
reset the CPU cycle counter as quickly as possible to avoid jitter in
microtime().  Measurements show an apparent resolution of a bit more than
8.14usec, which is reasonable given system-call overhead.
1994-09-18 20:40:01 +00:00
dg
f40d319a86 Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from
systm.h). Merged functionality of pio.h into cpufunc.h. Cleaned up some
related code.
1994-09-16 13:33:56 +00:00
jkh
0b553ff0a2 Deal with outw being defined - the declaration clashes. 1994-09-16 11:22:33 +00:00
phk
b9bdf5a8d6 Made the kernel compile even without "ether". 1994-09-16 05:47:06 +00:00
ache
e7226224c6 CPU_ADJKERNTZ added for resettodtr() 1994-09-16 01:05:24 +00:00
ache
0b6872d87a CPU_ADJKERNTZ added to cpu_sysctl 1994-09-16 01:00:38 +00:00
paul
dbc1294a38 Include pio.h so that all those drivers that only include cpufunc.h
get the faster io macros/inline code rather than call the routines
in support.s

This whole area needs some going over.....
1994-09-15 17:55:47 +00:00
paul
f302c712fe Removed some macros that are now in cpufunc.h
Reviewed by:	Bruce
1994-09-15 16:32:07 +00:00
paul
8c92b502be Added MCOUNT_ENTER and MCOUNT_EXIT macros to profile.h
Removed inb function since it's more correctly in pio.h

Copied write_eflags and read_eflags over from npx.c

(Some changes to the macros suggested by Bruce were not made at this
time since his suggestions probably apply to all the macros and
these inlined/macro definitions need a lot of cleaning up at some
point in the future.)

Reviewed by:	Bruce
1994-09-15 16:27:14 +00:00
dg
5d54a795fb Brought over from 1.1.5:
From Bruce Evans:
Protect against reentering Debugger().
1994-09-15 11:38:59 +00:00
dg
eda3c356ca Brought over from 1.1.5:
Fix from Bruce Evans. There were missing sets of parantheses:

1. The checks for the standard data selectors were botched, so %ss == 0
   and probably %cs == 0 were allowed.  A fix is enclosed.  The checks
   for the standard selectors could be omitted without losing anything
   since the standard selectors pass the valid_ldt_sel() tests.
1994-09-15 10:52:46 +00:00