Commit Graph

14618 Commits

Author SHA1 Message Date
fvdl
bb31faf853 Make this compile again, including Politically Correct const handling. 1996-12-22 23:00:02 +00:00
veego
26f6e45d39 Fix a typo: s/COPT/COPTS/ 1996-12-22 19:14:14 +00:00
cgd
73f996ef33 note in a comment (XXX) that strchr() (what's it doing here, anyway?)
causes 'const' to be discarded.
1996-12-22 10:35:08 +00:00
cgd
145233fa6e Change the second and third args to struct vfsops' (*vfs_mount)() to
'const char *', and 'void *', respectively.  The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions.  The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:31:41 +00:00
cgd
e7af2a8237 * catch up with system call argument type fixups/const poisoning.
* Fix arguments to various copyin()/copyout() invocations, to avoid
  gratuitous casts.
* Some KNF formatting fixes
1996-12-22 10:21:06 +00:00
cgd
b8cb96e094 make struct exec_package's ep_name field be a _const_ char *. It's set
directly from the syscall's program name argument, which is const, so must be
const itself to preserve const-ness.
1996-12-22 10:19:16 +00:00
cgd
c60b7587ab * catch up with system call argument type fixups/const poisoning.
* Fix arguments to various copyin()/copyout() invocations, to avoid
  gratuitous casts.
* Some KNF formatting fixes
* Change sockargs()'s second argument to be a const void *, to help
  with dealing with the syscall argument type fixups/const poisoning.
1996-12-22 10:16:54 +00:00
cgd
b1a10f6f23 change sockargs()'s second argument to be a const void *. It used
to be a caddr_t, but since it's being passed constant user argument pointers
it needs to be const, and since it's being passed a variety of argument
pointer types it makes sense to change it to void *.  That argument is
simply being handed to copyin().
1996-12-22 10:14:06 +00:00
cgd
90688fce27 Change the second and third args to struct vfsops' (*vfs_mount)() to
'const char *', and 'void *', respectively.  The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions.  The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:10:12 +00:00
cgd
0396cad668 if __lint__ is defined, #define __builtin_saveregs() and
__builtin_classify_type() into harmless values, so that lint doesn't
get confused, think they're real functions, and that they're being
invoked in the wrong ways.
1996-12-22 08:57:23 +00:00
cgd
50cb6df652 for now, -Wcast-qual is just not practical in the kernel 1996-12-22 08:33:19 +00:00
cgd
7e31391b10 update for new syscalls.master 1996-12-22 08:05:47 +00:00
cgd
acad90d846 * (slight) general cleanup
* change in-kernel syscall prototypes to match user-land prototypes in
  the following ways:
    + add 'const' where appropriate.
    + make the following "safe" type changes where appropriate:
	caddr_t -> struct msghdr *
	caddr_t -> struct sockaddr *
	caddr_t -> void *
	char * -> void *
	int -> uid_t (safe because uid_t not used as index/count)
	int -> gid_t (safe because gid_t not used as index/count)
	u_int -> size_t
    + change "int" to "u_long" in flags arguments to chflags() and
      fchflags().  This is safe because the arguments are used as
      flag bits and there's nothing that would cause the top bit
      of the int to be set yet, and because the user-land definitions
      already specified u_long, so a u_long's worth of argument was
      already being passed in.
1996-12-22 08:04:06 +00:00
cgd
997ec138ad change ntp_gettime's struct ntptimeval *'s name to match kern_ntptime.c 1996-12-22 07:47:43 +00:00
cgd
c99936a735 * fix return types. previously, most things returned 'int.' which was
wrong for a bunch of functions:
	void:		sys_exit, sys_sync
	ssize_t:	sys_read, sys_write, sys_recvmsg, sys_sendmsg,
			sys_recvfrom, sys_readv, sys_writev, sys_sendto
	long:		sys_pathconf, sys_fpathconf
	void *:		sys_shmat

* Note that sys_open, sys_ioctl, and sys_fcntl are defined such that their
  last argument is optional.

These changes should not have any real effect, because right now this
information is not actually used for anything.
1996-12-22 07:00:57 +00:00
cgd
8fac03afc3 regen for syscalls.master and makesyscalls.sh changes 1996-12-22 06:48:18 +00:00
cgd
747448fc3e mark syscall() and __syscall() as INDIR syscalls 1996-12-22 06:46:50 +00:00
cgd
0e9ddb9039 * Don't actually output args structure definitions for INDIR syscalls (typo).
* Don't output prototypes for INDIR syscalls (since they always show up as
  sys_nosys() in the syscall table).
* Add "indir" to the comment for INDIR syscalls in the syscalls table, so
  it's more obvious why they call sys_nosys().
