Commit Graph

1978 Commits

Author SHA1 Message Date
nyan
23f1ad6ad4 Merged from sys/dev/sio/sio.c revision 1.382. 2002-10-14 10:10:09 +00:00
mike
274818ff2c Remove the P1003_1B kernel option; it is no longer used. 2002-10-13 16:29:17 +00:00
jeff
1f93c97112 - kserunnable() is now sched_runnable() change instances of these where
appropriate.
 - include sched.h to see this new api.
2002-10-12 05:37:26 +00:00
nyan
ea540fe3cd Fixed a warning if COM_MULTIPORT option is not defined.
Submitted by:	Kaho Toshikazu <kaho@elam.kais.kyoto-u.ac.jp>
2002-10-10 14:14:29 +00:00
nyan
9aac0c23ab Fixed SBUS_RA_*_region_* functions. 2002-10-10 13:38:50 +00:00
nyan
9b2e99b34d MFi386: revision 1.67. 2002-10-08 12:54:56 +00:00
nyan
42ff9b4a07 MFi386: revisions 1.539, 1.540 and 1.541. 2002-10-08 12:53:26 +00:00
nyan
8d204bd6cb Merged from sys/isa/fd.c revisions 1.224 and 1.241. 2002-10-07 13:05:45 +00:00
phk
951c3e53b2 NB: This commit does *NOT* make GEOM the default in FreeBSD
NB: But it will enable it in all kernels not having options "NO_GEOM"

Put the GEOM related options into the intended order.

Add "options NO_GEOM" to all kernel configs apart from NOTES.

In some order of controlled fashion, the NO_GEOM options will be
removed, architecture by architecture in the coming days.

There are currently three known issues which may force people to
need the NO_GEOM option:

boot0cfg/fdisk:
        Tries to update the MBR while it is being used to control
        slices.  GEOM does not allow this as a direct operation.

SCSI floppy drives:
        Appearantly the scsi-da driver return "EBUSY" if no media
        is inserted.  This is wrong, it should return ENXIO.

PC98:
        It is unclear if GEOM correctly recognizes all variants of
        PC98 disklabels.  (Help Wanted!  I have neither docs nor HW)

These issues are all being worked.

Sponsored by:	DARPA & NAI Labs.
2002-10-05 16:35:33 +00:00
phk
6bb5f004e1 Don't use dkunit() to find our softc when we can hang it off the dev_t.
This removes yet a dependency on the old disklabel stuff.

Sponsored by:	DARPA & NAI Labs.
2002-10-05 15:49:39 +00:00
phk
de27611d21 Merge the last couple of my changes to fd.c into the pc98 version.
Sponsored by:	DARPA & NAI Labs
2002-10-05 15:15:43 +00:00
phk
19150ba4f8 Split MBR and PC98 on-disk sliceformats out from disklabel.h, step 1:
Peter had repocopied sys/disklabel.h to sys/diskpc98.h and sys/diskmbr.h.

These two new copies are still intact copies of disklabel.h and
therefore protected by #ifndef _SYS_DISKLABEL_H_ so #including them
in programs which already include <sys.disklabel.h> is currently a
no-op.

This commit adds a number of such #includes.

Once I have verified that I have fixed all the places which need fixing,
I will commit the updated versions of the three #include files.

Sponsored by:   DARPA & NAI Labs.
2002-10-01 07:24:55 +00:00
nyan
f298368d20 Call bus_set_resource() to set the ioport resource. 2002-09-30 16:41:47 +00:00
nyan
7ce1df07a8 Added some buggy PC-98 PnP cards support. 2002-09-29 13:31:26 +00:00
nyan
eb3a3f6072 Merged from sys/isa/fd.c revision 1.238. 2002-09-29 11:43:14 +00:00
nyan
c047d90fa9 Merged from sys/dev/syscons/syscons.c revision 1.389. 2002-09-29 11:42:36 +00:00
nyan
58532be080 Merged from sys/dev/sio/sio.c revisions 1.380 and 1.381. 2002-09-29 11:41:48 +00:00
nyan
e52a22a75a MFi386: revisions 1.127, 1.128 and 1.129. 2002-09-24 03:17:38 +00:00
nyan
300259934b Move the com_emr register definition to sioreg.h. 2002-09-24 02:35:57 +00:00
nyan
c17fef1a4e Merged from sys/dev/sio/sio.c revision 1.379. 2002-09-24 02:26:55 +00:00
nyan
8146a5ddd7 MFi386: revisions 1.536 and 1.538. 2002-09-24 02:22:35 +00:00
alfred
ac315391ce use __packed. 2002-09-23 18:54:32 +00:00
phk
bb47c7e317 Remove #ifdef/#endif 3 years after the stuff they protected was removed.
Spotted by:	peter.
2002-09-21 08:00:01 +00:00
phk
57a346a213 (This commit touches about 15 disk device drivers in a very consistent
and predictable way, and I apologize if I have gotten it wrong anywhere,
getting prior review on a patch like this is not feasible, considering
the number of people involved and hardware availability etc.)

