2315 Commits

Author SHA1 Message Date
phk
be48321f04 staticize. 1995-11-29 10:26:51 +00:00
phk
051ce4c479 Add crynwr mode to the lp# interface.
Reviewed by:	pst, phk
Submitted by:	tim@sarc.city.ac.uk
1995-11-29 10:17:03 +00:00
phk
4e3ca77747 Staticize again. 1995-11-29 10:12:34 +00:00
jkh
8b518c54b4 A batch of Jim Lowe's patches:
o Add signed/unsigned functionality to the matrox meteor device driver.
	o Apply a few fixes to the sound driver.
	o Add a ``SPIGOT_UNSECURE'' compile time definition so, if one defines
	  SPIGOT_UNSECURE in their conf file, then they can use the spigot w/o
	  root.  There is a warning that this allows users access to the IO
	  page which is probably not secure.
Submitted by:	james
1995-11-29 01:07:59 +00:00
julian
72067f66c5 oops forgot one.. 1995-11-28 09:44:42 +00:00
julian
5578ada6e9 the second set of changes in a move towards getting devices to be
totally dynamic. (the first was about 7 weeeks ago)

this is only the devices in i386/isa
I'll do more tomorrow.
they're completely masked by #ifdef JREMOD at this stage...
the eventual aim is that every driver will do a SYSINIT
at startup BEFORE the probes, which will effectively
link it into the devsw tables etc.

If I'd thought about it more I'd have put that in in this set (damn)
The ioconf lines generated by config will also end up in the
device's own scope as well, so ioconf.c will eventually be gutted
the SYSINIT call to the driver will include a phase where the
driver links it's ioconf line into a chain of such. when this phase is done
then the user can modify them with the boot: -c
config menu if he wants, just like now..
config will put the config lines out in the .h file
(e.g. in aha.h will be the addresses for the aha driver to look.)
as I said this is a very small first step..
the aim of THIS set of edits is to not have to edit conf.c at all when
adding a new device.. the tabe will be a simple skeleton..

when this is done, it will allow other changes to be made,
all teh time still having a fully working kernel tree,
but the logical outcome is the complete REMOVAL of the devsw tables.

By the end of this, linked in drivers will be exactly the same as
run-time loaded drivers, except they JUST HAPPEN to already be linked
and present at startup..
the SYSINIT calls will be the equivalent of the "init" call
made to a newly loaded driver in every respect.

For this edit,
each of the files has the following code inserted into it:

obviously, tailored to suit..
----------------------somewhere at the top:
#ifdef JREMOD
#include <sys/conf.h>
#define CDEV_MAJOR 13
#define BDEV_MAJOR 4
static void 	sd_devsw_install();
#endif /*JREMOD */
---------------------somewhere that's run during bootup: EVENTUALLY a SYSINIT
#ifdef JREMOD
        sd_devsw_install();
#endif /*JREMOD*/
-----------------------at the bottom:
#ifdef JREMOD
struct bdevsw sd_bdevsw =
	{ sdopen,	sdclose,	sdstrategy,	sdioctl,	/*4*/
	  sddump,	sdsize,		0 };

struct cdevsw sd_cdevsw =
	{ sdopen,	sdclose,	rawread,	rawwrite,	/*13*/
	  sdioctl,	nostop,		nullreset,	nodevtotty,/* sd */
	  seltrue,	nommap,		sdstrategy };

static sd_devsw_installed = 0;

static void 	sd_devsw_install()
{
	dev_t descript;
	if( ! sd_devsw_installed ) {
		descript = makedev(CDEV_MAJOR,0);
		cdevsw_add(&descript,&sd_cdevsw,NULL);
#if defined(BDEV_MAJOR)
		descript = makedev(BDEV_MAJOR,0);
		bdevsw_add(&descript,&sd_bdevsw,NULL);
#endif /*BDEV_MAJOR*/
		sd_devsw_installed = 1;
	}
}
#endif /* JREMOD */
1995-11-28 09:43:45 +00:00
julian
67727fc1c1 the second set of changes in a move towards getting devices to be
totally dynamic.