1996-12-22 06:45:14 +00:00
cgd
ba32ea9a68 update copyright date 1996-12-22 06:33:46 +00:00
cgd
286395d1b3 * remember (i.e. don't throw away) system call return types.
* Deal with multi-word system call return types (i.e. foo *, or
  struct foo *, or struct foo, etc.).
* Add a new class of system calls "INDIR" (for "indirect"), which
  is to be used to represent indirect syscalls like syscall() and
  __syscall() which are implemented in MD code and which don't want
  args structures defined.  (The old way of declaring this type of
  syscalls still works.)
* Allow system calls to be marked as having a variable number of
  arguments, by inserting "..." (no trailing comma) before the
  first hf the optional arguments in the syscall definition.  Because
  of the way syscall arguments are handled by MI code, _ALL_ syscall
  arguments must actually be included in the definition, i.e.
  "optional" arguments are either "are there or aren't," i.e. these
  aren't really varargs functions.  Therefore, for normal syscalls,
  there _must_ be arguments listed after the "...".  For INDIR
  syscalls, which really do have a variable number of arguments and
  which aren't handled via the normal mechanism, that requirement is
  not in force.
* output primitive (machine-parsable) syscall descriptions as comments
  in <sys/syscall.h>.  These can be used to easily build real function
  prototypes, or to build stub functions for use by lint.
1996-12-22 06:33:16 +00:00
cgd
e9a07759c9 ntp_gettime()'s argument is a struct ntptimeval *, not a struct timex * 1996-12-22 06:23:38 +00:00
thorpej
e2c6ed87ec Fix several semantic bugs:
- Always allow RAW_PART to be opened, regardless of the partition table.
- Never do partition translation on RAW_PART; it's always offset 0.
- Always make sure the disklabel is read from RAW_PART.
- Make *strategy() return values consistent.

This fixes a condition where a bogus partition table could be written
to the disk from SYS_INST, and the user had no way to rewrite with
a correct partition table, since RAW_PART would be invalid.
1996-12-21 21:34:40 +00:00
thorpej
0d58626f72 This wasn't just a spelling error... I invented a whole new word! 1996-12-21 21:23:43 +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
thorpej
fca7fce17e Deal with targets > 7 on wide Buslogic controllers. Remember the "wide"
bit from the extended setup inquiry and key off it to:
- Force synchronous negotiation on targs > 7.
- Read additional information returned by wide cards on inquire setup.
- Read sync period on targs > 7.
- Display sync period/offset on targs > 7.
- Set scsi_link.max_target to 15.
cvs: ----------------------------------------------------------------------
1996-12-20 21:35:10 +00:00
sommerfe
cf49662b0f Longer login name support: increase MAXLOGNAME to 16 1996-12-20 20:18:53 +00:00
veego
c815213b05 Disable CD debug output. 1996-12-20 19:21:11 +00:00
veego
35d44f12b7 - Move SWAPPAGER, VNODEPAGER and DEVPAGER to std.draco.
- Remove not working KGDB.
- Remove unused PANICWAIT.
- Add ch and uk devices.
1996-12-20 19:18:16 +00:00
veego
acad9272a8 - Move SWAPPAGER, VNODEPAGER and DEVPAGER to std.amiga.
- Remove not working KGDB.
- Add a warning for KBDRESET.
- Add ch and uk devices.
1996-12-20 19:16:20 +00:00
veego
6b9a665130 Add SWAPPAGER, VNODEPAGER and DEVPAGER 1996-12-20 19:15:06 +00:00
veego
cc5a862135 - Add ch and uk devices.
- Change the ss device number from 25 to 37,
  ATTENTION: you need to rerun /dev/MAKEDEV to update your devices files.
1996-12-20 17:16:49 +00:00
leo
c6e901c459 Get rid of BROKEN_INDIRECT_CONFIG 1996-12-20 16:20:57 +00:00
leo
291ced55a4 Get rid of BROKEN_INDIRECT_CONFIG 1996-12-20 12:49:35 +00:00
jtk
6afa1586ff repair fdopen() to allow multiple opens at same density (was broken with fdformat) 1996-12-20 12:21:48 +00:00
mrg
5e5291f97b always reassign ip after calling function. 1996-12-20 09:08:16 +00:00
mrg
04ce281a19 in pfil_hooks: always reassign ip after calling hook. 1996-12-20 09:08:14 +00:00
mrg
2cf2442208 remove pfil_bad. 1996-12-20 08:40:46 +00:00
mrg
15eaee8d6f in pfil_hooks: always reassign ip after calling hook. 1996-12-20 08:39:29 +00:00
mrg
a24be0b669 remove pfil_bad. 1996-12-20 08:39:27 +00:00
jonathan
a2715c2ce6 Clone INSTOTHER to INSTALL, with both Adaptec and other SCSI controllers. 1996-12-20 06:45:15 +00:00
jonathan
e7a52ac635 Add missing fields to the extended_inquire reply struct.
Fixes probing of aha154x's, and provides wide/ultra bits for the MI scsi code.
1996-12-20 06:20:49 +00:00
scottr
e8b8d1b050 Clean up a few bogons+typos introduced in the removal of the broken indirect
config code.
1996-12-19 21:48:17 +00:00
cgd
fc841ac711 __asm rather than asm, to make lint happy without -g 1996-12-19 09:13:44 +00:00
gwr
6dba055937 Move `static' to the beginning of the storage class specifiers. 1996-12-18 20:24:50 +00:00
gwr
e2c836939b As discussed, replace KERNBASE with kernel_text. 1996-12-18 20:12:58 +00:00
thorpej
7770d7c428 Compute the componet number properly so that error reporting is somewhat
meaningful.  Bug noticed by Marshall Midden <m4@nts.umn.edu>.
1996-12-18 19:22:46 +00:00
leo
421158437b Tweak the clockframe structure a bit so we are able to save a few cycles
at interrupt time. (From Gordon Ross).
1996-12-18 12:35:19 +00:00
scottr
9d67345760 Correct asm operands in mrg_Delay(); it has one output operand, and no
input operands.  This corrects an uninitialized variable warning, and
may also explain some erratic behavior of the MRG ADB; gcc could throw
away the value of the `ticks' variable (but I haven't traced through
any ROMs, myself).
1996-12-18 07:21:06 +00:00
scottr
3ac126bc23 Work around another uninitialized variable warning 1996-12-18 05:44:31 +00:00
scottr
94714822e7 Work around another gcc initialization warning. 1996-12-18 05:17:44 +00:00
scottr
affc68cf0c Work around another bogus uninitialized warning, and fix a legitimate one.
Clearly mark the former.

XXX The bogus warnings show up with -O, but not -O2.  Unfortunately,
    NetBSD/mac68k can't (yet) use -O2.