If struct disklabel is the messenger: kill the messenger.

Inside struct disk we had a struct disklabel which disk drivers used to
communicate certain metrics to the disklayer above (GEOM or the disk
mini-layer).  This commit changes this communication to use four
explicit fields instead.

Amongst the benefits is that the fields do not get overwritten by
wrong or bogus on-disk disklabels.

Once that is clear, <sys/disk.h> which is included in the drivers
no longer need to pull <sys/disklabel.h> and <sys/diskslice.h> in,
the few places that needs them, have gotten explicit #includes for
them.

The disklabel inside struct disk is now only for internal use in
the disk mini-layer, so instead of embedding it, we malloc it as
we need it.

This concludes (modulus any mistakes) the series of disklabel related
commits.

I belive it all amounts to a NOP for all the rest of you :-)

Sponsored by:   DARPA & NAI Labs.
2002-09-20 19:36:05 +00:00
phk
d376fc4110 For reasons now lost in historical fog, the bounds_check_with_label()
function were put in i386/i386/machdep.c from where it has been
cut and pasted to other architectures with only minor corruption.

Disklabel is really a MI format in many ways, at least it certainly
is when you operate on struct disklabel.

Put bounds_check_with_label() back in subr_disklabel.c where it belongs.

Sponsored by:   DARPA & NAI Labs.
2002-09-20 17:51:00 +00:00
phk
82a79f8c8f #include <sys/disk.h> to get disk_err() prototype.
Sponsored by:	DARPA & NAI Labs.
2002-09-20 17:40:49 +00:00
phk
1919170e90 Make FreeBSD "struct disklabel" agnostic, step 311 of 723:
Rename diskerr() to disk_err() for naming consistency.

Drop the by now entirely useless struct disklabel argument.

Add a flag argument for new-line termination.

Fix a couple of printf-format-casts to %j instead of %l.

Correctly print the name of all bio commands.

Move the function from subr_disklabel.c to subr_disk.c,
and from <sys/disklabel.h> to <sys/disk.h>.

Use the new disk_err() throughout, #include <sys/disk.h> as needed.

Bump __FreeBSD_version for the sake of the aac disk drivers #ifdefs.

Remove unused disklabel members of softc for aac, amr and mlx, which seem
to originally have been intended for diskerr() use, but which only rotted
and got Copy&Pasted at least two times to many.

Sponsored by:   DARPA & NAI Labs.
2002-09-20 12:52:03 +00:00
nyan
6f6cc1a641 MFi386: revisions 1.534 and 1.535. 2002-09-19 13:42:11 +00:00
peter
a51c9b6627 Initiate deorbit burn for the i386-only a.out related support. Moves are
under way to move the remnants of the a.out toolchain to ports.  As the
comment in src/Makefile said, this stuff is deprecated and one should not
expect this to remain beyond 4.0-REL.  It has already lasted WAY beyond
that.

Notable exceptions:
gcc - I have not touched the a.out generation stuff there.
ldd/ldconfig - still have some code to interface with a.out rtld.
old as/ld/etc - I have not removed these yet, pending their move to ports.
some includes - necessary for ldd/ldconfig for now.

Tested on: i386 (extensively), alpha
2002-09-17 01:49:00 +00:00
nyan
2d1ef1927d Merged from sys/isa/fd.c revisions 1.234, 1.235 and 1.236. 2002-09-16 07:39:47 +00:00
nyan
cb30d5a6d9 Merged from sys/dev/sio/sio.c revision 1.378. 2002-09-16 07:14:02 +00:00
nyan
879fee156b Merged from sys/isa/syscons_isa.c revision 1.18. 2002-09-16 07:11:43 +00:00
julian
c7e9e7e892 Allocate KSEs and KSEGRPs separatly and remove them from the proc structure.
next step is to allow > 1 to be allocated per process. This would give
multi-processor threads. (when the rest of the infrastructure is
in place)

While doing this I noticed libkvm and sys/kern/kern_proc.c:fill_kinfo_proc
are diverging more than they should.. corrective action needed soon.
2002-09-15 23:52:25 +00:00
jmallett
8fa852ab6c Fill out two fields (si_pid, si_uid) in the siginfo structure handed back
to userland in the signal handler that were not being iflled out before, but
should and can be.