this is only the devices in i386/isa
I'll do more tomorrow.
they're completely masked by #ifdef JREMOD at this stage...
the eventual aim is that every driver will do a SYSINIT
at startup BEFORE the probes, which will effectively
link it into the devsw tables etc.

If I'd thought about it more I'd have put that in in this set (damn)
The ioconf lines generated by config will also end up in the
device's own scope as well, so ioconf.c will eventually be gutted
the SYSINIT call to the driver will include a phase where the
driver links it's ioconf line into a chain of such. when this phase is done
then the user can modify them with the boot: -c
config menu if he wants, just like now..
config will put the config lines out in the .h file
(e.g. in aha.h will be the addresses for the aha driver to look.)
as I said this is a very small first step..
the aim of THIS set of edits is to not have to edit conf.c at all when
adding a new device.. the tabe will be a simple skeleton..

when this is done, it will allow other changes to be made,
all teh time still having a fully working kernel tree,
but the logical outcome is the complete REMOVAL of the devsw tables.

By the end of this, linked in drivers will be exactly the same as
run-time loaded drivers, except they JUST HAPPEN to already be linked
and present at startup..
the SYSINIT calls will be the equivalent of the "init" call
made to a newly loaded driver in every respect.

For this edit,
each of the files has the following code inserted into it:

obviously, tailored to suit..
----------------------somewhere at the top:
#ifdef JREMOD
#include <sys/conf.h>
#define CDEV_MAJOR 13
#define BDEV_MAJOR 4
static void 	sd_devsw_install();
#endif /*JREMOD */
---------------------somewhere that's run during bootup: EVENTUALLY a SYSINIT
#ifdef JREMOD
        sd_devsw_install();
#endif /*JREMOD*/
-----------------------at the bottom:
#ifdef JREMOD
struct bdevsw sd_bdevsw =
	{ sdopen,	sdclose,	sdstrategy,	sdioctl,	/*4*/
	  sddump,	sdsize,		0 };

struct cdevsw sd_cdevsw =
	{ sdopen,	sdclose,	rawread,	rawwrite,	/*13*/
	  sdioctl,	nostop,		nullreset,	nodevtotty,/* sd */
	  seltrue,	nommap,		sdstrategy };

static sd_devsw_installed = 0;