1996-12-18 05:04:22 +00:00
scottr
e70f884a92 Fix the potentially uninitialized variable in clear_screen() (correctly
pointed out by gcc -Wall).
1996-12-18 03:06:06 +00:00
scottr
e330279eea Work around uninitialized variable warning 1996-12-18 02:54:43 +00:00
cgd
c591d26932 update for recent com.c changes: delete references to now-nonexistant
comconsinit variable.
1996-12-17 23:21:53 +00:00
gwr
3da720dfd1 Adapt to the new version of dev/ic/z8530* 1996-12-17 22:30:13 +00:00
gwr
55d81fe0c2 Adapt to the new version of dev/ic/z8530*
(Note: now define zsc_softc here.)
1996-12-17 22:26:07 +00:00
cgd
60faf5d2ae always provide at least a minimal aux vector. (The minimal version
is one entry long, with the entry's id being AUX_null.)
1996-12-17 22:04:20 +00:00
gwr
7a5585d645 Make sure the MDP_STACKADJ flag is cleared in p->p_md.md_flags
Do this in both machdep.c:setregs() and trap.c:(end of syscall)
for now.  Need more analysis to see what is the best way...
Fixes PR#3034 (Thanks very much to Ian Dall for the fix!)
1996-12-17 21:35:30 +00:00
gwr
3cc81b9726 Add a diagnostic to panic when obio config data has a
default address, which is no longer supported on obio.
1996-12-17 21:21:13 +00:00
gwr
0c5e3e4955 Make this compile with -Werror -Wall -Wstrict-prototypes
(finally! yea!)  Also get rid of __BROKEN_INDIRECT_CONFIG
1996-12-17 21:10:35 +00:00
gwr
282e39f88d Adapt to the new version of dev/ic/z8530*
(Note: now define zsc_softc here.)
1996-12-17 21:00:54 +00:00
gwr
ac4b9ad819 The declarations for cache_flush_xxx are now in machdep.h 1996-12-17 20:55:28 +00:00
gwr
2140ee3fb9 The declarations for isr_add_xxx are now in autoconf.h 1996-12-17 20:54:23 +00:00
gwr
1169ecb0a2 Adapt to the new definition of struct zsc_softc
(the zsc_cs[2] members are now POINTERS!)
Also fix warnings...
1996-12-17 20:46:11 +00:00
gwr
494730c376 New version of the z8530 driver that should permit the mac68k port
to use this instead of its own.  Also fix warnings, etc.
1996-12-17 20:42:40 +00:00
gwr
b8c288d184 Fix warnings. 1996-12-17 19:27:51 +00:00
gwr
661c8f1ae0 CTL_MACHDEP definitions. (Common to all m68k ports.)
This should be included by each m68k port's cpu.h so
/usr/sbin/sysctl can be shared on all of them.
1996-12-17 19:26:51 +00:00
gwr
a25e8be772 Add prototypes for process_read_regs, etc. (fix warnings) 1996-12-17 19:24:31 +00:00
scottr
1460fbef53 Remove -Werror for now (sigh). Somehow this slipped through several
kernel compiles without getting caught.  Lame gcc optimizer bug.
1996-12-17 13:58:26 +00:00
is
b71e65949f Make clock an early configuration device, configured before early console
configuration. This way, the delay loop is calibrated before graphics and
serial hardware is touched.

This change should smooth pr 2890 by Thorsten Frueauf (also privately
reported by Laurent Badoukh). While the real problem with those is the
paranoically high delay() calls in the grf_cl initialization, it was made
even more visible by the miscalibrated (to the save side) new style delay
loop.
1996-12-17 11:43:10 +00:00
is
fd832b27d2 - Fix a edito in the m68060 support trap counting. (Hint: run "make regress",
even if you "really didn't change anything dangerous" :-)
- While we're here, save a few bytes and clock cycles during kernel startup:
  cinva ic clears the branch cache on the 68060, no need to do it explicitly.
1996-12-17 11:09:10 +00:00
thorpej
c0c07cd30e Always use `SLOWSCSI'. Some devices need a long delay between phase
changes, apparently.  This is reported to work around some odd failures
people were seeing during first-time installation onto a SCSI disk.
1996-12-17 09:21:42 +00:00
thorpej
7373a43fcf Generate initial copies of these files. 1996-12-17 09:01:24 +00:00
thorpej
2ac210b6e3 Call device_register() if __alpha__ || hp300 1996-12-17 08:59:15 +00:00
thorpej
d424d0ab88 Prototype device_register() if __alpha__ || hp300 1996-12-17 08:56:18 +00:00
thorpej
838edf78fd Snapshot of new config for NetBSD/hp300. This isn't quite finished yet.
We're about 75% there.  SCSI and HP-IB are not yet supported in a new
config kernel; some autoconfiguration hackery has to be done there, yet.
These changes are enough to network boot a diskless kernel.

New config glue is enabled with the "NEWCONFIG" kernel option.  If that
option is not present, an old config kernel will be built.  Any kernel
configured with config(8) will automatically pick up the NEWCONFIG
option from std.hp300.
1996-12-17 08:40:56 +00:00
thorpej
7b4ca2ebe5 Kill __BROKEN_INDIRECT_CONFIG 1996-12-17 08:11:50 +00:00
scottr
5b7c2842ae Take avantage of COPTS appropriately. 1996-12-17 07:33:01 +00:00
is
9df370b3f3 Switch on branch prediction on the 68060. Also add some instrumentation
for branch prediction errors (could be used to detect strange binaries),
integer instruction, FP instruction, FP data type and FP effective address
emulations. The latter can be used to diagnose binaries which should be
recompiled with -m68060.

XXX Maybe these diagnostics should be switchable by sysctl or
XXX options DIAGNOSTIC.
1996-12-17 07:32:52 +00:00
scottr
1999f88fac Add sample sbc config line; format 'options' lines for consistency. 1996-12-17 07:22:30 +00:00
scottr
e9ce47936c Add -Werror, remove -Wno-uninitialized. 1996-12-17 07:04:21 +00:00
scottr
a7dc02ac8a Remove __BROKEN_INDIRECT_CONFIG, since we are no longer broken. 1996-12-17 07:00:12 +00:00
scottr
07bde0d4e7 Revamp mainbus and obio autoconfiguration, with some direction (and the
indirect bus code framework) from Jason Thorpe.  This allows us to dump
bus_scan() and bus_print(), and move bus_peek() and bus_mapin() to the
NuBus code (since they'll eventually go away, anyway).
1996-12-17 06:47:37 +00:00
scottr
b96c3097ed Define struct nubus_attach_args 1996-12-17 03:56:11 +00:00
jonathan
c66d855eb2 Configure pmax elf_machdep.h as little-endian elf. 1996-12-17 03:45:05 +00:00
thorpej
01daecba3a Implement pci_decompose_tag(). 1996-12-17 01:55:56 +00:00
leo
9f8a5d9694 Move up the initialisations for the delay routine in the initialisation
process. It's now also available to the different device probes.
1996-12-16 22:03:23 +00:00
leo
dff699a434 The file hdfd_intr.s should only be included in conjunction with the
Hades floppy driver.
1996-12-16 21:25:45 +00:00
leo
de3b8c8e4b Implement an rtc-device. Credits for the idea goes to Wolfgang Solfrank.
Because there is no way yet to tell init(1) to execute commands before
single user-mode is entered, the inittodr() function is still partly
functional. It retrieves the value of the RTC and sets the time as if
the RTC was running at UTC. The resettodr() function is a No-Op. The
RTC can only be changed by a write to /dev/rtc.
The TIMEZONE and DST options are no longer needed and removed from the
config files.
1996-12-16 21:24:00 +00:00
cgd
693a05816e disable weak aliases in libc until something actually uses them. When
using __weak_alias in libc, __indr_reference should probably be defined
to do nothing (but defined, so that duplicate functions/variables aren't
compiled).  However, when not using __weak_alias, __indr_reference causes
them to be omitted completely, which is a lose.  So, until weak aliases
are going to be used, don't define __weak_alias or __indr_reference.
1996-12-16 21:01:55 +00:00
is
af2691cdb5 The original docs for the Phase 5 Development SCSI boards had a edito,
making me think that the Blizzard-IV and the Blizzard-2060 scsi
options have nearly identical DMA engines (just with a different
address offset). Alas, this isn't true.

Herewith I replace the "bznsc" (all-new-Blizzard-models) driver with the
"bztzsc" (Blizzard Two Zero).
1996-12-16 16:17:27 +00:00
scottr
9b4055eb72 Convert all foo_match() functions to use a `struct cfdata *' for their
second argument.  The NuBus autoconfig code had to be reorganized as a
result of this, and looks much more like a directly-attached bus now.
These changes eliminate __BROKEN_INDIRECT_CONFIG.
1996-12-16 16:17:02 +00:00
scottr
c5d19fd124 Make this compile #ifdef DDB:
- Prototype debugging functions
 - Replace %x and %lx with %p as appropriate
1996-12-15 10:02:30 +00:00
gwr
31a2dbff56 No longer used. 1996-12-14 15:51:31 +00:00
leo
c473681077 Remove some code accidently checked in on previous commit. 1996-12-14 13:52:01 +00:00
leo
2d4e2c3931 Fix type (COPT -> COPTS). 1996-12-14 13:48:29 +00:00
leo
ae092ee765 Merge the formatting code from the i386-port. 1996-12-14 13:47:12 +00:00
mycroft
e1a87dc790 Make sure to initialize the memory we just allocated. 1996-12-14 10:50:32 +00:00
mycroft
be33336052 If attaching the console, reinitialize it immediately. 1996-12-14 10:46:38 +00:00
mycroft
58e4442168 Turn off the baud rate changing optimization. 1996-12-14 08:56:23 +00:00
cgd
6fbbbb1eb2 add endianness constants, relocation types 1996-12-14 05:46:13 +00:00
gwr
aaa60cfea6 Add ZSWR1_IMASK (all intr. enable bits in WR1) 1996-12-13 21:02:39 +00:00
gwr
250c59b7a6 Files with just an include line do not need a wrapper. 1996-12-13 20:23:51 +00:00
gwr
5eaee56ccf Increase MAXMCAST from 50 to 250 (to match dev/ic/i82586.h). 1996-12-13 19:54:08 +00:00
gwr
5736d8f544 Kill some dead code. 1996-12-13 19:50:10 +00:00
gwr
6d6e6e45e0 Define MAXBSIZE as 32KB to limit the size clustered transfers. 1996-12-13 19:46:14 +00:00
mikel
9aba065e07 add ATM data-link type; reqd. for libpcap. 1996-12-13 07:57:33 +00:00
thorpej
9a8786f719 Clean up cpu_startup() a bit:
- move data structure allocation into a new function, allocsys(), like
  the i386 port.
- garbage-collect the BUFFERS_UNMANAGED code.
1996-12-11 16:49:23 +00:00
mycroft
f056beb022 Undo silly part of previous change. 1996-12-11 09:37:42 +00:00
thorpej
f82a494e0f Fix typo in comment. 1996-12-11 09:10:38 +00:00
mycroft
ef60fc0bad Minor change to a comment. 1996-12-11 01:55:50 +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
fvdl
6913afc057 Give permission to the owner of the file to preserve semantics only
in the relevant cases (read, write). Fixes PR 3017.
1996-12-11 00:01:56 +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
55acc3ffb3 Fill in sc_link.max_target 1996-12-10 21:57:17 +00:00
thorpej
d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
thorpej
f113ac70dd Add a "max_target" member to struct scsi_link, which is filled in by
host adapter drivers, indicating the highest SCSI target they can
address.  Use this value to dynamically allocate data structures, rather
than hard-coding 8 targets.

These changes allow targets > 7 to be addressed on wide SCSI busses.

Fixes PRs #1674 and #2892.
1996-12-10 21:06:29 +00:00
cgd
e4f6e48c7d kill the last vestiges of __BROKEN_INDIRECT_CONFIG. 1996-12-10 19:33:51 +00:00
mycroft
6efa67cb69 Use RELOC() to access _myea. 1996-12-10 18:41:00 +00:00
mycroft
a1f3d20e2c Minor twiddle; _prototc is only 4 bytes, not 8. 1996-12-10 18:33:51 +00:00
mycroft
315bb1ab50 Fix RTT scaling problems introduced with Brakmo and Peterson changes. 1996-12-10 18:20:19 +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
mycroft
a26a19aeda Return EAGAIN if binding with no specified port and the pool is empty. 1996-12-10 11:38:42 +00:00
mycroft
c1de76e30b Allocate real malloc types for NFS, rather than using M_TEMP. 1996-12-10 10:07:22 +00:00
mycroft
b8464bb9da Fix pasto. 1996-12-10 08:54:53 +00:00
tls
6083cacd31 fix very misleading comment 1996-12-10 05:28:15 +00:00
thorpej
8606b2f1d3 In sbreserve(), don't allow a count of 0. Fixes PR #2794, from
Erik Berls <cyber@dis.org>.
1996-12-09 23:50:57 +00:00
fvdl
b3418365a1 Make sure KVM used by buffer cache doesn't exceed VM_MAX_KERNEL_BUF.
XXX stopgap measure.
1996-12-09 22:51:55 +00:00
fvdl
3dc301ff58 Include VM_MAX_KERNEL_BUF constant to put a cap on buffer cache KVM usage.
Override via config file possible.

XXX this is a stopgap measure.
1996-12-09 22:49:42 +00:00
is
d524505ef7 It turned out that my orginal docs were wrong wrt. Blizzard IV
scsi... it is NOT nearly identical to the Blizzard 2060 scsi option.
Make the name reflect this. Driver cleanup will follow.
1996-12-09 18:17:40 +00:00
thorpej
ef5333043b Copyright assigned to The NetBSD Foundation. 1996-12-09 17:46:44 +00:00
thorpej
66cbbf68ff Copyright assigned to The NetBSD Foundation. 1996-12-09 17:35:24 +00:00
is
f95e0398cc New version by Jukka Marin <jmarin@pyy.jmp.fi>, with rewritten (to fix
problems) carrier detect code. Slightly cleaned up by Bernd Ernesti
<veego@netbsd.org>
1996-12-09 17:24:55 +00:00
oki
6281db6925 Use config_search() instead of config_scan(),
by Chris G Demetriou, tested by me.
1996-12-09 16:12:19 +00:00
oki
d27890041b CACHE4_OFF --> CACHE40_OFF, compile again. 1996-12-09 15:29:06 +00:00
fvdl
2914743038 Comment change in previous made for some bad english.. 1996-12-09 11:31:11 +00:00
fvdl
46795a244d Move '#ifdef NFSSERVER' back to the right spot; NQNFS datastructures need
to be initialized on both the client and the server side. Remove misleading
comment about this being just server stuff.
1996-12-09 10:46:20 +00:00
thorpej
5dc95f5908 Garbage-collect DMAINTLVL; it's not needed any more. 1996-12-09 06:18:13 +00:00
thorpej
49471d5fd5 Sync with reality. 1996-12-09 03:56:01 +00:00
thorpej
01667974d0 isrlink() now returns a cookie. We're not interested in the cookie, so
cast to (void).

Call dmacomputeipl() after we've hooked up our interrupt handler.
1996-12-09 03:16:26 +00:00
thorpej
648a1b19ae isrlink() now returns a cookie. We're not interested in the cookie, so
cast to (void).
1996-12-09 03:14:06 +00:00
thorpej
0d6571ba4d Defer hooking up the DMA controller interrupt. Add a new funciton,
dmacomputeipl(), which is called by drivers which use DMA once they've
hooked up their interrupts.  This new function computes the appropriate
ipl to use for the DMA controller and (re-)establishes it's interrupt.
1996-12-09 03:09:51 +00:00
thorpej
75a37ecc60 Print the interrupt levels for bio, net, and tty computed during
autoconfiguration.
1996-12-09 03:07:11 +00:00
thorpej
ce7ecde8a3 Dynamically compute the PSL value for spl{bio,net,tty,imp}() calls. 1996-12-09 03:04:46 +00:00
thorpej
c36215249a Add EXEC_SCRIPT (I don't even want to know how I forgot it before...) 1996-12-09 01:53:30 +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
thorpej
73877cf0f3 Allow the default value for MAXBSIZE (== MAXPHYS) to be overridden
by <machine/param.h>.
1996-12-08 00:52:01 +00:00
cgd
e9abc8540f remove all traces of __BROKEN_INDIRECT_CONFIG (except in shared drivers) 1996-12-08 00:22:08 +00:00
cgd
74187419b6 The last change fixed a last-minute goof in the __BROKEN_INDIRECT_CONFIG
case, but added a typo (extra parenthesis) in the !__BROKEN_INDIRECT_CONFIG
case.  fix it.
1996-12-08 00:14:03 +00:00
cgd
6dbb1548bd kill __BROKEN_INDIRECT_CONFIG 1996-12-07 22:43:17 +00:00
cgd
fb18e1fda9 oops; have to cast PS_STRINGS away from pointer 1996-12-07 22:36:28 +00:00
cgd
0e3d6291e3 note what each of the argument registers in setregs() will be used
for by crt0.  Actually clear a1 and a2, because unless a shared loader (i.e.
_not_ the kernel) set them when invoking crt0, they should be zero, and
the kernel DEBUG code wouldn't necessarily have them be.  Pass a pointer
to the proc's ps_strings structure in a3.
1996-12-07 19:45:14 +00:00
thorpej
b5c8aff18b In setroot(), fix mishandling of the `config netbsd root on nfs' case
that caused a NULL pointer dereference.
1996-12-07 19:00:46 +00:00
cjs
75d4fb207b Add definition for internal config register. 1996-12-07 16:23:40 +00:00
fvdl
9e2e734159 Remove _MCOUNT_DECL prototype once more. 1996-12-07 12:59:45 +00:00
fvdl
8f3917c76e Move _MCOUNT_DECL prototype back here again (grmbl). 1996-12-07 12:58:25 +00:00
pk
3127b0c5e2 Fix short malloc & memory leak in union_relookup() (per Naofumi Honda; PR#3000). 1996-12-07 11:02:47 +00:00
matthias
781cd59dd4 * Enlarge kernel virtual memory space. The pc532 kernel now runs at
0xf8000000. When the kernel was running at 0xfe000000, the INSTALL
  kernel would not run on a 32mb machine.
1996-12-07 09:24:37 +00:00
cjs
b1e0c7d657 Print the memory size on startup.
Add newline to `Interface disabled' printf and clean up formatting.
Change packet read/write code to align all reads and writes into
memory to an appropriate boundary for the I/O size. This also fixes
a bug where the trailing unaligned bytes (1-3 of them) would be
put in an additional mbuf even if there was enough space for them
in the one we were currently filling.
This has been tested on a 3c905 in an Alpha (32-bit I/O, alignment
required), a 3c905 in an i386 (32-bit I/O, alignment not required)
and a 3c509 in an i386 (16-bit I/O, alignment not required). It
should be tested on a 3c509 in an Alpha with an ISA bus, if somone
can manage to get the two items together.
There are still some bugs in the driver relating to initialisation;
on my Alpha with a 3c905 you need to do an `ifconfig ep0 down;
ifconfig ep0 up' after the initial ifconfig to make it start working.
Apparently there are also some problems with a 3c579 in an i386,
although a 3c905 in an i386 works just fine.
1996-12-07 08:33:07 +00:00
cgd
1a8f25c523 add a "machdep.booted_kernel" sysctl, which is the name of the booted
kernel as supplied by the SRM console's BOOTED_FILE variable.
1996-12-07 01:54:49 +00:00
thorpej
8b4cab0ac8 s/EXTMEM_SIZE/BIOSEXTMEM/ 1996-12-07 00:25:58 +00:00
fvdl
3e4fb99a14 Fix missing instruction in NexGen test code; make it a 386-class CPU too.
(Valtteri Vuorikoski / Jason).
1996-12-06 22:27:37 +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
e974072523 Deal with Lance memory size 132KB (sparc `lebuffer' devices use this size). 1996-12-06 21:54:00 +00:00
pk
31b46bcf59 Special Lance buffer glue. 1996-12-06 21:52:01 +00:00
thorpej
ff392f324b Back out this piece of revision 1.3:
>- Optional systems calls are "UNIMPL" if the support is not being
>  compiled into the kernel.

It had implications that didn't occurr to me at the time.  *sigh*
1996-12-06 20:10:51 +00:00
thorpej
5c4caca2d5 syscalls.master changed; regen. 1996-12-06 20:06:35 +00:00
thorpej
49989d779a Back out this piece of revision 1.38:
>- Optional systems calls are "UNIMPL" if the support is not being
>  compiled into the kernel.

It had implications that didn't occur to me at the time.  *sigh*
1996-12-06 20:05:31 +00:00
thorpej
5e49978c31 Back out previous change, which was:
>Only build kern/kern_ntptime.c if NTP is being compiled into the kernel.

This change had implications that didn't occur to me at the time. *sigh*
1996-12-06 20:03:24 +00:00
christos
4fd46ff6cb regen 1996-12-06 03:26:33 +00:00
christos
88bb1b35b5 add syscalls acl, facl, memcntl, pause 1996-12-06 03:25:07 +00:00
christos
e0c2870d89 implement I_SETSIG 1996-12-06 03:24:32 +00:00
christos
76a77f1302 header for acl, facl 1996-12-06 03:23:30 +00:00
christos
ac0cfc70ae implement acl, facl, memcntl 1996-12-06 03:22:34 +00:00
christos
e8aaebee8e implement pause 1996-12-06 03:21:53 +00:00
cgd
243ef518d2 fix a (fatal) bug in the __BROKEN_INDIRECT_CONFIG changes checked
in yesterday.  (got a little bit careless with #ifdef'd variables.)
1996-12-05 22:16:04 +00:00
is
ebe1c82eda Make the struct lfs 512 bytes long on 32bit machines whose compiler doesn't
align 32bit integers. Use explicit sized typing at some other places.

XXX This still won't fix lfs for 64bit machines, as we have some
assumptions about sizeof(pointer)=sizeof(u_int32_t) in here, and (if I
looked right) a misaligned u_int64_t. The right fix (to cite cgd) will
be to seperate on-disk-representation from in-core, but I don't have
the time (at the moment) to do this.
1996-12-05 19:01:46 +00:00
fvdl
671b24f374 Add _MCOUNT_DECL prototype. 1996-12-05 10:21:09 +00:00
fvdl
4827ca5603 Remove _MCOUNT_DECL prototype declaration of _mcount() again; move it
to <machine/profile.h>
1996-12-05 10:18:46 +00:00
mikel
179a058e17 fix AUTO_CAL_ENABLE bug, & misc. cleanup. 1996-12-05 07:01:30 +00:00
mikel
94909aee07 return proper output port. Fixes PR kern/2014. 1996-12-05 06:48:47 +00:00
thorpej
3ec2c5af68 Duh, make sure i/o tags and handles are initialized before actually
probing for the LANCE chip.
1996-12-05 02:39:37 +00:00
cgd
8b6a32d1c1 update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:39:27 +00:00
cgd
197d80c63a update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:25:23 +00:00
cgd
ea0c7b4423 update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:06:39 +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
cgd
66764a1a2f Check for a new definition, __BROKEN_INDIRECT_CONFIG, and if it is _not_
defined:
	define match functions to take a struct cfdata * as their second
	argument, config_search() to take a struct cfdata * as its second
	argument, and config_{root,}search() to return struct cfdata *.

	remove 'cd_indirect' cfdriver element.

	remove config_scan().

	remove config_make_softc() as a seperate function, reintegrating
	its functionality into config_attach().

Ports will define __BROKEN_INDIRECT_CONFIG until their drivers prototypes
are updated to work with the new definitions, and until it is sure that
their indirect-config drivers do not assume that they have a softc
in their match routine.
1996-12-05 00:09:10 +00:00
cgd
cb0064c67c First steps in 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:

Check for a new definition, __BROKEN_INDIRECT_CONFIG, and if it is _not_
defined:
        define match functions to take a struct cfdata * as their second
	argument, config_search() to take a struct cfdata * as its second
	argument, and config_{root,}search() to return struct cfdata *.

        remove 'cd_indirect' cfdriver element.

        remove config_scan().

Ports will define __BROKEN_INDIRECT_CONFIG until their drivers prototypes
are updated to work with the new definitions, and until it is sure that
their indirect-config drivers do not assume that they have a softc
in their match routine.
1996-12-05 00:08:11 +00:00
mycroft
7cec90e7ea Fix a race condition in tcds_scsi_isintr().
Also, remove the annoying and bogus `empty FIFO of N' message.
1996-12-04 22:35:08 +00:00
is
b7e80c70ba Oops, drcom slipped through the cracks. I beg your pardon. 1996-12-04 16:36:36 +00:00
fvdl
1a260961e0 Add prototype for _mcount, to make this compile with warnings on. 1996-12-04 00:04:40 +00:00
fvdl
380174248f Change asm.h to make it usable for kernel profiling as well.
Make mcount() a prototype in profile.h
1996-12-04 00:03:41 +00:00
fvdl
1f758a1a78 Change CPU recognition code to know more types, and make it changeable
easier when new types arrive.

Locore: make profiling work for some functions; use <machine/asm.h>
(from Jonathan Stone)
1996-12-03 23:59:25 +00:00
fvdl
2775763610 Added types/definitions for changed CPU recognition code. 1996-12-03 23:54:54 +00:00
cgd
a06362dc8e do_sir lowers the IPL itself, now 1996-12-03 19:54:16 +00:00
cgd
b74e03da21 fix a couple of bogons in the last two, and clean up slightly 1996-12-03 19:52:58 +00:00
thorpej
15dc36463a We use C flavors of the quad support functions in libkern. 1996-12-03 19:35:42 +00:00
cgd
882fa5a35d try that last one again. 1996-12-03 18:11:40 +00:00
cgd
156fe546d2 kill siroff() and resturcture do_sir() to be cleaner and more correct. 1996-12-03 17:34:47 +00:00
cgd
a04fb885d8 clean up SCSI devices 1996-12-03 17:25:27 +00:00
mikel
83c1bcfa17 fix some typos. 1996-12-03 06:14:40 +00:00
thorpej
3ae1a191dc Recognize the HP ScanJet 4p, per PR #2663 (Kenneth Stailey). 1996-12-03 01:25:53 +00:00
cgd
38cbb3213c Fix up includes so that up-to-date versions of 'config' can be used
to config pmax kernels.  Not all kernels can actually be config'd because
of device declaration problems, but i don't know how to fix those.
1996-12-03 01:18:17 +00:00
thorpej
6aaaad08d2 syscalls.master changed; regen. 1996-12-03 00:30:59 +00:00
thorpej
f85bef61f1 Include sys_getfh() if NFSSERVER || NFSCLIENT. 1996-12-03 00:28:31 +00:00
thorpej
f02e8b3cf0 Make NFSSERVER work without NFSCLIENT. This is achieved by splitting
the client and server/shared data initialization into separate functions,
and calling the server/shared initialization directly from main().
Problem noted in PR #1308 (Kenneth Stailey) and PR #1780 (Chris Demetriou).
Fix suggested in PR #1780 by Chris Demetriou, and munged a bit by me,
and OK'd by Frank van der Linden <fvdl@netbsd.org>.
1996-12-03 00:22:43 +00:00
thorpej
aa25de69d1 NFS performance improvement from Doug Rabson/FreeBSD:
Improve the queuing algorithms used by NFS' asynchronous i/o.  The
existing mechanism uses a global queue for some buffers and the
vp->b_dirtyblkhd queue for others.  This turns sequential writes into
randomly ordered writes to the server, affecting both read and write
performance.  The existing mechanism also copes badly with hung
servers, tending to block accesses to other servers when all the iods
are waiting for a hung server.

The new mechanism uses a queue for each mount point.  All asynchronous
i/o goes through this queue which preserves the ordering of requests.
A simple mechanism ensures that the iods are shared out fairly between
active mount points.

Reviewed/integrated/approved by Frank van der Linden <fvdl@netbsd.org>
1996-12-02 22:55:39 +00:00
cgd
81e9bda988 convert to use bus_space_set_region_2() and bus_space_copy_2(), rather
than in-line clear and copy loops.
1996-12-02 22:24:54 +00:00
cgd
30b636bd09 implement bus_space_copy_*(). 1996-12-02 22:19:32 +00:00
thorpej
7d4d4753a8 Implement a simple scsi xfer queue to avoid presenting a resource
shortage to the upper scsi layers, which don't (yet) deal well with
resource shortages.
1996-12-02 19:06:41 +00:00
thorpej
ccd0b4ef52 Change MAXBSIZE back to MAXPHYS, fixes PR #1718, from cgd@netbsd.org. 1996-12-02 07:30:29 +00:00
cgd
256cf234a1 move barrier operation definition closer to the top of the bus space ops
structure.  In the implementations, allow the barrier op to be inlined.
1996-12-02 07:07:18 +00:00
cgd
54ba942f79 implement bus_space_set_multi_* and bus_space_set_region_* operations. 1996-12-02 06:46:49 +00:00
cgd
e6bafb00d6 declare the single-datum read and write methods as inline, so that
the multi and region methods can inline them.
1996-12-02 06:12:39 +00:00
thorpej
c164cadf68 Convert to use <machine/bus.h> 1996-12-02 05:44:17 +00:00
thorpej
3883cff7fb Oops, bus_space_set_{multi,region}_N() is supposed to have an `offset'
argument.  Add one to the `prototype' in the comment which preceeds
`not implemented' :-)
1996-12-02 05:35:13 +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
leo
91c17fedfa The atari has a pci_machdep.h file. 1996-12-01 21:02:18 +00:00
pk
bd9ec27d9e kvprintf => vprintf (PR#2989, Juergen Hannken-Illjes). 1996-12-01 20:22:19 +00:00
veego
eedc299567 Fix typo in the last revision (missing S in ${COPTS}). 1996-12-01 12:10:07 +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
jonathan
e038926656 Replace explicit -O2 in CFLAGS with COPTS macro. Default COPTS?= -O2.
Lets users over-ride with makeoptions COPTS="..." in kernel config files.
1996-12-01 03:23:04 +00:00
jonathan
51194cb458 Fix #ifdef DEBUG prinf() lint: bp->b_bcount is long, not int. 1996-12-01 00:43:45 +00:00
is
07e5135a49 Add the bootblock code to list of things made here. 1996-11-30 20:34:58 +00:00
is
6e8898adbd Get it into the main branch... it was added only to netbsd-1-2 by mistake. 1996-11-30 20:31:39 +00:00
jtk
15aad8e10b forgot to regenerate these after committing pcidevs for its NetBSD header tag 1996-11-30 15:16:22 +00:00
gwr
033eec34ec Oops... get the vprintf prototype right. 1996-11-30 04:35:51 +00:00
gwr
ecfe88202c Add declaration for vprintf. 1996-11-30 04:20:14 +00:00
gwr
dfc25d8ab4 Finish the kprintf backout: kvprintf -> vprintf was missed. 1996-11-30 04:19:21 +00:00
jtc
9da5f60715 PROF -> GPROF 1996-11-30 02:48:57 +00:00
jtc
6621382048 Sync with libc 1996-11-30 02:06:27 +00:00
jtk
6f602476b2 tabstop corrections, thanks to Paul Kranenburg 1996-11-30 01:45:39 +00:00
is
86b68e0c38 The DraCo MF-II to Amiga translation table is const-ant. 1996-11-30 01:30:37 +00:00
is
ca9770feb9 Make sure autoconfiguration is searching for _us_. There is more than
one DraCo specific device on the DraCo mainbus.
1996-11-30 01:27:04 +00:00
is
e4b7d761cc Switch off some more interupts on startup; switch off drcom interupts
at the right offset.
1996-11-30 01:20:14 +00:00
is
aa13cab86c Forgotten changes needed for the drcom driver. 1996-11-30 01:13:05 +00:00
is
19acf65808 com.c variant for the 16550 core on the DraCo superio chip.
drisavar.h pretends to provide a few bus.h macros, hardwired to
that chip.

This should eventually be replaced by attachment code for the normal
com.c driver, once that one is split up into chip core driver and
attachment code, and once we have busxxx macros in NetBSD/Amiga.
1996-11-30 00:43:02 +00:00
is
ff0ad9cabb Variable spltty a la Jason Thorpe. Needed for the DraCo variant of com.c. 1996-11-30 00:33:49 +00:00
is
9035d87865 Support for DraCo superio chip: level 5 interupt queue; amiga_ttyspl
variable (we need to set ttyspl to spl5 when the DraCo serial is active).
1996-11-30 00:29:38 +00:00
is
165b6726c9 First version of a NetBSD-Amiga bootblock compilable from within NetBSD,
along with toolchain enhancements.

aout2bb transforms a.out files with reloc information into bootblock format
files with a compressed relocation info.

bbstart.s relocates the bootblock using this compressed info, before jumping
to C code.

txlt changes some more of the absolute references to pc-relative ones (we know
we have a single code + data address space).

If you ever try to change this: don't even dare to change the compiler options;
they were found in weeks of trial and error as the ones producing the smallest
(not necessarily fastests) code.

installboot is just a script around dd, for now.

Some ideas by Michael Hitch, Leo Weppelman and Jason Thorpe; bugs added
by myself.
1996-11-29 23:36:30 +00:00
is
6ddf65c1db First version of a NetBSD-Amiga bootblock compilable from within NetBSD,
along with toolchain enhancements.

aout2bb transforms a.out files with reloc information into bootblock format
files with a compressed relocation info.

bbstart.s relocates the bootblock using this compressed info, before jumping
to C code.

txlt changes some more of the absolute references to pc-relative ones (we know
we have a single code + data address space).

If you ever try to change this: don't even dare to change the compiler options;
they were found in weeks of trial and error as the ones producing the smallest
(not necessarily fastests) code.

installboot is just a script around dd, for now.

Some ideas by Michael Hitch, Leo Weppelman and Jason Thorpe; bugs added
by myself.
1996-11-29 23:36:29 +00:00
thorpej
40611b811f Start a mode sense with a clean sense buffer.
Fixes PR #2953, from David M. Stanhope <dms@celtech.com>.
1996-11-29 19:58:40 +00:00
thorpej
f3c0cc95a1 Add an inquiry pattern for the HP ScanJet 4p.
From Valtteri Vuorikoski <vuori@notcom.org>, PR #2957.
1996-11-29 19:53:32 +00:00