This part of sendsig could be slightly refactored to use an MI interface, or
ideally, *sendsig*() would have an API change to accept a siginfo_t, which
would be filled out by an MI function in the level above sendsig, and said MI
function would make a small call into MD code to fill out the MD parts (some
of which may be bogus, such as the si_addr stuff in some places).  This would
eventually make it possible for parts of the kernel sending signals to set up
a siginfo with meaningful information.

Reviewed by:	mux
MFC after:	2 weeks
2002-09-07 19:12:53 +00:00
jmallett
f77e5caa9d Diff reduction in comments for filling the siginfo structure - refer to
filling in the POSIX parts, when doing the same thing in every port of
FreeBSD.
2002-09-07 18:56:18 +00:00
peter
fa099d1548 Automatically enable CPU_ENABLE_SSE (detect and enable SSE instructions)
if compiling with I686_CPU as a target.  CPU_DISABLE_SSE will prevent
this from happening and will guarantee the code is not compiled in.

I am still not happy with this, but gcc is now generating code that uses
these instructions if you set CPUTYPE to p3/p4 or athlon-4/mp/xp or higher.
2002-09-07 07:02:12 +00:00
peter
385431ebc4 Take a shot at fixing up a whole stack of style and other embarresing
unforced errors that Bruce identified.  I have not yet addressed all of
his concerns.
2002-08-31 03:33:32 +00:00
peter
c3bdd669c3 Change hw.physmem and hw.usermem to unsigned long like they used to be
in the original hardwired sysctl implementation.

The buf size calculator still overflows an integer on machines with large
KVA (eg: ia64) where the number of pages does not fit into an int.  Use
'long' there.

Change Maxmem and physmem and related variables to 'long', mostly for
completeness.  Machines are not likely to overflow 'int' pages in the
near term, but then again, 640K ought to be enough for anybody.  This
comes for free on 32 bit machines, so why not?
2002-08-30 04:04:37 +00:00
jake
821a548da7 Renamed poorly named setregs to exec_setregs. Moved its prototype to
imgact.h with the other exec support functions.
2002-08-29 06:17:48 +00:00
charnier
7dd9d47059 Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
nyan
a81e61d839 Merged from sys/dev/syscons/scvtb.c revision 1.9. 2002-08-22 13:24:00 +00:00
nyan
c2733acc80 Merged from sys/dev/syscons/syscons.c revision 1.388. 2002-08-22 13:23:15 +00:00
nyan
6cd21c7a13 Merged from sys/dev/syscons/syscons.c revisions 1.386 and 1.387. 2002-08-20 14:39:29 +00:00
peter
238c22491c remove unit counts from atkbdc, pckbd, sc 2002-08-20 00:10:22 +00:00
peter
6c52efa2a1 de-count pckbd for pc98. This file is only compiled if NPCKBD was 1,
so the conditional compile should never have been used.
2002-08-20 00:05:41 +00:00
nyan
92f62a6fd1 MFi386: revisions 1.354 and 1.356.
Remove the mpt driver entry.
2002-08-13 12:25:01 +00:00
mjacob
d8202a09a4 Add support for the LSI-Logic Fusion/MP architecture.
This is an architecture that present a thing message passing interface
to the OS. You can query as to how many ports and what kind are attached
and enable them and so on.

A less grand view is that this is just another way to package SCSI (SPI or
FC) and FC-IP into a one-driver interface set.

This driver support the following hardware:

LSI FC909:	Single channel, 1Gbps, Fibre Channel (FC-SCSI only)
LSI FC929:	Dual Channel, 1-2Gbps, Fibre Channel (FC-SCSI only)
LSI 53c1020:	Single Channel, Ultra4 (320M) (Untested)
LSI 53c1030:	Dual Channel, Ultra4 (320M)

Currently it's in fair shape, but expect a lot of changes over the
next few weeks as it stabilizes.

Credits:

The driver is mostly from some folks from Jeff Roberson's company- I've
been slowly migrating it to broader support that I it came to me as.

The hardware used in developing support came from:

	FC909: LSI-Logic, Advansys (now Connetix)
	FC929: LSI-Logic
	53c1030: Antares Microsystems (they make a very fine board!)

MFC after:	3 weeks
2002-08-11 23:34:20 +00:00
brooks
a59a8c94a5 Make ppp(4) devices clonable and unloadable. 2002-08-09 15:30:48 +00:00
blackend
9c8ad2f838 Fix the link to the Handbook 2002-08-01 17:21:18 +00:00
peter
501a9e51e5 gethints.awk is a machine-specific 4.x->5.x transition aid. We cannot
use a common one because pc98 has got very different values.  This only
needs to exist on platforms that existed under 4.x.
2002-07-26 03:52:30 +00:00