static void 	sd_devsw_install()
{
	dev_t descript;
	if( ! sd_devsw_installed ) {
		descript = makedev(CDEV_MAJOR,0);
		cdevsw_add(&descript,&sd_cdevsw,NULL);
#if defined(BDEV_MAJOR)
		descript = makedev(BDEV_MAJOR,0);
		bdevsw_add(&descript,&sd_bdevsw,NULL);
#endif /*BDEV_MAJOR*/
		sd_devsw_installed = 1;
	}
}
#endif /* JREMOD */
1995-11-28 09:42:06 +00:00
bde
94df7c3a92 Removed all #includes of the unused file <sys/device.h>. 1995-11-28 07:29:59 +00:00
peter
26bbc85eee After having put on my Asbestos suit, complete the MFS_ROOT part of Terry's
mountroot changes.  This means that the mfs_initminiroot functionality
into the root mfs_mount....
1995-11-28 03:15:58 +00:00
peter
3ce680f86e Mainly cosmetic cleanups... It now uses more consistant message reporting
on the console, and no longer uses "SLXOS" which I suspect may be a
trademark... (I'm not sure, but this is not really a SLXOS driver anyway)
1995-11-28 02:07:36 +00:00
ache
016bb77514 Separate colors & attributes as Terry points
Reviewed by: soren
1995-11-28 00:17:32 +00:00
bde
6416fe008a Fixed setting of speed B0 - don't output a bogus divisor of 0 and a
random prescaler, just hang up.  This may fix hangup problems with
mgetty.
1995-11-26 17:13:23 +00:00
bde
b487404992 Completed function declarations and/or added prototypes. 1995-11-24 15:15:30 +00:00
bde
eaebf72f4b Added bogusly placed extern prototypes for functions that should probably
be static.
1995-11-24 15:08:07 +00:00
bde
2889b1ba4a Fixed a comment. 1995-11-24 14:56:00 +00:00
bde
ba625bb515 Staticized. Moved some ero-initialized values to the bss.
Added prototypes.
1995-11-24 13:27:24 +00:00
dyson
711711e9f3 Update the wd.c driver to use the new TAILQ scheme for device
buffer queue.  Also, create a new subroutine 'tqdisksort' that
is an improved version of the original disksort that also uses
TAILQs.
1995-11-23 07:24:41 +00:00
bde
825daf3e32 Completed function declarations and added prototypes.
Removed some unnecessary #includes.

Fixed warnings about nested externs.
1995-11-22 07:43:53 +00:00
bde
24ce87cc75 Completed function declarations and/or added prototypes. 1995-11-21 12:55:26 +00:00
bde
e15706373f Restored static variable `nsio_tty' which is used only by pstat(8). Made
it `const' to inhibit compiler warnings.

Added #include of <pccard/driver.h> to get prototypes.  <pccard/slot.h>
is still necessary for its side effect of exporting non-slot things.
1995-11-21 09:15:04 +00:00
peter
0786a4cac5 Add and document the hooks for John Hay's Arnet sync driver... 1995-11-21 02:50:10 +00:00
peter
0b1628b7d8 This commit was generated by cvs2svn to compensate for changes in r12437,
which included commits to RCS files with non-trunk default branches.
1995-11-21 02:32:04 +00:00
peter
1942953117 This driver supports the Arnet SYNC/570i ISA cards that is based on the
HD64570 chip. Both the 2 and 4 port cards is supported and auto detected.

Line speeds of up to 2Mbps is possible. At this speed about 85% of the
bandwidth is usable with 486DX processors.

The standard FreeBSD sppp code is used for the link level layer. The
default protocol used is PPP. The Cisco HDLC protocol can be used by
adding "link2" to the ifconfig line in /etc/sysconfig or where ever
ifconfig is run.

At the moment only the V.35 and X.21 interfaces is supported. The others
may need tweaks to the clock selection code.

Submitted by: John Hay <jhay@mikom.csir.co.za>
1995-11-21 02:32:04 +00:00
bde
cc094780c5 Quick fix for stat_imask and intr_mask[8] not having the RTC interrupt
bit set.  I broke stat_imask in Dec 1994 and update_intr_masks() has
copied the breakage to intr_mask[8] since Mar 1995.  This can cause
the RTC to stop interrupting in rare cases (under loads heavy enough
for a new RTC interrupt to occur at a critical time just before Xintr8
finishes handling the previous one) and may have caused worse problems.
1995-11-20 13:24:18 +00:00
phk
d0c66446cc Mega commit for sysctl.
Convert the remaining sysctl stuff to the new way of doing things.
the devconf stuff is the reason for the large number of files.
Cleaned up some compiler warnings while I were there.
1995-11-20 12:42:39 +00:00
phk
1bec817e70 Remove unused var. 1995-11-20 12:14:40 +00:00
phk
220a07c995 Fix compiler warnings. 1995-11-20 12:13:32 +00:00
phk
4cf530b930 move variables inside the #ifdef. 1995-11-20 12:12:02 +00:00
phk
e55828b00a Change call to kern_sysctl to userland_sysctl. Not tested. 1995-11-20 12:10:59 +00:00
phk
ac9043cb6b Remove unused vars. 1995-11-20 12:10:09 +00:00
dg
56868f5708 i386 is defined by the compiler, so don't define it here. LOAD_ADDRESS
is only used in the Makefile, so don't define it in CFLAGS.
1995-11-19 19:49:43 +00:00
bde
f032d983b7 Moved bogusly placed #endif that hid some prototypes. 1995-11-18 09:37:42 +00:00
bde
58a38b4b38 Updated comments. The comments about the unused addresses get broken
almost every time someone uses an address.  This file is probably not
the right place to keep track of the unused addresses (or used
addresses :->).

Fixed comments on #endif's to match code.

Added defines for ASC and GSC sizes.  This file is not the right place
to keep track of scanner addresses, but while there here and we
pretend to keep track of unused addresses, the sizes need to be here
too.

Sorted IO_*SIZE defines.
1995-11-18 09:29:39 +00:00
bde
0b3bb1936a Fixed the types of the apm hook functions.
Completed function declarations.

Added prototypes.

Partially fixed the path to cons.h.
1995-11-18 08:58:14 +00:00
bde
5f8371d19f Fixed the types of the apm hook functions.
Completed function declarations.

Added prototypes.
1995-11-18 08:39:28 +00:00
bde
2403a3bdb8 Fixed the type of a timeout function.
Added prototypes.
1995-11-18 08:35:49 +00:00
bde
6601faf9f3 Fixed staticization - use `static' in function headers, not just in
prototypes.
1995-11-18 08:29:04 +00:00
bde
46948cb1ec Fixed a bogus include path.
Removed a bogus include.

Added prototypes.
1995-11-18 08:21:15 +00:00
bde
618bbe9fb0 Staticized an inline function. All inlines in kernel headers should be
static.  The function shouldn't be here anyway.  It is driver dependent,
while `ic' files are supposed to only depend on the IC.
1995-11-18 08:12:30 +00:00
bde
e1c8826a56 Fixed (nonexistent) initialization of bp->b_pblkno. disksort() for
floppies must have been random in 2.x since we reintroduced sorting
on b_pblkno on 1995/03/18.  Drivers still initialize b_cylin/b_resid
although this is no longer used.

Removed unused, wrong function fdsize().  (Returning 0 means that the
device exists and has size 0, not that the device doesn't exist.
swaponvp() allows for size 0 by stupidly calling the d_psize function
twice if the size isn't 0.  setdumpdev() doesn't allow for it.)

Continued removing /* ARGSUSED */ from drivers.
1995-11-18 07:48:11 +00:00
bde
921eaa04e6 Fixed the type of a timeout function.
Removed related bogus casts of function pointers.
Removed a bogus include.
1995-11-18 07:07:04 +00:00
bde
27735b844a Fixed the type of vm_fault_quick() - don't convert types back and forth
through bogus immediate types.

Added prototypes.
1995-11-18 06:54:11 +00:00
bde
0e35ee8052 Fixed handling of trace traps when cons_unavail is set. Added comments
about handing of other cases.
1995-11-18 06:49:35 +00:00
bde
9c1796f0bf Restored the device-driverness off wd.c. It got lost when wdc was
introduced.
Fixed the device-driverness of atapi.c and spkr.c.

These changes are actually no-ops because ${DRIVER_C} is the same as
${NORMAL_C} for the i386.  I could do without magic CFLAGS.  Special
handling should be in the sources if possible.
1995-11-18 05:34:00 +00:00
bde
2d5609b7ae Removed bogus padding that wasted 0x500 bytes.
Improved code and comments.  Don't do anything except transfer control
in the head.o module.
1995-11-18 05:25:24 +00:00
bde
ba88374c64 Fixed scrolling. The bottom line wasn't cleared. This caused the
boot to display "Booting the kernelel...done" instead of "Booting
the kernel".

Removed save and restore of BIOS memory.  kzipped kernels haven't
ever overlaid the BIOS memory.
1995-11-18 05:12:10 +00:00
bde
1ab1d0615c Fixed the types of apm_default_resume() and apm_default_suspend().
Added prototypes.
1995-11-18 04:37:23 +00:00
bde
b87785185d Included <sys/conf.h>. It used to be included as a side effect of
including <sys/devconf.h>.
1995-11-16 09:56:02 +00:00
dg
3a54d792b9 Correct the bogus probe for 8216/8416 cards...it was broken.
Submitted by:	Steve Piette <steve@simon.chi.il.US>
1995-11-15 07:45:56 +00:00
phk
440f6747ef Removed:
#include <i386/isa/isa_device.h>
 #include <i386/eisa/eisaconf.h>
 #include <pci/pcireg.h>
 #include <pci/pcivar.h>
 #include <scsi/scsi_all.h>
 #include <scsi/scsiconf.h>
they are not needed, and slows down compilation.
1995-11-14 20:52:14 +00:00