History log of /freebsd-10-stable/sys/pc98/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
292348 16-Dec-2015 ken

MFC r291716, r291724, r291741, r291742

In addition to those revisions, add this change to a file that is not in
head:

sys/ia64/include/bus.h:
Guard kernel-only parts of the ia64 machine/bus.h header with
#ifdef _KERNEL.

This allows userland programs to include <machine/bus.h> to get the
definition of bus_addr_t and bus_size_t.

------------------------------------------------------------------------
r291716 | ken | 2015-12-03 15:54:55 -0500 (Thu, 03 Dec 2015) | 257 lines

Add asynchronous command support to the pass(4) driver, and the new
camdd(8) utility.

CCBs may be queued to the driver via the new CAMIOQUEUE ioctl, and
completed CCBs may be retrieved via the CAMIOGET ioctl. User
processes can use poll(2) or kevent(2) to get notification when
I/O has completed.

While the existing CAMIOCOMMAND blocking ioctl interface only
supports user virtual data pointers in a CCB (generally only
one per CCB), the new CAMIOQUEUE ioctl supports user virtual and
physical address pointers, as well as user virtual and physical
scatter/gather lists. This allows user applications to have more
flexibility in their data handling operations.

Kernel memory for data transferred via the queued interface is
allocated from the zone allocator in MAXPHYS sized chunks, and user
data is copied in and out. This is likely faster than the
vmapbuf()/vunmapbuf() method used by the CAMIOCOMMAND ioctl in
configurations with many processors (there are more TLB shootdowns
caused by the mapping/unmapping operation) but may not be as fast
as running with unmapped I/O.

The new memory handling model for user requests also allows
applications to send CCBs with request sizes that are larger than
MAXPHYS. The pass(4) driver now limits queued requests to the I/O
size listed by the SIM driver in the maxio field in the Path
Inquiry (XPT_PATH_INQ) CCB.

There are some things things would be good to add:

1. Come up with a way to do unmapped I/O on multiple buffers.
Currently the unmapped I/O interface operates on a struct bio,
which includes only one address and length. It would be nice
to be able to send an unmapped scatter/gather list down to
busdma. This would allow eliminating the copy we currently do
for data.

2. Add an ioctl to list currently outstanding CCBs in the various
queues.

3. Add an ioctl to cancel a request, or use the XPT_ABORT CCB to do
that.

4. Test physical address support. Virtual pointers and scatter
gather lists have been tested, but I have not yet tested
physical addresses or scatter/gather lists.

5. Investigate multiple queue support. At the moment there is one
queue of commands per pass(4) device. If multiple processes
open the device, they will submit I/O into the same queue and
get events for the same completions. This is probably the right
model for most applications, but it is something that could be
changed later on.

Also, add a new utility, camdd(8) that uses the asynchronous pass(4)
driver interface.

This utility is intended to be a basic data transfer/copy utility,
a simple benchmark utility, and an example of how to use the
asynchronous pass(4) interface.

It can copy data to and from pass(4) devices using any target queue
depth, starting offset and blocksize for the input and ouptut devices.
It currently only supports SCSI devices, but could be easily extended
to support ATA devices.

It can also copy data to and from regular files, block devices, tape
devices, pipes, stdin, and stdout. It does not support queueing
multiple commands to any of those targets, since it uses the standard
read(2)/write(2)/writev(2)/readv(2) system calls.

The I/O is done by two threads, one for the reader and one for the
writer. The reader thread sends completed read requests to the
writer thread in strictly sequential order, even if they complete
out of order. That could be modified later on for random I/O patterns
or slightly out of order I/O.

camdd(8) uses kqueue(2)/kevent(2) to get I/O completion events from
the pass(4) driver and also to send request notifications internally.

For pass(4) devcies, camdd(8) uses a single buffer (CAM_DATA_VADDR)
per CAM CCB on the reading side, and a scatter/gather list
(CAM_DATA_SG) on the writing side. In addition to testing both
interfaces, this makes any potential reblocking of I/O easier. No
data is copied between the reader and the writer, but rather the
reader's buffers are split into multiple I/O requests or combined
into a single I/O request depending on the input and output blocksize.

For the file I/O path, camdd(8) also uses a single buffer (read(2),
write(2), pread(2) or pwrite(2)) on reads, and a scatter/gather list
(readv(2), writev(2), preadv(2), pwritev(2)) on writes.

Things that would be nice to do for camdd(8) eventually:

1. Add support for I/O pattern generation. Patterns like all
zeros, all ones, LBA-based patterns, random patterns, etc. Right
Now you can always use /dev/zero, /dev/random, etc.

2. Add support for a "sink" mode, so we do only reads with no
writes. Right now, you can use /dev/null.

3. Add support for automatic queue depth probing, so that we can
figure out the right queue depth on the input and output side
for maximum throughput. At the moment it defaults to 6.

4. Add support for SATA device passthrough I/O.

5. Add support for random LBAs and/or lengths on the input and
output sides.

6. Track average per-I/O latency and busy time. The busy time
and latency could also feed in to the automatic queue depth
determination.

sys/cam/scsi/scsi_pass.h:
Define two new ioctls, CAMIOQUEUE and CAMIOGET, that queue
and fetch asynchronous CAM CCBs respectively.

Although these ioctls do not have a declared argument, they
both take a union ccb pointer. If we declare a size here,
the ioctl code in sys/kern/sys_generic.c will malloc and free
a buffer for either the CCB or the CCB pointer (depending on
how it is declared). Since we have to keep a copy of the
CCB (which is fairly large) anyway, having the ioctl malloc
and free a CCB for each call is wasteful.

sys/cam/scsi/scsi_pass.c:
Add asynchronous CCB support.

Add two new ioctls, CAMIOQUEUE and CAMIOGET.

CAMIOQUEUE adds a CCB to the incoming queue. The CCB is
executed immediately (and moved to the active queue) if it
is an immediate CCB, but otherwise it will be executed
in passstart() when a CCB is available from the transport layer.

When CCBs are completed (because they are immediate or
passdone() if they are queued), they are put on the done
queue.

If we get the final close on the device before all pending
I/O is complete, all active I/O is moved to the abandoned
queue and we increment the peripheral reference count so
that the peripheral driver instance doesn't go away before
all pending I/O is done.

The new passcreatezone() function is called on the first
call to the CAMIOQUEUE ioctl on a given device to allocate
the UMA zones for I/O requests and S/G list buffers. This
may be good to move off to a taskqueue at some point.
The new passmemsetup() function allocates memory and
scatter/gather lists to hold the user's data, and copies
in any data that needs to be written. For virtual pointers
(CAM_DATA_VADDR), the kernel buffer is malloced from the
new pass(4) driver malloc bucket. For virtual
scatter/gather lists (CAM_DATA_SG), buffers are allocated
from a new per-pass(9) UMA zone in MAXPHYS-sized chunks.
Physical pointers are passed in unchanged. We have support
for up to 16 scatter/gather segments (for the user and
kernel S/G lists) in the default struct pass_io_req, so
requests with longer S/G lists require an extra kernel malloc.

The new passcopysglist() function copies a user scatter/gather
list to a kernel scatter/gather list. The number of elements
in each list may be different, but (obviously) the amount of data
stored has to be identical.

The new passmemdone() function copies data out for the
CAM_DATA_VADDR and CAM_DATA_SG cases.

The new passiocleanup() function restores data pointers in
user CCBs and frees memory.

Add new functions to support kqueue(2)/kevent(2):

passreadfilt() tells kevent whether or not the done
queue is empty.

passkqfilter() adds a knote to our list.

passreadfiltdetach() removes a knote from our list.

Add a new function, passpoll(), for poll(2)/select(2)
to use.

Add devstat(9) support for the queued CCB path.

sys/cam/ata/ata_da.c:
Add support for the BIO_VLIST bio type.

sys/cam/cam_ccb.h:
Add a new enumeration for the xflags field in the CCB header.
(This doesn't change the CCB header, just adds an enumeration to
use.)

sys/cam/cam_xpt.c:
Add a new function, xpt_setup_ccb_flags(), that allows specifying
CCB flags.

sys/cam/cam_xpt.h:
Add a prototype for xpt_setup_ccb_flags().

sys/cam/scsi/scsi_da.c:
Add support for BIO_VLIST.

sys/dev/md/md.c:
Add BIO_VLIST support to md(4).

sys/geom/geom_disk.c:
Add BIO_VLIST support to the GEOM disk class. Re-factor the I/O size
limiting code in g_disk_start() a bit.

sys/kern/subr_bus_dma.c:
Change _bus_dmamap_load_vlist() to take a starting offset and
length.

Add a new function, _bus_dmamap_load_pages(), that will load a list
of physical pages starting at an offset.

Update _bus_dmamap_load_bio() to allow loading BIO_VLIST bios.
Allow unmapped I/O to start at an offset.

sys/kern/subr_uio.c:
Add two new functions, physcopyin_vlist() and physcopyout_vlist().

sys/pc98/include/bus.h:
Guard kernel-only parts of the pc98 machine/bus.h header with
#ifdef _KERNEL.

This allows userland programs to include <machine/bus.h> to get the
definition of bus_addr_t and bus_size_t.

sys/sys/bio.h:
Add a new bio flag, BIO_VLIST.

sys/sys/uio.h:
Add prototypes for physcopyin_vlist() and physcopyout_vlist().

share/man/man4/pass.4:
Document the CAMIOQUEUE and CAMIOGET ioctls.

usr.sbin/Makefile:
Add camdd.

usr.sbin/camdd/Makefile:
Add a makefile for camdd(8).

usr.sbin/camdd/camdd.8:
Man page for camdd(8).

usr.sbin/camdd/camdd.c:
The new camdd(8) utility.

Sponsored by: Spectra Logic

------------------------------------------------------------------------
r291724 | ken | 2015-12-03 17:07:01 -0500 (Thu, 03 Dec 2015) | 6 lines

Fix typos in the camdd(8) usage() function output caused by an error in
my diff filter script.

Sponsored by: Spectra Logic

------------------------------------------------------------------------
r291741 | ken | 2015-12-03 22:38:35 -0500 (Thu, 03 Dec 2015) | 10 lines

Fix g_disk_vlist_limit() to work properly with deletes.

Add a new bp argument to g_disk_maxsegs(), and add a new function,
g_disk_maxsize() tha will properly determine the maximum I/O size for a
delete or non-delete bio.

Submitted by: will
Sponsored by: Spectra Logic

------------------------------------------------------------------------
------------------------------------------------------------------------
r291742 | ken | 2015-12-03 22:44:12 -0500 (Thu, 03 Dec 2015) | 5 lines

Fix a style issue in g_disk_limit().

Noticed by: bdrewery

------------------------------------------------------------------------

Sponsored by: Spectra Logic

284665 21-Jun-2015 trasz

MFC r282213:

Add kern.racct.enable tunable and RACCT_DISABLED config option.
The point of this is to be able to add RACCT (with RACCT_DISABLED)
to GENERIC, to avoid having to rebuild the kernel to use rctl(8).

MFC r282901:

Build GENERIC with RACCT/RCTL support by default. Note that it still
needs to be enabled by adding "kern.racct.enable=1" to /boot/loader.conf.

Note those two are MFC-ed together, because the latter one changes the
name of RACCT_DISABLED option to RACCT_DEFAULT_TO_DISABLED. Should have
committed the renaming separately...

Relnotes: yes
Sponsored by: The FreeBSD Foundation

276135 23-Dec-2014 nyan

MFC: r272492

Merge pc98's machdep.c into i386/i386/machdep.c.

276076 22-Dec-2014 jhb

MFC 271405,271408,271409,272658:
MFamd64: Use initializecpu() to set various model-specific registers on
AP startup and AP resume (it was already used for BSP startup and BSP
resume).

276070 22-Dec-2014 jhb

MFC 260557,271076,271077,271082,271083,271098:
- Remove spaces from boot messages when we print the CPU ID/Family/Stepping
- Move prototypes for various functions into out of C files and into
<machine/md_var.h>.
- Reduce diffs between i386 and amd64 initcpu.c and identcpu.c files.
- Move blacklists of broken TSCs out of the printcpuinfo() function
and into the TSC probe routine.
- Merge the amd64 and i386 identcpu.c into a single x86 implementation.

274037 03-Nov-2014 nyan

MFC: r272258
- Cosmetic changes.
- Reduce diffs against i386.

MFC: 272259
MFi386: Enable QUOTA, PRINTF_BUFR_SIZE and puc.

267964 27-Jun-2014 jhb

MFC 261781:
Don't waste a page of KVA for the boot-time memory test on x86. For amd64,
reuse the first page of the crashdumpmap as CMAP1/CADDR1. For i386,
remove CMAP1/CADDR1 entirely and reuse CMAP3/CADDR3 for the memory test.

258559 25-Nov-2013 emaste

MFC r258135: x86: Allow users to change PSL_RF via ptrace(PT_SETREGS...)

Debuggers may need to change PSL_RF. Note that tf_eflags is already stored
in the signal context during signal handling and PSL_RF previously could
be modified via sigreturn, so this change should not provide any new
ability to userspace.

For background see the thread at:
http://lists.freebsd.org/pipermail/freebsd-i386/2007-September/005910.html

Reviewed by: jhb, kib

Sponsored by: DARPA, AFRL
Approved by: re (gjb)

256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


254663 22-Aug-2013 jkim

MFi386: r254619

Reimplement atomic_load_acq_64() and atomic_store_rel_64() for i386.

Noticed by: tinderbox


254480 18-Aug-2013 pjd

Add process descriptors support to the GENERIC kernel. It is already being
used by the tools in base systems and with sandboxing more and more tools
the usage should only increase.

Submitted by: Mariusz Zaborski <oshogbo@FreeBSD.org>
Sponsored by: Google Summer of Code 2013
MFC after: 1 month


254025 07-Aug-2013 jeff

Replace kernel virtual address space allocation with vmem. This provides
transparent layering and better fragmentation.

- Normalize functions that allocate memory to use kmem_*
- Those that allocate address space are named kva_*
- Those that operate on maps are named kmap_*
- Implement recursive allocation handling for kmem_arena in vmem.

Reviewed by: alc
Tested by: pho
Sponsored by: EMC / Isilon Storage Division


253845 31-Jul-2013 obrien

Back out r253779 & r253786.


253779 29-Jul-2013 obrien

Decouple yarrow from random(4) device.

* Make Yarrow an optional kernel component -- enabled by "YARROW_RNG" option.
The files sha2.c, hash.c, randomdev_soft.c and yarrow.c comprise yarrow.

* random(4) device doesn't really depend on rijndael-*. Yarrow, however, does.

* Add random_adaptors.[ch] which is basically a store of random_adaptor's.
random_adaptor is basically an adapter that plugs in to random(4).
random_adaptor can only be plugged in to random(4) very early in bootup.
Unplugging random_adaptor from random(4) is not supported, and is probably a
bad idea anyway, due to potential loss of entropy pools.
We currently have 3 random_adaptors:
+ yarrow
+ rdrand (ivy.c)
+ nehemeiah

* Remove platform dependent logic from probe.c, and move it into
corresponding registration routines of each random_adaptor provider.
probe.c doesn't do anything other than picking a specific random_adaptor
from a list of registered ones.

* If the kernel doesn't have any random_adaptor adapters present then the
creation of /dev/random is postponed until next random_adaptor is kldload'ed.

* Fix randomdev_soft.c to refer to its own random_adaptor, instead of a
system wide one.

Submitted by: arthurmesh@gmail.com, obrien
Obtained from: Juniper Networks
Reviewed by: obrien


251222 01-Jun-2013 nyan

MFi386: revision 251039

Use slightly more idiomatic expression to get the address of array.


250544 12-May-2013 peter

Tidy up some CVS workarounds.


249586 17-Apr-2013 gabor

- Correct mispellings of word resource

Submitted by: Christoph Mallon <christoph.mallon@gmx.de>


249268 08-Apr-2013 glebius

Merge from projects/counters: counter(9).

Introduce counter(9) API, that implements fast and raceless counters,
provided (but not limited to) for gathering of statistical data.

See http://lists.freebsd.org/pipermail/freebsd-arch/2013-April/014204.html
for more details.

In collaboration with: kib
Reviewed by: luigi
Tested by: ae, ray
Sponsored by: Nginx, Inc.


249083 04-Apr-2013 mav

Remove all legacy ATA code parts, not used since options ATA_CAM enabled in
most kernels before FreeBSD 9.0. Remove such modules and respective kernel
options: atadisk, ataraid, atapicd, atapifd, atapist, atapicam. Remove the
atacontrol utility and some man pages. Remove useless now options ATA_CAM.

No objections: current@, stable@
MFC after: never


248084 09-Mar-2013 attilio

Switch the vm_object mutex to be a rwlock. This will enable in the
future further optimizations where the vm_object lock will be held
in read mode most of the time the page cache resident pool of pages
are accessed for reading purposes.

The change is mostly mechanical but few notes are reported:
* The KPI changes as follow:
- VM_OBJECT_LOCK() -> VM_OBJECT_WLOCK()
- VM_OBJECT_TRYLOCK() -> VM_OBJECT_TRYWLOCK()
- VM_OBJECT_UNLOCK() -> VM_OBJECT_WUNLOCK()
- VM_OBJECT_LOCK_ASSERT(MA_OWNED) -> VM_OBJECT_ASSERT_WLOCKED()
(in order to avoid visibility of implementation details)
- The read-mode operations are added:
VM_OBJECT_RLOCK(), VM_OBJECT_TRYRLOCK(), VM_OBJECT_RUNLOCK(),
VM_OBJECT_ASSERT_RLOCKED(), VM_OBJECT_ASSERT_LOCKED()
* The vm/vm_pager.h namespace pollution avoidance (forcing requiring
sys/mutex.h in consumers directly to cater its inlining functions
using VM_OBJECT_LOCK()) imposes that all the vm/vm_pager.h
consumers now must include also sys/rwlock.h.
* zfs requires a quite convoluted fix to include FreeBSD rwlocks into
the compat layer because the name clash between FreeBSD and solaris
versions must be avoided.
At this purpose zfs redefines the vm_object locking functions
directly, isolating the FreeBSD components in specific compat stubs.

The KPI results heavilly broken by this commit. Thirdy part ports must
be updated accordingly (I can think off-hand of VirtualBox, for example).

Sponsored by: EMC / Isilon storage division
Reviewed by: jeff
Reviewed by: pjd (ZFS specific review)
Discussed with: alc
Tested by: pho


247454 28-Feb-2013 davide

MFcalloutng:
When CPU becomes idle, cpu_idleclock() calculates time to the next timer
event in order to reprogram hw timer. Return that time in sbintime_t to
the caller and pass it to acpi_cpu_idle(), where it can be used as one
more factor (quite precise) to extimate furter sleep time and choose
optimal sleep state. This is a preparatory change for further callout
improvements will be committed in the next days.

The commmit is not targeted for MFC.


246222 01-Feb-2013 eadler

Remove support for plip from the GENERIC kernel as no systems in the
last 10 years require this support.

Discussed with: db
Discussed with: kib
Reviewed by: imp
Reviewed by: jhb
Reviewed by: -hackers
Approved by: cperciva (mentor)


245317 11-Jan-2013 imp

MFi386: Make similar changes that were made to atkbdc in r245315.


245035 04-Jan-2013 nyan

MFi386: r232521

Exclude USB drivers (except umass and ukbd) from main kernel image.


244992 03-Jan-2013 des

As discussed on -current last October, remove the firewire drivers from
GENERIC.


242869 10-Nov-2012 nyan

Reduce diffs against i386.


242868 10-Nov-2012 nyan

Fix some KASSERTs.
They are missing changes from r208833, r227394 and r227442.


242867 10-Nov-2012 nyan

MFi386: r211924

Register an interrupt vector for DTrace return probes.


242866 10-Nov-2012 nyan

Use ANSI prototype to fix build with clang.

MFC after: 1 week


241880 22-Oct-2012 eadler

The 'testing memory' patch gets printed too many times

Approved by: cperciva (implicit)


241850 22-Oct-2012 eadler

Explain the upcoming delay by printing a message when the kernel
is about to begin testing memory.

Reviewed by: dteske, adri
Approved by: cperciva
MFC after: 1 week


241374 09-Oct-2012 attilio

Add an unified macro to deny ability from the compiler to reorder
instruction loads/stores at its will.
The macro __compiler_membar() is currently supported for both gcc and
clang, but kernel compilation will fail otherwise.

Reviewed by: bde, kib
Discussed with: dim, theraven
MFC after: 2 weeks


241371 09-Oct-2012 attilio

Reverts r234074,234105,234564,234723,234989,235231-235232 and part of
r234247.
Use, instead, the static intializer introduced in r239923 for x86 and
sparc64 intr_cpus, unwinding the code to the initial version.

Reviewed by: marius


240855 23-Sep-2012 nyan

MFi386: revision 237445

Commit changes missed from r237435. Properly calculate the signal
trampoline addresses after the shared page is enabled. Handle FreeBSD
ABIs without shared page support too.

MFi386: revision 238792

Introduce curpcb magic variable.


239699 26-Aug-2012 gjb

Grammar fix: s/NIC's/NICs/

MFC after: 3 days


238310 09-Jul-2012 jhb

Partially revert r217515 so that the mem_range_softc variable is always
present on x86 kernels. This fixes the build of kernels that include
'device acpi' but do not include 'device mem'.

MFC after: 1 month


237433 22-Jun-2012 kib

Implement mechanism to export some kernel timekeeping data to
usermode, using shared page. The structures and functions have vdso
prefix, to indicate the intended location of the code in some future.

The versioned per-algorithm data is exported in the format of struct
vdso_timehands, which mostly repeats the content of in-kernel struct
timehands. Usermode reading of the structure can be lockless.
Compatibility export for 32bit processes on 64bit host is also
provided. Kernel also provides usermode with indication about
currently used timecounter, so that libc can fall back to syscall if
configured timecounter is unknown to usermode code.

The shared data updates are initiated both from the tc_windup(), where
a fast task is queued to do the update, and from sysctl handlers which
change timecounter. A manual override switch
kern.timecounter.fast_gettime allows to turn off the mechanism.

Only x86 architectures export the real algorithm data, and there, only
for tsc timecounter. HPET counters page could be exported as well, but
I prefer to not further glue the kernel and libc ABI there until
proper vdso-based solution is developed.

Minimal stubs neccessary for non-x86 architectures to still compile
are provided.

Discussed with: bde
Reviewed by: jhb
Tested by: flo
MFC after: 1 month


235898 24-May-2012 mav

MFprojects/zfsd:
Generalize and unify ses device description.


235622 18-May-2012 iwasaki

Add SMP/i386 suspend/resume support.
Most part is merged from amd64.

- i386/acpica/acpi_wakecode.S
Replaced with amd64 code (from realmode to paging enabling code).

- i386/acpica/acpi_wakeup.c
Replaced with amd64 code (except for wakeup_pagetables stuff).

- i386/include/pcb.h
- i386/i386/genassym.c
Added PCB new members (CR0, CR2, CR4, DS, ED, FS, SS, GDT, IDT, LDT
and TR) needed for suspend/resume, not for context switch.

- i386/i386/swtch.s
Added suspendctx() and resumectx().
Note that savectx() was not changed and used for suspending (while
amd64 code uses it).
BSP and AP execute the same sequence, suspendctx(), acpi_wakecode()
and resumectx() for suspend/resume (in case of UP system also).

- i386/i386/apic_vector.s
Added cpususpend().

- i386/i386/mp_machdep.c
- i386/include/smp.h
Added cpususpend_handler().

- i386/include/apicvar.h
- kern/subr_smp.c
- sys/smp.h
Added IPI_SUSPEND and suspend_cpus().

- i386/i386/initcpu.c
- i386/i386/machdep.c
- i386/include/md_var.h
- pc98/pc98/machdep.c
Moved initializecpu() declarations to md_var.h.

MFC after: 3 days


234723 26-Apr-2012 attilio

Clean up the intr* MD KPI from the SMP dependency, removing a cause of
discrepancy between modules and kernel, but deal with SMP differences
within the functions themselves.

As an added bonus this also helps in terms of code readability.

Requested by: gibbs
Reviewed by: jhb, marius
MFC after: 1 week


234564 22-Apr-2012 nyan

MFi386: revisions 234074 and 234105

- Adding the BSP as an interrupt target directly in cpu_startup().


233707 30-Mar-2012 jhb

Move the legacy(4) driver to x86.


233271 21-Mar-2012 ed

Remove pty(4) from our kernel configurations.

As of FreeBSD 8, this driver should not be used. Applications that use
posix_openpt(2) and openpty(3) use the pts(4) that is built into the
kernel unconditionally. If it turns out high profile depend on the
pty(4) module anyway, I'd rather get those fixed. So please report any
issues to me.

The pty(4) module is still available as a kernel module of course, so a
simple `kldload pty' can be used to run old-style pseudo-terminals.


233209 19-Mar-2012 tijl

Copy amd64 sysarch.h to x86 and merge with i386 sysarch.h. Replace
amd64/i386/pc98 sysarch.h with stubs.


233207 19-Mar-2012 tijl

Copy i386 specialreg.h to x86 and merge with amd64 specialreg.h. Replace
amd64/i386/pc98 specialreg.h with stubs.


233204 19-Mar-2012 tijl

Copy i386 psl.h to x86 and replace amd64/i386/pc98 psl.h with stubs.


233124 18-Mar-2012 tijl

Copy i386 reg.h to x86 and merge with amd64 reg.h. Replace i386/amd64/pc98
reg.h with stubs.

The tREGISTER macros are only made visible on i386. These macros are
deprecated and should not be available on amd64.

The i386 and amd64 versions of struct reg have been renamed to struct
__reg32 and struct __reg64. During compilation either __reg32 or __reg64
is defined as reg depending on the machine architecture. On amd64 the i386
struct is also available as struct reg32 which is used in COMPAT_FREEBSD32
code.

Most of compat/ia32/ia32_reg.h is now IA64 only.

Reviewed by: kib (previous version)


233031 16-Mar-2012 nyan

- Fix to build a native i386 kernel without the SMP and atpic.
- Merge r232744 changes to pc98.
(Allow a kernel to be built with 'nodevice atpic'.)
- Move ICU related defines from x86/isa/atpic.c to x86/isa/icu.h and
use them in x86/x86/intr_machdep.c.

Reviewed by: jhb


232619 06-Mar-2012 attilio

Disable the option VFS_ALLOW_NONMPSAFE by default on all the supported
platforms.
This will make every attempt to mount a non-mpsafe filesystem to the
kernel forbidden, unless it is expressely compiled with
VFS_ALLOW_NONMPSAFE option.

This patch is part of the effort of killing non-MPSAFE filesystems
from the tree.

No MFC is expected for this patch.


232520 04-Mar-2012 tijl

Copy amd64 ptrace.h to x86 and merge with i386 ptrace.h. Replace
amd64/i386/pc98 ptrace.h with stubs.

For amd64 PT_GETXSTATE and PT_SETXSTATE have been redefined to match the
i386 values. The old values are still supported but should no longer be
used.

Reviewed by: kib


232492 04-Mar-2012 tijl

Copy amd64 trap.h to x86 and replace amd64/i386/pc98 trap.h with stubs.


232491 04-Mar-2012 tijl

Copy amd64 float.h to x86 and merge with i386 float.h. Replace
amd64/i386/pc98 float.h with stubs.


232276 28-Feb-2012 tijl

Copy amd64 stdarg.h to x86 and replace amd64/i386/pc98 stdarg.h with stubs.


232275 28-Feb-2012 tijl

Copy amd64 setjmp.h to x86 and replace amd64/i386/pc98 setjmp.h with stubs.


232266 28-Feb-2012 tijl

Copy amd64 endian.h to x86 and merge with i386 endian.h. Replace
amd64/i386/pc98 endian.h with stubs.

In __bswap64_const(x) the conflict between 0xffUL and 0xffULL has been
resolved by reimplementing the macro in terms of __bswap32(x). As a side
effect __bswap64_var(x) is now implemented using two bswap instructions on
i386 and should be much faster. __bswap32_const(x) has been reimplemented
in terms of __bswap16(x) for consistency.


232264 28-Feb-2012 tijl

Copy amd64 _stdint.h to x86 and merge with i386 _stdint.h. Replace
amd64/i386/pc98 _stdint.h with stubs.


232262 28-Feb-2012 tijl

Copy amd64 _limits.h to x86 and merge with i386 _limits.h. Replace
amd64/i386/pc98 _limits.h with stubs.


232261 28-Feb-2012 tijl

Copy amd64 _types.h to x86 and merge with i386 _types.h. Replace existing
amd64/i386/pc98 _types.h with stubs.


231276 09-Feb-2012 nyan

Remove full debugger options and enable KDB_TRACE option instead to decrease
kernel size and increase performance.


231273 09-Feb-2012 nyan

- Disable the olpt driver. Because it conflicts with the ppc/lpt driver.
- Remove obsolete comment.

MFC after: 3 days


230426 21-Jan-2012 kib

Add support for the extended FPU states on amd64, both for native
64bit and 32bit ABIs. As a side-effect, it enables AVX on capable
CPUs.

In particular:

- Query the CPU support for XSAVE, list of the supported extensions
and the required size of FPU save area. The hw.use_xsave tunable is
provided for disabling XSAVE, and hw.xsave_mask may be used to
select the enabled extensions.

- Remove the FPU save area from PCB and dynamically allocate the
(run-time sized) user save area on the top of the kernel stack,
right above the PCB. Reorganize the thread0 PCB initialization to
postpone it after BSP is queried for save area size.

- The dumppcb, stoppcbs and susppcbs now do not carry the FPU state as
well. FPU state is only useful for suspend, where it is saved in
dynamically allocated suspfpusave area.

- Use XSAVE and XRSTOR to save/restore FPU state, if supported and
enabled.

- Define new mcontext_t flag _MC_HASFPXSTATE, indicating that
mcontext_t has a valid pointer to out-of-struct extended FPU
state. Signal handlers are supplied with stack-allocated fpu
state. The sigreturn(2) and setcontext(2) syscall honour the flag,
allowing the signal handlers to inspect and manipilate extended
state in the interrupted context.

- The getcontext(2) never returns extended state, since there is no
place in the fixed-sized mcontext_t to place variable-sized save
area. And, since mcontext_t is embedded into ucontext_t, makes it
impossible to fix in a reasonable way. Instead of extending
getcontext(2) syscall, provide a sysarch(2) facility to query
extended FPU state.

- Add ptrace(2) support for getting and setting extended state; while
there, implement missed PT_I386_{GET,SET}XMMREGS for 32bit binaries.

- Change fpu_kern KPI to not expose struct fpu_kern_ctx layout to
consumers, making it opaque. Internally, struct fpu_kern_ctx now
contains a space for the extended state. Convert in-kernel consumers
of fpu_kern KPI both on i386 and amd64.

First version of the support for AVX was submitted by Tim Bird
<tim.bird am sony com> on behalf of Sony. This version was written
from scratch.

Tested by: pho (previous version), Yamagi Burmeister <lists yamagi org>
MFC after: 1 month


229691 06-Jan-2012 adrian

Flip these options on so the modules build correctly for now.


228973 29-Dec-2011 rwatson

Add "options CAPABILITY_MODE" and "options CAPABILITIES" to GENERIC kernel
configurations for various architectures in FreeBSD 10.x. This allows
basic Capsicum functionality to be used in the default FreeBSD
configuration on non-embedded architectures; process descriptors are not
yet enabled by default.

MFC after: 3 months
Sponsored by: Google, Inc


228631 17-Dec-2011 avg

kern cons: introduce infrastructure for console grabbing by kernel

At the moment grab and ungrab methods of all console drivers are no-ops.

Current intended meaning of the calls is that the kernel takes control of
console input. In the future the semantics may be extended to mean that
the calling thread takes full ownership of the console (e.g. console
output from other threads could be suspended).

Inspired by: bde
MFC after: 2 months


228471 13-Dec-2011 ed

Replace `inline static' by `static inline'.

If I interpret the C standard correctly, the storage specifier should be
placed before the inline keyword. While at it, replace __inline by
inline in the files affected.


228027 27-Nov-2011 marius

Move the scsi_da_bios_params() prototype from pc98_machdep.h to md_var.h
where the prototype for pc98_ata_disk_firmware_geom_adjust() also lives
in order to avoid an #ifdef'ed include in cam(4).


227333 08-Nov-2011 attilio

Introduce the option VFS_ALLOW_NONMPSAFE and turn it on by default on
all the architectures.
The option allows to mount non-MPSAFE filesystem. Without it, the
kernel will refuse to mount a non-MPSAFE filesytem.

This patch is part of the effort of killing non-MPSAFE filesystems
from the tree.

No MFC is expected for this patch.

Tested by: gianni
Reviewed by: kib


227006 01-Nov-2011 marius

Add a PCI front-end to esp(4) allowing it to support AMD Am53C974 and
replace amd(4) with the former in the amd64, i386 and pc98 GENERIC kernel
configuration files. Besides duplicating functionality, amd(4), which
previously also supported the AMD Am53C974, unlike esp(4) is no longer
maintained and has accumulated enough bit rot over time to always cause
a panic during boot as long as at least one target is attached to it
(see PR 124667).

PR: 124667
Obtained from: NetBSD (based on)
MFC after: 3 days


226835 27-Oct-2011 kensmith

Adjust the debugger options slightly. This should help me do the right
thing when changing the debugging options as part of head becoming a new
stable branch. It may also help people who for one reason or another want
to run head but don't want it slowed down by the debugging support.

Reviewed by: kib


225977 04-Oct-2011 nyan

MFi386: revision 225936

Add some improvements in the idle table callbacks:
- Replace instances of manual assembly instruction "hlt" call
with halt() function calling.
- In cpu_idle_mwait() avoid races in check to sched_runnable() using
the same pattern used in cpu_idle_hlt() with the 'hlt' instruction.
- Add comments explaining the logic behind the pattern used in
cpu_idle_hlt() and other idle callbacks.


225617 16-Sep-2011 kmacy

In order to maximize the re-usability of kernel code in user space this
patch modifies makesyscalls.sh to prefix all of the non-compatibility
calls (e.g. not linux_, freebsd32_) with sys_ and updates the kernel
entry points and all places in the code that use them. It also
fixes an additional name space collision between the kernel function
psignal and the libc function of the same name by renaming the kernel
psignal kern_psignal(). By introducing this change now we will ease future
MFCs that change syscalls.

Reviewed by: rwatson
Approved by: re (bz)


225482 11-Sep-2011 brueffer

Fix a zyd(4) comment typo that was copy+pasted into most kernel config files.

PR: 160276
Submitted by: MATSUMIYA Ryo <matsumiya@mma.club.uec.ac.jp>
Approved by: re (kib)
MFC after: 1 week


225214 27-Aug-2011 rwatson

Follow up to r225203 refining break-to-debugger run-time configuration
improvements:

(1) Implement new model in previously missed at91 UART driver
(2) Move BREAK_TO_DEBUGGER and ALT_BREAK_TO_DEBUGGER from opt_comconsole.h
to opt_kdb.h (spotted by np)
(3) Garbage collect now-unused opt_comconsole.h

MFC after: 3 weeks
Approved by: re (bz)


225203 26-Aug-2011 rwatson

Attempt to make break-to-debugger and alternative break-to-debugger more
accessible:

(1) Always compile in support for breaking into the debugger if options
KDB is present in the kernel.

(2) Disable both by default, but allow them to be enabled via tunables
and sysctls debug.kdb.break_to_debugger and
debug.kdb.alt_break_to_debugger.

(3) options BREAK_TO_DEBUGGER and options ALT_BREAK_TO_DEBUGGER continue
to behave as before -- only now instead of compiling in
break-to-debugger support, they change the default values of the
above sysctls to enable those features by default. Current kernel
configurations should, therefore, continue to behave as expected.

(4) Migrate alternative break-to-debugger state machine logic out of
individual device drivers into centralised KDB code. This has a
number of upsides, but also one downside: it's now tricky to release
sio spin locks when entering the debugger, so we don't. However,
similar logic does not exist in other device drivers, including uart.

(5) dcons requires some special handling; unlike other console types, it
allows overriding KDB's own debugger selection, so we need a new
interface to KDB to allow that to work.

GENERIC kernels in -CURRENT will now support break-to-debugger as long as
appropriate boot/run-time options are set, which should improve the
debuggability of BETA kernels significantly.

MFC after: 3 weeks
Reviewed by: kib, nwhitehorn
Approved by: re (bz)


225048 20-Aug-2011 bz

In HEAD when doing no further checkes there is no reason use the
temporary variable and check with if as TUNABLE_*_FETCH do not
alter values unless successfully found the tunable.

Reported by: jhb, bde
MFC after: 3 days
X-MFC with: r224516
Approved by: re (kib)


224699 07-Aug-2011 rmacklem

Change all the sample kernel configurations to use
NFSCL, NFSD instead of NFSCLIENT, NFSSERVER since
NFSCL and NFSD are now the defaults. The client change is
needed for diskless configurations, so that the root
mount works for fstype nfs.
Reported by seanbru at yahoo-inc.com for i386/XEN.

Approved by: re (hrs)


224516 30-Jul-2011 bz

Introduce a tunable to disable the time consuming parts of bootup
memtesting, which can easily save seconds to minutes of boot time.
The tunable name is kept general to allow reusing the code in
alternate frameworks.

Requested by: many
Discussed on: arch (a while a go)
Obtained from: Sandvine Incorporated
Reviewed by: sbruno
Approved by: re (kib)
MFC after: 2 weeks


224126 17-Jul-2011 ed

Restore binary compatibility for GIO_KEYMAP and PIO_KEYMAP.

Back in 2009 I changed the ABI of the GIO_KEYMAP and PIO_KEYMAP ioctls
to support wide characters. I created a patch to add ABI compatibility
for the old calls, but I didn't get any feedback to that.

It seems now people are upgrading from 8 to 9 they experience this
issue, so add it anyway.


224098 16-Jul-2011 jhb

Enable the new PCI-PCI bridge driver on pc98 by default. I missed this
in 221394 when I had meant to enable it on all i386 systems by default.


223046 13-Jun-2011 nyan

- Reduce diffs against i386.
- Add snd_uaudio.


222853 08-Jun-2011 avg

remove code for dynamic offlining/onlining of CPUs on x86

The code has definitely been broken for SCHED_ULE, which is a default
scheduler. It may have been broken for SCHED_4BSD in more subtle ways,
e.g. with manually configured CPU affinities and for interrupt devilery
purposes.
We still provide a way to disable individual CPUs or all hyperthreading
"twin" CPUs before SMP startup. See the UPDATING entry for details.

Interaction between building CPU topology and disabling CPUs still
remains fuzzy: topology is first built using all availble CPUs and then
the disabled CPUs should be "subtracted" from it. That doesn't work
well if the resulting topology becomes non-uniform.

This work is done in cooperation with Attilio Rao who in addition to
reviewing also provided parts of code.

PR: kern/145385
Discussed with: gcooper, ambrisko, mdf, sbruno
Reviewed by: attilio
Tested by: pho, pluknet
X-MFC after: never


221708 09-May-2011 jkim

Move VT switching hack for suspend/resume from bus drivers to syscons.c
using event handlers. A different version was

Submitted by: Taku YAMAMOTO (taku at tackymt dot homeip dot net)


221124 27-Apr-2011 rmacklem

This patch changes head so that the default NFS client is now the new
NFS client (which I guess is no longer experimental). The fstype "newnfs"
is now "nfs" and the regular/old NFS client is now fstype "oldnfs".
Although mounts via fstype "nfs" will usually work without userland
changes, an updated mount_nfs(8) binary is needed for kernels built with
"options NFSCL" but not "options NFSCLIENT". Updated mount_nfs(8) and
mount(8) binaries are needed to do mounts for fstype "oldnfs".
The GENERIC kernel configs have been changed to use options
NFSCL and NFSD (the new client and server) instead of NFSCLIENT and NFSSERVER.
For kernels being used on diskless NFS root systems, "options NFSCL"
must be in the kernel config.
Discussed on freebsd-fs@.


221071 26-Apr-2011 mav

- Add shim to simplify migration to the CAM-based ATA. For each new adaX
device in /dev/ create symbolic link with adY name, trying to mimic old ATA
numbering. Imitation is not complete, but should be enough in most cases to
mount file systems without touching /etc/fstab.
- To know what behavior to mimic, restore ATA_STATIC_ID option in cases
where it was present before.
- Add some more details to UPDATING.


220982 24-Apr-2011 mav

Switch the GENERIC kernels for all architectures to the new CAM-based ATA
stack. It means that all legacy ATA drivers are disabled and replaced by
respective CAM drivers. If you are using ATA device names in /etc/fstab or
other places, make sure to update them respectively (adX -> adaY,
acdX -> cdY, afdX -> daY, astX -> saY, where 'Y's are the sequential
numbers for each type in order of detection, unless configured otherwise
with tunables, see cam(4)).

ataraid(4) functionality is now supported by the RAID GEOM class.
To use it you can load geom_raid kernel module and use graid(8) tool
for management. Instead of /dev/arX device names, use /dev/raid/rX.


220583 12-Apr-2011 jkim

Reinstate cpu_est_clockrate() support for P-state invariant TSC if APERF and
MPERF MSRs are available. It was disabled in r216443. Remove the earlier
hack to subtract 0.5% from the calibrated frequency as DELAY(9) is little
bit more reliable now.


220433 07-Apr-2011 jkim

Use atomic load & store for TSC frequency. It may be overkill for amd64 but
safer for i386 because it can be easily over 4 GHz now. More worse, it can
be easily changed by user with 'machdep.tsc_freq' tunable (directly) or
cpufreq(4) (indirectly). Note it is intentionally not used in performance
critical paths to avoid performance regression (but we should, in theory).
Alternatively, we may add "virtual TSC" with lower frequency if maximum
frequency overflows 32 bits (and ignore possible incoherency as we do now).


220404 07-Apr-2011 jkim

Implement atomic_load_acq_64(9) and atomic_store_rel_64(9) for i386. These
functions are implemented with CMPXCHG8B instruction where it is available,
i. e., all Pentium-class and later processors. Note this instruction is
also used for atomic_store_rel_64() because a simple XCHG-like instruction
for 64-bit memory access does not exist, unfortunately. If the processor
lacks the instruction, i. e., 80486-class CPUs, two 32-bit load/store are
performed with interrupt temporarily disabled, assuming it does not support
SMP. Although this assumption may be little naive, it is true in reality.
This implementation is inspired by Linux.


220185 31-Mar-2011 adrian

Break out the ath PCI logic into a separate device/module.

Introduce the AHB glue for Atheros embedded systems. Right now it's
hard-coded for the AR9130 chip whose support isn't yet in this HAL;
it'll be added in a subsequent commit.

Kernel configuration files now need both 'ath' and 'ath_pci' devices; both
modules need to be loaded for the ath device to work.


219673 15-Mar-2011 jkim

Deprecate tsc_present as the last of its real consumers finally disappeared.


219473 11-Mar-2011 jkim

Add a tunable "machdep.disable_tsc" to turn off TSC. Specifically, it turns
off boot-time CPU frequency calibration, DELAY(9) with TSC, and using TSC as
a CPU ticker. Note tsc_present does not change by this tunable.


219461 10-Mar-2011 jkim

Deprecate rarely used tsc_is_broken. Instead, we zero out tsc_freq because
it is almost always used with tsc_freq any way.


219435 09-Mar-2011 julian

Add a small change to the comment in the GENRIC config files that include udbp

Submitted by: Chris Forgron, cforgeron at acsi dot ca
MFC after: 1 week


218909 21-Feb-2011 brucec

Fix typos - remove duplicate "the".

PR: bin/154928
Submitted by: Eitan Adler <lists at eitanadler.com>
MFC after: 3 days


218843 19-Feb-2011 nyan

MFi386: revision 218744

To avoid excessive code duplication create wrapper for fill regs
from stack frame.


218424 08-Feb-2011 mdf

Based on discussions on the svn-src mailing list, rework r218195:

- entirely eliminate some calls to uio_yeild() as being unnecessary,
such as in a sysctl handler.

- move should_yield() and maybe_yield() to kern_synch.c and move the
prototypes from sys/uio.h to sys/proc.h

- add a slightly more generic kern_yield() that can replace the
functionality of uio_yield().

- replace source uses of uio_yield() with the functional equivalent,
or in some cases do not change the thread priority when switching.

- fix a logic inversion bug in vlrureclaim(), pointed out by bde@.

- instead of using the per-cpu last switched ticks, use a per thread
variable for should_yield(). With PREEMPTION, the only reasonable
use of this is to determine if a lock has been held a long time and
relinquish it. Without PREEMPTION, this is essentially the same as
the per-cpu variable.


218391 07-Feb-2011 nyan

MFi386: revision 218329

Fix linking of the kernel without device npx.


218390 07-Feb-2011 nyan

MFi386: revision 218327

Clear the padding when returning context to the usermode, for
MI ucontext_t and x86 MD parts.
Kernel allocates the structures on the stack, and not clearing
reserved fields and paddings causes leakage.


218389 07-Feb-2011 nyan

MFi386: revision 217886

Set td_kstack_pages for thread0.


217688 21-Jan-2011 pluknet

Make MSGBUF_SIZE kernel option a loader tunable kern.msgbufsize.

Submitted by: perryh pluto.rain.com (previous version)
Reviewed by: jhb
Approved by: kib (mentor)
Tested by: universe


217539 18-Jan-2011 nyan

MFi386: revision 217515

The mem_range_softc is defined in mem.c.


217157 08-Jan-2011 tijl

Copy powerpc/include/_inttypes.h to x86 and replace i386/amd64/pc98
headers with stubs.

Approved by: kib (mentor)


216892 02-Jan-2011 gavin

MFi386 r216012 by kib:

Calling fill_fpregs() for curthread is legitimate, and ELF coredump
does this.

Discussed with: kib
MFC after: 3 days


216592 20-Dec-2010 tijl

Merge amd64 and i386 bus.h and move the resulting header to x86. Replace
the original amd64 and i386 headers with stubs.

Rename (AMD64|I386)_BUS_SPACE_* to X86_BUS_SPACE_* everywhere.

Reviewed by: imp (previous version), jhb
Approved by: kib (mentor)


216312 08-Dec-2010 jkim

Do not subtract 0.5% from estimated frequency if DELAY(9) is driven by TSC.
Remove a confusing comment about converting to MHz as we never did.


216143 03-Dec-2010 brucec

Revert r216134. This checkin broke platforms where bus_space are macros:
they need to be a single statement, and do { } while (0) doesn't work in this
situation so revert until a solution can be devised.


216134 02-Dec-2010 brucec

Disallow passing in a count of zero bytes to the bus_space(9) functions.

Passing a count of zero on i386 and amd64 for [I386|AMD64]_BUS_SPACE_MEM
causes a crash/hang since the 'loop' instruction decrements the counter
before checking if it's zero.

PR: kern/80980
Discussed with: jhb


215865 26-Nov-2010 kib

Remove npxgetregs(), npxsetregs(), fpugetregs() and fpusetregs()
functions, they are unused. Remove 'user' from npxgetuserregs()
etc. names.

For {npx,fpu}{get,set}regs(), always use pcb->pcb_user_save for FPU
context storage. This eliminates the need for ugly copying with
overwrite of the newly added and reserved fields in ucontext on i386
to satisfy alignment requirements for fpusave() and fpurstor().

pc98 version was copied from i386.

Suggested and reviewed by: bde
Tested by: pho (i386 and amd64)
MFC after: 1 week


215863 26-Nov-2010 tijl

Include x86/_align.h directly instead of including the i386 header.

Approved by: kib (mentor)


215140 11-Nov-2010 jkim

Move identical copies of apm_bios.h to sys/x86/include, replace them with
stubs, and adjust PC98 stub accordingly.

Reviewed by: imp, nyan


215054 09-Nov-2010 jhb

- Remove <machine/mutex.h>. Most of the headers were empty, and the
contents of the ones that were not empty were stale and unused.
- Now that <machine/mutex.h> no longer exists, there is no need to allow it
to override various helper macros in <sys/mutex.h>.
- Rename various helper macros for low-level operations on mutexes to live
in the _mtx_* or __mtx_* namespaces. While here, change the names to more
closely match the real API functions they are backing.
- Drop support for including <sys/mutex.h> in assembly source files.

Suggested by: bde (1, 2)


215051 09-Nov-2010 attilio

Move the mptable.h under x86/include/.

Sponsored by: Sandvine Incorporated
MFC after: 14 days


214835 05-Nov-2010 jhb

Adjust the order of operations in spinlock_enter() and spinlock_exit() to
work properly with single-stepping in a kernel debugger. Specifically,
these routines have always disabled interrupts before increasing the nesting
count and restored the prior state of interrupts after decreasing the nesting
count to avoid problems with a nested interrupt not disabling interrupts
when acquiring a spin lock. However, trap interrupts for single-stepping
can still occur even when interrupts are disabled. Now the saved state of
interrupts is not saved in the thread until after interrupts have been
disabled and the nesting count has been increased. Similarly, the saved
state from the thread cannot be read once the nesting count has been
decreased to zero. To fix this, use temporary variables to store interrupt
state and shuffle it between the thread's MD area and the appropriate
registers.

In cooperation with: bde
MFC after: 1 month


214631 01-Nov-2010 jhb

Move <machine/apicreg.h> to <x86/apicreg.h>.


214630 01-Nov-2010 jhb

Move the <machine/mca.h> header to <x86/mca.h>.


214584 31-Oct-2010 nyan

Rename BUS_SPACE_IO and BUS_SPACE_MEM defines to BUS_SPACE_TAG_IO and
BUS_SPACE_TAG_MEM respectively to avoid conflict with nexus.c.


214258 24-Oct-2010 nyan

MFi386: the part of revision 213226.

Rewrite the i386 memory probe:
- Move the base memory setup into a new basemem_setup() routine.

MFC after: 1 week


213748 12-Oct-2010 jkim

Remove trailing ", " from `sysctl machdep.idle_available' output.


213098 24-Sep-2010 davidxu

Now userland POSIX semaphore is based on umtx. The kernel module
is only used to support binary compatible, if want to run old
binary, you need to kldload the module.


212541 13-Sep-2010 mav

Refactor timer management code with priority to one-shot operation mode.
The main goal of this is to generate timer interrupts only when there is
some work to do. When CPU is busy interrupts are generating at full rate
of hz + stathz to fullfill scheduler and timekeeping requirements. But
when CPU is idle, only minimum set of interrupts (down to 8 interrupts per
second per CPU now), needed to handle scheduled callouts is executed.
This allows significantly increase idle CPU sleep time, increasing effect
of static power-saving technologies. Also it should reduce host CPU load
on virtualized systems, when guest system is idle.

There is set of tunables, also available as writable sysctls, allowing to
control wanted event timer subsystem behavior:
kern.eventtimer.timer - allows to choose event timer hardware to use.
On x86 there is up to 4 different kinds of timers. Depending on whether
chosen timer is per-CPU, behavior of other options slightly differs.
kern.eventtimer.periodic - allows to choose periodic and one-shot
operation mode. In periodic mode, current timer hardware taken as the only
source of time for time events. This mode is quite alike to previous kernel
behavior. One-shot mode instead uses currently selected time counter
hardware to schedule all needed events one by one and program timer to
generate interrupt exactly in specified time. Default value depends of
chosen timer capabilities, but one-shot mode is preferred, until other is
forced by user or hardware.
kern.eventtimer.singlemul - in periodic mode specifies how much times
higher timer frequency should be, to not strictly alias hardclock() and
statclock() events. Default values are 2 and 4, but could be reduced to 1
if extra interrupts are unwanted.
kern.eventtimer.idletick - makes each CPU to receive every timer interrupt
independently of whether they busy or not. By default this options is
disabled. If chosen timer is per-CPU and runs in periodic mode, this option
has no effect - all interrupts are generating.

As soon as this patch modifies cpu_idle() on some platforms, I have also
refactored one on x86. Now it makes use of MONITOR/MWAIT instrunctions
(if supported) under high sleep/wakeup rate, as fast alternative to other
methods. It allows SMP scheduler to wake up sleeping CPUs much faster
without using IPI, significantly increasing performance on some highly
task-switching loads.

Tested by: many (on i386, amd64, sparc64 and powerc)
H/W donated by: Gheorghe Ardelean
Sponsored by: iXsystems, Inc.


212413 10-Sep-2010 avg

bus_add_child: change type of order parameter to u_int

This reflects actual type used to store and compare child device orders.
Change is mostly done via a Coccinelle (soon to be devel/coccinelle)
semantic patch.
Verified by LINT+modules kernel builds.

Followup to: r212213
MFC after: 10 days


210564 28-Jul-2010 mdf

Add MALLOC_DEBUG_MAXZONES debug malloc(9) option to use multiple uma
zones for each malloc bucket size. The purpose is to isolate
different malloc types into hash classes, so that any buffer overruns
or use-after-free will usually only affect memory from malloc types in
that hash class. This is purely a debugging tool; by varying the hash
function and tracking which hash class was corrupted, the intersection
of the hash classes from each instance will point to a single malloc
type that is being misused. At this point inspection or memguard(9)
can be used to catch the offending code.

Add MALLOC_DEBUG_MAXZONES=8 to -current GENERIC configuration files.
The suggestion to have this on by default came from Kostik Belousov on
-arch.

This code is based on work by Ron Steinke at Isilon Systems.

Reviewed by: -arch (mostly silence)
Reviewed by: zml
Approved by: zml (mentor)


210294 20-Jul-2010 tijl

Store fsbase and gsbase in the right fields of the mcontext. They were
switched.

PR: i386/148344
Approved by: kib (mentor)
MFC after: 1 week


209979 13-Jul-2010 mav

Unify pc98 event timer code with the rest of x86.

Reviewed by: nyan@


209613 30-Jun-2010 jhb

Move prototypes for kern_sigtimedwait() and kern_sigprocmask() to
<sys/syscallsubr.h> where all other kern_<syscall> prototypes live.


209463 23-Jun-2010 kib

Fix bugs on pc98, use npxgetuserregs() instead of npxgetregs() for
get_fpcontext(), and npxsetuserregs() for set_fpcontext). Also,
note that usercontext is not initialized anymore in fpstate_drop().

Systematically replace references to npxgetregs() and npxsetregs()
by npxgetuserregs() and npxsetuserregs() in comments.

Noted by: bde


209462 23-Jun-2010 kib

After the FPU use requires #MF working due to INT13 FPU exception handling
removal, MFi386 r209198:
Use critical sections instead of disabling local interrupts to ensure
the consistency between PCPU fpcurthread and the state of FPU.

Reviewed by: bde
Tested by: pho


209461 23-Jun-2010 kib

Remove the support for int13 FPU exception reporting on i386. It is
believed that all 486-class CPUs FreeBSD is capable to run on, either
have no FPU and cannot use external coprocessor, or have FPU on the
package and can use #MF.

Reviewed by: bde
Tested by: pho (previous version)


209371 20-Jun-2010 mav

Implement new event timers infrastructure. It provides unified APIs for
writing event timer drivers, for choosing best possible drivers by machine
independent code and for operating them to supply kernel with hardclock(),
statclock() and profclock() events in unified fashion on various hardware.

Infrastructure provides support for both per-CPU (independent for every CPU
core) and global timers in periodic and one-shot modes. MI management code
at this moment uses only periodic mode, but one-shot mode use planned for
later, as part of tickless kernel project.

For this moment infrastructure used on i386 and amd64 architectures. Other
archs are welcome to follow, while their current operation should not be
affected.

This patch updates existing drivers (i8254, RTC and LAPIC) for the new
order, and adds event timers support into the HPET driver. These drivers
have different capabilities:
LAPIC - per-CPU timer, supports periodic and one-shot operation, may
freeze in C3 state, calibrated on first use, so may be not exactly precise.
HPET - depending on hardware can work as per-CPU or global, supports
periodic and one-shot operation, usually provides several event timers.
i8254 - global, limited to periodic mode, because same hardware used also
as time counter.
RTC - global, supports only periodic mode, set of frequencies in Hz
limited by powers of 2.

Depending on hardware capabilities, drivers preferred in following orders,
either LAPIC, HPETs, i8254, RTC or HPETs, LAPIC, i8254, RTC.
User may explicitly specify wanted timers via loader tunables or sysctls:
kern.eventtimer.timer1 and kern.eventtimer.timer2.
If requested driver is unavailable or unoperational, system will try to
replace it. If no more timers available or "NONE" specified for second,
system will operate using only one timer, multiplying it's frequency by few
times and uing respective dividers to honor hz, stathz and profhz values,
set during initial setup.


208833 05-Jun-2010 kib

Introduce the x86 kernel interfaces to allow kernel code to use
FPU/SSE hardware. Caller should provide a save area that is chained
into the stack of the areas; pcb save_area for usermode FPU state is
on top. The pcb now contains a pointer to the current FPU saved area,
used during FPUDNA handling and context switches. There is also a
facility to allow the kernel thread to use pcb save_area.

Change the dreaded warnings "npxdna in kernel mode!" into the panics
when FPU usage is not registered.

KPI discussed with: fabient
Tested by: pho, fabient
Hardware provided by: Sentex Communications
MFC after: 1 month


208639 29-May-2010 nyan

MFi386: the part of revision 181809

Use SEL_KPL macro.


208638 29-May-2010 nyan

MFi386: revision 178471

- Add an integer argument to idle to indicate how likely we are to wake
from idle over the next tick.
- Add a new MD routine, cpu_wake_idle() to wakeup idle threads who are
suspended in cpu specific states. This function can fail and cause the
scheduler to fall back to another mechanism (ipi).
- Implement support for mwait in cpu_idle() on i386/amd64 machines that
support it. mwait is a higher performance way to synchronize cpus
as compared to hlt & ipis.
- Allow selecting the idle routine by name via sysctl machdep.idle. This
replaces machdep.cpu_idle_hlt. Only idle routines supported by the
current machine are permitted.


208634 29-May-2010 nyan

Reduce diffs against i386.


208633 29-May-2010 nyan

MFi386: revision 208621

Defer initializing machine checks for the boot CPU until the local APIC is
fully configured.


208632 29-May-2010 nyan

MFi386: revision 208604

Clarify a potential issue in get_fpcontext() use.


208563 26-May-2010 nyan

Reduce diffs against syscons_isa.c. No functional changes.


208494 24-May-2010 mav

- Implement MI helper functions, dividing one or two timer interrupts with
arbitrary frequencies into hardclock(), statclock() and profclock() calls.
Same code with minor variations duplicated several times over the tree for
different timer drivers and architectures.
- Switch all x86 archs to new functions, simplifying the code and removing
extra logic from timer drivers. Other archs are also welcome.


208349 20-May-2010 marius

Change ad_firmware_geom_adjust() to operate on a struct disk * only and
hook it up to ada(4) also. While at it, rename *ad_firmware_geom_adjust()
to *ata_disk_firmware_geom_adjust() etc now that these are no longer
limited to ad(4).

Reviewed by: mav
MFC after: 3 days


207355 29-Apr-2010 nyan

MFi386: revision 206553

- Change printf() calls to uprintf() for sigreturn().
- Normalize the messages to include both pid and thread name.


207077 22-Apr-2010 thompsa

Change USB_DEBUG to #ifdef and allow it to be turned off. Previously this had
the illusion of a tunable setting but was always turned on regardless.

MFC after: 1 week


206993 21-Apr-2010 rpaulo

Comply with the new cyclic dtrace module variable name
(cyclic_clock_func).


206421 09-Apr-2010 attilio

Default the machdep.lapic_allclocks to be enabled in order to cope with
broken atrtc.
Now if you want more correct stats on profhz and stathz it may be
disabled by setting to 0.

Reported by: A. Akephalos <akephalos dot akephalos at gmail dot com>,
Jakub Lach <jakub_lach at mailplus dot pl>
MFC: 1 week


205642 25-Mar-2010 nwhitehorn

Change the arguments of exec_setregs() so that it receives a pointer
to the image_params struct instead of several members of that struct
individually. This makes it easier to expand its arguments in the future
without touching all platforms.

Reviewed by: jhb


205116 13-Mar-2010 ed

Remove COMPAT_43TTY from stock kernel configuration files.

COMPAT_43TTY enables the sgtty interface. Even though its exposure has
only been removed in FreeBSD 8.0, it wasn't used by anything in the base
system in FreeBSD 5.x (possibly even 4.x?). On those releases, if your
ports/packages are less than two years old, they will prefer termios
over sgtty.


204753 05-Mar-2010 nyan

MFx86: the part of r204641

In order to do that cleanly, lapic_setup_clock(), on both ia32 and amd64,
now accepts as arguments the desired sources to handle, and returns the
actual ones (LAPIC_CLOCK_NONE is forbidden because otherwise there is no
meaning in calling such function).
This allows to bring out into commont x86 code the handling part for
machdep.lapic_allclocks tunable, which is retained.


204309 25-Feb-2010 attilio

Introduce the new kernel sub-tree x86 which should contain all the code
shared and generalized between our current amd64, i386 and pc98.

This is just an initial step that should lead to a more complete effort.
For the moment, a very simple porting of cpufreq modules, BIOS calls and
the whole MD specific ISA bus part is added to the sub-tree but ideally
a lot of code might be added and more shared support should grow.

Sponsored by: Sandvine Incorporated
Reviewed by: emaste, kib, jhb, imp
Discussed on: arch
MFC: 3 weeks


203938 15-Feb-2010 attilio

Adjust style (following the already existing rules) for the newly
introduced option DEADLKRES.

Reported by: danfe, julian, avg


203758 10-Feb-2010 attilio

Add the options DEADLKRES (introducing the deadlock resolver thread) in
the 'debugging' section of any HEAD kernel and enable for the mainstream
ones, excluding the embedded architectures.
It may, of course, enabled on a case-by-case basis.

Sponsored by: Sandvine Incorporated
Requested by: emaste
Discussed with: kib


202634 19-Jan-2010 jhb

Move the examples for the 'hints' and 'env' keywords from various GENERIC
kernel configs into NOTES.

Reviewed by: imp


202534 17-Jan-2010 attilio

- Allow clock subsystem to be compiled without the apic support [0]
- ATPIC, on pc98 is never defined somewhere, differently from i386.
Turn its compilation to be conditional as i386 does. [1]

[0] Reported by: nyan
[1] Submitted by: nyan


202387 15-Jan-2010 attilio

Handling all the three clocks (hardclock, softclock, profclock) with the
LAPIC may lead to aliasing for softclock and profclock because frequencies
are sized in order to fit mainly hardclock.
atrtc used to take care of the softclock and profclock and it does still
do, if the LAPIC can't handle the clocks properly.

Revert the change when the LAPIC started taking charge of all three of
them and let atrtc handle softclock and profclock if not explicitly
requested. Such request can be made setting != 0 the new tunable
machdep.lapic_allclocks or if the new device ATPIC is not present
within the i386 kernel config (atrtc is linked to atpic presence).

Diagnosed by: Sandvine Incorporated
Reviewed by: jhb, emaste
Sponsored by: Sandvine Incorporated
MFC: 3 weeks


202019 10-Jan-2010 imp

Add INCLUDE_CONFIG_FILE in GENERIC on all non-embedded platforms.

# This is the resolution of removing it from DEFAULTS...

MFC after: 5 days


201813 08-Jan-2010 bz

In sys/<arch>/conf/Makefile set TARGET to <arch>. That allows
sys/conf/makeLINT.mk to only do certain things for certain
architectures.

Note that neither arm nor mips have the Makefile there, thus
essentially not (yet) supporting LINT. This would enable them
do add special treatment to sys/conf/makeLINT.mk as well chosing
one of the many configurations as LINT.

This is a hack of doing this and keeping it in a separate commit
will allow us to more easily identify and back it out.

Discussed on/with: arch, jhb (as part of the LINT-VIMAGE thread)
MFC after: 1 month


201534 04-Jan-2010 imp

Revert 200594. This file isn't intended for these sorts of things.


201443 03-Jan-2010 brooks

Add vlan(4) to all GENERIC kernels.

MFC after: 1 week


201415 03-Jan-2010 nyan

Re-enable more options and devices. Now kernel size problem is gone.

MFC after: 2 week


201223 29-Dec-2009 rnoland

Update d_mmap() to accept vm_ooffset_t and vm_memattr_t.

This replaces d_mmap() with the d_mmap2() implementation and also
changes the type of offset to vm_ooffset_t.

Purge d_mmap2().

All driver modules will need to be rebuilt since D_VERSION is also
bumped.

Reviewed by: jhb@
MFC after: Not in this lifetime...


200670 18-Dec-2009 jhb

- Create a separate section in in the MI NOTES file for PCI wireless NIC
drivers and move bwi(4) there from the PCI Ethernet NIC section.
- Move ath(4) and ral(4) to the MI NOTES file.

Reviewed by: rpaulo


200594 16-Dec-2009 dougb

Add INCLUDE_CONFIG_FILE, and a note in comments about how to also
include the comments with CONFIGARGS


200046 02-Dec-2009 thompsa

Fix cut'n paste on the AR9280 entry.

Submitted by: pluknet


200015 02-Dec-2009 thompsa

Add missing ath_ar9* ath hal entries.


199395 17-Nov-2009 jhb

Remove duplicate 'ural' entry since it was added to the MI NOTES a while
ago.


199220 12-Nov-2009 nyan

MFi386: revision 199104

Make isa_dma functions MPSAFE by introducing its own private lock.


199171 11-Nov-2009 ed

Allow Syscons terminal emulators to provide function key strings.

xterm and cons25 have some incompatibilities when it comes to escape
sequences for special keys, such as F1 to F12, home, end, etc. Add a new
te_fkeystr() that can be used to override the strings.

scterm-sck won't do anything with this, but scterm-teken will use
teken_get_sequences() to obtain the proper sequence.


198507 27-Oct-2009 kib

In r197963, a race with thread being selected for signal delivery
while in kernel mode, and later changing signal mask to block the
signal, was fixed for sigprocmask(2) and ptread_exit(3). The same race
exists for sigreturn(2), setcontext(2) and swapcontext(2) syscalls.

Use kern_sigprocmask() instead of direct manipulation of td_sigmask to
reschedule newly blocked signals, closing the race.

Reviewed by: davidxu
Tested by: pho
MFC after: 1 month


198043 13-Oct-2009 jhb

Move the USB wireless drivers down into their own section next to the USB
ethernet drivers.

Submitted by: Glen Barber glen.j.barber @ gmail
MFC after: 1 month


197657 01-Oct-2009 nyan

MFi386: revision 197653

Improve 802.11s comment.

MFC after: 1 day


197518 26-Sep-2009 bz

lindev(4) [1] is supposed to be a collection of linux-specific pseudo
devices that we also support, just not by default (thus only LINT or
module builds by default).

While currently there is only "/dev/full" [2], we are planning to see more
in the future. We may decide to change the module/dependency logic in the
future should the list grow too long.

This is not part of linux.ko as also non-linux binaries like kFreeBSD
userland or ports can make use of this as well.

Suggested by: rwatson [1] (name)
Submitted by: ed [2]
Discussed with: markm, ed, rwatson, kib (weeks ago)
Reviewed by: rwatson, brueffer (prev. version)
PR: kern/68961
MFC after: 6 weeks


197026 09-Sep-2009 nyan

MFi386: Remove old file.


196994 08-Sep-2009 phk

Get rid of the _NO_NAMESPACE_POLLUTION kludge by creating an
architecture specific include file containing the _ALIGN*
stuff which <sys/socket.h> needs.


196403 20-Aug-2009 jhb

Temporarily revert the new-bus locking for 8.0 release. It will be
reintroduced after HEAD is reopened for commits by re@.

Approved by: re (kib), attilio


196196 13-Aug-2009 attilio

* Completely Remove the option STOP_NMI from the kernel. This option
has proven to have a good effect when entering KDB by using a NMI,
but it completely violates all the good rules about interrupts
disabled while holding a spinlock in other occasions. This can be the
cause of deadlocks on events where a normal IPI_STOP is expected.
* Adds an new IPI called IPI_STOP_HARD on all the supported architectures.
This IPI is responsible for sending a stop message among CPUs using a
privileged channel when disponible. In other cases it just does match a
normal IPI_STOP.
Right now the IPI_STOP_HARD functionality uses a NMI on ia32 and amd64
architectures, while on the other has a normal IPI_STOP effect. It is
responsibility of maintainers to eventually implement an hard stop
when necessary and possible.
* Use the new IPI facility in order to implement a new userend SMP kernel
function called stop_cpus_hard(). That is specular to stop_cpu() but
it does use the privileged channel for the stopping facility.
* Let KDB use the newly introduced function stop_cpus_hard() and leave
stop_cpus() for all the other cases
* Disable interrupts on CPU0 when starting the process of APs suspension.
* Style cleanup and comments adding

This patch should fix the reboot/shutdown deadlocks many users are
constantly reporting on mailing lists.

Please don't forget to update your config file with the STOP_NMI
option removal

Reviewed by: jhb
Tested by: pho, bz, rink
Approved by: re (kib)


196037 02-Aug-2009 attilio

Make the newbus subsystem Giant free by adding the new newbus sxlock.
The newbus lock is responsible for protecting newbus internIal structures,
device states and devclass flags. It is necessary to hold it when all
such datas are accessed. For the other operations, softc locking should
ensure enough protection to avoid races.

Newbus lock is automatically held when virtual operations on the device
and bus are invoked when loading the driver or when the suspend/resume
take place. For other 'spourious' operations trying to access/modify
the newbus topology, newbus lock needs to be automatically acquired and
dropped.

For the moment Giant is also acquired in some key point (modules subsystem)
in order to avoid problems before the 8.0 release as module handlers could
make assumptions about it. This Giant locking should go just after
the release happens.

Please keep in mind that the public interface can be expanded in order
to provide more support, if there are really necessities at some point
and also some bugs could arise as long as the patch needs a bit of
further testing.

Bump __FreeBSD_version in order to reflect the newbus lock introduction.

Reviewed by: ed, hps, jhb, imp, mav, scottl
No answer by: ariff, thompsa, yongari
Tested by: pho,
G. Trematerra <giovanni dot trematerra at gmail dot com>,
Brandon Gooch <jamesbrandongooch at gmail dot com>
Sponsored by: Yahoo! Incorporated
Approved by: re (ksmith)


195618 11-Jul-2009 rpaulo

Implementation of the upcoming Wireless Mesh standard, 802.11s, on the
net80211 wireless stack. This work is based on the March 2009 D3.0 draft
standard. This standard is expected to become final next year.
This includes two main net80211 modules, ieee80211_mesh.c
which deals with peer link management, link metric calculation,
routing table control and mesh configuration and ieee80211_hwmp.c
which deals with the actually routing process on the mesh network.
HWMP is the mandatory routing protocol on by the mesh standard, but
others, such as RA-OLSR, can be implemented.

Authentication and encryption are not implemented.

There are several scripts under tools/tools/net80211/scripts that can be
used to test different mesh network topologies and they also teach you
how to setup a mesh vap (for the impatient: ifconfig wlan0 create
wlandev ... wlanmode mesh).

A new build option is available: IEEE80211_SUPPORT_MESH and it's enabled
by default on GENERIC kernels for i386, amd64, sparc64 and pc98.

Drivers that support mesh networks right now are: ath, ral and mwl.

More information at: http://wiki.freebsd.org/WifiMesh

Please note that this work is experimental. Also, please note that
bridging a mesh vap with another network interface is not yet supported.

Many thanks to the FreeBSD Foundation for sponsoring this project and to
Sam Leffler for his support.
Also, I would like to thank Gateworks Corporation for sending me a
Cambria board which was used during the development of this project.

Reviewed by: sam
Approved by: re (kensmith)
Obtained from: projects/mesh11s


195295 02-Jul-2009 ed

Enable POSIX semaphores on all non-embedded architectures by default.

More applications (including Firefox) seem to depend on this nowadays,
so not having this enabled by default is a bad idea.

Proposed by: miwi
Patch by: Florian Smeets <flo kasimir com>
Approved by: re (kib)


195089 27-Jun-2009 nyan

Add stub vm.h for pc98.

Approved by: re (kensmith)


194784 23-Jun-2009 jeff

Implement a facility for dynamic per-cpu variables.
- Modules and kernel code alike may use DPCPU_DEFINE(),
DPCPU_GET(), DPCPU_SET(), etc. akin to the statically defined
PCPU_*. Requires only one extra instruction more than PCPU_* and is
virtually the same as __thread for builtin and much faster for shared
objects. DPCPU variables can be initialized when defined.
- Modules are supported by relocating the module's per-cpu linker set
over space reserved in the kernel. Modules may fail to load if there
is insufficient space available.
- Track space available for modules with a one-off extent allocator.
Free may block for memory to allocate space for an extent.

Reviewed by: jhb, rwatson, kan, sam, grehan, marius, marcel, stas


193334 02-Jun-2009 rwatson

Remove MAC kernel config files and add "options MAC" to GENERIC, with the
goal of shipping 8.0 with MAC support in the default kernel. No policies
will be compiled in or enabled by default, but it will now be possible to
load them at boot or runtime without a kernel recompile.

While the framework is not believed to impose measurable overhead when no
policies are loaded (a result of optimization over the past few months in
HEAD), we'll continue to benchmark and optimize as the release approaches.
Please keep an eye out for performance or functionality regressions that
could be a result of this change.

Approved by: re (kensmith)
Obtained from: TrustedBSD Project


192323 18-May-2009 marcel

Add cpu_flush_dcache() for use after non-DMA based I/O so that a
possible future I-cache coherency operation can succeed. On ARM
for example the L1 cache can be (is) virtually mapped, which
means that any I/O that uses temporary mappings will not see the
I-cache made coherent. On ia64 a similar behaviour has been
observed. By flushing the D-cache, execution of binaries backed
by md(4) and/or NFS work reliably.
For Book-E (powerpc), execution over NFS exhibits SIGILL once in
a while as well, though cpu_flush_dcache() hasn't been implemented
yet.

Doing an explicit D-cache flush as part of the non-DMA based I/O
read operation eliminates the need to do it as part of the
I-cache coherency operation itself and as such avoids pessimizing
the DMA-based I/O read operations for which D-cache are already
flushed/invalidated. It also allows future optimizations whereby
the bcopy() followed by the D-cache flush can be integrated in a
single operation, which could be implemented using on-chips DMA
engines, by-passing the D-cache altogether.


192106 14-May-2009 nyan

MFi386: revision 192050

Implement simple machine check support.


191954 10-May-2009 kuriyama

- Use "device\t" and "options \t" for consistency.


191842 06-May-2009 nyan

Reduce diffs against i386.
Use the hardclockintr function.


191766 03-May-2009 mav

Rename statclock_disable variable to atrtcclock_disable that it actually is,
and hide it inside of atrtc driver. Add new tunable hint.atrtc.0.clock
controlling it. Setting it to 0 disables using RTC clock as stat-/
profclock sources.

Teach i386 and amd64 SMP platforms to emulate stat-/profclocks using i8254
hardclock, when LAPIC and RTC clocks are disabled.

This allows to reduce global interrupt rate of idle system down to about
100 interrupts per core, permitting C3 and deeper C-states provide maximum
CPU power efficiency.


191761 03-May-2009 nyan

MFi386: revision 191745

Add support for using i8254 and rtc timers as event sources for i386 SMP
system. Redistribute hard-/stat-/profclock events to other CPUs using IPI.


191726 01-May-2009 sam

o add uath
o sort usb wireless drivers


191114 15-Apr-2009 ed

Migrate the olpt(4) driver to si_drv1 instead of using dev2unit().

Approved by: nyan


190928 11-Apr-2009 nyan

MFi386: revision 190919

Simplify in/out functions.

Remove a hack to generate more efficient code for port numbers below
0x100, which has been obsolete for at least ten years, because GCC has
an asm constraint to specify that.


190840 08-Apr-2009 nyan

MFi386: revision 190617

Fill the fsbase and gsbase fields of the mcontext structure on i386.


190459 27-Mar-2009 nyan

MFi386: r190447

Convert gdt_segs and ldt_segs initialization to C99 style.


190100 19-Mar-2009 thompsa

Remove the uscanner(4) driver, this follows the removal of the kernel scanner
driver in Linux 2.6. uscanner was just a simple wrapper around a fifo and
contained no logic, the default interface is now libusb (supported by sane).

Reviewed by: HPS


189851 15-Mar-2009 rwatson

Remove IFF_NEEDSGIANT, a compatibility infrastructure introduced
in FreeBSD 5.x to allow network device drivers to run with Giant
despite the network stack being Giant-free. This significantly
simplifies calls into ioctl() on network interfaces, especially
in the multicast code, as well as eliminates deferred invocation
of interface if_start routines.

Disable the build on device drivers still depending on
IFF_NEEDSGIANT as they no longer compile. They will be removed
in a few weeks if they haven't been made MPSAFE in that time.
Disabled drivers:

if_ar
if_axe
if_aue
if_cdce
if_cue
if_kue
if_ray
if_rue
if_rum
if_sr
if_udav
if_ural
if_zyd

Drivers that were already disabled because of tty changes:

if_ppp
if_sl

Discussed on: arch@


189617 10-Mar-2009 ed

Make a 1:1 mapping between syscons stats and terminal emulators.

After I imported libteken into the source tree, I noticed syscons didn't
store the cursor position inside the terminal emulator, but inside the
virtual terminal stat. This is not very useful, because when you
implement more complex forms of line wrapping, you need to keep track of
more state than just the cursor position.

Because the kernel messages didn't share the same terminal emulator as
ttyv0, this caused a lot of strange things, like kernel messages being
misplaced and a missing notification to resize the terminal emulator for
kernel messages never to be resized when using vidcontrol.

This patch just removes kernel_console_ts and adds a special parameter
to te_puts to determine whether messages should be printed using regular
colors or the ones for kernel messages.

Reported by: ache
Tested by: nyan, garga (older version)


189446 06-Mar-2009 nyan

MFi386: 189423

A better fix for handling different FPU initial control words for different
ABIs.


189445 06-Mar-2009 nyan

MFi386: part of 189421

- If there are no syscons hints at all, assume there is a single sc0 device
anyway. The console probe will still fail unless a VGA adapter is found.


188944 23-Feb-2009 thompsa

Change over the usb kernel options to the new stack (retaining existing
naming). The old usb stack can be compiled in my prefixing the name with 'o'.


188665 15-Feb-2009 thompsa

Add uslcom to the build too.

Reminded by: Michael Butler


188660 15-Feb-2009 thompsa

Switch over GENERIC kernels to USB2 by default.

Tested by: make universe


188307 08-Feb-2009 wkoszek

Bring missing comments on EPSON_BOUNCEDMA and EPSON_MEMWIN flags.

Submitted by: nyan


188257 07-Feb-2009 wkoszek

Tidy NOTES a bit:
- ath(4) is the last listed device, so make it's comment last as well
- since we have hints for le(4), bring it back by inserting commented
out line until I check, if it can be safely enabled.
- bring snc(4) explanation
- put pmtimer comment together with other drivers' comments in a block
- bring comments for canbus, canbepm, pmc

olpt comment has been left blank, since I don't know how does this
driver differ from other printer drivers.


188247 06-Feb-2009 wkoszek

Fix AGP debugging code:
- correct format strings
- fill opt_agp.h if AGP_DEBUG is defined
- bring AGP_DEBUG to LINT by mentioning it in NOTES

This should hopefully fix a warning that was...

Found by: Coverity Prevent(tm)
CID: 3676
Tested on: amd64, i386


187297 15-Jan-2009 nyan

MFi386: 187144

Documentation-only change:

- add a reference to the config(5) manpage;
- hopefully clarify the format of the 'env FILENAME' directive.


186681 01-Jan-2009 ed

Replace syscons terminal renderer by a new renderer that uses libteken.

Some time ago I started working on a library called libteken, which is
terminal emulator. It does not buffer any screen contents, but only
keeps terminal state, such as cursor position, attributes, etc. It
should implement all escape sequences that are implemented by the
cons25 terminal emulator, but also a fair amount of sequences that are
present in VT100 and xterm.

A lot of random notes, which could be of interest to users/developers:

- Even though I'm leaving the terminal type set to `cons25', users can
do experiments with placing `xterm-color' in /etc/ttys. Because we
only implement a subset of features of xterm, this may cause
artifacts. We should consider extending libteken, because in my
opinion xterm is the way to go. Some missing features:

- Keypad application mode (DECKPAM)
- Character sets (SCS)

- libteken is filled with a fair amount of assertions, but unfortunately
we cannot go into the debugger anymore if we fail them. I've done
development of this library almost entirely in userspace. In
sys/dev/syscons/teken there are two applications that can be helpful
when debugging the code:

- teken_demo: a terminal emulator that can be started from a regular
xterm that emulates a terminal using libteken. This application can
be very useful to debug any rendering issues.

- teken_stress: a stress testing application that emulates random
terminal output. libteken has literally survived multiple terabytes
of random input.

- libteken also includes support for UTF-8, but unfortunately our input
layer and font renderer don't support this. If users want to
experiment with UTF-8 support, they can enable `TEKEN_UTF8' in
teken.h. If you recompile your kernel or the teken_demo application,
you can hold some nice experiments.

- I've left PC98 the way it is right now. The PC98 platform has a custom
syscons renderer, which supports some form of localised input. Maybe
we should port PC98 to libteken by the time syscons supports UTF-8?

- I've removed the `dumb' terminal emulator. It has been broken for
years. It hasn't survived the `struct proc' -> `struct thread'
conversion.

- To prevent confusion among people that want to hack on libteken:
unlike syscons, the state machines that parse the escape sequences are
machine generated. This means that if you want to add new escape
sequences, you have to add an entry to the `sequences' file. This will
cause new entries to be added to `teken_state.h'.

- Any rendering artifacts that didn't occur prior to this commit are by
accident. They should be reported to me, so I can fix them.

Discussed on: current@, hackers@
Discussed with: philip (at 25C3)


186372 21-Dec-2008 nyan

Disable the pccard, parallel, GbE and wireless lan related devices and
some options by default to decrease a kernel size.
Because PC98 does not have so much memory.

MFC after: 3 days


186240 17-Dec-2008 marcel

Make gpart the default partitioning class on all platforms.
Both ia64 and powerpc were using gpart exclusively already
so there's no change for those two.

Discussed on: arch@


185567 02-Dec-2008 ed

Remove "[KEEP THIS!]" from COMPAT_43TTY. It's not really that important.

Sgtty is a programming interface that has been replaced by termios over
the years. In June we already removed <sgtty.h>, which exposes the
ioctl()'s that are implemented by this interface. The importance of this
flag is overrated right now.


185522 01-Dec-2008 sam

Switch to ath hal source code. Note this removes the ath_hal
module; the ath module now brings in the hal support. Kernel
config files are almost backwards compatible; supplying

device ath_hal

gives you the same chip support that the binary hal did but you
must also include

options AH_SUPPORT_AR5416

to enable the extended format descriptors used by 11n parts.
It is now possible to control the chip support included in a
build by specifying exactly which chips are to be supported
in the config file; consult ath_hal(4) for information.


184327 27-Oct-2008 kato

Improved IDE HDD geometry adjustment. Previous code didn't work with
certain ATA-6 drives including CF cards.

The IDE geometry of the PC98 is calculated from the drive capacity.
In addition to the algorithm in NEC BIOS, a variety of algorithms are
provided by 3'rd party boards and BIOS hacks. This change has
implemented the three algorithms: IDE BIOS compatible mode, SCSI BIOS
compatible mode and same way as the previous version. The tunable
machdep.ad_geom_method selects the algorithm.

I have been using this change for a year with CF cards.

Reminded by: nyan


183397 27-Sep-2008 ed

Replace all calls to minor() with dev2unit().

After I removed all the unit2minor()/minor2unit() calls from the kernel
yesterday, I realised calling minor() everywhere is quite confusing.
Character devices now only have the ability to store a unit number, not
a minor number. Remove the confusion by using dev2unit() everywhere.

This commit could also be considered as a bug fix. A lot of drivers call
minor(), while they should actually be calling dev2unit(). In -CURRENT
this isn't a problem, but it turns out we never had any problem reports
related to that issue in the past. I suspect not many people connect
more than 256 pieces of the same hardware.

Reviewed by: kib


182912 10-Sep-2008 jhb

Resurrect the sbni(4) driver. Someone finally tested the MPSAFE patches and
the driver worked ok with them.

Tested by: friends of yar


182836 07-Sep-2008 nyan

- Add the i386_memio_map_load() function to load I/O address table.
- Add the bus_space_compare macro for bus_space consistency.
- Switch using the bus_space_map_load() in isa_load_resourcev().


182835 07-Sep-2008 nyan

- Cleanup i8251 related defines.
- Move i8255 related defines into a separate file.


182160 25-Aug-2008 nyan

Add the uart for 2nd CCU support.


181905 20-Aug-2008 ed

Integrate the new MPSAFE TTY layer to the FreeBSD operating system.

The last half year I've been working on a replacement TTY layer for the
FreeBSD kernel. The new TTY layer was designed to improve the following:

- Improved driver model:

The old TTY layer has a driver model that is not abstract enough to
make it friendly to use. A good example is the output path, where the
device drivers directly access the output buffers. This means that an
in-kernel PPP implementation must always convert network buffers into
TTY buffers.

If a PPP implementation would be built on top of the new TTY layer
(still needs a hooks layer, though), it would allow the PPP
implementation to directly hand the data to the TTY driver.

- Improved hotplugging:

With the old TTY layer, it isn't entirely safe to destroy TTY's from
the system. This implementation has a two-step destructing design,
where the driver first abandons the TTY. After all threads have left
the TTY, the TTY layer calls a routine in the driver, which can be
used to free resources (unit numbers, etc).

The pts(4) driver also implements this feature, which means
posix_openpt() will now return PTY's that are created on the fly.

- Improved performance:

One of the major improvements is the per-TTY mutex, which is expected
to improve scalability when compared to the old Giant locking.
Another change is the unbuffered copying to userspace, which is both
used on TTY device nodes and PTY masters.

Upgrading should be quite straightforward. Unlike previous versions,
existing kernel configuration files do not need to be changed, except
when they reference device drivers that are listed in UPDATING.

Obtained from: //depot/projects/mpsafetty/...
Approved by: philip (ex-mentor)
Discussed: on the lists, at BSDCan, at the DevSummit
Sponsored by: Snow B.V., the Netherlands
dcons(4) fixed by: kan


181233 03-Aug-2008 ed

Disconnect drivers that haven't been ported to MPSAFE TTY yet.

As clearly mentioned on the mailing lists, there is a list of drivers
that have not been ported to the MPSAFE TTY layer yet. Remove them from
the kernel configuration files. This means people can now still use
these drivers if they explicitly put them in their kernel configuration
file, which is good.

People should keep in mind that after August 10, these drivers will not
work anymore. Even though owners of the hardware are capable of getting
these drivers working again, I will see if I can at least get them to a
compilable state (if time permits).


180359 07-Jul-2008 delphij

Add HWPMC_HOOKS to GENERIC kernels, this makes hwpmc.ko work out
of the box.


180303 05-Jul-2008 nyan

Add i386_memio_compare() to compare two resources.
It's used by uart(4) in the future.


180265 04-Jul-2008 jhb

Remove the sbni(4) driver. No one responded to calls to test it on
current@ and stable@.


180259 04-Jul-2008 jhb

Remove the oltr(4) driver. No one responded to calls for testing on
current@ and stable@ for the locking patches. The driver can always be
revived if someone tests it.

This driver also sleeps in its if_init routine, so it likely doesn't really
work at all anyway in modern releases.


180209 03-Jul-2008 peter

Exclude .cvsignore files from $FreeBSD$ checking


179785 14-Jun-2008 wkoszek

Remove obselete PECOFF image activator support.

PRs assigned at the time of removal: kern/80742

Discussed on: freebsd-current (silence), IRC
Tested by: make universe
Approved by: cognet (mentor)


179315 26-May-2008 bz

Remove ISDN4BSD (I4B) from HEAD as it is not MPSAFE and
parts relied on the now removed NET_NEEDS_GIANT.
Most of I4B has been disconnected from the build
since July 2007 in HEAD/RELENG_7.

This is what was removed:
- configuration in /etc/isdn
- examples
- man pages
- kernel configuration
- sys/i4b (drivers, layers, include files)
- user space tools
- i4b support from ppp
- further documentation

Discussed with: rwatson, re


179283 24-May-2008 nyan

MFi386: revision 1.249

Add a cyclic hook for DTrace.


179078 17-May-2008 remko

Resort the if_ti driver to match the PCI Network cards instead of placing
it under the mii devices list.

PR: kern/123147
Submitted by: gavin
Approved by: imp (mentor, implicit)
MFC after: 3 days


178766 04-May-2008 peter

Expand kdb_alt_break a little, most commonly used with the option
ALT_BREAK_TO_DEBUGGER. In addition to "Enter ~ ctrl-B" (to enter the
debugger), there is now "Enter ~ ctrl-P" (force panic) and
"Enter ~ ctrl-R" (request clean reboot, ala ctrl-alt-del on syscons).

We've used variations of this at work. The force panic sequence is
best used with KDB_UNATTENDED for when you just want it to dump and
get on with it.

The reboot request is a safer way of getting into single user than
a power cycle. eg: you've hosed the ability to log in (pam, rtld, etc).
It gives init the reboot signal, which causes an orderly reboot.

I've taken my best guess at what the !x86 and non-sio code changes
should be.

This also makes sio release its spinlock before calling KDB/DDB.


178742 03-May-2008 sam

enable IEEE80211_DEBUG and IEEE80211_AMPDU_AGE by default


178471 25-Apr-2008 jeff

- Add an integer argument to idle to indicate how likely we are to wake
from idle over the next tick.
- Add a new MD routine, cpu_wake_idle() to wakeup idle threads who are
suspended in cpu specific states. This function can fail and cause the
scheduler to fall back to another mechanism (ipi).
- Implement support for mwait in cpu_idle() on i386/amd64 machines that
support it. mwait is a higher performance way to synchronize cpus
as compared to hlt & ipis.
- Allow selecting the idle routine by name via sysctl machdep.idle. This
replaces machdep.cpu_idle_hlt. Only idle routines supported by the
current machine are permitted.

Sponsored by: Nokia


178429 22-Apr-2008 phk

Now that all platforms use genclock, shuffle things around slightly
for better structure.

Much of this is related to <sys/clock.h>, which should really have
been called <sys/calendar.h>, but unless and until we need the name,
the repocopy can wait.

In general the kernel does not know about minutes, hours, days,
timezones, daylight savings time, leap-years and such. All that
is theoretically a matter for userland only.

Parts of kernel code does however care: badly designed filesystems
store timestamps in local time and RTC chips almost universally
track time in a YY-MM-DD HH:MM:SS format, and sometimes in local
timezone instead of UTC. For this we have <sys/clock.h>

<sys/time.h> on the other hand, deals with time_t, timeval, timespec
and so on. These know only seconds and fractions thereof.

Move inittodr() and resettodr() prototypes to <sys/time.h>.
Retain the names as it is one of the few surviving PDP/VAX references.

Move startrtclock() to <machine/clock.h> on relevant platforms, it
is a MD call between machdep.c/clock.c. Remove references to it
elsewhere.

Remove a lot of unnecessary <sys/clock.h> includes.

Move the machdep.disable_rtc_set sysctl to subr_rtc.c where it belongs.
XXX: should be kern.disable_rtc_set really, it's not MD.


178354 20-Apr-2008 sam

Multi-bss (aka vap) support for 802.11 devices.

Note this includes changes to all drivers and moves some device firmware
loading to use firmware(9) and a separate module (e.g. ral). Also there
no longer are separate wlan_scan* modules; this functionality is now
bundled into the wlan module.

Supported by: Hobnob and Marvell
Reviewed by: many
Obtained from: Atheros (some bits)


178352 20-Apr-2008 sam

move awi to the Attic; it will not make the jump to the new world order

Reviewed by: imp


178315 19-Apr-2008 nyan

MFi386: Merge yet another the RTC related work.

Split the pcrtc driver into pcrtc.c which is repo-copied from clock.c


178310 19-Apr-2008 nyan

Remove my copyright. This file includes simply i386's one now.


178169 13-Apr-2008 nyan

MFi386: RTC related cleanups.

- Use generic RTC handling code.
- Make clock_if.m and subr_rtc.c standard.
- Nuke MD inittodr(), resettodr() functions.
- Add new "pcrtc" device driver.
- Add hints for "pcrtc" driver.


178007 08-Apr-2008 nyan

Always set the bell_pitch to 800. This catch up with the sysbeep() argument
changing.


177662 27-Mar-2008 dfr

Add kernel module support for nfslockd and krpc. Use the module system
to detect (or load) kernel NLM support in rpc.lockd. Remove the '-k'
option to rpc.lockd and make kernel NLM the default. A user can still
force the use of the old user NLM by building a kernel without NFSLOCKD
and/or removing the nfslockd.ko module.


177651 26-Mar-2008 phk

Back in the good old days, PC's had random pieces of rock for
frequency generation and what frequency the generated was anyones
guess.

In general the 32.768kHz RTC clock x-tal was the best, because that
was a regular wrist-watch Xtal, whereas the X-tal generating the
ISA bus frequency was much lower quality, often costing as much as
several cents a piece, so it made good sense to check the ISA bus
frequency against the RTC clock.

The other relevant property of those machines, is that they
typically had no more than 16MB RAM.

These days, CPU chips croak if their clocks are not tightly within
specs and all necessary frequencies are derived from the master
crystal by means if PLL's.

Considering that it takes on average 1.5 second to calibrate the
frequency of the i8254 counter, that more likely than not, we will
not actually use the result of the calibration, and as the final
clincher, we seldom use the i8254 for anything besides BEL in
syscons anyway, it has become time to drop the calibration code.

If you need to tell the system what frequency your i8254 runs,
you can do so from the loader using hw.i8254.freq or using the
sysctl kern.timecounter.tc.i8254.frequency.


177650 26-Mar-2008 phk

Further cleanup of sound generation in syscons:

The timer_spkr_*() functions take care of the enabling/disabling
of the speaker.

Test on the existence of timer_spkr_*() functions, rather than
architectures.


177642 26-Mar-2008 phk

The "free-lance" timer in the i8254 is only used for the speaker
these days, so de-generalize the acquire_timer/release_timer api
to just deal with speakers.

The new (optional) MD functions are:
timer_spkr_acquire()
timer_spkr_release()
and
timer_spkr_setfreq()

the last of which configures the timer to generate a tone of a given
frequency, in Hz instead of 1/1193182th of seconds.

Drop entirely timer2 on pc98, it is not used anywhere at all.

Move sysbeep() to kern/tty_cons.c and use the timer_spkr*() if
they exist, and do nothing otherwise.

Remove prototypes and empty acquire-/release-timer() and sysbeep()
functions from the non-beeping archs.

This eliminate the need for the speaker driver to know about
i8254frequency at all. In theory this makes the speaker driver MI,
contingent on the timer_spkr_*() functions existing but the driver
does not know this yet and still attaches to the ISA bus.

Syscons is more tricky, in one function, sc_tone(), it knows the hz
and things are just fine.

In the other function, sc_bell() it seems to get the period from
the KDMKTONE ioctl in terms if 1/1193182th second, so we hardcode
the 1193182 and leave it at that. It's probably not important.

Change a few other sysbeep() uses which obviously knew that the
argument was in terms of i8254 frequency, and leave alone those
that look like people thought sysbeep() took frequency in hertz.

This eliminates the knowledge of i8254_freq from all but the actual
clock.c code and the prof_machdep.c on amd64 and i386, where I think
it would be smart to ask for help from the timecounters anyway [TBD].


177631 26-Mar-2008 phk

Rename timer0_max_count to i8254_max_count.
Rename timer0_real_max_count to i8254_real_max_count and make it static.
Rename timer_freq to i8254_freq and make it a loader tunable.


177628 26-Mar-2008 phk

The RTC related pscnt and psdiv variables have no business being public.


177586 24-Mar-2008 jkim

Belatedly add BPF_JITTER in NOTES for supported architectures.


177253 16-Mar-2008 rwatson

In keeping with style(9)'s recommendations on macros, use a ';'
after each SYSINIT() macro invocation. This makes a number of
lightweight C parsers much happier with the FreeBSD kernel
source, including cflow's prcc and lxr.

MFC after: 1 month
Discussed with: imp, rink


177163 14-Mar-2008 nyan

Add stub for pc98.


177145 13-Mar-2008 kib

Since version 4.3, gcc changed its behaviour concerning the i386/amd64
ABI and the direction flag, that is it now assumes that the direction
flag is cleared at the entry of a function and it doesn't clear once
more if needed. This new behaviour conforms to the i386/amd64 ABI.

Modify the signal handler frame setup code to clear the DF {e,r}flags
bit on the amd64/i386 for the signal handlers.

jhb@ noted that it might break old apps if they assumed DF == 1 would be
preserved in the signal handlers, but that such apps should be rare and
that older versions of gcc would not generate such apps.

Submitted by: Aurelien Jarno <aurelien aurel32 net>
PR: 121422
Reviewed by: jhb
MFC after: 2 weeks


177091 12-Mar-2008 jeff

Remove kernel support for M:N threading.

While the KSE project was quite successful in bringing threading to
FreeBSD, the M:N approach taken by the kse library was never developed
to its full potential. Backwards compatibility will be provided via
libmap.conf for dynamically linked binaries and static binaries will
be broken.


177025 10-Mar-2008 nyan

MFi386: revision 1.482.

Import uslcom(4) from OpenBSD - this is a driver for Silicon Laboratories
CP2101/CP2102 based USB serial adapters.


176657 29-Feb-2008 nyan

Merged from sys/dev/sio/sio.c revision 1.472

Stop serial console and gdb serial port from getting all screwed up.


176655 29-Feb-2008 nyan

MFi386: revision 1.658

Add "show sysregs" command to ddb. On i386, this gives gdt, idt, ldt,
cr0-4, etc. Support should be added for other platforms that have a
different set of registers for system use.


175147 07-Jan-2008 jhb

Add COMPAT_FREEBSD7 and enable it in configs that have COMPAT_FREEBSD6.


175001 30-Dec-2007 nyan

Use kbdd_* macros.


174985 29-Dec-2007 wkoszek

Replace explicit calls to video methods with their respective variants
implemented with macros. This patch improves code readability. Reasoning
behind vidd_* is a sort of "video discipline".

List of macros is supposed to be complete--all methods of video_switch
ought to have their respective macros from now on.

Functionally, this code should be no-op. My intention is to leave current
behaviour of touched code as is.

No objections: rwatson
Silence on: freebsd-current@
Approved by: cognet


174898 25-Dec-2007 rwatson

Add a new 'why' argument to kdb_enter(), and a set of constants to use
for that argument. This will allow DDB to detect the broad category of
reason why the debugger has been entered, which it can use for the
purposes of deciding which DDB script to run.

Assign approximate why values to all current consumers of the
kdb_enter() interface.


174216 03-Dec-2007 rwatson

Catch up pc98 for i386 stack(9) changes:

Add stub stack.h for pc98 that includes i386 pc98.

Add i386 stack_machdep.c to files.pc98.

Spotted by: tinderbox


174195 02-Dec-2007 rwatson

Break out stack(9) from ddb(4):

- Introduce per-architecture stack_machdep.c to hold stack_save(9).
- Introduce per-architecture machine/stack.h to capture any common
definitions required between db_trace.c and stack_machdep.c.
- Add new kernel option "options STACK"; we will build in stack(9) if it is
defined, or also if "options DDB" is defined to provide compatibility
with existing users of stack(9).

Add new stack_save_td(9) function, which allows the capture of a stacktrace
of another thread rather than the current thread, which the existing
stack_save(9) was limited to. It requires that the thread be neither
swapped out nor running, which is the responsibility of the consumer to
enforce.

Update stack(9) man page.

Build tested: amd64, arm, i386, ia64, powerpc, sparc64, sun4v
Runtime tested: amd64 (rwatson), arm (cognet), i386 (rwatson)


173607 14-Nov-2007 nyan

MFi386: revision 1.661

Drastically simplify the i386 pcpu backend by merging parts of the
amd64 mechanism over.


173361 05-Nov-2007 kib

Fix for the panic("vm_thread_new: kstack allocation failed") and
silent NULL pointer dereference in the i386 and sparc64 pmap_pinit()
when the kmem_alloc_nofault() failed to allocate address space. Both
functions now return error instead of panicing or dereferencing NULL.

As consequence, vmspace_exec() and vmspace_unshare() returns the errno
int. struct vmspace arg was added to vm_forkproc() to avoid dealing
with failed allocation when most of the fork1() job is already done.

The kernel stack for the thread is now set up in the thread_alloc(),
that itself may return NULL. Also, allocation of the first process
thread is performed in the fork1() to properly deal with stack
allocation failure. proc_linkup() is separated into proc_linkup()
called from fork1(), and proc_linkup0(), that is used to set up the
kernel process (was known as swapper).

In collaboration with: Peter Holm
Reviewed by: jhb


173020 26-Oct-2007 nyan

MFi386: revision 1.476

Add more (commented-out) usb devices.


172568 12-Oct-2007 kevlo

Spelling fix for interupt -> interrupt


172332 26-Sep-2007 brueffer

Use the correct expanded name for SCTP.

PR: 116496
Submitted by: koitsu
Reviewed by: rrs
Approved by: re (kensmith)


171653 29-Jul-2007 dwmalone

Mfi386 revision 1.239 of src/sys/i386/isa/clock.c. Seemingly some
pc98 motherboards do not provide us with the correct day of week
either. Ignore the day of week when setting the clock here too.

Approved by: re (bmah)
Requested from: nyan
MFC after: 3 weeks


171553 23-Jul-2007 dwmalone

If clock_ct_to_ts fails to convert time time from the real time clock,
print a one line error message. Add some comments on not being able to
trust the day of week field (I'll act on these comments in a follow up
commit).

Approved by: re
MFC after: 3 weeks


171380 11-Jul-2007 mjacob

In the function pc98_check_if_type for the non-8251 case
make sure we initialize fileds in the iod that otherwise
would have been initialized.

Reviewed by: nate, ken, warner
Approved by: re (ken)


171276 06-Jul-2007 bz

I4B header files were repo-copied from sys/i386/include/ to
sys/i4b/include/ so they will be available to all architectures
once I4B compiles on those.

We no longer need these "glue" files.

Reminded by: nyan
Approved by: re (kensmith)


171196 04-Jul-2007 bz

Temporary disconnect i4bing, i4bisppp and i4bipr from the build for
the 7.0 timeframe.

This is needed because I4B is not locked and NET_NEEDS_GIANT goes away.

The plan is to lock I4B and bring everything back for 7.1.

Approved by: re (kensmith)


170731 14-Jun-2007 delphij

Enable SCTP by default for GENERIC kernels in order to give it
more exposure. The current state of SCTP implementation is
considered to be ready for 32-bit platforms, but still need some
work/testing on 64-bit platforms.

Approved by: re (kensmith)
Discussed with: rrs


170552 11-Jun-2007 thompsa

Add wlan_scan_ap and wlan_scan_sta to platforms that include wlan.


170520 11-Jun-2007 marcel

Use default options for default partitioning schemes, rather than
making the relevant files standard. This avoids duplication and
makes it easier to override/disable unwanted schemes. Since ARM
doesn't have a DEFAULTS configuration file, leave the source
files for the BSD and MBR partitioning schemes in files.arm for
now.


170440 08-Jun-2007 rwatson

Enable AUDIT by default in the GENERIC kernel, allowing security event
auditing to be turned on without a kernel recompile, just an rc.conf
option.

Approved by: re (kensmith)
Obtained from: TrustedBSD Project


170372 06-Jun-2007 nyan

MFi386: revision 1.657

Backout experimental adaptive-spin umtx code.


170325 05-Jun-2007 nyan

MFi386: revision 1.656

Add the machine-specific definitions for configuring the new physical
memory allocator.

Set the size of phys_avail[] and dump_avail[] using one of these
definitions.


170307 05-Jun-2007 jeff

Commit 14/14 of sched_lock decomposition.
- Use thread_lock() rather than sched_lock for per-thread scheduling
sychronization.
- Use the per-process spinlock rather than the sched_lock for per-process
scheduling synchronization.

Tested by: kris, current@
Tested on: i386, amd64, ULE, 4BSD, libthr, libkse, PREEMPTION, etc.
Discussed with: kris, attilio, kmacy, jhb, julian, bde (small parts each)


170289 04-Jun-2007 dwmalone

Despite several examples in the kernel, the third argument of
sysctl_handle_int is not sizeof the int type you want to export.
The type must always be an int or an unsigned int.

Remove the instances where a sizeof(variable) is passed to stop
people accidently cut and pasting these examples.

In a few places this was sysctl_handle_int was being used on 64 bit
types, which would truncate the value to be exported. In these
cases use sysctl_handle_quad to export them and change the format
to Q so that sysctl(1) can still print them.


170170 31-May-2007 attilio

Revert VMCNT_* operations introduction.
Probabilly, a general approach is not the better solution here, so we should
solve the sched_lock protection problems separately.

Requested by: alc
Approved by: jeff (mentor)


170136 30-May-2007 nyan

MFi386: revision 1.653.


169827 21-May-2007 nyan

MFi386: revision 1.652

- Move GDT/LDT locking into a seperate spinlock, removing the global
scheduler lock from this responsibility.


169667 18-May-2007 jeff

- define and use VMCNT_{GET,SET,ADD,SUB,PTR} macros for manipulating
vmcnts. This can be used to abstract away pcpu details but also changes
to use atomics for all counters now. This means sched lock is no longer
responsible for protecting counts in the switch routines.

Contributed by: Attilio Rao <attilio@FreeBSD.org>


169516 13-May-2007 nyan

Disable PREEMPTION option. It causes some problem on pc98.


169433 10-May-2007 kevlo

Add wlan_amrr. ural(4) uses amrr as transmit rate control.


168603 10-Apr-2007 pjd

Remove trailing '.' for consistency!


168594 10-Apr-2007 pjd

Add UFS_GJOURNAL options to the GENERIC kernel.

Approved by: re (kensmith)


167753 21-Mar-2007 nyan

Don't call bus_deactivate_resource() explicitly before calling
bus_release_resource(). This is needed for pc98 by upcoming nexus related
change.


167673 18-Mar-2007 nyan

MFi386: revision 1.650

Eliminate an unused parameter.


167198 04-Mar-2007 nyan

- Use mtx_{lock,unlock}_spin rather than {disable,enable}_intr.
- Remove unnecessary findcpuspeed() function.
- Initialize the timer_freq in i8254_init().
- Fix inittodr() and resettodr(). These are broken by rev.1.154.


167193 04-Mar-2007 nyan

Reduce diffs with i386.


167085 27-Feb-2007 jhb

Use pause() rather than tsleep() on explicit global dummy variables.


166976 25-Feb-2007 piso

Garbage collect a reference to INTR_FAST.


166923 23-Feb-2007 piso

o break newbus api: add a new argument of type driver_filter_t to
bus_setup_intr()

o add an int return code to all fast handlers

o retire INTR_FAST/IH_FAST

For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current

Approved by: re (implicit?)


166901 23-Feb-2007 piso

o break newbus api: add a new argument of type driver_filter_t to
bus_setup_intr()

o add an int return code to all fast handlers

o retire INTR_FAST/IH_FAST

For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current

Reviewed by: many
Approved by: re@


166604 09-Feb-2007 brooks

Include GEOM_LABEL in GENERIC. It's very useful and not well publicized
enough.

Approved by: pjd


166551 07-Feb-2007 marcel

Evolve the ctlreq interface added to geom_gpt into a generic
partitioning class that supports multiple schemes. Current
schemes supported are APM (Apple Partition Map) and GPT.
Change all GEOM_APPLE anf GEOM_GPT options into GEOM_PART_APM
and GEOM_PART_GPT (resp).

The ctlreq interface supports verbs to create and destroy
partitioning schemes on a disk; to add, delete and modify
partitions; and to commit or undo changes made.


166303 28-Jan-2007 nyan

MFi386: revision 1.647.

exclude the icu and clock lock from LOCK_PROFILING


166189 23-Jan-2007 bde

Oops, pc98 is independent of i386 for clock.c and machdep.c but not
for clock.h, so changing th i386 clock.h broke it. MFi386 (not tested):

Cleaned up declaration and initialization of clock_lock. It is only
used by clock code, so don't export it to the world for machdep.c to
initialize. There is a minor problem initializing it before it is
used, since although clock initialization is split up so that parts
of it can be done early, the first part was never done early enough
to actually work. Split it up a bit more and do the first part as
late as possible to document the necessary order. The functions that
implement the split are still bogusly exported.

Cleaned up initialization of the i8254 clock hardware using the new
split. Actually initialize it early enough, and don't work around it
not being initialized in DELAY() when DELAY() is called early for
initialization of some console drivers.

This unfortunately moves a little more code before the early debugger
breakpoint so that it is harder to debug. The ordering of console and
related initialization is delicate because we want to do as little as
possible before the breakpoint, but must initialize a console.


165858 07-Jan-2007 nyan

MFi386: revision 1.646.


164951 06-Dec-2006 sobomax

Allow machdep.cpu_idle_hlt to be set from the loader. This should allow
to workaround the problem with SMP kernels on Turion64 X2 processors
described in kern/104678 and may be useful in other situations too.

MFC after: 3 days


164936 06-Dec-2006 julian

Threading cleanup.. part 2 of several.

Make part of John Birrell's KSE patch permanent..
Specifically, remove:
Any reference of the ksegrp structure. This feature was
never fully utilised and made things overly complicated.
All code in the scheduler that tried to make threaded programs
fair to unthreaded programs. Libpthread processes will already
do this to some extent and libthr processes already disable it.

Also:
Since this makes such a big change to the scheduler(s), take the opportunity
to rename some structures and elements that had to be moved anyhow.
This makes the code a lot more readable.

The ULE scheduler compiles again but I have no idea if it works.

The 4bsd scheduler still reqires a little cleaning and some functions that now do
ALMOST nothing will go away, but I thought I'd do that as a separate commit.

Tested by David Xu, and Dan Eischen using libthr and libpthread.


164438 20-Nov-2006 nyan

MFi386: revisions from 1.641 to 1.643.


164113 09-Nov-2006 nyan

MFi386: revisions 1.634 and 1.639.


164033 06-Nov-2006 rwatson

Sweep kernel replacing suser(9) calls with priv(9) calls, assigning
specific privilege names to a broad range of privileges. These may
require some future tweaking.

Sponsored by: nCircle Network Security, Inc.
Obtained from: TrustedBSD Project
Discussed on: arch@
Reviewed (at least in part) by: mlaier, jmg, pjd, bde, ceri,
Alex Lyashkov <umka at sevcity dot net>,
Skip Ford <skip dot ford at verizon dot net>,
Antoine Brodin <antoine dot brodin at laposte dot net>


163987 04-Nov-2006 jb

Remove the KDTRACE option again because of the complaints about having
it as a default.

For the record, the KDTRACE option caused _no_ additional source files
to be compiled in; certainly no CDDL source files. All it did was to
allow existing BSD licensed kernel files to include one or more CDDL
header files.

By removing this from DEFAULTS, the onus is on a kernel builder to add
the option to the kernel config, possibly by including GENERIC and
customising from there. It means that DTrace won't be a feature
available in FreeBSD by default, which is the way I intended it to be.

Without this option, you can't load the dtrace module (which contains
the dtrace device and the DTrace framework). This is equivalent to
requiring an option in a kernel config before you can load the linux
emulation module, for example.

I think it is a mistake to have DTrace ported to FreeBSD, but not
to have it available to everyone, all the time. The only exception
to this is the companies which distribute systems with FreeBSD embedded.
Those companies will customise their systems anyway. The KDTRACE
option was intended for them, and only them.


163972 04-Nov-2006 jb

Build in kernel support for loading DTrace modules by default. This
adds the hooks that DTrace modules register with, and adds a few functions
which have the dtrace_ prefix to allow the DTrace FBT (function boundary
trace) provider to avoid tracing because they are called from the DTtrace
probe context.

Unlike other forms of tracing and debug, DTrace support in the kernel
incurs negligible run-time cost.

I think the only reason why anyone wouldn't want to have kernel support
enabled for DTrace would be due to the license (CDDL) under which DTrace
is released.


163711 26-Oct-2006 jb

Remove the KSE option now that it's in DEFAULTS on these arches/machines.

The 'nooption' kernel config entry has to be used to turn KSE off now.
This isn't my preferred way of dealing with this, but I'll defer to
scottl's experience with the io/mem kernel option change and the grief
experienced over that.

Submitted by: scottl@


163710 26-Oct-2006 jb

Add 'options KSE' to the kernel config DEFAULTS on all arches/machines
except sun4v.

This change makes the transition from a default to an option more
transparent and is an attempt to head off all the compliants that are
likely from people who don't read UPDATING, based on experience with
the io/mem change.

Submitted by: scottl@


163709 26-Oct-2006 jb

Make KSE a kernel option, turned on by default in all GENERIC
kernel configs except sun4v (which doesn't process signals properly
with KSE).

Reviewed by: davidxu@


163630 23-Oct-2006 ru

Move "device splash" back to MI NOTES and "files", it's MI.


163626 23-Oct-2006 ru

Mechanically kill redundant nodevice/nooption/nomakeoption, i.e.,
those that do not exist in MI NOTES or switched on/off in the MD
NOTES.


163538 20-Oct-2006 nyan

- MFi386: Remove 'device io'.
- Remove duplicate options.
- 'nomakeoption ATKBD_DFLT_KEYMAP' is not needed anymore.


163535 20-Oct-2006 des

Move more MD devices and options out of MI NOTES.


163494 19-Oct-2006 imp

Remove references to pccard.conf


163041 05-Oct-2006 simon

- Remove SCHED_ULE from GENERIC to better avoid foot-shooting by
unsuspecting users.
- Add a comment in NOTES about experimental status of SCHED_ULE.
- Make warning about experimental status in sched_ule(4) a bit
stronger.

Suggested and reviewed by: dougb
Discussed on: developers
MFC after: 3 days


162964 02-Oct-2006 phk

Use Calendrical Calculations from subr_clock.c instead of home copy&pasted.


162958 02-Oct-2006 phk

Second part of a little cleanup in the calendar/timezone/RTC handling.

Split subr_clock.c in two parts (by repo-copy):
subr_clock.c contains generic RTC and calendaric stuff. etc.
subr_rtc.c contains the newbus'ified RTC interface.

Centralize the machdep.{adjkerntz,disable_rtc_set,wall_cmos_clock}
sysctls and associated variables into subr_clock.c. They are
not machine dependent and we have generic code that relies on being
present so they are not even optional.


162954 02-Oct-2006 phk

First part of a little cleanup in the calendar/timezone/RTC handling.

Move relevant variables to <sys/clock.h> and fix #includes as necessary.

Use libkern's much more time- & spamce-efficient BCD routines.


162839 30-Sep-2006 phk

Remove the no longer relevant or correct bootinfo sysctls.


162711 27-Sep-2006 ru

Fix our ioctl(2) implementation when the argument is "int". New
ioctls passing integer arguments should use the _IOWINT() macro.
This fixes a lot of ioctl's not working on sparc64, most notable
being keyboard/syscons ioctls.

Full ABI compatibility is provided, with the bonus of fixing the
handling of old ioctls on sparc64.

Reviewed by: bde (with contributions)
Tested by: emax, marius
MFC after: 1 week


162658 26-Sep-2006 ru

Added COMPAT_FREEBSD6 option.


162165 08-Sep-2006 jkim

Fix style nits. No md5 changes in .o's. ;-)


161129 09-Aug-2006 imp

Add pc98 specific code to adjust the firmware geometry when it differs
from the actual geometry. This enables support of disks larger than
~120GB on pc98 boxes. They make great little network appliances.
I've been using these changes for the past year or so on my network
storage pc98 box :-).


160813 29-Jul-2006 marcel

Remove sio(4) and related options from MI files to amd64, i386
and pc98 MD files. Remove nodevice and nooption lines specific
to sio(4) from ia64, powerpc and sparc64 NOTES. There were no
such lines for arm yet.
sio(4) is usable on less than half the platforms, not counting
a future mips platform. Its presence in MI files is therefore
increasingly becoming a burden.


160312 12-Jul-2006 jhb

Simplify the pager support in DDB. Allowing different db commands to
install custom pager functions didn't actually happen in practice (they
all just used the simple pager and passed in a local quit pointer). So,
just hardcode the simple pager as the only pager and make it set a global
db_pager_quit flag that db commands can check when the user hits 'q' (or a
suitable variant) at the pager prompt. Also, now that it's easy to do so,
enable paging by default for all ddb commands. Any command that wishes to
honor the quit flag can do so by checking db_pager_quit. Note that the
pager can also be effectively disabled by setting $lines to 0.

Other fixes:
- 'show idt' on i386 and pc98 now actually checks the quit flag and
terminates early.
- 'show intr' now actually checks the quit flag and terminates early.


160211 09-Jul-2006 mjacob

Make the firmware assist driver resident in
preparation for isp using it.

Reviewed by: sam, max


159964 26-Jun-2006 babkin

Backed out the change by request from rwatson.

PR: kern/14584


159927 25-Jun-2006 babkin

The common UID/GID space implementation. It has been discussed on -arch
in 1999, and there are changes to the sysctl names compared to PR,
according to that discussion. The description is in sys/conf/NOTES.
Lines in the GENERIC files are added in commented-out form.
I'll attach the test script I've used to PR.

PR: kern/14584
Submitted by: babkin


159651 15-Jun-2006 netchild

Remove COMPAT_43 from GENERIC (and other kernel configs). For amd64 there's
an explicit comment that it's needed for the linuxolator. This is not the
case anymore. For all other architectures there was only a "KEEP THIS".
I'm (and other people too) running a COMPAT_43-less kernel since it's not
necessary anymore for the linuxolator. Roman is running such a kernel for a
for longer time. No problems so far. And I doubt other (newer than ia32
or alpha) architectures really depend on it.

This may result in a small performance increase for some workloads.

If the removal of COMPAT_43 results in a not working program, please
recompile it and all dependencies and try again before reporting a
problem.

The only place where COMPAT_43 is needed (as in: does not compile without
it) is in the (outdated/not usable since too old) svr4 code.

Note: this does not remove the COMPAT_43TTY option.

Nagging by: rdivacky


159552 12-Jun-2006 marius

Make the ISAPNP code optional and only enable it on i386 and pc98 (used
for CBUS-PNP cards there) by default, as there are no amd64 and sparc64
machines with ISA slots and which therefore could make use of this code
known to exist. For sparc64 this additionally allows to get rid of the
compat shims for in{b,w,l}()/out{b,w,l}() etc and the associated hacks.

OK'ed by: imp, peter


159549 12-Jun-2006 jhb

Enable a few more things in x86 NOTES to get broader LINT coverage:
- Turn on iwi(4), ipw(4), and ndis(4) on amd64 and i386.
- Turn on ral(4) and ural(4) on i386, pc98, and amd64.


159537 12-Jun-2006 imp

Add the ability to subset the devices that UART pulls in. This allows
the arm to compile without all the extras that don't appear, at least
not in the flavors of ARM I deal with. This helps us save about 100k.

If I've botched the available devices on a platform, please let me
know and I'll correct ASAP.


159252 05-Jun-2006 nyan

MFi386: revisions 1.627, 1.628 and 1.629.


158969 27-May-2006 nyan

typo.


158957 26-May-2006 phk

Aling to new console and gdb_port semantics


158712 17-May-2006 marius

- Add C-bus and ISA front-ends for le(4) so it can actually replace
lnc(4) on PC98 and i386. The ISA front-end supports the same non-PNP
network cards as lnc(4) did and additionally a couple of PNP ones.
Like lnc(4), the C-bus front-end of le(4) only supports C-NET(98)S
and is untested due to lack of such hardware, but given that's it's
based on the respective lnc(4) and not too different from the ISA
front-end it should be highly likely to work.
- Remove the descriptions of le(4), which where converted from lnc(4),
from sys/i386/conf/NOTES and sys/pc98/conf/NOTES as there's a common
one in sys/conf/NOTES.


158710 17-May-2006 marius

- As only the PCI front-end of le(4) is common to all platforms move its
entry to the PCI NICs section so it's in the same spot in all GENERIC
config files.
- Add a note to the description of pcn(4) informing that is has precedence
over le(4).


158687 17-May-2006 phk

Send the pcvt(4) driver off to retirement.


158651 16-May-2006 phk

Since DELAY() was moved, most <machine/clock.h> #includes have been
unnecessary.


158647 16-May-2006 ru

Kill more references to lnc(4).

Submitted by: grep(1)


158591 15-May-2006 nyan

Switch from the lnc driver to the le driver. But C-NET(98)S support is
dropped.


158445 11-May-2006 phk

Clean out sysctl machdep.* related defines.

The cmos clock related stuff should really be in MI code.


158381 09-May-2006 ambrisko

Add in linsysfs. A linux 2.6 like sys filesystem to pacify the Linux
LSI MegaRAID SAS utility.

Sponsored by: IronPort Systems
Man page help from: brueffer


158359 08-May-2006 nyan

Remove unneeded include.


158358 08-May-2006 nyan

- Move defines for PC-98 machine type from pc98/cbus/cbus.h into
pc98/pc98/pc98_machdep.h.
- Fix PC98_SYSTEM_PARAMETER_SIZE.
- Remove unused defines.


158357 08-May-2006 nyan

Add the ath and the wlan crypto support.


158124 28-Apr-2006 marcel

Rewrite of puc(4). Significant changes are:
o Properly use rman(9) to manage resources. This eliminates the
need to puc-specific hacks to rman. It also allows devinfo(8)
to be used to find out the specific assignment of resources to
serial/parallel ports.
o Compress the PCI device "database" by optimizing for the common
case and to use a procedural interface to handle the exceptions.
The procedural interface also generalizes the need to setup the
hardware (program chipsets, program clock frequencies).
o Eliminate the need for PUC_FASTINTR. Serdev devices are fast by
default and non-serdev devices are handled by the bus.
o Use the serdev I/F to collect interrupt status and to handle
interrupts across ports in priority order.
o Sync the PCI device configuration to include devices found in
NetBSD and not yet merged to FreeBSD.
o Add support for Quatech 2, 4 and 8 port UARTs.
o Add support for a couple dozen Timedia serial cards as found
in Linux.


158005 24-Apr-2006 marcel

o Move ISA specific code from ppc.c to ppc_isa.c -- a bus front-
end for isa(4).
o Add a seperate bus frontend for acpi(4) and allow ISA DMA for
it when ISA is configured in the kernel. This allows acpi(4)
attachments in non-ISA configurations, as is possible for ia64.
o Add a seperate bus frontend for pci(4) and detect known single
port parallel cards.
o Merge PC98 specific changes under pc98/cbus into the MI driver.
The changes are minor enough for conditional compilation and
in this form invites better abstraction.
o Have ppc(4) usabled on all platforms, now that ISA specifics
are untangled enough.


157935 21-Apr-2006 nyan

Add minidump.h for pc98.


157933 21-Apr-2006 nyan

MFi386: revision 1.625.


156706 14-Mar-2006 jhb

Don't allow userland to set hardware watch points on kernel memory at all.
Previously, we tried to allow this only for root. However, we were calling
suser() on the *target* process rather than the current process. This
means that if you can ptrace() a process running as root you can set a
hardware watch point in the kernel. In practice I think you probably have
to be root in order to pass the p_candebug() checks in ptrace() to attach
to a process running as root anyway. Rather than fix the suser(), I just
axed the entire idea, as I can't think of any good reason _at all_ for
userland to set hardware watch points for KVM.

MFC after: 3 days
Also thinks hardware watch points on KVM from userland are bad: bde, rwatson


156272 04-Mar-2006 nyan

MFi386: revision 1.1220.


155921 22-Feb-2006 jhb

- Use bus_setup_intr() and bus_teardown_intr() to register device driver
interrupt handlers rather than BUS_SETUP_INTR() and BUS_TEARDOWN_INTR().
Uses of the BUS_*() versions in the implementation of foo_intr methods
in bus drivers were not changed. Mostly this just means that some
drivers might start printing diagnostic messages like [FAST] when
appropriate as well as honoring mpsafenet=0.
- Fix two more of the ppbus drivers' identify routines to function
correctly in the mythical case of a machine with more than one ppbus.


155470 09-Feb-2006 nyan

MFi386: revision 1.622.

> Clear carry flag in get_mcontext so that setcontext does not
> return a bogus error.

MFC after: 3 days


155469 09-Feb-2006 nyan

The asr driver was moved to NOTES for i386. So 'nodevice asr' is not
needed anymore.


155215 02-Feb-2006 nyan

MFi386: Enable the ce(4).


154170 10-Jan-2006 phk

Move the old BSD4.3 tty compatibility from (!BURN_BRIDGES && COMPAT_43)
to COMPAT_43TTY.

Add COMPAT_43TTY to NOTES and */conf/GENERIC

Compile tty_compat.c only under the new option.

Spit out
#warning "Old BSD tty API used, please upgrade."
if ioctl_compat.h gets #included from userland.


154128 09-Jan-2006 imp

By popular demand, move __HAVE_ACPI and __PCI_REROUTE_INTERRUPT into
param.h. Per request, I've placed these just after the
_NO_NAMESPACE_POLLUTION ifndef. I've not renamed anything yet, but
may since we don't need the __.

Submitted by: bde, jhb, scottl, many others.


153955 01-Jan-2006 imp

Define __HAVE_ACPI and/or __PCI_REROUTE_INTERRUPT, as appropriate for
each platform. These will be used in the pci code in preference to
the complicated #ifdefs we have there now.


153731 26-Dec-2005 nyan

MFi386: revision 1.621


153682 23-Dec-2005 nyan

Fix build error.


153666 22-Dec-2005 jhb

Tweak how the MD code calls the fooclock() methods some. Instead of
passing a pointer to an opaque clockframe structure and requiring the
MD code to supply CLKF_FOO() macros to extract needed values out of the
opaque structure, just pass the needed values directly. In practice this
means passing the pair (usermode, pc) to hardclock() and profclock() and
passing the boolean (usermode) to hardclock_cpu() and hardclock_process().
Other details:
- Axe clockframe and CLKF_FOO() macros on all architectures. Basically,
all the archs were taking a trapframe and converting it into a clockframe
one way or another. Now they can just extract the PC and usermode values
directly out of the trapframe and pass it to fooclock().
- Renamed hardclock_process() to hardclock_cpu() as the latter is more
accurate.
- On Alpha, we now run profclock() at hz (profhz == hz) rather than at
the slower stathz.
- On Alpha, for the TurboLaser machines that don't have an 8254
timecounter, call hardclock() directly. This removes an extra
conditional check from every clock interrupt on Alpha on the BSP.
There is probably room for even further pruning here by changing Alpha
to use the simplified timecounter we use on x86 with the lapic timer
since we don't get interrupts from the 8254 on Alpha anyway.
- On x86, clkintr() shouldn't ever be called now unless using_lapic_timer
is false, so add a KASSERT() to that affect and remove a condition
to slightly optimize the non-lapic case.
- Change prototypeof arm_handler_execute() so that it's first arg is a
trapframe pointer rather than a void pointer for clarity.
- Use KCOUNT macro in profclock() to lookup the kernel profiling bucket.

Tested on: alpha, amd64, arm, i386, ia64, sparc64
Reviewed by: bde (mostly)


153643 22-Dec-2005 nyan

Enable the cs and disable the amdsmb and nfsmb on pc98.


153581 20-Dec-2005 imp

Move device 'cs' into i386/pc98 specific NOTES. It is broken on ppc
because it uses i386 specific calls. Maybe it could be added to
amd64, but I'm not so sure it would work there so I've not added it
there.


153506 18-Dec-2005 nyan

Merged from sys/dev/sio/sio.c revision 1.463.


153230 08-Dec-2005 nyan

Switch MACHINE to "pc98" on FreeBSD/pc98.
Add copyright.

Approved by: FreeBSD/pc98 development team.


153167 06-Dec-2005 ru

cpp(1) only understand integer arithmetical expressions, so
_MACHINE == i386 test always succeeds, even on non-i386 (both
sides of expressions become 0). Remove the comment since
_MACHINE and _MACHINE_ARCH are going away.


153165 06-Dec-2005 ru

Fix -Wundef warnings from compiling GENERIC and LINT kernels of
all architectures.


153110 05-Dec-2005 ru

Fix -Wundef warnings found when compiling i386 LINT, GENERIC and
custom kernels.


152952 30-Nov-2005 nyan

MFi386: revision 1.1215 (add savagedrm).


152865 27-Nov-2005 ru

- Allow duplicate "machine" directives with the same arguments.
- Move existing "machine" directives to DEFAULTS.


152753 24-Nov-2005 ru

Add missing "struct" in i386/i386/machdep.c,v 1.497 by deischen@.


152702 22-Nov-2005 jhb

Garbage collect machine/smptests.h now that it is empty and no longer used.


152662 21-Nov-2005 jhb

Don't enable PUC_FASTINTR by default in the source. Instead, enable it
via the DEFAULTS kernel configs. This allows folks to turn it that option
off in the kernel configs if desired without having to hack the source.
This is especially useful since PUC_FASTINTR hangs the kernel boot on my
ultra60 which has two uart(4) devices hung off of a puc(4) device.

I did not enable PUC_FASTINTR by default on powerpc since powerpc does not
currently allow sharing of INTR_FAST with non-INTR_FAST like the other
archs.


152239 09-Nov-2005 nyan

MFi386: Remove obsolete options.


151801 28-Oct-2005 nyan

Move the isa, npx, mem and io devices and the PC98 option from GENERIC
into DEFAULTS.


151690 26-Oct-2005 ru

Catch up with new interrupt handling code.


151634 24-Oct-2005 jhb

Rename the KDB_STOP_NMI kernel option to STOP_NMI and make it apply to all
IPI_STOP IPIs.
- Change the i386 and amd64 MD IPI code to send an NMI if STOP_NMI is
enabled if an attempt is made to send an IPI_STOP IPI. If the kernel
option is enabled, there is also a sysctl to change the behavior at
runtime (debug.stop_cpus_with_nmi which defaults to enabled). This
includes removing stop_cpus_nmi() and making ipi_nmi_selected() a
private function for i386 and amd64.
- Fix ipi_all(), ipi_all_but_self(), and ipi_self() on i386 and amd64 to
properly handle bitmapped IPIs as well as IPI_STOP IPIs when STOP_NMI is
enabled.
- Fix ipi_nmi_handler() to execute the restart function on the first CPU
that is restarted making use of atomic_readandclear() rather than
assuming that the BSP is always included in the set of restarted CPUs.
Also, the NMI handler didn't clear the function pointer meaning that
subsequent stop and restarts could execute the function again.
- Define a new macro HAVE_STOPPEDPCBS on i386 and amd64 to control the use
of stoppedpcbs[] and always enable it for i386 and amd64 instead of
being dependent on KDB_STOP_NMI. It works fine in both the NMI and
non-NMI cases.


151383 16-Oct-2005 phk

Eliminate two unused arguments to ttycreate().


151376 16-Oct-2005 nyan

Reduce diffs from i386/i386/machdep.c


151346 14-Oct-2005 jhb

Merge over the remaining changes from i386 of the ksiginfo_t changes so
that this compiles.

Pointy hat to: davidxu


151337 14-Oct-2005 jhb

Remove the sx(4) driver at the request of the author. The author
originally wrote it for 4.x and hasn't really had the time to fully update
it to 5.x and later. Also, the author doesn't use the hardware anymore as
well. If someone does need this driver they can always resurrect it from
the Attic.

Requested by: Frank Mayhar frank at exit dot com


151316 14-Oct-2005 davidxu

1. Change prototype of trapsignal and sendsig to use ksiginfo_t *, most
changes in MD code are trivial, before this change, trapsignal and
sendsig use discrete parameters, now they uses member fields of
ksiginfo_t structure. For sendsig, this change allows us to pass
POSIX realtime signal value to user code.

2. Remove cpu_thread_siginfo, it is no longer needed because we now always
generate ksiginfo_t data and feed it to libpthread.

3. Add p_sigqueue to proc structure to hold shared signals which were
blocked by all threads in the proc.

4. Add td_sigqueue to thread structure to hold all signals delivered to
thread.

5. i386 and amd64 now return POSIX standard si_code, other arches will
be fixed.

6. In this sigqueue implementation, pending signal set is kept as before,
an extra siginfo list holds additional siginfo_t data for signals.
kernel code uses psignal() still behavior as before, it won't be failed
even under memory pressure, only exception is when deleting a signal,
we should call sigqueue_delete to remove signal from sigqueue but
not SIGDELSET. Current there is no kernel code will deliver a signal
with additional data, so kernel should be as stable as before,
a ksiginfo can carry more information, for example, allow signal to
be delivered but throw away siginfo data if memory is not enough.
SIGKILL and SIGSTOP have fast path in sigqueue_add, because they can
not be caught or masked.
The sigqueue() syscall allows user code to queue a signal to target
process, if resource is unavailable, EAGAIN will be returned as
specification said.
Just before thread exits, signal queue memory will be freed by
sigqueue_flush.
Current, all signals are allowed to be queued, not only realtime signals.

Earlier patch reviewed by: jhb, deischen
Tested on: i386, amd64


151051 07-Oct-2005 glebius

Polling is now configured with help of ifconfig(8), not sysctl.

Prodded by: maxim


150750 30-Sep-2005 nyan

Use 'PC Card'


150615 27-Sep-2005 nyan

Switch from OLDCARD to NEWCARD on pc98.


150555 25-Sep-2005 imp

Remove references to OLDCARD.


150270 18-Sep-2005 csjp

Introduce a kernel config for the Mandatory Access Control framework.
This kernel config briefly describes some of the major MAC policies
available on FreeBSD. The hope is that this will raise the awareness
about MAC and get more people interested.

Discussed with: scottl


150128 14-Sep-2005 nyan

Add some defines for EPSON machines and use them.


150127 14-Sep-2005 nyan

Remove EPSON PC-386 note A/W/AE/WR support.


150079 13-Sep-2005 nyan

Remove unused functions.


150078 13-Sep-2005 nyan

Remove EPSON_NRDISK support.


148235 21-Jul-2005 nyan

MFi386: revision 1.1204.


147991 14-Jul-2005 kensmith

Add recently invented COMPAT_FREEBSD5 option.

MFC after: 3 days


147969 13-Jul-2005 jhb

Fixup some more fallout from the lapic/i8254 changes:
- Make sure timer0_max_count is set to a correct value in the lapic case.
- Revert i8254_restore() to explicitly reprogram timer 0 rather than
calling set_timer_freq() to do it. set_timer_freq() only reprograms
the counter if the max count changes which it never does on resume. This
unbreaks suspend/resume for several people.

Tested by: marks, others
Reviewed by: bde
MFC after: 3 days


147951 13-Jul-2005 nyan

MFi386: revision 1.617.


147783 05-Jul-2005 jhb

Remove a || 1 that crept into the i8254 commit and was subsequently
copied and pasted. I had actually tested without this change in my
trees as had the other testers.

Reported by: bde, Rostislav Krasny rosti dot bsd at gmail dot com
Approved by: re (scottl)
Pointy hat to: jhb


147754 03-Jul-2005 nyan

MFi386: r1.221 (Use a simpler implementation for the i8254 timecounter).

Approved by: re (scottl)


147741 02-Jul-2005 delphij

Remove the CPU_ENABLE_SSE option from the i386 and pc98 architectures,
as they are already default for I686_CPU for almost 3 years, and
CPU_DISABLE_SSE always disables it. On the other hand, CPU_ENABLE_SSE
does not work for I486_CPU and I586_CPU.

This commit has:
- Removed the option from conf/options.*
- Removed the option and comments from MD NOTES files
- Simplified the CPU_ENABLE_SSE ifdef's so they don't
deal with CPU_ENABLE_SSE from kernel configuration. (*)

For most users, this commit should be largely no-op. If you used to
place CPU_ENABLE_SSE into your kernel configuration for some reason,
it is time to remove it.

(*) The ifdef's of CPU_ENABLE_SSE are not removed at this point, since
we need to change it to !defined(CPU_DISABLE_SSE) && defined(I686_CPU),
not just !defined(CPU_DISABLE_SSE), if we really want to do so.

Discussed on: -arch
Approved by: re (scottl)


147701 30-Jun-2005 nyan

MFi386: revision 1.615 (change kernel crashdump format to ELF).

Approved by: re (scottl)


147514 21-Jun-2005 dumbbell

Connect reiserfs build to every platforms, not only i386 and pc98.

Reviewed by: mux (mentor)
Approved by: re (dougb)


147504 20-Jun-2005 obrien

Add .cvsignore files just like in sys/<arch>/compiled, this keeps CVS from
questing kernel config files not in CVS.

Approved by: re(kensmith)


146744 29-May-2005 nyan

Sync with syscons update (Add new member to struct sc_rndr_sw).


146734 29-May-2005 nyan

Remove bus_{mem,p}io.h and related code for a micro-optimization on i386
and amd64. The optimization is a trivial on recent machines.

Reviewed by: -arch (imp, marcel, dfr)


146721 28-May-2005 nyan

Change the spkr_set_pitch() function to a macro to fix low level profiling.


146614 25-May-2005 nyan

MFi386: Add ReiserFS


146582 24-May-2005 damien

Add new ral(4) and ural(4) drivers.

Approved by: silby (mentor)


146216 14-May-2005 nyan

Fix my copyright.


146214 14-May-2005 nyan

- Move bus dependent defines to {isa,cbus}_dmareg.h.
- Use isa/isareg.h rather than <arch>/isa/isa.h.

Tested on: i386, pc98


146211 14-May-2005 nyan

- Move timerreg.h to <arch>/include and split i8253 specific defines into
i8253reg.h, and add some defines to control a speaker.
- Move PPI related defines from i386/isa/spkr.c into ppireg.h and use them.
- Move IO_{PPI,TIMER} defines into ppireg.h and timerreg.h respectively.
- Use isa/isareg.h rather than <arch>/isa/isa.h.

Tested on: i386, pc98


146210 14-May-2005 nyan

MFi386: revision 1.614.


146138 12-May-2005 nyan

Move the pc98 keymap define into pckbdtables.h because it should be used
only on the pckbd driver.


146137 12-May-2005 nyan

- Move the NPX_DEBUG option to options.{i386,pc98} and use opt_npx.h.
- Move npx related defines to {i386,pc98}/include/npx.h to remove #include
{isa,cbus}.h.


146051 10-May-2005 nyan

- Move lptreg.h into pc98/cbus and rename to olptreg.h.
- Remove ifdef pc98.


146049 10-May-2005 nyan

Change a directory layout for pc98.
- Move MD files into <arch>/<arch>.
- Move bus dependent files into <arch>/<bus>.
Rename some files to more suitable names.

Repo-copied by: peter
Discussed with: imp


145743 01-May-2005 nyan

MFi386: revision 1.1198 (add KDB_STOP_NMI option).


145345 20-Apr-2005 marcel

Revert previous commit: The hwpmc(4) driver compiles on all platforms.


145326 20-Apr-2005 nyan

Rename from apm_bioscall.s to apm_bioscall.S for removing a special rule
to build a module. A repo-copy is not done because it has no important logs.

Pointed out by: ru


145307 19-Apr-2005 imp

Move this to the specific architectures that are supported. #ifdef foo
in sys/pmc.h precludes it from working on !i386, !amd64. When that changes,
it can be moved back into conf/NOTES.


145300 19-Apr-2005 imp

There's no need to include all the detauls of struct bus_space_{tag,handle}
in _bus.h when the typedef of the struct pointer will do.


145299 19-Apr-2005 imp

Since pmc is a CPU feature, grab the mdep file from the i386 directory.


145255 19-Apr-2005 imp

Unbreak the pc98 build by including enough information in the _bus.h
for _bus.h to compile.

Pointy hat to: imp
Breakage noted by: nyan-san


145253 18-Apr-2005 imp

Break out the definition of bus_space_{tag,handle}_t and a few other types
into _bus.h to help with name space polution from including all of bus.h.
In a few days, I'll commit changes to the MI code to take advantage of thse
sepration (after I've made sure that these changes don't break anything in
the main tree, I've tested in my trees, but you never know...).

Suggested by: bde (in 2002 or 2003 I think)
Reviewed in principle by: jhb


145183 17-Apr-2005 nyan

MFi386: revision 1.1194 (Update the drm driver).


145181 17-Apr-2005 nyan

Remove unneeded include.


145099 15-Apr-2005 jhb

Really remove the last vestiges of mixed mode from all but amd64.


145070 14-Apr-2005 nyan

MFi386: revision 1.612.


145012 13-Apr-2005 nyan

- Remove ifdef PC98.
- Reduce diffs from i386.


145011 13-Apr-2005 nyan

Remove a meaningless include.


145010 13-Apr-2005 nyan

Move pc98 specific parts to the pc98 specific file.


144853 10-Apr-2005 nyan

Oops, correct typo.


144778 08-Apr-2005 nyan

Fix pc98 includes.


144775 08-Apr-2005 nyan

Remove the wl driver. The devices don't work on pc98.


144637 04-Apr-2005 jhb

Divorce critical sections from spinlocks. Critical sections as denoted by
critical_enter() and critical_exit() are now solely a mechanism for
deferring kernel preemptions. They no longer have any affect on
interrupts. This means that standalone critical sections are now very
cheap as they are simply unlocked integer increments and decrements for the
common case.

Spin mutexes now use a separate KPI implemented in MD code: spinlock_enter()
and spinlock_exit(). This KPI is responsible for providing whatever MD
guarantees are needed to ensure that a thread holding a spin lock won't
be preempted by any other code that will try to lock the same lock. For
now all archs continue to block interrupts in a "spinlock section" as they
did formerly in all critical sections. Note that I've also taken this
opportunity to push a few things into MD code rather than MI. For example,
critical_fork_exit() no longer exists. Instead, MD code ensures that new
threads have the correct state when they are created. Also, we no longer
try to fixup the idlethreads for APs in MI code. Instead, each arch sets
the initial curthread and adjusts the state of the idle thread it borrows
in order to perform the initial context switch.

This change is largely a big NOP, but the cleaner separation it provides
will allow for more efficient alternative locking schemes in other parts
of the kernel (bare critical sections rather than per-CPU spin mutexes
for per-CPU data for example).

Reviewed by: grehan, cognet, arch@, others
Tested on: i386, alpha, sparc64, powerpc, arm, possibly more


144611 03-Apr-2005 imp

Move pc98 specific parts to the pc98 specific file.


144604 03-Apr-2005 imp

With pc98/include, we can have pc98 and i386 specific bus space
implementations in their own files named $MACHINE/include/bus.h. Copy
the contents appropriately.


144513 01-Apr-2005 imp

Add reach-over include files to read i386/foo.h. In time, the pc98
specific code will migrate to these files to augment or replace the
version in i386/include and/or i386/linux. This should, in the
fullness of time, allow many of the #ifdef PC98 in the tree.

# These files are in the public domain because there is insufficient
# creative content in them. When you customize them, please add a
# copyright notice and license.

OK'd in principle by: nyan@


144512 01-Apr-2005 imp

Add i386 to machine lines


144335 30-Mar-2005 nyan

Add commented out ehci entry.


144257 28-Mar-2005 imp

bus is unused, so eliminate it.
Minor style(9) tweaks


144079 24-Mar-2005 jhb

Merge from i386:
- Add a i8254_pending variable to save some indirections in clkintr().
- Don't bother setting up an IRQ0 handler if we are using the lapic timer.


143985 22-Mar-2005 sobomax

Add USB Communication Device Class Ethernet driver. Originally written for
FreeBSD based on aue(4) it was picked by OpenBSD, then from OpenBSD ported
to NetBSD and finally NetBSD version merged with original one goes into
FreeBSD.

Obtained from: http://www.gank.org/freebsd/cdce/
NetBSD
OpenBSD


143866 20-Mar-2005 nyan

s/SLIST/STAILQ/


143809 18-Mar-2005 murray

Add a comment to note that pseudo-device bpf is required for DHCP.
This is mentioned in the Handbook but it is not as obvious to new
users why bpf is needed compared to the other largely self-explanatory
items in GENERIC.

PR: conf/40855
MFC after: 1 week


143717 16-Mar-2005 imp

Define IRQ_NPX for the irq used for the npx. Define macro for a full
reset of of npx, as appropriate for the platform.


143456 12-Mar-2005 nyan

MFi386: revision 1.217.


143356 10-Mar-2005 nyan

Backout revision 1.20. I was a misunderstanding.

Pointed out by: Watanabe Kazuhiro
Pointy hat to: nyan


143324 09-Mar-2005 jhb

- Remove the BURN_BRIDGES marked support for hooking into the ISA timer 0
interrupt.
- Remove the timer_func variable as it now has a static value of
hardclock() and is only used in one place.

Axe borrowed from: phk


143174 06-Mar-2005 nyan

MFi386: revisions 1.609 and 1.610.


143127 04-Mar-2005 nyan

Don't use the ptoa() to set the 'realmem' variable. Because F/pc98's policy
is to keep the same as F/i386.


142956 01-Mar-2005 wes

Attempt to doff the pointy hat: implement 'hw.realmem' on remaining
architectures. Pointed out by O'Brien, ScottL via email.

Reviewed by: obrien (various)


142783 28-Feb-2005 nyan

MFi386: revisions 1.1186 and 1187
- Connect "options MP_WATCHDOG" to the LINT builds.
- Spell "options" correctly as "options ".


142716 27-Feb-2005 phk

Use dynamic major number allocation.


142517 25-Feb-2005 trhodes

Remove recently added note about DEVICE_POLLING not working with SMP.
Remove warning from kern_poll.c to allow DEVICE_POLLING to be built with SMP.

Discussed with: ru, glebius


142379 24-Feb-2005 nyan

Fix to support Buffalo HYPERMEMORY.

Submitted by: Chiharu Shibata
MFC after: 3 days


142280 23-Feb-2005 trhodes

According to kern_poll.c, you cannot use DEVICE_POLLING with SMP. Add a
commen about this in every NOTES file which lists DEVICE_POLLING.

PR: 46793
MFC: 1 day


141678 11-Feb-2005 nyan

Merged from sys/dev/sio/sio.c revision 1.458.


141594 09-Feb-2005 jhb

Fix pc98 compile: merge in changes to use the local APIC timer. Also, add
missing initialization of i8254_intsrc while I am here.


141457 07-Feb-2005 nyan

Remove unused defines.


141441 07-Feb-2005 phk

Add missing isa_dmatc() function.

This may or may not be correct, Only the pcii driver would notice and
it doesn't support PC98 yet.


141389 06-Feb-2005 nyan

Sort includes and remove duplicate include.


141388 06-Feb-2005 nyan

MFi386: revision 1.606.


141378 06-Feb-2005 njl

Finish the job of sorting all includes and fix the build by including
malloc.h before proc.h on sparc64. Noticed by das@

Compiled on: alpha, amd64, i386, pc98, sparc64


141277 04-Feb-2005 nyan

Merged from sys/dev/sio/sio.c revision 1.457.


141276 04-Feb-2005 nyan

MFi386: revision 1.605.


140371 17-Jan-2005 ru

MFi386: fix a comment.


139946 09-Jan-2005 imp

In my last commit, I'd assumed that LINE30 was always defined. It
turns out that LINE30_ROW was always defined, not LINE30. I confused
this for LINE30 and did the unifdef -DLINE30 using that mistaken
belief. This corrects that problem.

Submitted by: nyan-san


139916 08-Jan-2005 imp

LINE30 is always defined now, so unifdef -DLINE30 for clarity.


139915 08-Jan-2005 imp

Merge module.h into 30line.h and remove it. It lacked a
copyright/license header and was only used by 30line.h. It appears
that the copyright/license in 30line.h covers the old contents
module.h anyway, so this simplifies things a little while cleaning up
one obscure potential license confusion...

Revired by: nyan-san


139825 07-Jan-2005 imp

/* -> /*- for license, minor formatting changes


139817 07-Jan-2005 imp

These are no longer relevant. They are scripts for extracting hints
from 4.x kernel config files. User's wishing to upgrade from 4.x to 6
will need to go through 5.x, or grab this script from there. These
scripts will remain in RELENG_5...


139699 05-Jan-2005 kuriyama

o Use tab instead of spaces for puc(4) line.
o Use capitalized "Ethernet" for consistency.


139668 04-Jan-2005 nyan

Remove old wdc driver completely.


139662 04-Jan-2005 imp

Catchup to wd removal


139660 04-Jan-2005 imp

Remove last vestiges of old wd driver. ata works well on pc98 and
there was no objection on the pc98 list when I asked if it could be
removed a while ago.


139573 02-Jan-2005 nyan

MFi386: revision 1.421.


139199 22-Dec-2004 phk

Fix comment.


138755 12-Dec-2004 imp

Separate mse driver into a core driver and a bus attachments. Separate out
the ISA and CBUS (called isa on pc98) attachments. Eliminate all PC98
ifdefs in the process (the driver in pc98/pc98/mse.c was a copy of the one
in i386/isa/mse.c with PC98 ifdefs). Create a module for this driver.

I've tested this my PC-9821RaS40 with moused. I've not tested this on i386
because I have no InPort cards, or similar such things. NEC standardized
on bus mice very early, long before ps/2 mice ports apeared, so all PC-98
machines supported by FreeBSD/pc98 have bus mice, I believe.

Reviewed by: nyan-san


138129 27-Nov-2004 das

Don't include sys/user.h merely for its side-effect of recursively
including other headers.


137912 20-Nov-2004 das

U areas are going away, so don't allocate one for process 0.

Reviewed by: arch@


137784 16-Nov-2004 jhb

Initiate deorbit burn sequence for 80386 support in FreeBSD: Remove
80386 (I386_CPU) support from the kernel.


137526 10-Nov-2004 nyan

MFi386: revision 1.1170


137458 09-Nov-2004 nyan

Add FL_MFM flag to the fd_native_types structure.

Submitted by: Watanabe Kazuhiro <CQG00620@nifty.ne.jp>


137209 04-Nov-2004 nyan

MFi386: revision 1.420 (Reduce annoying SCSI probing delay).


137117 01-Nov-2004 jhb

- Change the ddb paging "support" to use a variable (db_lines_per_page) to
control the number of lines per page rather than a constant. The variable
can be examined and changed in ddb as '$lines'. Setting the variable to
0 will effectively turn off paging.
- Change db_putchar() to force out pending whitespace before outputting
newlines and carriage returns so that one can rub out content on the
current line via '\r \r' type strings.
- Change the simple pager to rub out the --More-- prompt explicitly when
the routine exits.
- Add some aliases to the simple pager to make it more compatible with
more(1): 'e' and 'j' do a single line. 'd' does half a page, and
'f' does a full page.

MFC after: 1 month
Inspired by: kris


137069 30-Oct-2004 nyan

MFi386: revision 1.599 (Preserve dcons(4) buffer passed by loader(8).)


137049 29-Oct-2004 phk

Don't set si_bsize_phys.

Use bioq_takefirst()


136888 24-Oct-2004 nyan

Disable ed1 - ed12.


136810 23-Oct-2004 phk

use bioq_takefirst()


136765 22-Oct-2004 phk

Use bioq_takefirst()


136550 15-Oct-2004 nyan

Merged from sys/dev/sio/sio.c (Use generic tty code).


136534 15-Oct-2004 njl

Remove unused variable.


136520 14-Oct-2004 njl

Remove local hacks to set flags now that the device probe does this for us.
Tested on every device except sio_pci and the pc98 fd.c. Perhaps something
similar should be done for the "disabled" hints also.

MFC after: 2 weeks


136478 13-Oct-2004 phk

Use generic tty code instead of local stuff.

NB: device names are now consistent: {cua,tty}d$(port)[.lock,.init]


136029 01-Oct-2004 nyan

Add more PnP serial cards support.

PR: kern/72226
Submitted by: Hirokazu WATANABE <wnabe@par.odn.ne.jp>


135517 20-Sep-2004 nyan

Merged from sys/dev/sio/sio.c: more tty related changes.


135374 17-Sep-2004 phk

Use tty->t_sc, ttyalloc() and lock/init termios from struct tty.


135373 17-Sep-2004 phk

Include <sys/malloc.h> to satisfy new isa_dma stuff.


135262 15-Sep-2004 phk

Add new a function isa_dma_init() which returns an errno when it fails
and which takes a M_WAITOK/M_NOWAIT flag argument.

Add compatibility isa_dmainit() macro which whines loudly if
isa_dma_init() fails.

Problem uncovered by: tegge


135048 10-Sep-2004 wpaul

Add device driver support for the VIA Networking Technologies
VT6122 gigabit ethernet chip and integrated 10/100/1000 copper PHY.
The vge driver has been added to GENERIC for i386, pc98 and amd64,
but not to sparc or ia64 since I don't have the ability to test
it there. The vge(4) driver supports VLANs, checksum offload and
jumbo frames.

Also added the lge(4) and nge(4) drivers to GENERIC for i386 and
pc98 since I was in the neighborhood. There's no reason to leave them
out anymore.


134917 07-Sep-2004 scottl

Switch the default scheduler to 4BSD to match what will go into RELENG_5 soon.
It can be switched back once 5.3 is tested and released. Also turn on
PREEMPTION as many of the stability problems with it have been fixed.

MT5: 3 days.


134791 05-Sep-2004 julian

Refactor a bunch of scheduler code to give basically the same behaviour
but with slightly cleaned up interfaces.

The KSE structure has become the same as the "per thread scheduler
private data" structure. In order to not make the diffs too great
one is #defined as the other at this time.

The KSE (or td_sched) structure is now allocated per thread and has no
allocation code of its own.

Concurrency for a KSEGRP is now kept track of via a simple pair of counters
rather than using KSE structures as tokens.

Since the KSE structure is different in each scheduler, kern_switch.c
is now included at the end of each scheduler. Nothing outside the
scheduler knows the contents of the KSE (aka td_sched) structure.

The fields in the ksegrp structure that are to do with the scheduler's
queueing mechanisms are now moved to the kg_sched structure.
(per ksegrp scheduler private data structure). In other words how the
scheduler queues and keeps track of threads is no-one's business except
the scheduler's. This should allow people to write experimental
schedulers with completely different internal structuring.

A scheduler call sched_set_concurrency(kg, N) has been added that
notifies teh scheduler that no more than N threads from that ksegrp
should be allowed to be on concurrently scheduled. This is also
used to enforce 'fainess' at this time so that a ksegrp with
10000 threads can not swamp a the run queue and force out a process
with 1 thread, since the current code will not set the concurrency above
NCPU, and both schedulers will not allow more than that many
onto the system run queue at a time. Each scheduler should eventualy develop
their own methods to do this now that they are effectively separated.

Rejig libthr's kernel interface to follow the same code paths as
linkse for scope system threads. This has slightly hurt libthr's performance
but I will work to recover as much of it as I can.

Thread exit code has been cleaned up greatly.
exit and exec code now transitions a process back to
'standard non-threaded mode' before taking the next step.
Reviewed by: scottl, peter
MFC after: 1 week


134634 02-Sep-2004 ru

MFi386: revision 1.1172.


134542 30-Aug-2004 peter

Kill count device support from config. I've changed the last few
remaining consumers to have the count passed as an option. This is
i4b, pc98/wdc, and coda.

Bump configvers.h from 500013 to 600000.

Remove heuristics that tried to parse "device ed5" as 5 units of the ed
device. This broke things like the snd_emu10k1 device, which required
quotes to make it parse right. The no-longer-needed quotes have been
removed from NOTES, GENERIC etc. eg, I've removed the quotes from:
device snd_maestro
device "snd_maestro3"
device snd_mss

I believe everything will still compile and work after this.


134479 29-Aug-2004 des

Remove the HW_WDOG option; it serves no purpose.

MFC after: 3 days


134383 27-Aug-2004 andre

Always compile PFIL_HOOKS into the kernel and remove the associated kernel
compile option. All FreeBSD packet filters now use the PFIL_HOOKS API and
thus it becomes a standard part of the network stack.

If no hooks are connected the entire packet filter hooks section and related
activities are jumped over. This removes any performance impact if no hooks
are active.

Both OpenBSD and DragonFlyBSD have integrated PFIL_HOOKS permanently as well.


134163 22-Aug-2004 nyan

Merged from sys/dev/fdc/fdc.c revision 1.283.


133169 05-Aug-2004 nyan

MFi386: revision 1.597.


133167 05-Aug-2004 nyan

MFi386: revision 1.410.


133087 03-Aug-2004 markm

Making a loadable null.ko for /dev/(null|zero) proved rather
unpopular, so remove this (mis)feature.

Encouragement provided by: jhb (and others)


132960 01-Aug-2004 nyan

MFi386: revision 1.1167


132956 01-Aug-2004 markm

Break out the MI part of the /dev/[k]mem and /dev/io drivers into
their own directory and module, leaving the MD parts in the MD
area (the MD parts _are_ part of the modules). /dev/mem and /dev/io
are now loadable modules, thus taking us one step further towards
a kernel created entirely out of modules. Of course, there is nothing
preventing the kernel from having these statically compiled.


132599 24-Jul-2004 nyan

Merged from sys/dev/sio/sio.c revision 1.450.


132395 19-Jul-2004 nyan

MFi386: revision 1.596.


132345 18-Jul-2004 maxim

In -CURRENT pseudo devices are not statically assigned at compile time,
remove a stale comment.

PR: kern/62285


132287 17-Jul-2004 nyan

Rename the sound device drivers.


132286 17-Jul-2004 nyan

Merged from the following changes.
- sys/dev/fdc/fdc.c revision 1.281
- sys/dev/fdc/fdcvar.h revision 1.3
- sys/dev/fdc/fdc_isa.c revision 1.7


132226 15-Jul-2004 phk

Preparation commit for the tty cleanups that will follow in the near
future:

rename ttyopen() -> tty_open() and ttyclose() -> tty_close().

We need the ttyopen() and ttyclose() for the new generic cdevsw
functions for tty devices in order to have consistent naming.


132210 15-Jul-2004 nyan

Move the fdc_alloc_resources function into the bus front end.


132155 14-Jul-2004 des

Unbreak LINT: device card no longer takes a count.


132109 13-Jul-2004 imp

oldcard's card device no longer requires a count


132103 13-Jul-2004 nyan

Merged from recent fdc driver changes.
Make a separate function to check FDD type.


132101 13-Jul-2004 nyan

MFi386: revision 1.213.
Fix miss merging in previous change.


132088 13-Jul-2004 davidxu

Add ptrace_clear_single_step(), alpha already has it for years, the function
will be used by ptrace to clear a thread's single step state.


131981 11-Jul-2004 phk

Introduce ttygone() which indicates that the hardware is detached.

Move dtrwait logic to the generic TTY level.


131977 11-Jul-2004 nyan

MFi386: revision 1.212.


131976 11-Jul-2004 nyan

MFi386: revision 1.406


131947 10-Jul-2004 marcel

MFi386: Update for the KDB framework:
o Implement makectx().
o Call kdb_enter() instead of Debugger().
o Remove implementation of Debugger().


131939 10-Jul-2004 marcel

Update for the KDB framework. Sanitize the alpha console code now that
it's in the way even more. Basicly: remove all alpha specific console
support from gfb(4), sio(4) and syscons(4). Rewrite the alpha console
initialization to be identical to all other platforms. In a nutshell:
call cninit().
The platform specific code now only sets or clears RB_SERIAL and thus
automaticly causes the right console to be selected.

sio.c:
o Replace the remote GDB hacks and use the GDB debug port interface
instead.
o Make debugging code conditional upon KDB instead of DDB.
o Call kdb_alt_break() instead of db_alt_break().
o Call kdb_enter() instead of breakpoint().
o Remove the ugly compatibility of using the console as the debug
port.


131819 08-Jul-2004 nyan

- Merged from sys/dev/fdc/fdc.c revision 1.275.
- Break out the cbus front end from fd.c.
- Remove the pccard support because it was broken.


131817 08-Jul-2004 nyan

MFi386: revision 1.16.


131816 08-Jul-2004 nyan

Remove obsolete defines.


131815 08-Jul-2004 nyan

MFi386: revision 1.1164.


131404 01-Jul-2004 nyan

MFi386: revision 1.1163


131403 01-Jul-2004 nyan

Merged from sys/dev/sio/sio.c revision 1.446.


131242 28-Jun-2004 jhb

- Shorten the names for the TTY related swi interrupt handlers as the
'tty:' prefix is largely redundant.
- Fix the priority of the low-priority TTY SWIs that are hung off of the
softclock thread.

Submitted by: bde (2)


131237 28-Jun-2004 nyan

Merged from sys/dev/sio/sio.c revision 1.444.


131134 26-Jun-2004 phk

Pick the hotchar out of the tty structure instead of caching private
copies.

No current line disciplines have a dynamically changing hotchar, and
expecting to receive anything sensible during a change in ldisc is
insane so no locking of the hotchar field is necessary.


131125 26-Jun-2004 nyan

Merged from sys/dev/sio/sio.c revision 1.442.
(Use generic support for modemcontrol and BREAK ioctls.)


130938 22-Jun-2004 phk

Remove the TIOCDCDTIMESTAMP option.

The RFC-2783 PPS-API (<sys/timepps.h>) provides better and more
configurable service.


130924 22-Jun-2004 nyan

Merged from sys/dev/sio/sio.c revisions 1.439 and 1.440.


130923 22-Jun-2004 nyan

MFi386: revision 1.592.


130596 16-Jun-2004 nyan

MFi386: revision 1.1161


130585 16-Jun-2004 phk

Do the dreaded s/dev_t/struct cdev */
Bump __FreeBSD_version accordingly.


130431 13-Jun-2004 imp

Include vm/vm_param.h to pull in KERNBASE now. This should fix the
pc98 tinderbox breakage.


130344 11-Jun-2004 phk

Deorbit COMPAT_SUNOS.

We inherited this from the sparc32 port of BSD4.4-Lite1. We have neither
a sparc32 port nor a SunOS4.x compatibility desire these days.


130312 10-Jun-2004 jhb

Remove atdevbase and replace it's remaining uses with direct references to
KERNBASE instead.


130174 07-Jun-2004 phk

Add missing <sys/module.h> includes.


130096 04-Jun-2004 phk

Centralize the line discipline optimization determination in a function
called ttyldoptim().

Use this function from all the relevant drivers.

I belive no drivers finger linesw[] directly anymore, paving the way for
locking and refcounting.


130095 04-Jun-2004 phk

Manual edits to change linesw[]-frobbing to ttyld_*() calls.


130077 04-Jun-2004 phk

Machine generated patch which changes linedisc calls from accessing
linesw[] directly to using the ttyld...() functions

The ttyld...() functions ar inline so there is no performance hit.


130070 04-Jun-2004 phk

Add missing <sys/module.h> #includes


130057 04-Jun-2004 phk

Make the remaining serial drivers call ttyioctl() rather than calling
the linedisc directly.


130026 03-Jun-2004 phk

Add missing <sys/module.h> includes currently relying on nested include
in <sys/kernel.h>


129939 01-Jun-2004 phk

There is no need to explicitly call the stop function. In all likelyhood
->l_close() did it and ttyclose certainly will.


129937 01-Jun-2004 phk

There is no need to explicitly call ttwakeup() and ttwwakeup() after
ttyclose() has been called. It's already been done once by ttyclose,
and probably once by the line-discipline too.


129934 01-Jun-2004 phk

ttyclose() increments t_gen. Remove redundant increments in drivers.


129871 30-May-2004 nyan

Merged from sys/dev/fdc/fdc.c revision 1.272.


129384 18-May-2004 nyan

MFi386: revision 1.1160.


129001 06-May-2004 nyan

Mereged from sys/dev/sio/sio.c revision 1.429.


128876 03-May-2004 bde

Oops, switch to using the moved cy driver for pc98 too (remove pointers
to old files in files.pc98 and "count" parameter in NOTES).


128845 02-May-2004 marcel

Add option GEOM_GPT. This brings the ability to have a large number of
partitions on a single disk.


128838 02-May-2004 obrien

Spell Ethernet correctly.


128796 01-May-2004 nyan

- Remove obsolete examples.
- Add a comment about meaning of flags.
- Disable unused defines.


128795 01-May-2004 nyan

Merged from sys/dev/sio/sio.c revision 1.428.


128739 29-Apr-2004 nyan

Add the commented out rue(4) entry.


128640 25-Apr-2004 nyan

Merged from sys/isa/fd.c revision 1.270.


128221 14-Apr-2004 imp

sx was randomly added to NOTES. Instead, place it in the misc
hardware in properly sorted order. Fix a little disorder while I'm
here.

Submitted by: bde


128191 13-Apr-2004 nyan

Enable the sx driver on i386 and pc98.


127981 07-Apr-2004 imp

The bs driver was replaced with the ct(pc98) driver. takahashi-san
(nyan) says this driver is now obsolete and can be removed.


127977 07-Apr-2004 imp

Remove advertising clause from University of California Regent's
license, per letter dated July 22, 1999 and email from Peter Wemm,
Alan Cox and Robert Watson.

Approved by: core, peter, alc, rwatson


127945 06-Apr-2004 nyan

MFi386: Enable the cy driver.


127824 04-Apr-2004 nyan

Backout revision 1.31. The twa entries were moved to i386/conf/NOTES.


127712 01-Apr-2004 nyan

The twa device and related options are not needed.


127567 29-Mar-2004 nyan

Add a comment about time stamper.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


127521 28-Mar-2004 nyan

- Fix PC98 supports after importing auto selection. [1]
- Fix 1.44MB floppy drive probe sequence. [2]

Submitted by: Watanabe Kazuhiro <CQG00620@nifty.ne.jp> [1]
chi@bd.mbn.or.jp (Chiharu Shibata) [2]


127520 28-Mar-2004 nyan

MFi386: revision 1.1136.


127519 28-Mar-2004 nyan

MFi386: revision 1.586.


127135 17-Mar-2004 njl

Convert callers to the new bus_alloc_resource_any(9) API.

Submitted by: Mark Santcroos <marks@ripe.net>
Reviewed by: imp, dfr, bde


127070 16-Mar-2004 nyan

Don't use the pcic polling.


127017 15-Mar-2004 imp

Temporarily comment out cy.
Remove COMPAT_OLDISA


127016 15-Mar-2004 imp

including isa_device.h was historical in this file, remove it


127002 15-Mar-2004 obrien

Shorten a long comment.


126995 14-Mar-2004 imp

comment out bs and wd entries in the hints


126971 14-Mar-2004 nyan

MFi386: Remove the stl and stli drivers.


126719 07-Mar-2004 nyan

Restore CDIOCREADAUDIO ioctl.

Pointed out by: KIYOHARA Takashi <kiyohara@kk.iij4u.or.jp>


126713 07-Mar-2004 nyan

Remove '#include <machine/bus_pio.h>'. This is meaningless.


126712 07-Mar-2004 nyan

Remove unneeded devices.


126708 07-Mar-2004 nyan

MFi386: revisions from 1.1127 to 1.1131.


126707 07-Mar-2004 nyan

Add the agp, bfe, sk and ti devices. (the agp is disabled by default).
Remove obsolete compat_atdisk device.


126400 29-Feb-2004 phk

Remove unused FDNUMTOUNIT() macro


126289 26-Feb-2004 nyan

Merged from sys/isa/fd.c revision 1.266.


126080 21-Feb-2004 phk

Device megapatch 4/6:

Introduce d_version field in struct cdevsw, this must always be
initialized to D_VERSION.

Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing
four D_NOGIANT flags and adding 145 D_NEEDGIANT flags.


126078 21-Feb-2004 phk

Device megapatch 3/6:

Add missing D_TTY flags to various drivers.

Complete asserts that dev_t's passed to ttyread(), ttywrite(),
ttypoll() and ttykqwrite() have (d_flags & D_TTY) and a struct tty
pointer.

Make ttyread(), ttywrite(), ttypoll() and ttykqwrite() the default
cdevsw methods for D_TTY drivers and remove the explicit initializations
in various drivers cdevsw structures.


126076 21-Feb-2004 phk

Device megapatch 1/6:

Free approx 86 major numbers with a mostly automatically generated patch.

A number of strategic drivers have been left behind by caution, and a few
because they still (ab)use their major number.


125975 18-Feb-2004 phk

Change the disk(9) API in order to make device removal more robust.

Previously the "struct disk" were owned by the device driver and this
gave us problems when the device disappared and the users of that device
were not immediately disappearing.

Now the struct disk is allocate with a new call, disk_alloc() and owned
by geom_disk and just abandonned by the device driver when disk_create()
is called.

Unfortunately, this results in a ton of "s/\./->/" changes to device
drivers.

Since I'm doing the sweep anyway, a couple of other API improvements
have been carried out at the same time:

The Giant awareness flag has been flipped from DISKFLAG_NOGIANT to
DISKFLAG_NEEDSGIANT

A version number have been added to disk_create() so that we can detect,
report and ignore binary drivers with old ABI in the future.

Manual page update to follow shortly.


125235 30-Jan-2004 nyan

MFi386: revision 1.397 (cosmetic changes)


125234 30-Jan-2004 nyan

MFi386: revision 1.1122 (typos and cosmetic changes)


125086 27-Jan-2004 nyan

The ataraid device is not needed for pc98.


124935 24-Jan-2004 jeff

- Recruit some new ULE users by making it the default scheduler in GENERIC.
ULE will be in a probationary period to determine whether it will be left
as the default in 5.3 which would likely mean the rest of the 5.x series.


124919 24-Jan-2004 nectar

Add PFIL_HOOKS to the GENERIC kernel configuration, primarily so
that one can load the IPFilter module (which requires PFIL_HOOKS).

Requested by: Many, for over a year


124795 21-Jan-2004 nyan

MFi386: revisions from 1.1116 to 1.1119.
Remove NEWCARD related devices.


124791 21-Jan-2004 nyan

Merged from sys/dev/sio/sio.c revision 1.418.


124408 12-Jan-2004 nyan

MFi386: revision 1.1114.


124370 11-Jan-2004 nyan

MFi386: revision 1.583.


124181 06-Jan-2004 jhb

Remove the AUTO_EOI_2 option for PC-98 as it has never done anything anyway
and was even commented out in NOTES.


124092 03-Jan-2004 davidxu

Make sigaltstack as per-threaded, because per-process sigaltstack state
is useless for threaded programs, multiple threads can not share same
stack.
The alternative signal stack is private for thread, no lock is needed,
the orignal P_ALTSTACK is now moved into td_pflags and renamed to
TDP_ALTSTACK.
For single thread or Linux clone() based threaded program, there is no
semantic changed, because those programs only have one kernel thread
in every process.

Reviewed by: deischen, dfr


123984 30-Dec-2003 bde

Garbage-collected CLK_USE_TSC_CALIBRATION.

i386/conf/NOTES, pc98/conf/NOTES:
Fixed the descriptions of the other CLK_* options.


123934 28-Dec-2003 nyan

Add detach method.


123847 26-Dec-2003 bde

Merged from sys/dev/sio/sio.c revision 1.417.


123208 07-Dec-2003 imp

The dgb driver is redundant with the digi driver in the tree. It uses
lots of old interfaces, and digi now supports all cards that dgb
supported. The author of the driver says that this is no longer
necessary.

Approved by: babkin@


123137 03-Dec-2003 imp

There is no such thing as a pc98 machine with ISA expansion slots, nor
is there a C-BUS Cronyx Sigma board. Remove it from pc98 files and lint.

Approved by: re <scottl>


122872 17-Nov-2003 bde

Merged from sys/dev/sio/sio.c revisions 1.415 and 1.416.

Approved by: nyan
(Blanket approval for simple changes in sio.)


122756 15-Nov-2003 nyan

opt_apic.h is not needed.


122755 15-Nov-2003 nyan

MFi386: revisions from 1.1102 to 1.1105.


122364 09-Nov-2003 marcel

Change the clear_ret argument of get_mcontext() to be a flags argument.
Since all callers either passed 0 or 1 for clear_ret, define bit 0 in
the flags for use as clear_ret. Reserve bits 1, 2 and 3 for use by MI
code for possible (but unlikely) future use. The remaining bits are for
use by MD code.

This change is triggered by a need on ia64 to have another knob for
get_mcontext().


122352 09-Nov-2003 tanimura

- Implement selwakeuppri() which allows raising the priority of a
thread being waken up. The thread waken up can run at a priority as
high as after tsleep().

- Replace selwakeup()s with selwakeuppri()s and pass appropriate
priorities.

- Add cv_broadcastpri() which raises the priority of the broadcast
threads. Used by selwakeuppri() if collision occurs.

Not objected in: -arch, -current


122127 05-Nov-2003 nyan

Include machine/asmacros.h instead of machine/asm.h.

Submitted by: bde


122119 05-Nov-2003 bde

Removed reference to the garbage (and soon to be deleted) option
DPT_ALLOW_MEMIO.


122056 04-Nov-2003 nyan

'options APIC_IO' is replaced by 'device apic'.


122055 04-Nov-2003 nyan

'options APIC_IO' is replaced by 'device apic'.


122053 04-Nov-2003 nyan

MFi386: revision 1.206


122052 04-Nov-2003 nyan

MFi386: revision 1.580


122048 04-Nov-2003 nyan

Split pc98 support into pc98/pc98/nmi.c.


121804 31-Oct-2003 nyan

MFi386: revision 1.579.


121801 31-Oct-2003 nyan

Merged from sys/isa/syscons_isa.c revision 1.24.


121800 31-Oct-2003 nyan

MFi386: revision 1.578.


121243 19-Oct-2003 nyan

MFi386: revision 1.577.


121215 18-Oct-2003 phk

Eliminate use bio_blkno.


121213 18-Oct-2003 phk

Discontinue bio_blkno usage.


121000 11-Oct-2003 nyan

MFi386: revision 1.576.


120809 05-Oct-2003 nyan

Merged from sys/dev/sio/sio.c revisions from 1.405 to 1.414.


120800 05-Oct-2003 nyan

MFi386: revisions 1.572, 1.573 and 1.574.


120799 05-Oct-2003 nyan

MFi386: revision 1.205


120491 26-Sep-2003 phk

OK, I messed up /dev/console with what I had hoped would be compat
code. Convert remaining console drivers and hope for the best.


120472 26-Sep-2003 phk

Typo in last commit: missing ')'


120465 26-Sep-2003 phk

Change fb_attach() and fb_detach() to take a integer unit number rather
than a dev_t.

All of the dev_t's passed were bogusly created with makedev()


120375 23-Sep-2003 nyan

Implement the bus_space_map() function to allocate resources and initialize
a bus_handle, but currently it does only initializing a bus_handle.


120194 18-Sep-2003 nyan

Merged from sys/isa/fd.c revisions 1.259 and 1.260.


120025 13-Sep-2003 nyan

Merged from sys/isa/fd.c revision 1.258.


119988 11-Sep-2003 nyan

MFi386 revisions 1.570 and 1.571.


119987 11-Sep-2003 nyan

MFi386: revision 1.204.


119985 11-Sep-2003 nyan

MFi386: revision 1.1093.


119984 11-Sep-2003 nyan

Merged from sys/isa/fd.c revisions 1.252, 1.253, 1.254, 1.255 and 1.257.


119960 10-Sep-2003 obrien

Sort 'bge' correctly.


119868 08-Sep-2003 wpaul

Take the support for the 8139C+/8169/8169S/8110S chips out of the
rl(4) driver and put it in a new re(4) driver. The re(4) driver shares
the if_rlreg.h file with rl(4) but is a separate module. (Ultimately
I may change this. For now, it's convenient.)

rl(4) has been modified so that it will never attach to an 8139C+
chip, leaving it to re(4) instead. Only re(4) has the PCI IDs to
match the 8169/8169S/8110S gigE chips. if_re.c contains the same
basic code that was originally bolted onto if_rl.c, with the
following updates:

- Added support for jumbo frames. Currently, there seems to be
a limit of approximately 6200 bytes for jumbo frames on transmit.
(This was determined via experimentation.) The 8169S/8110S chips
apparently are limited to 7.5K frames on transmit. This may require
some more work, though the framework to handle jumbo frames on RX
is in place: the re_rxeof() routine will gather up frames than span
multiple 2K clusters into a single mbuf list.

- Fixed bug in re_txeof(): if we reap some of the TX buffers,
but there are still some pending, re-arm the timer before exiting
re_txeof() so that another timeout interrupt will be generated, just
in case re_start() doesn't do it for us.

- Handle the 'link state changed' interrupt

- Fix a detach bug. If re(4) is loaded as a module, and you do
tcpdump -i re0, then you do 'kldunload if_re,' the system will
panic after a few seconds. This happens because ether_ifdetach()
ends up calling the BPF detach code, which notices the interface
is in promiscuous mode and tries to switch promisc mode off while
detaching the BPF listner. This ultimately results in a call
to re_ioctl() (due to SIOCSIFFLAGS), which in turn calls re_init()
to handle the IFF_PROMISC flag change. Unfortunately, calling re_init()
here turns the chip back on and restarts the 1-second timeout loop
that drives re_tick(). By the time the timeout fires, if_re.ko
has been unloaded, which results in a call to invalid code and
blows up the system.

To fix this, I cleared the IFF_UP flag before calling ether_ifdetach(),
which stops the ioctl routine from trying to reset the chip.

- Modified comments in re_rxeof() relating to the difference in
RX descriptor status bit layout between the 8139C+ and the gigE
chips. The layout is different because the frame length field
was expanded from 12 bits to 13, and they got rid of one of the
status bits to make room.

- Add diagnostic code (re_diag()) to test for the case where a user
has installed a broken 32-bit 8169 PCI NIC in a 64-bit slot. Some
NICs have the REQ64# and ACK64# lines connected even though the
board is 32-bit only (in this case, they should be pulled high).
This fools the chip into doing 64-bit DMA transfers even though
there is no 64-bit data path. To detect this, re_diag() puts the
chip into digital loopback mode and sets the receiver to promiscuous
mode, then initiates a single 64-byte packet transmission. The
frame is echoed back to the host, and if the frame contents are
intact, we know DMA is working correctly, otherwise we complain
loudly on the console and abort the device attach. (At the moment,
I don't know of any way to work around the problem other than
physically modifying the board, so until/unless I can think of a
software workaround, this will have do to.)

- Created re(4) man page

- Modified rlphy.c to allow re(4) to attach as well as rl(4).

Note that this code works for the sample 8169/Marvell 88E1000 NIC
that I have, but probably won't work for the 8169S/8110S chips.
RealTek has sent me some sample NICs, but they haven't arrived yet.
I will probably need to add an rlgphy driver to handle the on-board
PHY in the 8169S/8110S (it needs special DSP initialization).


119525 28-Aug-2003 nyan

Merged from sys/dev/sio/sio.c revisions 1.403 and 1.404.


119444 25-Aug-2003 nyan

Switch to dev/syscons/syscons.c.


119353 23-Aug-2003 nyan

MFi386: revisions 1.202 and 1.203.


118991 16-Aug-2003 imp

bandaide to make this build again


118948 15-Aug-2003 phk

As warned: Initiate deorbit burn for the pcaudio driver.


118650 08-Aug-2003 nyan

MFi386: revision 1.201.


118353 02-Aug-2003 nyan

Merged from sys/dev/sio/sio.c revision 1.400.


118349 02-Aug-2003 nyan

Merged from sys/dev/ppc/ppc.c revision 1.42.


118235 31-Jul-2003 peter

Cosmetic: fix disorder of opt_kstack_pages.h include.


117918 23-Jul-2003 nyan

MFi386: revision 1.1090.


117870 22-Jul-2003 peter

Initiate de-orbit burn for fpu-less operation. 386+387 is still
theoretically supportable, but you'd really be happier with FreeBSD 2.1.8
on it.


117832 21-Jul-2003 nyan

Supported the gdc_clear function.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


117600 15-Jul-2003 davidxu

Rename thread_siginfo to cpu_thread_siginfo.

Suggested by: jhb


117510 13-Jul-2003 nyan

Fixed mouse cursor support.

Submitted by: KIYOHARA Takashi <kiyohara@kk.iij4u.or.jp>


117167 02-Jul-2003 jhb

- Use the new resource_disabled() helper function to see if devices are
disabled.
- Change the apm driver to match the acpi driver's behavior by checking to
see if the device is disabled in the identify routine instead of in the
probe routine. This way if the device is disabled it is never created.

Note that a few places (ips(4), Alpha SMP) used "disable" instead of
"disabled" for their hint names, and these hints must be changed to
"disabled". If this is a big problem, resource_disabled() can always be
changed to honor both names.


116979 28-Jun-2003 nyan

MFi386: revision 1.566.


116958 28-Jun-2003 davidxu

Add a machine depended function thread_siginfo, SA signal code
will use the function to construct a siginfo structure and use
the result to export to userland.

Reviewed by: julian


116431 16-Jun-2003 phk

Replace evil abuse of geteblk() with malloc(9).


116382 15-Jun-2003 nyan

Disable unneeded devices and options.


116235 12-Jun-2003 imp

pc98 doesn't need COMPAT_OLDISA for any devices in the kernel.
However, GENERIC has wdc commented out, and COMPAT_OLDISA is required
for that. Comment out COMPAT_OLDISA and sdd a comment to this effect
near wdc.

Reviewed by: nyan@


115999 08-Jun-2003 jmallett

Note that scbus is required for SCSI, not just "required" in general.

Submitted by: Edward Kaplan (tmbg37 on IRC)
Reviewed by: rwatson (in principle)


115943 07-Jun-2003 nyan

Fixed compile error.


115599 01-Jun-2003 nyan

MFi386: revision 1.199


115598 01-Jun-2003 nyan

Merged from sys/isa/ppc.c revision 1.40.


115597 01-Jun-2003 nyan

Merged from sys/isa/fd.c revision 1.250.


115596 01-Jun-2003 nyan

Merged from sys/dev/sio/sio.c revision 1.399.


115469 31-May-2003 phk

Eliminate potential overflows by allocating softc dynamically,
removing at the same time the need for this to be a "count" config
option.

Found by: FlexeLint


115010 15-May-2003 jmallett

Clear up that COMPAT_43 may not do the same thing on every architecture
and clear up that COMPAT_SUNOS is similarly MI, and does something
relatively similar.

Approved by: re/rwatson


115001 14-May-2003 jhb

Fix a typo that broke the pc98 kernel build.

Reported by: des@'s tinderbox
Pointy hat to: jhb
Approved by: re (blanket/scottl)


114983 13-May-2003 jhb

- Merge struct procsig with struct sigacts.
- Move struct sigacts out of the u-area and malloc() it using the
M_SUBPROC malloc bucket.
- Add a small sigacts_*() API for managing sigacts structures: sigacts_alloc(),
sigacts_free(), sigacts_copy(), sigacts_share(), and sigacts_shared().
- Remove the p_sigignore, p_sigacts, and p_sigcatch macros.
- Add a mutex to struct sigacts that protects all the members of the struct.
- Add sigacts locking.
- Remove Giant from nosys(), kill(), killpg(), and kern_sigaction() now
that sigacts is locked.
- Several in-kernel functions such as psignal(), tdsignal(), trapsignal(),
and thread_stopped() are now MP safe.

Reviewed by: arch@
Approved by: re (rwatson)


114216 29-Apr-2003 kan

Deprecate machine/limits.h in favor of new sys/limits.h.
Change all in-tree consumers to include <sys/limits.h>

Discussed on: standards@
Partially submitted by: Craig Rodrigues <rodrigc@attbi.com>


114192 29-Apr-2003 nyan

MFi386: revision 1.1086.


113998 25-Apr-2003 deischen

Add an argument to get_mcontext() which specified whether the
syscall return values should be cleared. The system calls
getcontext() and swapcontext() want to return 0 on success
but these contexts can be switched to at a later time so
the return values need to be cleared in the saved register
sets. Other callers of get_mcontext() would normally want
the context without clearing the return values.

Remove the i386-specific context saving from the KSE code.
get_mcontext() is not i386-specific any more.

Fix a bad pointer in the alpha get_mcontext() code. The
context was being bcopy()'d from &td->tf_frame, but tf_frame
is itself a pointer, so the thread was being copied instead.
Spotted by jake.

Glanced at by: jake
Reviewed by: bde (months ago)


113995 25-Apr-2003 anholt

Update the DRM to the latest from DRI CVS. Includes some bugfixes and removal
of the infrastructure for the gamma driver which was removed a while back.
The DRM_LINUX option is removed because the handler is now provided by the
linux compat code itself.


113852 22-Apr-2003 nyan

Comment out firewire devices.


113803 21-Apr-2003 simokawa

Add FireWire drivers to GENERIC.


113757 20-Apr-2003 wpaul

Add device driver support for the ASIX Electronics AX88172 USB 2.0
ethernet controller. The driver has been tested with the LinkSys
USB200M adapter. I know for a fact that there are other devices out
there with this chip but don't have all the USB vendor/device IDs.

Note: I'm not sure if this will force the driver to end up in the
install kernel image or not. Special magic needs to be done to exclude
it to keep the boot floppies from bloating again, someone please
advise.


113682 18-Apr-2003 jhb

Hold the proc lock for curproc around sigonstack().


113581 16-Apr-2003 phk

Don't include <sys/disklabel.h>


113015 03-Apr-2003 nyan

MFi386: revision 1.561


113002 03-Apr-2003 phk

Don't use dkmakeminor(), it has nothing to do with CDroms.


112975 02-Apr-2003 nyan

MFi386: revisions 1.556 and 1.557.
Backout revision 1.312.


112974 02-Apr-2003 nyan

Merged from sys/dev/syscons/syscons.c revision 1.400.


112946 01-Apr-2003 phk

Use bioq_flush() to drain a bio queue with a specific error code.
Retain the mistake of not updating the devstat API for now.

Spell bioq_disksort() consistently with the remaining bioq_*().

#include <geom/geom_disk.h> where this is more appropriate.


112898 01-Apr-2003 jeff

- Define a new md function 'casuptr'. This atomically compares and sets
a pointer that is in user space. It will be used as the basic primitive
for a kernel supported user space lock implementation.
- Implement this function in x86's support.s
- Provide stubs that return -1 in all other architectures. Implementations
will follow along shortly.

Reviewed by: jake


112888 31-Mar-2003 jeff

- Move p->p_sigmask to td->td_sigmask. Signal masks will be per thread with
a follow on commit to kern_sig.c
- signotify() now operates on a thread since unmasked pending signals are
stored in the thread.
- PS_NEEDSIGCHK moves to TDF_NEEDSIGCHK.


112883 31-Mar-2003 jeff

- Change trapsignal() to accept a thread and not a proc.
- Change all consumers to pass in a thread.

Right now this does not cause any functional changes but it will be important
later when signals can be delivered to specific threads.


112840 30-Mar-2003 mdodd

Catch up with recent changes.


112590 25-Mar-2003 mdodd

Merge PC98 support.


112569 25-Mar-2003 jake

- Add vm_paddr_t, a physical address type. This is required for systems
where physical addresses larger than virtual addresses, such as i386s
with PAE.
- Use this to represent physical addresses in the MI vm system and in the
i386 pmap code. This also changes the paddr parameter to d_mmap_t.
- Fix printf formats to handle physical addresses >4G in the i386 memory
detection code, and due to kvtop returning vm_paddr_t instead of u_long.

Note that this is a name change only; vm_paddr_t is still the same as
vm_offset_t on all currently supported platforms.

Sponsored by: DARPA, Network Associates Laboratories
Discussed with: re, phk (cdevsw change)


112561 24-Mar-2003 mdodd

Retire sys/pc98/pc98/spkr.c


112550 24-Mar-2003 mdodd

PC98 systems don't need to worry about the MCA bus.


112498 22-Mar-2003 ru

Remove bitrot associated with `maxusers'.

Submitted by: bde


112367 18-Mar-2003 phk

Including <sys/stdint.h> is (almost?) universally only to be able to use
%j in printfs, so put a newsted include in <sys/systm.h> where the printf
prototype lives and save everybody else the trouble.


112335 17-Mar-2003 phk

Fix malloc() without legal mode flag.


112260 15-Mar-2003 phk

Call devstat_start_transaction_bio() instead of devstat_start_transaction()


112034 09-Mar-2003 nyan

MFi386: revision 1.1079


112033 09-Mar-2003 nyan

Merged from sys/dev/syscons/syscons.c revision 1.396.


112032 09-Mar-2003 nyan

Merged from sys/dev/sio/sio.c revisions 1.387 and 1.388.


112006 08-Mar-2003 phk

Allocate the devstat structure with devstat_new_entry().


111979 08-Mar-2003 phk

Centralize the devstat handling for all GEOM disk device drivers
in geom_disk.c.

As a side effect this makes a lot of #include <sys/devicestat.h>
lines not needed and some biofinish() calls can be reduced to
biodone() again.


111821 03-Mar-2003 phk

Make nokqfilter() return the correct return value.

Ditch the D_KQFILTER flag which was used to prevent calling NULL pointers.


111815 03-Mar-2003 phk

Gigacommit to improve device-driver source compatibility between
branches:

Initialize struct cdevsw using C99 sparse initializtion and remove
all initializations to default values.

This patch is automatically generated and has been tested by compiling
LINT with all the fields in struct cdevsw in reverse order on alpha,
sparc64 and i386.

Approved by: re(scottl)


111748 02-Mar-2003 des

More low-hanging fruit: kill caddr_t in calls to wakeup(9) / [mt]sleep(9).


111665 28-Feb-2003 phk

NO_GEOM cleanup:

Convert to "struct disk *" centric API.


111582 26-Feb-2003 ru

Implemented "nooption" and "nomakeoption" config(8) tokens.
Fixed memory leak in the "nodevice" option implementation.

Use these instead of sed(1) in MD NOTES.

Use a single makefile (sys/conf/makeLINT.mk) to generate
LINT for all architectures. (Previous versions missed
the LINT dependency on Makefile, and i386 version also
missed the dependency on ${NOTES}.)

Fixed bugs in the previous NOTES conversion using the
"nodevice" token and sed(1):

- i386 LINT lost "device pst".

- pc98 LINT lost SC_*, MAXCONS and KBD_DISABLE_KEYMAP_LOAD
options, and got needless DPT_* options.

- Added nooptions PPC_DEBUG, PPC_PROBE_CHIPSET, KBD_INSTALL_CDEV
to sparc64 LINT so that it has a chance to config(8).

This basically returns us to where we were before.


111500 25-Feb-2003 obrien

Move most everything back to a MI NOTES, and use "nodevice" in MD NOTES
Where needed. Use 'sed' for now in place of "nooptions". Add a sparc64
MD NOTES.

Reviewed by: arch@


111481 25-Feb-2003 mux

Convert one more d_mmap_t consumer I missed in my previous commit.


111462 25-Feb-2003 mux

Cleanup of the d_mmap_t interface.

- Get rid of the useless atop() / pmap_phys_address() detour. The
device mmap handlers must now give back the physical address
without atop()'ing it.
- Don't borrow the physical address of the mapping in the returned
int. Now we properly pass a vm_offset_t * and expect it to be
filled by the mmap handler when the mapping was successful. The
mmap handler must now return 0 when successful, any other value
is considered as an error. Previously, returning -1 was the only
way to fail. This change thus accidentally fixes some devices
which were bogusly returning errno constants which would have been
considered as addresses by the device pager.
- Garbage collect the poorly named pmap_phys_address() now that it's
no longer used.
- Convert all the d_mmap_t consumers to the new API.

I'm still not sure wheter we need a __FreeBSD_version bump for this,
since and we didn't guarantee API/ABI stability until 5.1-RELEASE.

Discussed with: alc, phk, jake
Reviewed by: peter
Compile-tested on: LINT (i386), GENERIC (alpha and sparc64)
Runtime-tested on: i386


111314 23-Feb-2003 nyan

Add NOTES for pc98.


111312 23-Feb-2003 nyan

Merged from sys/dev/syscons/syscons.c revision 1.393.


111311 23-Feb-2003 nyan

Fix compile error with FB_INSTALL_CDEV option.


111310 23-Feb-2003 nyan

MFi386: revision 1.554.


111194 20-Feb-2003 phk

Change the console interface to pass a "struct consdev *" instead of a
dev_t to the method functions.

The dev_t can still be found at struct consdev *->cn_dev.

Add a void *cn_arg element to struct consdev which the drivers can use
for retrieving their softc.


111119 19-Feb-2003 imp

Back out M_* changes, per decision of the TRB.

Approved by: trb


111017 16-Feb-2003 phk

Change "dev_t gdbdev" to "void *gdb_arg", some possible paths for GDB
will not have a dev_t.


111002 16-Feb-2003 phk

Remove #include <sys/dkstat.h>


110831 13-Feb-2003 obrien

Fix the style of the SCHED_4BSD commit.


110688 11-Feb-2003 phk

Switch to use the TSC code i386/i386/tsc.c


110492 07-Feb-2003 nyan

Merged from sys/dev/sio/sio.c revision 1.383.


110373 05-Feb-2003 phk

Reduce diff to i386/isa/clock.c by unifdef -DPC98


110372 05-Feb-2003 phk

Typo in last commit


110371 05-Feb-2003 phk

MFi386: write the correct weekday back to the RTC.


110333 04-Feb-2003 nyan

Oops, fix copyright again.

Noticed by: hrs


110329 04-Feb-2003 takawata

Fix copyright notification.


110299 03-Feb-2003 phk

Split the global timezone structure into two integer fields to
prevent the compiler from optimizing assignments into byte-copy
operations which might make access to the individual fields non-atomic.

Use the individual fields throughout, and don't bother locking them with
Giant: it is no longer needed.

Inspired by: tjr


110296 03-Feb-2003 jake

Split statclock into statclock and profclock, and made the method for driving
statclock based on profhz when profiling is enabled MD, since most platforms
don't use this anyway. This removes the need for statclock_process, whose
only purpose was to subdivide profhz, and gets the profiling clock running
outside of sched_lock on platforms that implement suswintr.
Also changed the interface for starting and stopping the profiling clock to
do just that, instead of changing the rate of statclock, since they can now
be separate.

Reviewed by: jhb, tmm
Tested on: i386, sparc64


110285 03-Feb-2003 nyan

Add CanBe power management controller support.

Submitted by: KIYOHARA Takashi <kiyohara@kk.iij4u.or.jp>


110202 01-Feb-2003 joe

Put replace spaces with tabs in keeping with the rest of the file.


110187 01-Feb-2003 phk

NO_GEOM cleanup: don't #include <sys/diskslice.h>


110098 30-Jan-2003 nyan

MFi386: revision 1.192.


110094 30-Jan-2003 phk

NO_GEOM cleanup: retire to attic.


110086 30-Jan-2003 phk

Remove pc98/wfd and pc98/wst drivers, they have been broken to the
point of not even compiling for a very long time.

Any effort spent unbreaking them would be better spent perfecting
the ata drivers for PC98, should any issues remain there.


110048 29-Jan-2003 phk

Make tsc_freq a 64bit on PC98 also.


109994 28-Jan-2003 jake

Remove BDE_DEBUGGER.

Discussed with: bde


109865 26-Jan-2003 jeff

- Introduce the SCHED_ULE and SCHED_4BSD options for compile time selection
of the scheduler.
- Add SCHED_4BSD as the scheduler for all kernel config files in cvs.


109623 21-Jan-2003 alfred

Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.


109531 19-Jan-2003 phk

#ifdef NO_GEOM these files entirely. When NO_GEOM is removed as an
option the files can be removed.


109381 16-Jan-2003 nyan

MFi386: revision 1.372


109303 15-Jan-2003 nyan

Merged from sys/isa/syscons_isa.c revision 1.21.


109268 15-Jan-2003 mdodd

- Add inline functions for {ll,l,}abs() to libkern.
- Remove hand rolled abs() functions.


109164 13-Jan-2003 nyan

Fixed typo and style.

Submitted by: Toru Morimoto <too@os.gulf.or.jp>


109125 12-Jan-2003 nyan

Merged from sys/isa/fd.c revision 1.244.


109068 10-Jan-2003 nyan

MFi386: revision 1.552.


108650 04-Jan-2003 nyan

Rename the dos_partition structure for pc98 to pc98_partition.


108590 03-Jan-2003 nyan

Merged from sys/isa/fd.c revision 1.243.


108586 03-Jan-2003 phk

Remove unused second argument from DEV_STRATEGY().


108533 01-Jan-2003 schweikh

Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.


108490 31-Dec-2002 nyan

MFi386: Add the bge driver.


108470 30-Dec-2002 schweikh

Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/
Add FreeBSD Id tag where missing.


107969 17-Dec-2002 phk

Unspam some experimental changes which should not have been committed.


107920 15-Dec-2002 phk

unifdef -DPC98 -U__alpha__


107586 04-Dec-2002 nyan

MFi386: revision 1.551.

Approved by: re (jhb)


107562 03-Dec-2002 sos

Add support for the PC98 platform to the ATA driver.
This mostly consists of functionality to serialize accesses to
the two ATA channels (which can also be used to "fix" certain
PCI based controllers).
Add support for Acard controllers.
Enable the ATA driver in PC98 GENERIC, and add device hints.
Update man page with latest support.

The PC98 core team has kindly provided me with a PC98
machine that made this all possible, thanks to all that
contributed to that effort, without that this would
probably newer have been possible..

Approved by: re@


106997 17-Nov-2002 nyan

MFi386: revision 1.550.


106996 17-Nov-2002 nyan

Merged from sys/isa/fd.c revision 1.242.


106697 09-Nov-2002 des

Print real / avail memory in megabytes rather than kilobytes.


106605 07-Nov-2002 tmm

Move the definitions of the hw.physmem, hw.usermem and hw.availpages
sysctls to MI code; this reduces code duplication and makes all of them
available on sparc64, and the latter two on powerpc.
The semantics by the i386 and pc98 hw.availpages is slightly changed:
previously, holes between ranges of available pages would be included,
while they are excluded now. The new behaviour should be more correct
and brings i386 in line with the other architectures.

Move physmem to vm/vm_init.c, where this variable is used in MI code.


106503 06-Nov-2002 jmallett

Remove what was a temporary bogus assignment of bits of siginfo_t, as it does
not look like the prerequisites to fill it in properly will be in the tree
for the upcoming release, but it's mostly done, so there is no need for these
to stay around to remind us.


106370 03-Nov-2002 nyan

Add hints for wd1, wd2 and wd3.


106249 31-Oct-2002 nyan

Enable GEOM by default.


106234 31-Oct-2002 nyan

MFi386: revision 1.55.
Rename from atspeaker to pcspeaker. (PC98 is not PC/AT)


105991 26-Oct-2002 nyan

MFi386: revisions 1.544 and 1.545.


105790 23-Oct-2002 nyan

MFi386: revision 1.10


105715 22-Oct-2002 nyan

MFi386: revision 1.543.


105712 22-Oct-2002 nyan

Merged from sys/isa/syscons_isa.c revision 1.20.


105710 22-Oct-2002 nyan

MFi386: revisions 1.189 and 1.190.


105463 19-Oct-2002 rwatson

Permits UFS ACLs to be used with the GENERIC kernel. Due to recent
ACL configuration changes, this shouldn't result in different code paths
for file systems not explicitly configured for ACLs by the system
administrator. For UFS1, administrators must still recompile their
kernel to add support for extended attributes; for UFS2, it's sufficient
to enable ACLs using tunefs or at mount-time (tunefs preferred for
reliability reasons). UFS2, for a variety of reasons, including
performance and reliability, is the preferred file system for use with
ACLs.

Approved by: re


105329 17-Oct-2002 nyan

Switch from the bs driver to the ct driver.


105320 17-Oct-2002 nyan

Merged from sys/isa/syscons_isa.c revision 1.19.


105319 17-Oct-2002 nyan

Merged from sys/dev/syscons/syscons.c revision 1.390.


105263 16-Oct-2002 nyan

MFi386: revision 1.54.


105260 16-Oct-2002 nyan

MFi386: revision 1.130.


105242 16-Oct-2002 phk

Unbreak the PC98/wd(4) driver which I accidentally broke with a previous
commit. I can fully understand why the PC98 crew desire ata(4) support.

Tested by: nyan


105101 14-Oct-2002 nyan

MFi386: revision 1.9.


105093 14-Oct-2002 nyan

Merged from sys/dev/sio/sio.c revision 1.382.


105054 13-Oct-2002 mike

Remove the P1003_1B kernel option; it is no longer used.


104965 12-Oct-2002 jeff

- kserunnable() is now sched_runnable() change instances of these where
appropriate.
- include sched.h to see this new api.


104778 10-Oct-2002 nyan

Fixed a warning if COM_MULTIPORT option is not defined.

Submitted by: Kaho Toshikazu <kaho@elam.kais.kyoto-u.ac.jp>


104775 10-Oct-2002 nyan

Fixed SBUS_RA_*_region_* functions.


104676 08-Oct-2002 nyan

MFi386: revision 1.67.


104675 08-Oct-2002 nyan

MFi386: revisions 1.539, 1.540 and 1.541.


104619 07-Oct-2002 nyan

Merged from sys/isa/fd.c revisions 1.224 and 1.241.


104519 05-Oct-2002 phk

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.


104516 05-Oct-2002 phk

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.


104515 05-Oct-2002 phk

Merge the last couple of my changes to fd.c into the pc98 version.

Sponsored by: DARPA & NAI Labs


104272 01-Oct-2002 phk

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.


104217 30-Sep-2002 nyan

Call bus_set_resource() to set the ioport resource.


104142 29-Sep-2002 nyan

Added some buggy PC-98 PnP cards support.


104137 29-Sep-2002 nyan

Merged from sys/isa/fd.c revision 1.238.


104136 29-Sep-2002 nyan

Merged from sys/dev/syscons/syscons.c revision 1.389.


104134 29-Sep-2002 nyan

Merged from sys/dev/sio/sio.c revisions 1.380 and 1.381.


103884 24-Sep-2002 nyan

MFi386: revisions 1.127, 1.128 and 1.129.


103881 24-Sep-2002 nyan

Move the com_emr register definition to sioreg.h.


103880 24-Sep-2002 nyan

Merged from sys/dev/sio/sio.c revision 1.379.


103879 24-Sep-2002 nyan

MFi386: revisions 1.536 and 1.538.


103870 23-Sep-2002 alfred

use __packed.


103734 21-Sep-2002 phk

Remove #ifdef/#endif 3 years after the stuff they protected was removed.

Spotted by: peter.


103714 20-Sep-2002 phk

(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.


103703 20-Sep-2002 phk

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.


103701 20-Sep-2002 phk

#include <sys/disk.h> to get disk_err() prototype.

Sponsored by: DARPA & NAI Labs.


103675 20-Sep-2002 phk

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.


103638 19-Sep-2002 nyan

MFi386: revisions 1.534 and 1.535.


103436 17-Sep-2002 peter

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


103384 16-Sep-2002 nyan

Merged from sys/isa/fd.c revisions 1.234, 1.235 and 1.236.


103380 16-Sep-2002 nyan

Merged from sys/dev/sio/sio.c revision 1.378.


103379 16-Sep-2002 nyan

Merged from sys/isa/syscons_isa.c revision 1.18.


103367 15-Sep-2002 julian

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.


103081 07-Sep-2002 jmallett

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


103077 07-Sep-2002 jmallett

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.


103064 07-Sep-2002 peter

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.


102666 31-Aug-2002 peter

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.


102600 30-Aug-2002 peter

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?


102561 29-Aug-2002 jake

Renamed poorly named setregs to exec_setregs. Moved its prototype to
imgact.h with the other exec support functions.


102412 25-Aug-2002 charnier

Replace various spelling with FALLTHROUGH which is lint()able


102265 22-Aug-2002 nyan

Merged from sys/dev/syscons/scvtb.c revision 1.9.


102264 22-Aug-2002 nyan

Merged from sys/dev/syscons/syscons.c revision 1.388.


102180 20-Aug-2002 nyan

Merged from sys/dev/syscons/syscons.c revisions 1.386 and 1.387.


102153 20-Aug-2002 peter

remove unit counts from atkbdc, pckbd, sc


102151 20-Aug-2002 peter

de-count pckbd for pc98. This file is only compiled if NPCKBD was 1,
so the conditional compile should never have been used.


101798 13-Aug-2002 nyan

MFi386: revisions 1.354 and 1.356.

Remove the mpt driver entry.


101704 11-Aug-2002 mjacob

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


101588 09-Aug-2002 brooks

Make ppp(4) devices clonable and unloadable.


101165 01-Aug-2002 blackend

Fix the link to the Handbook


100696 26-Jul-2002 peter

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.


100551 23-Jul-2002 peter

de-count pci


100471 21-Jul-2002 peter

Add units to card, wdc, wcd, wst and wfd


100464 21-Jul-2002 peter

Add explicit unit count on 'device pci' for ahc/ahd


100275 18-Jul-2002 peter

Use pmap_kenter() rather than vtopte() and bashing the page tables
directly.


100236 17-Jul-2002 nyan

MFi386: revision 1.524.


100235 17-Jul-2002 nyan

MFi386: revision 1.350.


100172 16-Jul-2002 nyan

Check return status from fd_in() function.


100163 16-Jul-2002 markm

Retire the perl gethints.conf in favour of an awk version. Move
the awk version to a central place for maintenance.

Submitted by: Cyrille Lefevre <cyrille.lefevre@laposte.net>


99948 14-Jul-2002 kato

MFi386: sys/i386/i386/machdep.c revision 1.522.


99915 13-Jul-2002 alfred

Move COMPAT_FREEBSD4 to arch-neutral sys/conf/NOTES.
Add COMPAT_FREEBSD4 to GENERIC for arches that existed in FreeBSD 4's time,
not just i386. (alpha and pc98)

Requested by: bde


99567 08-Jul-2002 peter

s/procrunnable/kserunnable/ in a comment


99131 30-Jun-2002 nyan

MFi386: revision 1.521


99106 30-Jun-2002 rwatson

Remove ALT_BREAK_TO_DEBUGGER. This was inconsistent (both in form
and function) with existing configuration choices. Arguably if
ALT_BREAK_TO_DEBUGGER was present, so should have been
BREAK_TO_DEBUGGER. Regardless, it broke the option sort order in
these kernel configuration files.

Requested by: bde


98808 25-Jun-2002 kato

MFi386: sys/i386/i386/machdep.c rev. 1.520.


98763 24-Jun-2002 nyan

Merged from sys/dev/sio/sio.c revisions 1.376 and 1.377.


98736 24-Jun-2002 kato

MFi386: sys/i386/isa/clock.c revision 1.187.


98437 19-Jun-2002 nyan

MFi386: revisions from 1.342 to 1.344


98431 19-Jun-2002 nyan

Backout previous change and merge from sys/dev/sio/sio.c revision 1.375.


98430 19-Jun-2002 nyan

Merged from sys/isa/fd.c revision 1.233.


98401 18-Jun-2002 n_hibma

Make the speed used by gdb over serial settable in the kernel configuration.

This facilitates the use in circumstances where you are using a serial
console as well. GDB doesn't support anything higher than 9600 baud (19k2
if you are lucky), but the console does.


97748 02-Jun-2002 schweikh

Fix typo in the BSD copyright: s/withough/without/

Spotted and suggested by: des
MFC after: 3 weeks


96577 14-May-2002 nyan

MFi386: revision 1.519


96576 14-May-2002 nyan

Merged from sys/isa/fd.c revisions from 1.229 to 1.232.


96575 14-May-2002 nyan

Merged from sys/dev/syscons/syscons.c revision 1.384


95992 03-May-2002 jmallett

Typo fix: detects -> detect.

Reviewed by: phk


95814 30-Apr-2002 phk

Don't export timecounter structures under debug. with sysctl, they
contain no truly interesting data anymore.


95710 29-Apr-2002 peter

Tidy up some loose ends.
i386/ia64/alpha - catch up to sparc64/ppc:
- replace pmap_kernel() with refs to kernel_pmap
- change kernel_pmap pointer to (&kernel_pmap_store)
(this is a speedup since ld can set these at compile/link time)
all platforms (as suggested by jake):
- gc unused pmap_reference
- gc unused pmap_destroy
- gc unused struct pmap.pm_count
(we never used pm_count - we track address space sharing at the vmspace)


95523 26-Apr-2002 phk

Simplify the RFC2783 and PPS_SYNC timestamp collection API.


95489 26-Apr-2002 phk

Remove the tc_update() function. Any frequency change to the
timecounter will be used starting at the next second, which is
good enough for sysctl purposes. If better adjustment is needed
the NTP PLL should be used.


95451 25-Apr-2002 nyan

MFi386: revision 1.339.


95448 25-Apr-2002 nyan

Merged from sys/dev/syscons/syscons.c revision 1.383


94936 17-Apr-2002 mux

Rework the kernel environment subsystem. We now convert the static
environment needed at boot time to a dynamic subsystem when VM is
up. The dynamic kernel environment is protected by an sx lock.

This adds some new functions to manipulate the kernel environment :
freeenv(), setenv(), unsetenv() and testenv(). freeenv() has to be
called after every getenv() when you have finished using the string.
testenv() only tests if an environment variable is present, and
doesn't require a freeenv() call. setenv() and unsetenv() are self
explanatory.

The kenv(2) syscall exports these new functionalities to userland,
mainly for kenv(1).

Reviewed by: peter


94417 11-Apr-2002 kato

MFi386: revision 1.517.


94275 09-Apr-2002 phk

GC various bits and pieces of USERCONFIG from all over the place.


94151 07-Apr-2002 phk

GC the "dumplo" variable, which is no longer used.

A lot of sys/*/*/machdep.c seems not to be.


93938 06-Apr-2002 nyan

Merged from sys/dev/syscons/syscons.c revisions 1.381 and 1.382.


93936 06-Apr-2002 nyan

Merged from sys/isa/fd.c revision 1.228.


93934 06-Apr-2002 nyan

Merged from sys/dev/sio/sio.c revisions 1.370 and 1.371.


93818 04-Apr-2002 jhb

Change callers of mtx_init() to pass in an appropriate lock type name. In
most cases NULL is passed, but in some cases such as network driver locks
(which use the MTX_NETWORK_LOCK macro) and UMA zone locks, a name is used.

Tested on: i386, alpha, sparc64


93793 04-Apr-2002 bde

Moved signal handling and rescheduling from userret() to ast() so that
they aren't in the usual path of execution for syscalls and traps.
The main complication for this is that we have to set flags to control
ast() everywhere that changes the signal mask.

Avoid locking in userret() in most of the remaining cases.

Submitted by: luoqi (first part only, long ago, reorganized by me)
Reminded by: dillon


93719 03-Apr-2002 ru

Dike out a highly insecure UCONSOLE option.
TIOCCONS must be able to VOP_ACCESS() /dev/console to succeed.

Obtained from: OpenBSD


93702 02-Apr-2002 jhb

- Move the MI mutexes sched_lock and Giant from being declared in the
various machdep.c's to being declared in kern_mutex.c.
- Add a new function mutex_init() used to perform early initialization
needed for mutexes such as setting up thread0's contested lock list
and initializing MI mutexes. Change the various MD startup routines
to call this function instead of duplicating all the code themselves.

Tested on: alpha, i386


93593 01-Apr-2002 jhb

Change the suser() API to take advantage of td_ucred as well as do a
general cleanup of the API. The entire API now consists of two functions
similar to the pre-KSE API. The suser() function takes a thread pointer
as its only argument. The td_ucred member of this thread must be valid
so the only valid thread pointers are curthread and a few kernel threads
such as thread0. The suser_cred() function takes a pointer to a struct
ucred as its first argument and an integer flag as its second argument.
The flag is currently only used for the PRISON_ROOT flag.

Discussed on: smp@


93469 31-Mar-2002 kato

MFi386: revision 1.508.


93414 30-Mar-2002 nyan

MFi386: revision 1.506.


93278 27-Mar-2002 kato

MFi386: revision 1.507.


93264 27-Mar-2002 dillon

Compromise for critical*()/cpu_critical*() recommit. Cleanup the interrupt
disablement assumptions in kern_fork.c by adding another API call,
cpu_critical_fork_exit(). Cleanup the td_savecrit field by moving it
from MI to MD. Temporarily move cpu_critical*() from <arch>/include/cpufunc.h
to <arch>/<arch>/critical.c (stage-2 will clean this up).

Implement interrupt deferral for i386 that allows interrupts to remain
enabled inside critical sections. This also fixes an IPI interlock bug,
and requires uses of icu_lock to be enclosed in a true interrupt disablement.

This is the stage-1 commit. Stage-2 will occur after stage-1 has stabilized,
and will move cpu_critical*() into its own header file(s) + other things.
This commit may break non-i386 architectures in trivial ways. This should
be temporary.

Reviewed by: core
Approved by: core


93238 26-Mar-2002 phk

Push BIO_FORMAT into a local hack inside the floppy drivers where
it belongs.


93147 25-Mar-2002 nyan

Merged from sys/dev/sio/sio.c revisions 1.366 and 1.369.


93146 25-Mar-2002 nyan

Merged from sys/dev/syscons/syscons.c revision 1.379.


93134 25-Mar-2002 nyan

Fix style.


92794 20-Mar-2002 kato

MFi386: revision 1.65.


92793 20-Mar-2002 kato

Remove __P.


92792 20-Mar-2002 kato

Remove __P.


92791 20-Mar-2002 kato

MFi386: revision 1.505 (remove __P.)


92790 20-Mar-2002 kato

MFi386: revision 1.504.


92789 20-Mar-2002 kato

MFi386: revision 1.503.


92230 13-Mar-2002 nyan

Use the dx register for the destination port address. A immediate port
address of outb is only 8 bits.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)
MFC after: 3 days


92229 13-Mar-2002 nyan

MFi386: revision 1.502


91986 10-Mar-2002 nyan

Free allocated buffer at siodetach().

MFC after: 3 days


91981 10-Mar-2002 nyan

MFi386: revision 1.501


91865 08-Mar-2002 nyan

- The pc98_ttspeedtab() function returns an error status instead of a divisor,
and sets a divisor to the third argument.
- The second argument of the pc98_set_baud_rate() function is changed from int
to u_int.


91862 08-Mar-2002 nyan

MFi386: revision 1.125


91566 02-Mar-2002 nyan

MFi386: revision 1.498.


91406 27-Feb-2002 jhb

Simple p_ucred -> td_ucred changes to start using the per-thread ucred
reference.


91061 22-Feb-2002 phk

Disksort will not "munge" requests, BIO_ORDERED or not, so remove
use of BIO_ORDERED.


90953 20-Feb-2002 nyan

MFi386: revision 1.497


90850 18-Feb-2002 nyan

Add bus_space_unmap() and bus_space_free() functions to release
a bus_space_handle allocated by bus_space_subregion().


90762 17-Feb-2002 nyan

- Split the routine to initialize a bus_space_handle into the separate
function.
- Only access a bus_space_handle if the resource type is SYS_RES_MEMORY or
SYS_RES_IOPORT.
- Add the bus_space_subregion supports.


90727 16-Feb-2002 nyan

MFi386: revisions 1.334 and 1.335


90726 16-Feb-2002 nyan

MFi386: revisions 1.495 and 1.496


90521 11-Feb-2002 nyan

Fall through from AT_TYPE_DIRECT to AT_TYPE_CDROM.
Old ATAPI CD-ROM drives return 0 (direct-access) as the type of the device.

(The ata driver has the same problem.)

MFC after: 3 days


90467 10-Feb-2002 nyan

Cosmetic changes.


90465 10-Feb-2002 nyan

- Refine the iskanji1 function.
- Print continuous ascii characters at a time.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


90464 10-Feb-2002 nyan

Fixed mouse cursor on a console.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


90398 08-Feb-2002 nyan

MFi386: revisions 1.493 and 1.494.


90361 07-Feb-2002 julian

Pre-KSE/M3 commit.
this is a low-functionality change that changes the kernel to access the main
thread of a process via the linked list of threads rather than
assuming that it is embedded in the process. It IS still embeded there
but remove all teh code that assumes that in preparation for the next commit
which will actually move it out.

Reviewed by: peter@freebsd.org, gallatin@cs.duke.edu, benno rice,


90132 03-Feb-2002 bde

Use osigreturn(2) instead of sigreturn(2) plus broken magic for returning
from old signal handlers. This is simpler and faster, and fixes (new)
sigreturn(2) when %eip in the new signal context happens to match the
magic value (0x1d516). 0x1d516 is below the default ELF text section,
so this probably never broken anything in practice.

locore.s:
In addition, don't build the signal trampoline for old signal handlers
when it is not used.

alpha:
Not fixed, but seems to be even less broken in practice due to more
advanced magic. A false match occurs for register #32 in mc_regs[].
Since there is no hardware register #32, a false match is only possible
for direct calls to sigreturn(2) that happen to have the magic number
in the spare mc_regs[32] field.


90128 03-Feb-2002 bde

Improve the change in the previous commit: use a stub for osigreturn()
when it is not really used instead of unconditionalizing all of it.


90065 01-Feb-2002 bde

Compile osigreturn() unconditionally since it will always be needed on
some arches and the syscall table is machine-independent. It was
(bogusly) conditional on COMPAT_43, so this usually makes no difference.

ia64: in addition:
- replace the bogus cloned comment before osigreturn() by a correct one.
osigreturn() is just a stub fo ia64's.
- fix the formatting of cloned comment before sigreturn().
- fix the return code. use nosys() instead of returning ENOSYS to get
the same semantics as if the syscall is not in the syscall table.
Generating SIGSYS is actually correct here.
- fix style bugs.

powerpc: copy the cleaned up ia64 stub. This mainly fixes a bogus comment.

sparc64: copy the cleaned up the ia64 stub, since there was no stub before.


90013 31-Jan-2002 nyan

MFi386: revision 1.489.


90012 31-Jan-2002 nyan

Changed iskanji[12] to inline functions.


90011 31-Jan-2002 nyan

Merged from sys/dev/sio/{sio.c,sio_isa.c} revisions 1.363 and 1.5,
respectively.


90007 31-Jan-2002 nyan

MFi386: revision 1.180


90006 31-Jan-2002 nyan

MFi386: revision 1.52


89486 18-Jan-2002 nyan

MFi386: revision 1.64


89485 18-Jan-2002 nyan

Merged from sys/dev/sio/sio.c revisions from 1.360 to 1.362.


89484 18-Jan-2002 nyan

MFi386: revision 1.487


89195 10-Jan-2002 bde

Clear the single-step flag for signal handlers. This fixes bogus trace
traps on the first instruction of signal handlers.

In trap.c:syscall(), fake a trace trap if the single-step flag was set
on entry to the kernel, not if it will be set on exit from the kernel.
This fixes bogus trace traps after the last instruction of signal handlers.

gdb-4.18 (the version in FreeBSD) still has problems with the program in
the PR. These seem to be due to bugs in gdb and not in FreeBSD, and are
fixed in gdb-5.1 (the distribution version).

PR: 33262
Tested by: k Macy <kip_macy@yahoo.com>
MFC after: 1 day


88955 06-Jan-2002 nyan

Merged from sys/dev/sio/sio.c revisions 1.354 and 1.358.


88900 05-Jan-2002 jhb

Change the preemption code for software interrupt thread schedules and
mutex releases to not require flags for the cases when preemption is
not allowed:

The purpose of the MTX_NOSWITCH and SWI_NOSWITCH flags is to prevent
switching to a higher priority thread on mutex releease and swi schedule,
respectively when that switch is not safe. Now that the critical section
API maintains a per-thread nesting count, the kernel can easily check
whether or not it should switch without relying on flags from the
programmer. This fixes a few bugs in that all current callers of
swi_sched() used SWI_NOSWITCH, when in fact, only the ones called from
fast interrupt handlers and the swi_sched of softclock needed this flag.
Note that to ensure that swi_sched()'s in clock and fast interrupt
handlers do not switch, these handlers have to be explicitly wrapped
in critical_enter/exit pairs. Presently, just wrapping the handlers is
sufficient, but in the future with the fully preemptive kernel, the
interrupt must be EOI'd before critical_exit() is called. (critical_exit()
can switch due to a deferred preemption in a fully preemptive kernel.)

I've tested the changes to the interrupt code on i386 and alpha. I have
not tested ia64, but the interrupt code is almost identical to the alpha
code, so I expect it will work fine. PowerPC and ARM do not yet have
interrupt code in the tree so they shouldn't be broken. Sparc64 is
broken, but that's been ok'd by jake and tmm who will be fixing the
interrupt code for sparc64 shortly.

Reviewed by: peter
Tested on: i386, alpha


88732 31-Dec-2001 nyan

Disabled the olpt driver temporarily to avoid 'repeat make_dev' panic.


88395 22-Dec-2001 nyan

MFi386: revision 1.178


88394 22-Dec-2001 nyan

MFi386: revision 1.124


88393 22-Dec-2001 nyan

Merged from sys/dev/syscons/syscons.c revision 1.377.


88392 22-Dec-2001 nyan

cosmetic changes.


88387 22-Dec-2001 nyan

MFi386: revision 1.179


88386 22-Dec-2001 nyan

MFi386: revision 1.486


88011 16-Dec-2001 nyan

Merged from sys/isa/{fd.c,fdreg.h} revisions 1.222 and 1.15, respectively.


87894 14-Dec-2001 iedowse

Enable UFS_DIRHASH in the GENERIC kernel.

Suggested by: silby
Reviewed by: dillon
MFC after: 5 days


87886 14-Dec-2001 nyan

Fixed to draw mouse cursor. The syscons driver for PC98 uses different
attributes from i386.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)
MFC after: 3 days


87730 12-Dec-2001 nyan

MFi386: revision 1.485 (the previous commit is not completely)


87702 11-Dec-2001 jhb

Overhaul the per-CPU support a bit:

- The MI portions of struct globaldata have been consolidated into a MI
struct pcpu. The MD per-CPU data are specified via a macro defined in
machine/pcpu.h. A macro was chosen over a struct mdpcpu so that the
interface would be cleaner (PCPU_GET(my_md_field) vs.
PCPU_GET(md.md_my_md_field)).
- All references to globaldata are changed to pcpu instead. In a UP kernel,
this data was stored as global variables which is where the original name
came from. In an SMP world this data is per-CPU and ideally private to each
CPU outside of the context of debuggers. This also included combining
machine/globaldata.h and machine/globals.h into machine/pcpu.h.
- The pointer to the thread using the FPU on i386 was renamed from
npxthread to fpcurthread to be identical with other architectures.
- Make the show pcpu ddb command MI with a MD callout to display MD
fields.
- The globaldata_register() function was renamed to pcpu_init() and now
init's MI fields of a struct pcpu in addition to registering it with
the internal array and list.
- A pcpu_destroy() function was added to remove a struct pcpu from the
internal array and list.

Tested on: alpha, i386
Reviewed by: peter, jake


87599 10-Dec-2001 obrien

Update to C99, s/__FUNCTION__/__func__/,
also don't use ANSI string concatenation.


87546 09-Dec-2001 dillon

Allow maxusers to be specified as 0 in the kernel config, which will
cause the system to auto-size to between 32 and 512 depending on the
amount of memory.

MFC after: 1 week


87343 04-Dec-2001 des

PROCFS requires PSEUDOFS.


86912 26-Nov-2001 nyan

Split the sio driver for pc98 into bus front end and back end.
(merged from the files in sys/dev/sio)


86495 17-Nov-2001 nyan

MFi386: revision 1.326.


86492 17-Nov-2001 nyan

MFi386: revision 1.483


86297 12-Nov-2001 nyan

Use make_dev_alias() instead of call make_dev() twice.


86108 05-Nov-2001 phk

GC userconfig after Peter axed it 15 months ago.


86014 04-Nov-2001 phk

Don't call cdevsw_add().


86012 04-Nov-2001 phk

Rename the top 7 bits if disk minors to spare bits, rather than type bits.


85713 30-Oct-2001 nyan

MFi386: sys/i386/i386/machdep.c revisions 1.481 and 1.482


85619 28-Oct-2001 nyan

Removed pmc_isa_identify function. It is not needed.

Submitted by: takawata


85426 24-Oct-2001 jlemon

cn_tab no longer exists, use cnadd() to add a console device. Note that
this may result in duplicate console output in some cases.


85413 24-Oct-2001 nyan

Added the pmc driver which supports power management controller of
old NEC PC-98NOTE.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)
MFC after: 1 week


85351 23-Oct-2001 amorita

fix broken `compat_atdisk'(replace raw device name with block device's).

Reviewed by: nyan
MFC after: 3 days


85346 23-Oct-2001 amorita

Fix compile error of the case using `LINE30' option.

Reviewed by: nyan
MFC after: 3 days


85302 22-Oct-2001 imp

First commit after a repo copy of isa/sio* -> dev/sio:

Move sio from isa/sio.c to dev/sio/sio.c. The next step is to break
out the front end attachments, improve support for these parts on
different busses, and maybe, if we're lucky, merging in pc98 support.
It will also be MI and live in conf/files rather than files.*.

Approved by: bde
Tested with: i386, pc98


85273 21-Oct-2001 bde

Use the i386 version of npx.c. It has been merged with the pc98 version.

Approved by: nyan
Not tested by: bde


85255 20-Oct-2001 mjacob

Remove wx.


85156 19-Oct-2001 nyan

MFi386: sys/i386/isa/npx.c revisions from 1.114 to 1.116


85153 19-Oct-2001 nyan

Changed IO_NPXSIZE to 8


85151 19-Oct-2001 nyan

MFi386: sys/i386/isa/clock.c revision 1.177


85150 19-Oct-2001 nyan

MFi386: sys/i386/isa/pcaudio.c revision 1.63


85149 19-Oct-2001 nyan

Merged from sys/isa/sio.c revisions from 1.344 to 1.347


85148 19-Oct-2001 nyan

MFi386: sys/i386/conf/GENERIC revision 1.320


85035 16-Oct-2001 mjacob

Make SCSI changer and SES devices standard in generic kernels.

Reviewed by: ken@kdm.org


84615 07-Oct-2001 nyan

Rewrite the pc98 bus_space stuff.

The type of bus_space_tag_t is now a pointer to bus_space_tag structure,
and the bus_space_tag structure saves pointers to functions for direct
access and relocate access.

Added bsh_bam member to the bus_space_handle structure, it saves access
method either direct access or relocate access which is called by
bus_space_* functions.

Added the mecia device support. If the bs_da and bs_ra in bus tag are set
NEPC_io_space_tag and NEPC_mem_space_tag respectively, new bus_space stuff
changes the register of mecia automatically for 16bit access.

Obtained from: NetBSD/pc98


83984 26-Sep-2001 rwatson

o Modify pc98 syscons code to use securelevel_gt() instead of
direct variable checks. (Yet another API to perform direct hardware I/O).

Obtained from: TrustedBSD Project


83936 25-Sep-2001 brooks

The faith(4) device is no longer a count device so don't specify a count.


83875 24-Sep-2001 nyan

- Added #include <sys/systm.h>
- Cosmetic change


83872 24-Sep-2001 obrien

+ Fix misplacement of `txp'
+ Document our -CURRENT debugging bits


83651 18-Sep-2001 peter

Cleanup and split of nfs client and server code.
This builds on the top of several repo-copies.


83640 18-Sep-2001 jhb

Whitespace fixes.


83548 16-Sep-2001 nyan

MFi386: sys/isa/fd.c revision from 1.205 to 1.219.


83547 16-Sep-2001 nyan

Allocate i/o and memory resources using gdc driver.


83541 16-Sep-2001 nyan

MFi386: added comment for ed driver.


83540 16-Sep-2001 nyan

MFi386: cosmetic changes.


83539 16-Sep-2001 nyan

MFi386: sys/isa/sio.c revision 1.301, 1.336, 1.337, 1.338, 1.339 and 1.342.

Removed unnecessary PnP moden entries.


83538 16-Sep-2001 nyan

MFi386: sys/i386/isa/pcaudio.c revision 1.59 and 1.61.


83537 16-Sep-2001 nyan

MFi386: sys/i386/isa/mse.c revision 1.54 and 1.55.


83536 16-Sep-2001 nyan

MFi386: sys/i386/isa/clock.c revision 1.175 and 1.176.


83535 16-Sep-2001 nyan

Added (commented out) ACPI attachment.


83533 16-Sep-2001 nyan

MFi386: removed IDE_DELAY option.


83514 15-Sep-2001 nyan

Merged from sys/i386/isa/pcaudio.c revision 1.62 (KSE changes).


83513 15-Sep-2001 nyan

Merged from sys/i386/apm/apm.c revision 1.123 (KSE changes).


83480 15-Sep-2001 imp

I don't think pc98 has acpi at all, so ifdef the acpi attachments for
now.


83434 14-Sep-2001 imp

Merge sys/isa/sio.c 1.343
KSE changes

Reviewed by: julian, bde, jhb


83433 14-Sep-2001 imp

Merge from sys/dev/syscons/syscons.c 1.373
kse changes

# Note: There are a number of trivial and non-trivial diffs between this and
# sys/dev/syscons/syscons.c that I didn't try to account for.

Reviewed by: julian, bde, jhb


83432 14-Sep-2001 imp

Merge from sys/i386/isa/sprk.c 1.50, 1.51
KSE changes and acpi attachment

Reviewed by: julian, bde, jhb


83431 14-Sep-2001 imp

Merge KSE changes from sys/dev/syscons/scterm-sc.c 1.17

# there are more "trivial" diffs in this file that have accumulated over time
# and I didn't try to fix those.

Reviewed by: julian, bde, jhb


83430 14-Sep-2001 imp

KSE changes for olpt driver

Reviewed by: julian, bde, jhb


83429 14-Sep-2001 imp

Merged sys/i386/isa/npx.c 1.110, 1.111, 1.112 KSE

Reviewed by: julian, bde, jhb


83427 14-Sep-2001 imp

Changes necessary for KSE world

Reivewed by: julian, bde, jhb


83426 14-Sep-2001 imp

Merge changes from sys/i386/isa/mse.c 1.56 and other tweaks for KSE

Reviewed by: julian, kde, jhb


83424 14-Sep-2001 imp

Merge from sys/isa/fd.c 1.221 and a few minor tweaks to make compile
with the post KSE world.

Reviewed by: julian, bde, jhb


83423 14-Sep-2001 imp

Merge from sys/i386/i386/machdep.c 1.480 (Julian's KSE changes)

Reviewed by: julian, bde, jhb


83366 12-Sep-2001 julian

KSE Milestone 2
Note ALL MODULES MUST BE RECOMPILED
make the kernel aware that there are smaller units of scheduling than the
process. (but only allow one thread per process at this time).
This is functionally equivalent to teh previousl -current except
that there is a thread associated with each process.

Sorry john! (your next MFC will be a doosie!)

Reviewed by: peter@freebsd.org, dillon@freebsd.org

X-MFC after: ha ha ha ha


83362 12-Sep-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.479.


82939 04-Sep-2001 peter

Zap #if 0'ed map init code that got moved to the MI area.
Convert the powerpc tree to use the common code.


82791 02-Sep-2001 shiba

Always turned on 8bit access card support for the fe driver
both i386/pc98, so options FE_8BIT_SUPPORT was deleted.

Reviewed by: nyan


82393 27-Aug-2001 peter

Enable hardwiring of things like tunables from embedded enironments
that do not start from loader(8).


82309 25-Aug-2001 peter

Optionize UPAGES for the i386. As part of this I split some of the low
level implementation stuff out of machine/globaldata.h to avoid exposing
UPAGES to lots more places. The end result is that we can double
the kernel stack size with 'options UPAGES=4' etc.

This is mainly being done for the benefit of a MFC to RELENG_4 at some
point. -current doesn't really need this so much since each interrupt
runs on its own kstack.


82166 23-Aug-2001 peter

Fix a #endif misplacement in 1.231 due to misapplied patch

Pointy hat to: peter


82164 23-Aug-2001 peter

Merge i386/machdep.c rev 1.474: dont overextend %cs. (finally, it doesn't
conflict with unmerged changes)


82163 23-Aug-2001 peter

Merge i386/machdep.c rev 1.469: whitespace changes to fit 80 columns

Forgotten by: jhb


82162 23-Aug-2001 peter

Merge i386/machdep.c rev 1.468: make breakpoint/trace interrupt instead
of trap gates

Forgotten by: bde


82161 23-Aug-2001 peter

Merge 386/machdep.c rev 1.467: fix bugs/miscalculations

Forgotten by: iwasaki


82160 23-Aug-2001 peter

Identical to i386/machdep.c rev 1.473: move submap initialization to MI.


82159 23-Aug-2001 peter

Merge i386/machdep.c rev 1.472: Fix bug in physmem_est and maxbcache
calculation

Forgotten by: dillon


82158 23-Aug-2001 peter

Merge i386/machdep.c rev 1.470. Limit KVM for buffer cache etc.

Forgotten by: dillon


82154 23-Aug-2001 peter

Dont compile in SSE fxsave/fxrstor instructions if CPU_ENABLE_SSE isn't
active.


82025 21-Aug-2001 peter

Make COMPAT_43 optional again. XXX we need COMPAT_FBSD3 etc for this
stuff.


81493 10-Aug-2001 jhb

- Close races with signals and other AST's being triggered while we are in
the process of exiting the kernel. The ast() function now loops as long
as the PS_ASTPENDING or PS_NEEDRESCHED flags are set. It returns with
preemption disabled so that any further AST's that arrive via an
interrupt will be delayed until the low-level MD code returns to user
mode.
- Use u_int's to store the tick counts for profiling purposes so that we
do not need sched_lock just to read p_sticks. This also closes a
problem where the call to addupc_task() could screw up the arithmetic
due to non-atomic reads of p_sticks.
- Axe need_proftick(), aston(), astoff(), astpending(), need_resched(),
clear_resched(), and resched_wanted() in favor of direct bit operations
on p_sflag.
- Fix up locking with sched_lock some. In addupc_intr(), use sched_lock
to ensure pr_addr and pr_ticks are updated atomically with setting
PS_OWEUPC. In ast() we clear pr_ticks atomically with clearing
PS_OWEUPC. We also do not grab the lock just to test a flag.
- Simplify the handling of Giant in ast() slightly.

Reviewed by: bde (mostly)


81265 08-Aug-2001 peter

Zap 'ptrace(PT_READ_U, ...)' and 'ptrace(PT_WRITE_U, ...)' since they
are a really nasty interface that should have been killed long ago
when 'ptrace(PT_[SG]ETREGS' etc came along. The entity that they
operate on (struct user) will not be around much longer since it
is part-per-process and part-per-thread in a post-KSE world.

gdb does not actually use this except for the obscure 'info udot'
command which does a hexdump of as much of the child's 'struct user'
as it can get. It carries its own #defines so it doesn't break
compiles.


81234 07-Aug-2001 nyan

Merged from sys/dev/syscons/syscons.c revisions 1.370, 1.371 and 1.372.


81231 07-Aug-2001 nyan

Merged from sys/dev/syscons/scterm-sc.c revision 1.16.


80698 31-Jul-2001 nyan

Removed PLIP support.


80537 29-Jul-2001 nyan

Convert the olpt driver to using new-bus stuff.


80534 29-Jul-2001 nyan

Merged from sys/dev/syscons/syscons.c revisions 1.367 and 1.368.


80500 28-Jul-2001 kato

Merged from sys/i86/isa/npx.c revision 1.107.


80421 26-Jul-2001 peter

Call the early tunable setup functions as soon as kern_envp is available.
Some things depend on hz being set not long after this.


80371 26-Jul-2001 nyan

Speed up console driver.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


80271 24-Jul-2001 kato

Merged from sys/i386/conf/GENERIC revision 1.315.


80207 23-Jul-2001 nyan

Integrate fdc.h into fd.c.


79944 19-Jul-2001 kato

Merged from sys/i386/isa/npx.c revision 1.106.


79943 19-Jul-2001 kato

Merged from sys/i386/isa/npx.c revision 1.105.


79942 19-Jul-2001 kato

Merged from sys/i386/i386/machdep.c revisions 1.462 and 1.464.


79708 14-Jul-2001 nyan

Fixed conflict with sys/dev/syscons/syscons.h.

Submitted by: yokota


79704 14-Jul-2001 nyan

- Refine pc98 supports.
- Use bus_space stuff.
- Rename FDO_* -> FDC_* (obtained from NetBSD/pc98)


79703 14-Jul-2001 nyan

Added epson_inw function.


79702 14-Jul-2001 nyan

Merged from the following changes.

sys/dev/syscons/scvgarndr.c revision 1.11
sys/dev/syscons/scvtb.c revision 1.8
sys/dev/syscons/syscons.c revisions 1.361, 1.363, 1.364, 1.365 and 1.366
sys/isa/atkbd_isa.c revision 1.9
sys/isa/syscons_isa.c revision 1.17


79701 14-Jul-2001 nyan

Merged from sys/i386/conf/GENERIC revision 1.313.


79700 14-Jul-2001 nyan

Added (commented out) audio driver.


79663 13-Jul-2001 dd

`pcn' supports AMD Am79C97x cards, not Am79C79x cards.

PR: 28946
Submitted by: Ryuichiro Imura <imura@ryu16.org>


79628 12-Jul-2001 peter

Fix another missed pcb_savefpu reference (inside NPX_DEBUG)


79610 12-Jul-2001 peter

Apply the i386 SSE mods to pc98 as well.


79524 10-Jul-2001 nyan

Added #include <sys/proc.h>

Submitted by: Kaho Toshikazu <kaho@elam.kais.kyoto-u.ac.jp>


79378 07-Jul-2001 nyan

Merged from sys/i386/i386/machdep.c revisions 1.459 and 1.460.


79224 04-Jul-2001 dillon

With Alfred's permission, remove vm_mtx in favor of a fine-grained approach
(this commit is just the first stage). Also add various GIANT_ macros to
formalize the removal of Giant, making it easy to test in a more piecemeal
fashion. These macros will allow us to test fine-grained locks to a degree
before removing Giant, and also after, and to remove Giant in a piecemeal
fashion via sysctl's on those subsystems which the authors believe can
operate without Giant.


79207 04-Jul-2001 nyan

- Don't overwrite inb, inw and outw.
- Move the lance_probe function to if_lnc.c.
- Support C-NET(98)S again.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata) and nyan
No response from: Paul Richards


79085 02-Jul-2001 nyan

Fixed warning message.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


79053 01-Jul-2001 imp

Don't need the .keep_me files. Obrien and I committed past each other.

Add 0-9 to the list of possible kernel names at matsushita-san's
suggestion.

Submitted by: Makoto MATSUSHITA-san <matusita@jp.FreeBSD.org>


79030 30-Jun-2001 obrien

Ensure sys/${MACHINE}/compile/FOO exists

Reviewed by: arch, imp, peter, and the USENIX terminal room secret kernel cabal


79026 30-Jun-2001 imp

Really do proper keepme files in the compile directories. Use
.cvsignore file for [A-Za-z]* to keep these directories around rather
than waste a file on .keepme. This should also make people's built
trees place nice with CVS.

Idea for .cvsignore: peter (although I suggested the regexp)
Pointed out by: Makoto MATSUSHITA-san <matusita@jp.FreeBSD.org>
Llama's costuming by: Fernamdo Llamas


79019 30-Jun-2001 obrien

Ensure sys/${MACHINE}/compile/FOO exists

Reviewed by: arch, imp, peter and
the USENIX terminal room secret kernel cabal


79008 30-Jun-2001 imp

Repo copy i8237.h to dev/ic so we can get rid of some of the final vestiges
of includes of i386 files from non-i386 ports.


78962 29-Jun-2001 jhb

Add a new MI pointer to the process' trapframe p_frame instead of using
various differently named pointers buried under p_md.

Reviewed by: jake (in principle)


78961 29-Jun-2001 jhb

Enable interrupts again after disabling them in epson_{in,out}sw().
splx() doesn't do the equivalent of sti.


78815 26-Jun-2001 nyan

Merged from the following changes.

sys/isa/ppc.c revisions from 1.27 to 1.34
sys/isa/ppcreg.h revisions from 1.10 to 1.15
sys/isa/isareg.h revision 1.6


78814 26-Jun-2001 nyan

Merged from sys/isa/sio.c revision 1.335.


78813 26-Jun-2001 nyan

Merged from sys/i386/isa/isa_dma.c revision 1.7.


78812 26-Jun-2001 nyan

Merged from sys/isa/syscons_isa.c revision 1.16.


78811 26-Jun-2001 nyan

Merged from sys/dev/syscons/scterm-sc.c revison 1.15.


78810 26-Jun-2001 nyan

Merged from sys/dev/syscons/syscons.c revisons 1.358 and 1.360.


78809 26-Jun-2001 nyan

Merged from sys/isa/fd.c revisions 1.198, 1.199, 1.200, 1.202 and 1.204.


78804 26-Jun-2001 kato

Commented out pcm hints.

Pointed out by: nyan


78792 26-Jun-2001 nyan

Fixed miss merging from revision 1.102.


78655 23-Jun-2001 kato

Merged from sys/i386/isa/npx.c revision 1.102.


78653 23-Jun-2001 kato

Merged from sys/i386/i386/machdep.c revisions 1.456 and 1.457.


78652 23-Jun-2001 kato

Removed pcm and sbc devices.


78385 17-Jun-2001 nyan

Allocate all resources using keyboard controller.


78212 14-Jun-2001 nyan

Commented out USERCONFIG and VISUAL_USERCONFIG options.


78161 13-Jun-2001 peter

With this commit, I hereby pronounce gensetdefs past its use-by date.

Replace the a.out emulation of 'struct linker_set' with something
a little more flexible. <sys/linker_set.h> now provides macros for
accessing elements and completely hides the implementation.

The linker_set.h macros have been on the back burner in various
forms since 1998 and has ideas and code from Mike Smith (SET_FOREACH()),
John Polstra (ELF clue) and myself (cleaned up API and the conversion
of the rest of the kernel to use it).

The macros declare a strongly typed set. They return elements with the
type that you declare the set with, rather than a generic void *.

For ELF, we use the magic ld symbols (__start_<setname> and
__stop_<setname>). Thanks to Richard Henderson <rth@redhat.com> for the
trick about how to force ld to provide them for kld's.

For a.out, we use the old linker_set struct.

NOTE: the item lists are no longer null terminated. This is why
the code impact is high in certain areas.

The runtime linker has a new method to find the linker set
boundaries depending on which backend format is in use.

linker sets are still module/kld unfriendly and should never be used
for anything that may be modular one day.

Reviewed by: eivind


78135 12-Jun-2001 peter

Hints overhaul:
- Replace some very poorly thought out API hacks that should have been
fixed a long while ago.
- Provide some much more flexible search functions (resource_find_*())
- Use strings for storage instead of an outgrowth of the rather
inconvenient temporary ioconf table from config(). We already had a
fallback to using strings before malloc/vm was running anyway.


77962 10-Jun-2001 nyan

Move the files from i386/isa/ic/ to dev/ic/.


77800 06-Jun-2001 joerg

Nuke the various poorly maintained copies of ioctl_fd.h. The file is
not machine-dependant, thus it has been moved out (repo-copied) into
<sys/fdcio.h>.


77726 04-Jun-2001 joerg

Move out the files from src/sys/isa/ic/ to src/sys/dev/ic/, so they
can be made userland-visible as <dev/ic/...>. Also, those files are
not supposed to contain any bus-specific details at all, so placing
them under .../isa/ has been a misnomer from the beginning.

The files in src/sys/dev/ic/ have been repo-copied from their old
location (this commit is a forced null commit there to record this
message).


77645 03-Jun-2001 nyan

Merged from sys/kern/subr_diskmbr.c revision 1.45.


77644 03-Jun-2001 nyan

Merged from sys/kern/subr_diskmbr.c revision 1.52.


77621 02-Jun-2001 nyan

Merged from sys/i386/i386/machdep.c revision 1.454.


77618 02-Jun-2001 nyan

Disabled unneeded code for PC98.

Submitted by: NOKUBI Hirotaka <nokubi@ff.iij4u.or.jp>


77617 02-Jun-2001 nyan

Merged from sys/i386/isa/npx.c revision 1.101.


77455 30-May-2001 mjacob

move wx to be part of miibus requiring chipsets


77414 29-May-2001 phk

Remove MFS options from all example kernel configs.


76931 21-May-2001 nyan

Update pc98 memory probe functions.
- pc98_getmemsize() function returns available memory size under 16MB.
- getmemsize() function is merged from PC-AT's one.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata) and
NOKUBI Hirotaka <nokubi@ff.iij4u.or.jp>


76929 21-May-2001 nyan

Merged from sys/i386/isa/npx.c revisions 1.99 and 1.100.


76928 21-May-2001 nyan

Merged from sys/i386/i386/machdep.c revisions 1.452 and 1.453.


76650 15-May-2001 jhb

Remove unneeded includes of sys/ipl.h and machine/ipl.h.


76615 15-May-2001 kato

Merged from sys/isa/fd.c revision 1.197.


76614 15-May-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.450.


76554 13-May-2001 phk

Convert DEVFS from an "opt-in" to an "opt-out" option.

If for some reason DEVFS is undesired, the "NODEVFS" option is
needed now.

Pending any significant issues, DEVFS will be made mandatory in
-current on july 1st so that we can start reaping the full
benefits of having it.


76440 10-May-2001 jhb

- Split out the support for per-CPU data from the SMP code. UP kernels
have per-CPU data and gdb on the i386 at least needs access to it.
- Clean up includes in kern_idle.c and subr_smp.c.

Reviewed by: jake


76322 06-May-2001 phk

Actually biofinish(struct bio *, struct devstat *, int error) is more general
than the bioerror().

Most of this patch is generated by scripts.


76308 06-May-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.448.


76304 06-May-2001 nyan

Merged from sys/i386/conf/GENERIC revision 1.304.


76303 06-May-2001 nyan

Merged from sys/isa/fd.c revision 1.193.


76212 02-May-2001 kato

Merged from sys/isa/sio.c revision 1.330.


76211 02-May-2001 kato

Merged from sys/isa/fd.c revision 1.195.


76210 02-May-2001 kato

Merged from sys/i386/isa/npx.c revisions 1.96 and 1.97.


76209 02-May-2001 kato

Merged from sys/i386/isa/clock.c revisions 1.172 and 1.173.


76208 02-May-2001 kato

Merged the rest of changes in sys/i386/i386/machdep.c revision 1.447.


76166 01-May-2001 markm

Undo part of the tangle of having sys/lock.h and sys/mutex.h included in
other "system" header files.

Also help the deprecation of lockmgr.h by making it a sub-include of
sys/lock.h and removing sys/lockmgr.h form kernel .c files.

Sort sys/*.h includes where possible in affected files.

OK'ed by: bde (with reservations)


76078 27-Apr-2001 jhb

Overhaul of the SMP code. Several portions of the SMP kernel support have
been made machine independent and various other adjustments have been made
to support Alpha SMP.

- It splits the per-process portions of hardclock() and statclock() off
into hardclock_process() and statclock_process() respectively. hardclock()
and statclock() call the *_process() functions for the current process so
that UP systems will run as before. For SMP systems, it is simply necessary
to ensure that all other processors execute the *_process() functions when the
main clock functions are triggered on one CPU by an interrupt. For the alpha
4100, clock interrupts are delievered in a staggered broadcast fashion, so
we simply call hardclock/statclock on the boot CPU and call the *_process()
functions on the secondaries. For x86, we call statclock and hardclock as
usual and then call forward_hardclock/statclock in the MD code to send an IPI
to cause the AP's to execute forwared_hardclock/statclock which then call the
*_process() functions.
- forward_signal() and forward_roundrobin() have been reworked to be MI and to
involve less hackery. Now the cpu doing the forward sets any flags, etc. and
sends a very simple IPI_AST to the other cpu(s). AST IPIs now just basically
return so that they can execute ast() and don't bother with setting the
astpending or needresched flags themselves. This also removes the loop in
forward_signal() as sched_lock closes the race condition that the loop worked
around.
- need_resched(), resched_wanted() and clear_resched() have been changed to take
a process to act on rather than assuming curproc so that they can be used to
implement forward_roundrobin() as described above.
- Various other SMP variables have been moved to a MI subr_smp.c and a new
header sys/smp.h declares MI SMP variables and API's. The IPI API's from
machine/ipl.h have moved to machine/smp.h which is included by sys/smp.h.
- The globaldata_register() and globaldata_find() functions as well as the
SLIST of globaldata structures has become MI and moved into subr_smp.c.
Also, the globaldata list is only available if SMP support is compiled in.

Reviewed by: jake, peter
Looked over by: eivind


75893 24-Apr-2001 jhb

Change the pfind() and zpfind() functions to lock the process that they
find before releasing the allproc lock and returning.

Reviewed by: -smp, dfr, jake


75539 16-Apr-2001 kato

Merged from sys/i386/isa/npx.c revision 1.95.


75528 15-Apr-2001 obrien

Turn on kernel debugging support (DDB, INVARIANTS, INVARIANT_SUPPORT, WITNESS)
by default while SMPng is still being developed.

Submitted by: jhb


75060 01-Apr-2001 nyan

Correct typo.


75059 01-Apr-2001 nyan

Merged from sys/i386/i386/bioscall.s revision 1.9 and 1.10.


75056 01-Apr-2001 nyan

Merged from sys/i386/isa/clock.c revision 1.171.


75055 01-Apr-2001 nyan

Merged from sys/i386/i386/machdep.c revision 1.446.


75052 01-Apr-2001 nyan

Merged from sys/i386/apm/apm.c revision 1.121.


74903 28-Mar-2001 jhb

Switch from save/disable/restore_intr() to critical_enter/exit().


74810 26-Mar-2001 phk

Send the remains (such as I have located) of "block major numbers" to
the bit-bucket.


74680 23-Mar-2001 kato

Merged from sys/i386/isa/npx.c revision 1.93.


74679 23-Mar-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.445.


74392 17-Mar-2001 kato

Merged from sys/i386/conf/GENERIC revision 1.305 (moved the fxp driver
into the miibus section.)


73993 08-Mar-2001 kato

Replaced p (undeclared) with curproc (after i386/isa/npx.c).


73929 07-Mar-2001 jhb

Grab the process lock while calling psignal and before calling psignal.


73149 27-Feb-2001 nyan

Added another wd33c93 based SCSI card driver which replaces the bs driver.
Now, default is still bs.

Submitted by: nyan and non.
Obtained from: NetBSD/pc98


73022 25-Feb-2001 nyan

Supported pcmcia modem card.

Submitted by: MURAMATSU Atsushi <amura@ma3.seikyou.ne.jp>


73019 25-Feb-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.443.


72930 23-Feb-2001 peter

Activate USER_LDT by default. The new thread libraries are going to
depend on this. The linux ABI emulator tries to use it for some linux
binaries too. VM86 had a bigger cost than this and it was made default
a while ago.

Reviewed by: jhb, imp


72793 21-Feb-2001 kato

Merged from sys/isa/sio.c revision 1.326.


72792 21-Feb-2001 kato

Merged from sys/i386/isa/clock.c revision 1.170.


72791 21-Feb-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.441.


72645 18-Feb-2001 asmodai

Preceed/preceeding are not english words. Use precede and preceding.


72434 13-Feb-2001 kato

Merged from sys/i386/isa/clock.c revision 1.169.


72433 13-Feb-2001 kato

Merged from sys/i386/isa/npx.c revision 1.90.


72431 13-Feb-2001 kato

Merged from sys/isa/sio.c revision 1.324 (sched_swi -> swi_sched).


72358 11-Feb-2001 markm

RIP <machine/lock.h>.

Some things needed bits of <i386/include/lock.h> - cy.c now has its
own (only) copy of the COM_(UN)LOCK() macros, and IMASK_(UN)LOCK()
has been moved to <i386/include/apic.h> (AKA <machine/apic.h>).
Reviewed by: jhb


72226 09-Feb-2001 jhb

Move the initailization of the proc lock for proc0 very early into the MD
startup code.


72200 09-Feb-2001 bmilekic

Change and clean the mutex lock interface.

mtx_enter(lock, type) becomes:

mtx_lock(lock) for sleep locks (MTX_DEF-initialized locks)
mtx_lock_spin(lock) for spin locks (MTX_SPIN-initialized)

similarily, for releasing a lock, we now have:

mtx_unlock(lock) for MTX_DEF and mtx_unlock_spin(lock) for MTX_SPIN.
We change the caller interface for the two different types of locks
because the semantics are entirely different for each case, and this
makes it explicitly clear and, at the same time, it rids us of the
extra `type' argument.

The enter->lock and exit->unlock change has been made with the idea
that we're "locking data" and not "entering locked code" in mind.

Further, remove all additional "flags" previously passed to the
lock acquire/release routines with the exception of two:

MTX_QUIET and MTX_NOSWITCH

The functionality of these flags is preserved and they can be passed
to the lock/unlock routines by calling the corresponding wrappers:

mtx_{lock, unlock}_flags(lock, flag(s)) and
mtx_{lock, unlock}_spin_flags(lock, flag(s)) for MTX_DEF and MTX_SPIN
locks, respectively.

Re-inline some lock acq/rel code; in the sleep lock case, we only
inline the _obtain_lock()s in order to ensure that the inlined code
fits into a cache line. In the spin lock case, we inline recursion and
actually only perform a function call if we need to spin. This change
has been made with the idea that we generally tend to avoid spin locks
and that also the spin locks that we do have and are heavily used
(i.e. sched_lock) do recurse, and therefore in an effort to reduce
function call overhead for some architectures (such as alpha), we
inline recursion for this case.

Create a new malloc type for the witness code and retire from using
the M_DEV type. The new type is called M_WITNESS and is only declared
if WITNESS is enabled.

Begin cleaning up some machdep/mutex.h code - specifically updated the
"optimized" inlined code in alpha/mutex.h and wrote MTX_LOCK_SPIN
and MTX_UNLOCK_SPIN asm macros for the i386/mutex.h as we presently
need those.

Finally, caught up to the interface changes in all sys code.

Contributors: jake, jhb, jasone (in no particular order)


72011 04-Feb-2001 peter

Clean up some leftovers from the root mount cleanup that was done some
time ago. FFS_ROOT and CD9660_ROOT are obsolete.


71990 04-Feb-2001 phk

Remove the LABPC driver.

Doesn't work, no maintainer, more promising code exists elsewhere.


71984 04-Feb-2001 peter

All the world is not an i386. Merge rev 1.438 of i386/i386/machdep.c.
Make buffer_map a system map.


71880 31-Jan-2001 peter

Remove count for NSIO. The only places it was used it were incorrect.
(alpha-gdbstub.c got sync'ed up a bit with the i386 version)


71797 29-Jan-2001 peter

Convert mca (microchannel bus support) from something that we count
(bogus) to something that we test for the presence of.


71785 29-Jan-2001 peter

Send "#if NISA > 0" to the bit-bucket and replace it with an option.
These were compile-time "is the isa code present?" tests and not
'how many isa busses' tests.


71780 29-Jan-2001 peter

Gag. These compiled because I had a stray "eisa.h" in my config dir.


71776 29-Jan-2001 peter

change 'count eisa' to 'optional eisa' and update the only consumer
of 'NEISA' - userconfig.c.
While there, send some defunct code to the file history.


71737 28-Jan-2001 kato

Merged from sys/i386/isa/npx.c revisions 1.88 and 1.89.


71736 28-Jan-2001 kato

Synced with sys/i386/i386/machdep.c revision 1.436.


71713 27-Jan-2001 nyan

Merged from sys/isa/sio.c revision 1.320.


71423 23-Jan-2001 nyan

Added pc98 apm driver.

Submitted by: MURAMATSU Atsushi <amura@ma3.seikyou.ne.jp>


71320 21-Jan-2001 jasone

Remove MUTEX_DECLARE() and MTX_COLD. Instead, postpone full mutex
initialization until after malloc() is safe to call, then iterate through
all mutexes and complete their initialization.

This change is necessary in order to avoid some circular bootstrapping
dependencies.


71286 20-Jan-2001 wollman

Finish deprecating <sys/select.h> in favor of <sys/selinfo.h> in kernel code.


71262 19-Jan-2001 peter

Convert apm from a bogus 'count' into a plain option. Clean out some
other cruft from the files.alpha and files.ia64 that were related to this.


71261 19-Jan-2001 peter

Zap unused #include "apm.h"


71257 19-Jan-2001 peter

Use #ifdef DEV_NPX from opt_npx.h instead of #if NNPX > 0 from npx.h


71228 19-Jan-2001 bmilekic

Implement MTX_RECURSE flag for mtx_init().
All calls to mtx_init() for mutexes that recurse must now include
the MTX_RECURSE bit in the flag argument variable. This change is in
preparation for an upcoming (further) mutex API cleanup.
The witness code will call panic() if a lock is found to recurse but
the MTX_RECURSE bit was not set during the lock's initialization.

The old MTX_RECURSE "state" bit (in mtx_lock) has been renamed to
MTX_RECURSED, which is more appropriate given its meaning.

The following locks have been made "recursive," thus far:
eventhandler, Giant, callout, sched_lock, possibly some others declared
in the architecture-specific code, all of the network card driver locks
in pci/, as well as some other locks in dev/ stuff that I've found to
be recursive.

Reviewed by: jhb


71098 16-Jan-2001 peter

Stop doing runtime checking on i386 cpus for cpu class. The cpu is
slow enough as it is, without having to constantly check that it really
is an i386 still. It was possible to compile out the conditionals for
faster cpus by leaving out 'I386_CPU', but it was not possible to
unconditionally compile for the i386. You got the runtime checking whether
you wanted it or not. This makes I386_CPU mutually exclusive with the
other cpu types, and tidies things up a little in the process.

Reviewed by: alfred, markm, phk, benno, jlemon, jhb, jake, grog, msmith,
jasone, dcs, des (and a bunch more people who encouraged it)


71037 14-Jan-2001 markm

Remove NOBLOCKRANDOM as a compile-time option. Instead, provide
exactly the same functionality via a sysctl, making this feature
a run-time option.

The default is 1(ON), which means that /dev/random device will
NOT block at startup.

setting kern.random.sys.seeded to 0(OFF) will cause /dev/random
to block until the next reseed, at which stage the sysctl
will be changed back to 1(ON).

While I'm here, clean up the sysctls, and make them dynamic.
Reviewed by: des
Tested on Alpha by: obrien


70994 13-Jan-2001 nyan

Merged from sys/i386/conf/GENERIC revision from 1.286 to 1.291.


70993 13-Jan-2001 nyan

Merged from sys/i386/conf/GENERIC.hints revision 1.6 and 1.7.


70969 12-Jan-2001 kato

Merged from sys/i386/isa/npx.c revision 1.87.


70968 12-Jan-2001 kato

Merged from sys/i386/i386/machdep.c revisions 1.427 and 1.428.


70793 08-Jan-2001 nyan

Correct typo.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


70745 07-Jan-2001 kato

Merged from sys/i386/i386/machdep.c revision 1.426.


70087 16-Dec-2000 kato

Merged from sys/i386/conf/GENERIC revisions 1.292 - 1.294.


70085 16-Dec-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.425.


69814 10-Dec-2000 nyan

Removed the VoxWare sound drivers.


69788 09-Dec-2000 nyan

Fixed to support 3Com 3C569B for PC-98.

Submitted by: "Hirokazu WATANABE" <gwna@geocities.co.jp>


69781 08-Dec-2000 dwmalone

Convert more malloc+bzero to malloc+M_ZERO.

Submitted by: josh@zipperup.org
Submitted by: Robert Drehmel <robd@gmx.net>


69774 08-Dec-2000 phk

Staticize some malloc M_ instances.


69614 05-Dec-2000 kato

Merged from sys/i386/isa/clock.c revision 1.164.


69613 05-Dec-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.424.


69379 30-Nov-2000 marcel

Don't use p->p_sigstk.ss_flags to keep state of whether the
process is on the alternate stack or not. For compatibility
with sigstack(2) state is being updated if such is needed.

We now determine whether the process is on the alternate
stack by looking at its stack pointer. This allows a process
to siglongjmp from a signal handler on the alternate stack
to the place of the sigsetjmp on the normal stack. When
maintaining state, this would have invalidated the state
information and causing a subsequent signal to be delivered
on the normal stack instead of the alternate stack.

PR: 22286


69353 29-Nov-2000 kato

Merged from sys/i386/i386/userconfig.c revision 1.185.


69210 26-Nov-2000 phk

Make diskerr() always log with printf.


69193 26-Nov-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.422.


69152 25-Nov-2000 jlemon

Lock down the network interface queues. The queue mutex must be obtained
before adding/removing packets from the queue. Also, the if_obytes and
if_omcasts fields should only be manipulated under protection of the mutex.

IF_ENQUEUE, IF_PREPEND, and IF_DEQUEUE perform all necessary locking on
the queue. An IF_LOCK macro is provided, as well as the old (mutex-less)
versions of the macros in the form _IF_ENQUEUE, _IF_QFULL, for code which
needs them, but their use is discouraged.

Two new macros are introduced: IF_DRAIN() to drain a queue, and IF_HANDOFF,
which takes care of locking/enqueue, and also statistics updating/start
if necessary.


68936 20-Nov-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.421.


68360 05-Nov-2000 nyan

Merged from the following changes.

sys/conf/Makefile.i386 1.211
sys/conf/files.i386 1.329
sys/isa/fd.c 1.186, 1.188 and 1.189
sys/isa/sio.c 1.305 and 1.317
sys/i386/conf/GENERIC 1.270, 1.281, 1.282 and 1.284
sys/i386/i386/machdep.c 1.419
sys/i386/i386/userconfig.c 1.184


67893 29-Oct-2000 phk

Move suser() and suser_xxx() prototypes and a related #define from
<sys/proc.h> to <sys/systm.h>.

Correctly document the #includes needed in the manpage.

Add one now needed #include of <sys/systm.h>.
Remove the consequent 48 unused #includes of <sys/proc.h>.


67788 28-Oct-2000 nyan

Restore GDC mode to initial mode instead of 24KHz.

Submitted by: Tomokazu HARADA <tkhara@osk4.3web.ne.jp>


67786 28-Oct-2000 nyan

Fixed extention memory check routine.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


67708 27-Oct-2000 phk

Convert all users of fldoff() to offsetof(). fldoff() is bad
because it only takes a struct tag which makes it impossible to
use unions, typedefs etc.

Define __offsetof() in <machine/ansi.h>

Define offsetof() in terms of __offsetof() in <stddef.h> and <sys/types.h>

Remove myriad of local offsetof() definitions.

Remove includes of <stddef.h> in kernel code.

NB: Kernelcode should *never* include from /usr/include !

Make <sys/queue.h> include <machine/ansi.h> to avoid polluting the API.

Deprecate <struct.h> with a warning. The warning turns into an error on
01-12-2000 and the file gets removed entirely on 01-01-2001.

Paritials reviews by: various.
Significant brucifications by: bde


67689 27-Oct-2000 markm

As the blocking model has seems to be troublesome for many, disable
it for now with an option.

This option is already deprecated, and will be removed when the
entropy-harvesting code is fast enough to warrant it.


67580 25-Oct-2000 jhb

Catch up to the new swi code.

Noticed by: phk


67551 25-Oct-2000 jhb

- Overhaul the software interrupt code to use interrupt threads for each
type of software interrupt. Roughly, what used to be a bit in spending
now maps to a swi thread. Each thread can have multiple handlers, just
like a hardware interrupt thread.
- Instead of using a bitmask of pending interrupts, we schedule the specific
software interrupt thread to run, so spending, NSWI, and the shandlers
array are no longer needed. We can now have an arbitrary number of
software interrupt threads. When you register a software interrupt
thread via sinthand_add(), you get back a struct intrhand that you pass
to sched_swi() when you wish to schedule your swi thread to run.
- Convert the name of 'struct intrec' to 'struct intrhand' as it is a bit
more intuitive. Also, prefix all the members of struct intrhand with
'ih_'.
- Make swi_net() a MI function since there is now no point in it being
MD.

Submitted by: cp


67370 20-Oct-2000 kato

Used kbio.h and consio.h instead of machine/console.h.


67369 20-Oct-2000 kato

Merged from sys/i386/isa/npx.c revision 1.86.


67368 20-Oct-2000 kato

Merged from sys/i386/isa/clock.c revision 1.160.


67367 20-Oct-2000 kato

Merged from sys/i386/i386/machdep.c revisions 1.417 and 1.418.


67288 18-Oct-2000 kato

Converted `da' and `wd' into `rda' and `rwd', respectively.

Submitted by: MURAMATSU Atsushi <amura@ma3.seikyou.ne.jp>


67282 18-Oct-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.416.


67164 15-Oct-2000 phk

Remove unneeded #include <machine/clock.h>


67156 15-Oct-2000 peter

Clean up as in isa/* - resource_query_string() loop cosmetic tweaks.


67154 15-Oct-2000 nyan

Fixed warnings.


67142 15-Oct-2000 nyan

Fixed warnings.


66870 09-Oct-2000 kato

Fixed include files to use sys/{cons,fb,kb}io.h instead of
machine/console.h.


66860 09-Oct-2000 phk

Initiate deorbit burn sequence for <machine/mouse.h>.

Replace all in-tree uses with <sys/mouse.h> which repo-copied a few
moments ago from src/sys/i386/include/mouse.h by peter.
This is also the appropriate fix for exo-tree sources.

Put warnings in <machine/mouse.h> to discourage use.
November 15th 2000 the warnings will be converted to errors.
January 15th 2001 the <machine/mouse.h> files will be removed.


66738 06-Oct-2000 kato

Merged from sys/isa/sio.c revision 1.316.


66737 06-Oct-2000 kato

Merged from sys/i386/isa/npx.c revision 1.85.


66736 06-Oct-2000 kato

Merged from sys/i386/isa/clock.c revisions 1.158 and 1.159.


66735 06-Oct-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.415.


66585 03-Oct-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.414.


66550 02-Oct-2000 nyan

Added NEC PC-9801-83, 84, PC-9801-103, 104, PC-9801N-25 and PC-9801N-J02R
support which use National Semiconductor DP8393X (SONIC) as ethernet
controller. Currently, this driver is used on only PC-98.

Submitted by: Motomichi Matsuzaki <mzaki@e-mail.ne.jp>
Obtained from: NetBSD/pc98


66536 02-Oct-2000 kato

Merged from sys/i368/i386/machdep.c revision 1.413.


66475 30-Sep-2000 bmilekic

Big mbuf subsystem diff #1: incorporate mutexes and fix things up somewhat
to accomodate the changes.

Here's a list of things that have changed (I may have left out a few); for a
relatively complete list, see http://people.freebsd.org/~bmilekic/mtx_journal

* Remove old (once useful) mcluster code for MCLBYTES > PAGE_SIZE which
nobody uses anymore. It was great while it lasted, but now we're moving
onto bigger and better things (Approved by: wollman).

* Practically re-wrote the allocation macros in sys/sys/mbuf.h to accomodate
new allocations which grab the necessary lock.

* Make sure that necessary mbstat variables are manipulated with
corresponding atomic() routines.

* Changed the "wait" routines, cleaned it up, made one routine that does
the job.

* Generalized MWAKEUP() macro. Got rid of m_retry and m_retryhdr, as they
are now included in the generalized "wait" routines.

* Sleep routines now use msleep().

* Free lists have locks.

* etc... probably other stuff I'm missing...

Things to look out for and work on later:

* find a better way to (dynamically) adjust EXT_COUNTERS

* move necessity to recurse on a lock from drain routines by providing
lock-free lower-level version of MFREE() (and possibly m_free()?).

* checkout include of mutex.h in sys/sys/mbuf.h - probably violating
general philosophy here.

The code has been reviewed quite a bit, but problems may arise... please,
don't panic! Send me Emails: bmilekic@freebsd.org

Reviewed by: jlemon, cp, alfred, others?


66294 23-Sep-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.411.


66293 23-Sep-2000 kato

Merged from sys/i386/conf/GENERIC revision 1.279.


66250 22-Sep-2000 kato

Merged from sys/isa/sio.c revision 1.315.


66248 22-Sep-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.410.


66247 22-Sep-2000 kato

Merged from sys/i386/conf/GENERIC revision 1.278.


65878 15-Sep-2000 kato

Merged from sys/isa/fd.c revision 1.187.

Pointed out by: nyan


65877 15-Sep-2000 kato

Merged from sys/i386/isa/sio.c revision 1.314.


65876 15-Sep-2000 kato

Merged from sys/i386/isa/clock.c revision 1.157.


65875 15-Sep-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.408.


65856 14-Sep-2000 jhb

Remove the mtx_t, witness_t, and witness_blessed_t types. Instead, just
use struct mtx, struct witness, and struct witness_blessed.

Requested by: bde


65831 14-Sep-2000 nyan

- Changed the structure name (struct disk -> struct softc).
- Converted to disk_create() interface.
- Removed unnecessary code.


65810 13-Sep-2000 kato

Merged from sys/isa/sio.c revision 1.312.


65809 13-Sep-2000 kato

Merged from sys/i386/conf/GENERIC revision 1.275.


65808 13-Sep-2000 kato

Merged from sys/i386/conf/GENERIC revision 1.274.


65759 11-Sep-2000 dwmalone

Add the ability to define a "shutdown" and "shutdown and poweroff" key
to syscons. I have a man page to follow describing the format of the
kbdmap file.

PR: 19273
Reviewed by: sheldonh


65611 08-Sep-2000 kato

Merged from sys/isa/sio.c revisions 1.309 - 1.311.


65608 08-Sep-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.407.


65569 07-Sep-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.406.


65568 07-Sep-2000 kato

Merged from sys/isa/sio.c revision 1.306, 1.307 and 1.308.


65567 07-Sep-2000 kato

Merged from sys/i386/isa/npx.c revision 1.84.


65566 07-Sep-2000 kato

Merged from sys/i386/isa/clock.c revision 1.156.


65410 03-Sep-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.405.


65408 03-Sep-2000 kato

Merged from sys/i386/i386/machdep.c rev. 1.404 just for keeping
similarity. No PC-98 may have ACPI feature, but I'm not 100%
sure.


65397 03-Sep-2000 kato

Merged from sys/dev/syscons/syscons.c revision 1.346.


65322 01-Sep-2000 kato

Fixed FPU_ERROR_BROKEN code. It had old-isa code.


65111 26-Aug-2000 nyan

Enabled pcic, card and xe devices.


65059 24-Aug-2000 peter

Comment out the static wiring of hints for GENERIC - the release process
now installs the hints file into /boot.


64840 19-Aug-2000 nyan

Disabled serial console.


64837 19-Aug-2000 dwmalone

Replace the mbuf external reference counting code with something
that should be better.

The old code counted references to mbuf clusters by using the offset
of the cluster from the start of memory allocated for mbufs and
clusters as an index into an array of chars, which did the reference
counting. If the external storage was not a cluster then reference
counting had to be done by the code using that external storage.

NetBSD's system of linked lists of mbufs was cosidered, but Alfred
felt it would have locking issues when the kernel was made more
SMP friendly.

The system implimented uses a pool of unions to track external
storage. The union contains an int for counting the references and
a pointer for forming a free list. The reference counts are
incremented and decremented atomically and so should be SMP friendly.
This system can track reference counts for any sort of external
storage.

Access to the reference counting stuff is now through macros defined
in mbuf.h, so it should be easier to make changes to the system in
the future.

The possibility of storing the reference count in one of the
referencing mbufs was considered, but was rejected 'cos it would
often leave extra mbufs allocated. Storing the reference count in
the cluster was also considered, but because the external storage
may not be a cluster this isn't an option.

The size of the pool of reference counters is available in the
stats provided by "netstat -m".

PR: 19866
Submitted by: Bosko Milekic <bmilekic@dsuper.net>
Reviewed by: alfred (glanced at by others on -net)


64813 18-Aug-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.402.


64777 17-Aug-2000 nyan

- Fixed the conversion to bus_space interface.
- Added PC-98 Cbus devices support.
The original patch is submitted by chi@bd.mbn.or.jp (Chiharu Shibata)
- Removed old ed driver.


64636 14-Aug-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.401.


64552 12-Aug-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.400.


64398 08-Aug-2000 nyan

Merged from sys/i386/conf/GENERIC revisions 1.266 and 1.267.


64397 08-Aug-2000 nyan

Merged from sys/i386/conf/GENERIC.hints revision 1.3.


64394 08-Aug-2000 nyan

Changed default cursor shape to non-blink mode.

Submitted by: Tomokazu HARADA <tkhara@osk4.3web.ne.jp>


64392 08-Aug-2000 nyan

Fixed PC-9821 NOTE supports with LINE30 mode.

Submitted by: Tomokazu HARADA <tkhara@osk4.3web.ne.jp>


64229 04-Aug-2000 kato

Commented out xe device because it depend on PCMCIA stuff.


64228 04-Aug-2000 kato

Merged from sys/i386/isa/clock.c revision 1.155.


64124 02-Aug-2000 kato

Commented out card and pcic devices because they are broken in pc98 port.


64021 30-Jul-2000 nyan

Merged from sys/dev/syscons/scterm-sc.c revisions from 1.8 to 1.12.


64020 30-Jul-2000 nyan

Merged from sys/dev/syscons/syscons.c revision 1.344.


63960 28-Jul-2000 kato

Merged from sys/dev/syscons/syscons.c revision 1.345.


63090 13-Jul-2000 archie

Make all Ethernet drivers attach using ether_ifattach() and detach using
ether_ifdetach().

The former consolidates the operations of if_attach(), ng_ether_attach(),
and bpfattach(). The latter consolidates the corresponding detach operations.

Reviewed by: julian, freebsd-net


63011 12-Jul-2000 nyan

Backed out a part of previous commit. The function name conflicts.

Pointed out by: haro@tk.kubota.co.jp (Munehiro Matsuda)


62952 11-Jul-2000 nyan

Merge from the following changes.

sys/conf/files.i386 1.321
sys/dev/syscons/syscons.c 1.343
sys/i386/isa/spkr.c 1.46
sys/isa/fd.c 1.183 and 1.185
sys/isa/syscons_isa.c 1.14
sys/isa/vga_isa.c 1.18


62876 10-Jul-2000 kris

Don't call printf without a format string.


62574 04-Jul-2000 nyan

Sync with sys/i386/conf/GENERIC revisions 1.258 and 1.259.


62573 04-Jul-2000 phk

Previous commit changing SYSCTL_HANDLER_ARGS violated KNF.

Pointed out by: bde


62454 03-Jul-2000 phk

Style police catches up with rev 1.26 of src/sys/sys/sysctl.h:

Sanitize SYSCTL_HANDLER_ARGS so that simplistic tools can grog our
sources:

-sysctl_vm_zone SYSCTL_HANDLER_ARGS
+sysctl_vm_zone (SYSCTL_HANDLER_ARGS)


62205 28-Jun-2000 kato

Disabled ida, amr and mlx devices.


62204 28-Jun-2000 kato

Merged from sys/i386/i386/userconfig.c revision 1.181.


62203 28-Jun-2000 kato

Merged from sys/i386/isa/spkr.c revision 1.47.


62202 28-Jun-2000 kato

Merged from sys/i386/isa/npx.c revision 1.83.


62201 28-Jun-2000 kato

Merged from sys/i386/isa/isa_dma.c revision 1.6.


62200 28-Jun-2000 kato

Merged from sys/i386/isa/clock.c revision 1.152.


62198 28-Jun-2000 kato

Merged from sys/i386/conf/GENERIC revisions 1.261 and 1.262.


62111 26-Jun-2000 peter

Report the line number where gethints.pl does not understand something
in an old device line.


62069 25-Jun-2000 markm

Remove old entropy-harvesting hooks; this is going to be re-engineered
later.


62068 25-Jun-2000 markm

Remove the old /dev/random device. There is a new machine-independant
version.
Reviewed by: dfr


62007 23-Jun-2000 kato

Oops! Disabled the ed driver becasue it cannot be compiled.

Pointed out by: nyan


62002 23-Jun-2000 kato

Include pc98/pc98/pc98.h in which M_EPSON_PC98 is defined when the
EPSON_MEMWIN option is specified.


61950 22-Jun-2000 nyan

Sync with sys/dev/syscons/scterm-sc.c revisions 1.6 and 1.7.


61905 21-Jun-2000 kato

PC-98 version of ed driver is a statically limited driver.

Pointed out by: haro@tk.kubota.co.jp (Munehiro Matsuda)


61897 21-Jun-2000 nyan

Fixed to support RSA98-III non-pnp mode. rman_get_start() had returned
iobase + 8 because the I/O address table for RSA98-III starts with +8.
Now, bus_alloc_resource() is used instead of isa_alloc_resourcev() if
device type is RSA98III.


61755 17-Jun-2000 peter

Deal with quoted arguments. This hack parser uses whitespace to delimit
fields, not lex/yacc grammar so it is not an exact match but should be
close enough for most cases.
Deal with 'port?', 'irq?' style specifications. These are parsed as
seperate values in lex/yacc in config(8) but tripped up this helper tool.


61752 17-Jun-2000 peter

Use while (<>) instead of while(<STDIN>) so that perl will automagically
deal with filename arguments. It is amazing how much you forget over time.

Thanks to the people that reminded me this. I knew there was an easy way
that didn't involve messing with $argv, filehandles, etc, but just could
not remember - all of my books are on the opposite side of the planet..


61750 17-Jun-2000 nyan

- Moved "hint" informations to GENERIC.hints.
- Cosmetic changes.


61742 17-Jun-2000 kato

Merged from sys/isa/syscons_isa.c revision 1.13.


61741 17-Jun-2000 kato

bs, olpt, pckbd are static limited devices.


61654 14-Jun-2000 kato

Catch up with Peter's config(8) changes.


61644 14-Jun-2000 peter

Print error messages to stderr, not stdout.


61640 13-Jun-2000 peter

Borrow phk's axe and apply the next stage of config(8)'s evolution.

Use Warner Losh's "hint" driver to decode ascii strings to fill the
resource table at boot time.

config(8) no longer generates an ioconf.c table - ie: the configuration
no longer has to be compiled into the kernel. You can reconfigure your
isa devices with the likes of this at loader(8) time:
set hint.ed.0.port=0x320

userconfig will be rewritten to use this style interface one day and will
move to /boot/userconfig.4th or something like that.

It is still possible to statically compile in a set of hints into a kernel
if you do not wish to use loader(8). See the "hints" directive in GENERIC
as an example.

All device wiring has been moved out of config(8). There is a set of
helper scripts (see i386/conf/gethints.pl, and the same for alpha and pc98)
that extract the 'at isa? port foo irq bar' from the old files and produces
a hints file. If you install this file as /boot/device.hints (and update
/boot/defaults/loader.conf - You can do a build/install in sys/boot) then
loader will load it automatically for you. You can also compile in the
hints directly with: hints "device.hints" as well.

There are a few things that I'm not too happy with yet. Under this scheme,
things like LINT would no longer be useful as "documentation" of settings.
I have renamed this file to 'NOTES' and stored the example hints strings
in it. However... this is not something that config(8) understands, so
there is a script that extracts the build-specific data from the
documentation file (NOTES) to produce a LINT that can be config'ed and
built. A stack of man4 pages will need updating. :-/

Also, since there is no longer a difference between 'device' and
'pseudo-device' I collapsed the two together, and the resulting 'device'
takes a 'number of units' for devices that still have it statically
allocated. eg: 'device fe 4' will compile the fe driver with NFE set
to 4. You can then set hints for 4 units (0 - 3). Also note that
'device fe0' will be interpreted as "zero units of 'fe'" which would be
bad, so there is a config warning for this. This is only needed for
old drivers that still have static limits on numbers of units.
All the statically limited drivers that I could find were marked.

Please exercise EXTREME CAUTION when transitioning!

Moral support by: phk, msmith, dfr, asmodai, imp, and others


61626 13-Jun-2000 kato

Merged from sys/i386/i386/machdep.c rev 1.395.


61330 06-Jun-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.394.


61329 06-Jun-2000 kato

Merged from sys/i386/isa/{clock.c,npx.c} revisions 1.151 and 1.82,
respectively.


61327 06-Jun-2000 kato

Merged from sys/i386/isa/npx.c revision 1.81.


61116 31-May-2000 nyan

Update of isa drivers using compatability shims to use COMPAT_ISA_DRIVER().

Submitted by: haro@tk.kubota.co.jp (Munehiro Matsuda)


61115 31-May-2000 nyan

Sync with sys/isa/ppc.c revision 1.27.


61114 31-May-2000 nyan

Removed ICMP_BANDLIM option. It no longer exists.


61010 28-May-2000 peter

The dreaded isa_compat.h tables are no longer used, so there is no need
for a seperate pc98 version of this stuff. Applying the same changes
from the i386 version yields identical files so remove these and use the
common ones.


60950 26-May-2000 nyan

Fixed header file path (machine/lpt.h -> dev/ppbus/lptio.h).


60793 22-May-2000 nyan

Sync with sys/i386/isa/isa_compat.h revisions 1.28, 1.29 and 1.33.


60755 21-May-2000 peter

Implement an optimization of the VM<->pmap API. Pass vm_page_t's directly
to various pmap_*() functions instead of looking up the physical address
and passing that. In many cases, the first thing the pmap code was doing
was going to a lot of trouble to get back the original vm_page_t, or
it's shadow pv_table entry.

Inspired by: John Dyson's 1998 patches.

Also:
Eliminate pv_table as a seperate thing and build it into a machine
dependent part of vm_page_t. This eliminates having a seperate set of
structions that shadow each other in a 1:1 fashion that we often went to
a lot of trouble to translate from one to the other. (see above)
This happens to save 4 bytes of physical memory for each page in the
system. (8 bytes on the Alpha).

Eliminate the use of the phys_avail[] array to determine if a page is
managed (ie: it has pv_entries etc). Store this information in a flag.
Things like device_pager set it because they create vm_page_t's on the
fly that do not have pv_entries. This makes it easier to "unmanage" a
page of physical memory (this will be taken advantage of in subsequent
commits).

Add a function to add a new page to the freelist. This could be used
for reclaiming the previously wasted pages left over from preloaded
loader(8) files.

Reviewed by: dillon


60717 19-May-2000 nyan

Sync with sys/i386/conf/GENERIC revisions from 1.246 to 1.256.


60711 19-May-2000 nyan

Supported the mss on PC-98 and Sound Blaster 98.

Submitted by: "T.Yamaoka" <taka@windows.squares.net>


60536 14-May-2000 archie

Move code to handle BPF and bridging for incoming Ethernet packets out
of the individual drivers and into the common routine ether_input().
Also, remove the (incomplete) hack for matching ethernet headers
in the ip_fw code.

The good news: net result of 1016 lines removed, and this should make
bridging now work with *all* Ethernet drivers.

The bad news: it's nearly impossible to test every driver, especially
for bridging, and I was unable to get much testing help on the mailing
lists.

Reviewed by: freebsd-net


60472 12-May-2000 nyan

Use bus_space stuff except where it needs high performance.


60041 05-May-2000 phk

Separate the struct bio related stuff out of <sys/buf.h> into
<sys/bio.h>.

<sys/bio.h> is now a prerequisite for <sys/buf.h> but it shall
not be made a nested include according to bdes teachings on the
subject of nested includes.

Diskdrivers and similar stuff below specfs::strategy() should no
longer need to include <sys/buf.> unless they need caching of data.

Still a few bogus uses of struct buf to track down.

Repocopy by: peter


60027 05-May-2000 nyan

GENERIC98 -> GENERIC


59934 04-May-2000 kato

Rename GENERIC98 to GENERIC.


59874 01-May-2000 peter

Add $FreeBSD$


59839 01-May-2000 peter

Move the MSG* and SEM* options to opt_sysvipc.h
Remove evil allocation macros from machdep.c (why was that there???) and
use malloc() instead.
Move paramters out of param.h and into the code itself.
Move a bunch of internal definitions from public sys/*.h headers (without
#ifdef _KERNEL even) into the code itself.

I had hoped to make some of this more dynamic, but the cost of doing
wakeups on all sleeping processes on old arrays was too frightening.
The other possibility is to initialize on the first use, and allow
dynamic sysctl changes to parameters right until that point. That would
allow /etc/rc.sysctl to change SEM* and MSG* defaults as we presently
do with SHM*, but without the nightmare of changing a running system.


59779 30-Apr-2000 nyan

Clean up MAXMEM routine.

Submitted by: "K.Magara" <magara@maizuru-ct.ac.jp>


59778 30-Apr-2000 nyan

Fixed to support JIS7 KANJI.

Submitted by: Nobuyuki Koganemaru <kogane@koganemaru.co.jp>


59762 29-Apr-2000 phk

s/biowait/bufwait/g

Prodded by: several.


59760 29-Apr-2000 phk

Remove unneeded #include <sys/kernel.h>


59736 29-Apr-2000 nyan

Fixed typo.


59689 27-Apr-2000 nyan

Supported EGC 640x400, PEGC 640x400 and PEGC 640x480 graphics modes.

Submitted by: Chiharu Shibata <chi@bd.mbn.or.jp> and
Tomokazu HARADA <tkhara@osk4.3web.ne.jp>


59688 27-Apr-2000 nyan

machine/random.h -> sys/random.h


59687 27-Apr-2000 nyan

Add wormio.h. The wd driver needs it.


59530 23-Apr-2000 nyan

Sync with sys/i386/conf/GENERIC revision 1.252.


59493 22-Apr-2000 nyan

Release allocated resources and return ENXIO on error.


59391 19-Apr-2000 phk

Remove ~25 unneeded #include <sys/conf.h>
Remove ~60 unneeded #include <sys/malloc.h>


59362 18-Apr-2000 phk

Convert three drivers not covered by any of our kernel configs.
We really need a LINT98 and possibly LINTALPHA kernels.


59340 17-Apr-2000 imp

hm committed newbused vt driver this weekend, so it is no longer needed
in isa_compat.

LINT now builds again.


59249 15-Apr-2000 phk

Complete the bio/buf divorce for all code below devfs::strategy

Exceptions:
Vinum untouched. This means that it cannot be compiled.
Greg Lehey is on the case.

CCD not converted yet, casts to struct buf (still safe)

atapi-cd casts to struct buf to examine B_PHYS


59222 14-Apr-2000 nyan

Added wdreg.h. PC-98 still uses the wd driver.


59201 13-Apr-2000 nyan

Added wdreg.h and fixed path.


59177 12-Apr-2000 kato

Include pc98.h instead of isareg.h.

Submitted by: Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>
Reminded by: nyan


59174 12-Apr-2000 kato

- Fixed counter number (timer2 -> timer1).
- Fixed operator in pcaintr (andb -> orb).

Pointed out by: nyan


59172 12-Apr-2000 nyan

The nss driver is compatible mode.

Submitted by: Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>


59170 12-Apr-2000 kato

Merged from sys/i386/isa/isa_compat.c revisions 1.19 and 1.20.


59082 07-Apr-2000 nyan

Newbusify adv driver.

Reviewed by: imp


58934 02-Apr-2000 phk

Move B_ERROR flag to b_ioflags and call it BIO_ERROR.

(Much of this done by script)

Move B_ORDERED flag to b_ioflags and call it BIO_ORDERED.

Move b_pblkno and b_iodone_chain to struct bio while we transition, they
will be obsoleted once bio structs chain/stack.

Add bio_queue field for struct bio aware disksort.

Address a lot of stylistic issues brought up by bde.


58888 01-Apr-2000 kato

Merged from sys/isa/sio.c revisions 1.293 and 1.294.


58820 30-Mar-2000 peter

Make sysv-style shared memory tuneable params fully runtime adjustable
via sysctl. It's done pretty simply but it should be quite adequate.
Also move SHMMAXPGS from $machine/include/vmparam.h as the comments that
went with it were wrong... we don't allocate KVM space for the pages so
that comment is bogus.. The only practical limit is how much physical
ram you want to lock up as this stuff isn't paged out or swap backed.


58816 30-Mar-2000 imp

NewBus the cs driver.

Submitted by: max@rsu.ru


58789 29-Mar-2000 nyan

- Added PC-98 Cbus frontend.
- Move dev/aic/aic_isa.c entry from conf/files to conf/files.MACHINE
because PC-98 uses different file.

Submitted by: nyan and IMAI Takeshi <take-i@ceres.dti.ne.jp>


58788 29-Mar-2000 nyan

Newbusify mse driver.


58785 29-Mar-2000 kato

Commented out apm0. It could cause hang-up.


58780 29-Mar-2000 nyan

- Supported display suspended mode.
- Switch on/off not only text screen but also graphic screen.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


58779 29-Mar-2000 nyan

Merge from the following changes.

File Revision
sys/conf/files.i386 1.303 and 1.304
sys/dev/kbd/atkbd.c 1.23
sys/dev/syscons/scterm-sc.c 1.2
sys/dev/syscons/scvgarndr.c 1.5
sys/dev/syscons/scvtb.c 1.5
sys/dev/syscons/syscons.c 1.335
sys/isa/syscons_isa.c 1.11
sys/isa/vga_isa.c 1.17


58743 28-Mar-2000 kato

Merged from sys/isa/fd.c revision 1.180.


58742 28-Mar-2000 kato

Merged from sys/i386/i386/userconfig.c revision 1.179.


58741 28-Mar-2000 kato

Merged from sys/i386/i386/machdep.c revision 1.387.


58477 23-Mar-2000 kato

Merged from sys/i386/isa/clock.c and sys/isa/sio.c revisions 1.150 and
1.292, respectively.


58476 23-Mar-2000 kato

Removed B_READ and B_WRITE.


58475 23-Mar-2000 kato

Disable fdctl_wr_foo. This feature is not supported by PC98.


58458 22-Mar-2000 nyan

Added the joy driver (commented out).

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


58381 20-Mar-2000 nyan

Fixed style bugs.


58354 20-Mar-2000 kato

Removed old boot loader.


58349 20-Mar-2000 phk

Rename the existing BUF_STRATEGY() to DEV_STRATEGY()

substitute BUF_WRITE(foo) for VOP_BWRITE(foo->b_vp, foo)

substitute BUF_STRATEGY(foo) for VOP_STRATEGY(foo->b_vp, foo)

This patch is machine generated except for the ccd.c and buf.h parts.


58345 20-Mar-2000 phk

Remove B_READ, B_WRITE and B_FREEBUF and replace them with a new
field in struct buf: b_iocmd. The b_iocmd is enforced to have
exactly one bit set.

B_WRITE was bogusly defined as zero giving rise to obvious coding
mistakes.

Also eliminate the redundant struct buf flag B_CALL, it can just
as efficiently be done by comparing b_iodone to NULL.

Should you get a panic or drop into the debugger, complaining about
"b_iocmd", don't continue. It is likely to write on your disk
where it should have been reading.

This change is a step in the direction towards a stackable BIO capability.

A lot of this patch were machine generated (Thanks to style(9) compliance!)

Vinum users: Greg has not had time to test this yet, be careful.


58299 19-Mar-2000 kato

Merged from sys/isa/fd.c.


58292 19-Mar-2000 kato

Merged from sys/i386/i386/userconfig.c rev 1.178.


58290 19-Mar-2000 kato

Added COMPAT_OLDPCI and COMPAT_OLDISA options.


58168 17-Mar-2000 nyan

Fixed header file path and added necessary file.


58163 17-Mar-2000 nyan

Sync with sys/i386/i386/userconfig.c revision 1.175 and 1.176.


58161 17-Mar-2000 nyan

Backed out ppc0 flags addtion. It isn't necessary without PPC_PROBE_CHIPSET
option.

Pointed out by: peter


58145 16-Mar-2000 nyan

Fixed to probe extended memory for over 256M or under 64M.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


58142 16-Mar-2000 nyan

Fixed to support old parallel interface.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


58140 16-Mar-2000 nyan

Added 'flags 0x40' to ppc0.


58138 16-Mar-2000 nyan

Changed sio1 flags to 0x12000010 to enable serial console.

Submitted by: IMAI Takeshi <take-i@ceres.dti.ne.jp>


57973 13-Mar-2000 phk

Stop isadma from abusing the B_READ, B_RAW and B_WRITE flags.

Define ISADMA_{READ,WRITE,RAW} macros with the same numeric
values as the B_{READ,WRITE,RAW} and use them instead throughout.


57928 12-Mar-2000 kato

Merged from sys/isa/sio.c revision 1.291.


57885 10-Mar-2000 kato

Merged from sys/isa/sio.c revisions 1.289 and 1.290.


57658 01-Mar-2000 kato

Merged from sys/i386/isa/isa_compat.h revision 1.27.


57657 01-Mar-2000 kato

Merged from sys/i386/i386/userconfig.c revision 1.174.


57656 01-Mar-2000 kato

Merged from sys/i386/i386/machdep.c revisions 1.384 and 1.385.


57655 01-Mar-2000 kato

Merged from sys/i386/conf/GENERIC revisions 1.243, 1.244 and 1.245.


57291 17-Feb-2000 kato

Merged from sys/isa/sio.c rev 1.288.


57290 17-Feb-2000 kato

Synced with sys/i386/i386/userconfig.c rev 1.173.


57178 13-Feb-2000 peter

Clean up some loose ends in the network code, including the X.25 and ISO
#ifdefs. Clean out unused netisr's and leftover netisr linker set gunk.
Tested on x86 and alpha, including world.

Approved by: jkh


57137 11-Feb-2000 kato

Synced with sys/dev/syscons/syscons.c rev 1.336.


57136 11-Feb-2000 kato

Synced with sys/dev/syscons/scterm-sc.c rev 1.4.


56993 05-Feb-2000 kato

Synced with sys/i386/conf/GENERIC revision 1.241.

Approved by: jkh


56978 03-Feb-2000 kato

Synced with sys/i386/conf/GENERIC rev 1.240.

Approved by: jkh


56933 01-Feb-2000 kato

Synced with sys/i386/isa/isa_compat.h rev 1.18.

Approved by: jkh


56932 01-Feb-2000 kato

Synced with sys/i386/isa/wd.c revision 1.219.

Approved by: jkh


56931 01-Feb-2000 kato

Synced with sys/i386/isa/mse.c, npx.c and spkr.c revisions 1.49, 1.80
and 1.45, respectively.

Approved by: jkh


56867 29-Jan-2000 peter

Remove 'conflicts' token - it has been effectively doing absolutely
nothing for quite some time. The only thing that cared was userconfig,
but it was for one invisible device so we never saw it's effects.


56865 29-Jan-2000 peter

Zap isa_device -> id_conflicts. The sole user of it (userconfig) never
actually used it since the only device that specified it (vga0) was marked
as "FLG_INVISIBLE" in userconfig and therefore never shown.

Suggested by: bde


56843 29-Jan-2000 peter

Remove #if NFOO > 0 (it's not required in most cases) and also where it
isn't used as a result, remove #include "foo.h". Many of these drivers
still use NFOO for softc struct sizing etc however.


56826 29-Jan-2000 kato

Synced with sys/isa/ppc.c rev 1.26.


56822 29-Jan-2000 kato

Synced with sys/kern/subr_diskmbr.c rev 1.44.


56817 29-Jan-2000 kato

Synced with sys/kern/subr_diskmbr.c rev 1.43.


56811 29-Jan-2000 kato

Synced with sys/isa/ppc.c rev 1.25.

Reminded by: nyan


56796 29-Jan-2000 kato

Cosmetic changes.
- Fixed order of include files.
- Fixed white spaces.


56793 29-Jan-2000 kato

Synced with sys/isa/sio.c rev 1.287.


56792 29-Jan-2000 kato

Synced with sys/i386/isa/wd.c rev 1.218.


56727 28-Jan-2000 kato

Merged with sys/i386/conf/GENERIC rev 1.238.


56711 28-Jan-2000 nyan

Merge from sys/i386/conf/GENERIC revision 1.231, 1.232 and 1.235.


56634 26-Jan-2000 kato

Synced with sys/i386/isa/isa_compat.h and pcaudio.c revisions 1.26 and
1.58, respectively.


56633 26-Jan-2000 kato

Synced with sys/i386/isa/npx.c rev 1.79.


56540 24-Jan-2000 peter

Copy i386/isa/atapi-cd.[ch] to a new name so that it doesn't have the
same object file (atapi-cd.o) as the ata drivers. I'd have called it
wcd.[ch], but there's already one of those in the Attic that we can't
clobber - the good names are taken.
Fix building so that it can be compiled into LINT alongside ata.

Requested by: bde


56533 24-Jan-2000 kato

Merged from sys/i386/conf/GENERIC rev 1.236.


56530 24-Jan-2000 kato

Synced with sys/i386/isa/isa_compat.h rev 1.25.


56516 24-Jan-2000 peter

Remove some no-op "port ?" and "irq ?" declarations.


56512 24-Jan-2000 kato

Return ENXIO on error.

Submitted by: n_hibma


56457 23-Jan-2000 peter

Drop 'at ppbus?' and trailing '0' from ppbus children.


56442 23-Jan-2000 peter

Remove useless trailing digit from pci and other unwired devices.


56439 23-Jan-2000 peter

Clean up some more loose ends..
isa_device->id_ri_flags and RI_FAST were not implemented and did nothing.
The two drivers that were mistakenly thinking this was working were
cy.c and loran.c - these should be converted to newbus.
GC (garbage collect) isa_device->id_alive
GC userconfig.c references to isa_device->id_scsiid (!).


56437 23-Jan-2000 peter

GC isa_device->id_reconfig - it's not referenced anywhere anymore.
GC reconfig_isadev() - it's not used anymore.


56372 21-Jan-2000 nyan

- Merge from sys/i386/conf/GENERIC rev 1.224, 1.225 and 1.226.
- Reorder network interfaces.


56337 20-Jan-2000 kato

Synced with the sc driver in the sys/dev/syscons directory.

Submitted by: yokota


56327 20-Jan-2000 nyan

Fixed typo.


56325 20-Jan-2000 kato

Synced with sys/isa/sio.c rev 1.285.


56324 20-Jan-2000 kato

Synced with sys/i386/i386/userconfig.c rev 1.169.


56323 20-Jan-2000 kato

Synced with sys/i386/conf/GENERIC rev 1.230.


56302 20-Jan-2000 kato

Port of the PC-98 ppc to the newbus system.


55969 14-Jan-2000 kato

Synced with sys/i386/isa/isa_compat.h rev 1.24.


55968 14-Jan-2000 kato

Synced with sys/i386/i386/userconfig.c rev 1.168.


55967 14-Jan-2000 kato

Synced with sys/i386/conf/GENERIC rev 1.228.


55904 13-Jan-2000 kato

Synced with sys/dev/syscons/syscons.c rev 1.331.


55901 13-Jan-2000 kato

Synced with following changes:

>yokota 2000/01/11 05:39:06 PST
>
> Modified files:
> sys/dev/usb ukbd.c
> sys/dev/kbd atkbd.c kbd.c kbdreg.h
> Log:
> Rework shifta/ctla/alta key handling. It appears that there was
> misunderstanding between the PR originator and me. I hope I got it
> right this time.
>
> Revision Changes Path
> 1.22 +4 -1 src/sys/dev/usb/ukbd.c
> 1.21 +1 -8 src/sys/dev/kbd/atkbd.c
> 1.16 +19 -10 src/sys/dev/kbd/kbd.c
> 1.9 +2 -2 src/sys/dev/kbd/kbdreg.h

Submitted by: yokota


55900 13-Jan-2000 kato

Synced with sys/isa/sio.c rev 1.284.


55669 09-Jan-2000 peter

Put on my asbestos suit and move $mach/conf/*.$mach to conf/*.$mach as
hinted at in the previous config(8) commits. I've spoken about this with
a few people and after the initial suprise wore off they thought it wasn't
a bad idea. The upshot of it is that all the files*, Makefile*, options*
files are all right next to each other in the hope that people making
changes to one set will remember the others.

Note, config(8) looks to sys/conf first, and falls back to sys/$mach/conf
still, so this doesn't stop people working in subdirs for new platforms.
But once it's in the tree it can be moved next to the other files so that
the non-i386 platforms are (hopefully) treated a little better than as if
they were "second class" ports.

This does not change any user editable files. the config program is
still run in the same directory as before, the per-platform files
(GENERIC, LINT etc) are still in the same place.


55664 09-Jan-2000 kato

Synced with sys/i386/conf/files.i386 rev 1.295.


55663 09-Jan-2000 kato

Synced with sys/i386/conf/Makefile.i386 rev 1.176.


55656 09-Jan-2000 bde

Put COMPAT_SVR4 in opt_dontuse.h for the same reasons as IBCS2 and
COMPAT_LINUX are there. It shouldn't be and isn't used after config
time, except to complicate the svr4 module makefile.

Moved options for emulators to a separate section.


55652 09-Jan-2000 nyan

Merge from sys/isa/fd.c revision from 1.171 to 1.176 and sys/isa/fdreg.h
revision 1.13.

Forgotten by: kato


55636 09-Jan-2000 peter

Bump configversion. The controller/device changes are upwards but not
downwards compatable. If you try and config a s/controller/device/ kernel
with an old config(8), the results will be less than satisfactory.


55608 08-Jan-2000 peter

s/controller/device/ as per config(8) changes


55604 08-Jan-2000 bde

Compile genassym.c with ordinary ${CFLAGS}. The (small) needs for
${GEN_CFLAGS} and -U_KERNEL became negative when all all the
genassym.c's were converted to be cross-built.

Makefile.*:
- Cleanups associated with the old genassym.
- Fixed deprecated spelling of ${.IMPSRC} as "$<".


55545 07-Jan-2000 marcel

Use genassym(1). The definitions of NKPDE and NKPT have been removed
because they are already defined in pmap.h, resulting in duplicate
definitions.

Reviewed by: bde


55456 05-Jan-2000 kato

Synced with sys/i386/isa/clock.c rev 1.149.


55455 05-Jan-2000 kato

Synced with sys/i386/i386/userconfig.c rev 1.166.


55454 05-Jan-2000 kato

Synced with sys/i386/conf/GENERIC rev 1.222.


55429 05-Jan-2000 wpaul

Add device driver support for USB ethernet adapters based on the
Kawasaki LSI KL5KUSB101B chip, including the LinkSys USB10T, the
Entrega NET-USB-E45, the Peracom USB Ethernet Adapter, the 3Com
3c19250 and the ADS Technologies USB-10BT. This device is 10mbs
half-duplex only, so there's miibus or ifmedia support. This device
also requires firmware to be loaded into it, however KLSI allows
redistribution of the firmware images (I specifically asked about
this; they said it was ok).

Special thanks to Annelise Anderson for getting me in touch with
KLSI (eventually) and thanks to KLSI for providing the necessary
programming info.

Highlights:
- Add driver files to /sys/dev/usb
- update usbdevs and regenerate attendate files
- update usb_quirks.c
- Update HARDWARE.TXT and RELNOTES.TXT for i386 and alpha
- Update LINT, GENERIC and others for i386, alpha and pc98
- Add man page
- Add module
- Update sysinstall and userconfig.c


55391 04-Jan-2000 nyan

- Fixed warnings.
- Removed unnecessary include files.


55326 03-Jan-2000 nyan

- Add commented out USB driver entries.
- Reorder network interfaces.


55324 03-Jan-2000 kato

Synced with sys/i386/i386/userconfig.c rev 1.165.


55323 03-Jan-2000 kato

Synced with sys/i386/conf/GENERIC rev 1.220.


55322 03-Jan-2000 kato

Synced with sys/i386/conf/Makefile.i386 rev 1.170.


55206 29-Dec-1999 peter

Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot). This is consistant with the other
BSD's who made this change quite some time ago. More commits to come.


55205 29-Dec-1999 peter

Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot). This is consistant with the other
BSD's who made this change quite some time ago. More commits to come.


55151 27-Dec-1999 kato

Synced with sys/isa/sio.c rev 1.282.


55150 27-Dec-1999 kato

Synced with sys/i386/isa/clock.c rev 1.148. This is a cosmetic change
because PC-98 doesn't have RTC and RTC related code is included by
`#ifndef PC98' and `#endif'.


55149 27-Dec-1999 kato

Synced with sys/i386/conf/Makefile.i386 rev 1.169.


55107 26-Dec-1999 kato

Oops, deactivate ed drivers because of undefiend references from
if_ed_pci.o.


55106 26-Dec-1999 kato

Added Allied Telesis SIU-98-D support.

Submitted by: Isizu Takaaki <isizu-t01@aso-group.co.jp>
chi@bd.mbn.or.jp (Chiharu Shibata)
(w/ minor change by kato)


55104 26-Dec-1999 kato

- Cut down amount of memory in 64MB when BIOS tells the amount of
memory >= 64MB.
- Don't perform destructive memory inspection for 15 - 16MB system
area.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>
chi@bd.mbn.or.jp (Chiharu Shibata)


55087 24-Dec-1999 kato

Merge from sys/i386/conf/files.i386 rev 1.293.


55086 24-Dec-1999 kato

Merge from sys/i386/conf/GENERIC rev 1.218 & 1.219.


55085 24-Dec-1999 kato

Removed -mno-486 from CFLAGS.


54997 22-Dec-1999 imp

sn driver is no longer using isa_compat layer


54959 21-Dec-1999 peter

Only compile gusc for isa (the #if NISA inside gusc effectively covers
the whole file)


54891 20-Dec-1999 peter

merge i386/isa/clock.c 1.147: don't talk about register_intr in comments.


54883 20-Dec-1999 kato

Removed unnecessary include file.


54880 20-Dec-1999 kato

Sync with sys/i386/conf/options.i386 rev 1.130.


54879 20-Dec-1999 kato

Sync with sys/i386/conf/files.i386 rev 1.291.


54878 20-Dec-1999 kato

Sync with sys/i386/conf/Makefile.i386 rev 1.167.


54877 20-Dec-1999 kato

Sync with sys/i386/conf/GENERIC rev 1.217.


54773 18-Dec-1999 imp

Driver for the smc91xx series of ethernet chips. Ported from PAO to
3.3R and then to -current. The pccard support has been left in the
driver, but is presently non-functional because we are using the
isa_compat layer for the moment.

Obtained From: PAO
Sponsored by: Timing Solutions


54654 15-Dec-1999 hm

update to isdn4bsd beta release 0.90: since the isic drivers are now
new-busified, remove all isic traces from compatibility mode wrapper
Noticed by: Warner Losh


54553 13-Dec-1999 kato

Merge from sys/i386/conf/files.i386 rev 1.289.

Submitted by: yokota


54551 13-Dec-1999 kato

Merge from sys/dev/kbd/kbd.c rev 1.13.

Submitted by: yokota


54550 13-Dec-1999 kato

Merge from sys/dev/syscons/syscons.c rev 1.330.


54549 13-Dec-1999 kato

Merge from sys/i386/conf/Makefile.i386 rev 1.166.


54407 10-Dec-1999 kato

Merge from sys/isa/sio.c rev 1.279.


54406 10-Dec-1999 kato

Remove ze and zp drivers.


54405 10-Dec-1999 kato

Merge from sys/dev/syscons/syscons.c rev 1.329.


54388 10-Dec-1999 phk

Remove the B_BAD buffer flag, it is no longer used.


54374 09-Dec-1999 archie

Move source files common to all platforms from <arch>/conf/files.<arch>
to conf/files. If/when these files are optimized for each platform,
they can be moved back.


54373 09-Dec-1999 dan

arc4random.c now in conf/files (left out of last commit.. oops!)


54367 09-Dec-1999 kato

Backed out previous commit because it contains wrong changes.

Pointed out by: nyan


54358 09-Dec-1999 kato

Sync with sys/dev/fb/vga.c rev 1.5.

Submitted by: yokota


54357 09-Dec-1999 kato

Sync with sys/i386/isa/wd.c rev 1.216.


54356 09-Dec-1999 kato

Merge from sys/i386/conf/options.i386 rev 1.128.


54355 09-Dec-1999 kato

Merge from sys/i386/conf/files.i386 rev 1.284.


54294 08-Dec-1999 phk

Remove BAD144 support, it has already been disabled for some time.


54279 08-Dec-1999 ken

Revamp the devstat priority system. All disks now have the same priority.
The same goes for CD drivers and tape drivers. In systems with mixed IDE
and SCSI, devices in the same priority class will be sorted in attach
order.

Also, the 'CCD' priority is now the 'ARRAY' priority, and a number of
drivers have been modified to use that priority.

This includes the necessary changes to all drivers, except the ATA drivers.
Soren will modify those separately.

This does not include and does not require any change in the devstat
version number, since no known userland applications use the priority
enumerations.

Reviewed by: msmith, sos, phk, jlemon, mjacob, bde


54256 07-Dec-1999 kato

Merge from sys/isa/fd.c rev 1.170.


54255 07-Dec-1999 kato

Merge from sys/isa/sio.c rev 1.277 & 1.278.


54254 07-Dec-1999 kato

Merge from sys/i386/conf/files.i386 rev 1.283.


54253 07-Dec-1999 kato

Merge from sys/dev/syscons/syscons.c rev 1.328.


54252 07-Dec-1999 kato

Merge from sys/i386/i386/userconfig.c rev 1.162 & 1.163.


54209 06-Dec-1999 peter

Merge pnp change from i386/conf/GENERIC (rev 1.211)


54202 06-Dec-1999 phk

Remove DSO_BAD144 from wd driver(s) so people with bad144'ed disks get
a bit of warning.


54188 06-Dec-1999 luoqi

User ldt sharing.


54176 06-Dec-1999 wpaul

Remove joystick references from pc98 version of isa_compat.h too.


54174 06-Dec-1999 nyan

Supported i8251 (internal COM1) FIFO mode.

Submitted by: tanimura and nyan


54168 05-Dec-1999 wpaul

Update to reflect removed of al, ax, dm, pn and mx drivers and addition
of dc driver.


54124 04-Dec-1999 nyan

Sync with sys/i386/i386/machdep.c revision up to 1.381.


54083 03-Dec-1999 nyan

pc98/pc98/atapi.c
Copied from i386/isa/atapi.c.
Fixed to support slave devices.
Ignore the device that has strange model strings.

i386/isa/atapi.c
Removed pc98 codes.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


54078 03-Dec-1999 nyan

Sync with sys/i386/conf/GENERIC revision 1.208.


54073 03-Dec-1999 mdodd

Remove the 'ivars' arguement to device_add_child() and
device_add_child_ordered(). 'ivars' may now be set using the
device_set_ivars() function.

This makes it easier for us to change how arbitrary data structures are
associated with a device_t. Eventually we won't be modifying device_t
to add additional pointers for ivars, softc data etc.

Despite my best efforts I've probably forgotten something so let me know
if this breaks anything. I've been running with this change for months
and its been quite involved actually isolating all the changes from
the rest of the local changes in my tree.

Reviewed by: peter, dfr


54030 02-Dec-1999 nyan

Sync with sys/i386/conf/GENERIC revision up to 1.207.


53986 01-Dec-1999 nyan

Sync with sys/isa/sio.c revision 1.276.


53884 29-Nov-1999 nyan

- Fixed to support RSB-384/2000/3000.
- Fixed warnings.


53883 29-Nov-1999 nyan

Sync with sys/i386/conf/files.i386 revision 1.282.


53818 28-Nov-1999 nyan

Sync with sys/dev/syscons/syscons.c revision 1.327.


53817 28-Nov-1999 nyan

Sync with sys/i386/conf/GENERIC revision 1.205.


53744 27-Nov-1999 nyan

Sync with sys/i386/conf/GENERIC revision 1.202.


53714 26-Nov-1999 nyan

Sync with sys/i386/conf/files.i386 revision 1.281.


53690 25-Nov-1999 nyan

Fixed to support IBM-PC HDD.
- Use 'or' operation to change b_flags.
- SCSI HDD device is 'da', not 'sd'.

Submitted by: kura@tim.hi-ho.ne.jp (Tomohiko Kurahashi) and
chi@bd.mbn.or.jp (Chiharu Shibata)


53689 25-Nov-1999 nyan

Sync with sys/i386/conf/Makefile.i386 revision 1.165.


53687 25-Nov-1999 nyan

Sync with sys/i386/i386/machdep.c revision up to 1.378.


53648 24-Nov-1999 archie

Change the prototype of the strto* routines to make the second
parameter a char ** instead of a const char **. This make these
kernel routines consistent with the corresponding libc userland
routines.

Which is actually 'correct' is debatable, but consistency and
following the spec was deemed more important in this case.

Reviewed by (in concept): phk, bde


53503 21-Nov-1999 phk

s/p_cred->pc_ucred/p_ucred/g


53373 18-Nov-1999 nyan

Sync with sys/isa/sio.c revision up to 1.275.


53372 18-Nov-1999 nyan

Sync with sys/isa/fd.c revision 1.168.


53371 18-Nov-1999 nyan

Sync with sys/i386/conf/Makefile.i386 revision up to 1.163.


53220 16-Nov-1999 nyan

Sync with sys/i386/isa/pcaudio.c revision 1.57.


53121 13-Nov-1999 nyan

Fixed the size of array.


53120 13-Nov-1999 nyan

Fixed missing changes from sys/i386/conf/GENERIC.


53107 12-Nov-1999 nyan

Sync with sys/i386/i386/machdep.c revision 1.375.


53093 11-Nov-1999 nyan

Sync with sys/isa/fd.c revision 1.167.


53056 09-Nov-1999 nyan

- Commented out ed driver.
- Added sis driver.


53053 09-Nov-1999 nyan

Sync with sys/i386/conf/options.i386 revision up to 1.127.


53002 08-Nov-1999 peter

Use cdevsw_add() until the rest of the devices are created with make_dev()
and change from DEV_DRIVER_MODULE() to DRIVER_MODULE().


52944 06-Nov-1999 eivind

Options cleanup.
* GC unused options
* Move options that exist on all architectures to conf/options
* Add missing options to LINT
* Sort undocumented options list in LINT

Reviewed by: green


52880 04-Nov-1999 nyan

Sync with sys/i386/isa/spkr.c revision 1.44.


52833 03-Nov-1999 nyan

Cosmetic changes.


52832 03-Nov-1999 nyan

Support RSA-98III PnP mode.


52831 03-Nov-1999 nyan

Sync with sys/isa/sio.c revision from 1.269 to 1.273.


52830 03-Nov-1999 nyan

Remove unnecessary file.


52829 03-Nov-1999 nyan

Sync with sys/i386/conf/GENERIC revision 1.199.


52828 03-Nov-1999 nyan

Sync with sys/i386/isa/clock.c revision 1.146.


52826 03-Nov-1999 nyan

Sync with sys/i386/i386/machdep.c revision 1.371.


52824 03-Nov-1999 nyan

Sync with sys/dev/syscons/syscons.c revision 1.326.


52815 02-Nov-1999 archie

Consolidate some of the various ctype(3) macros in one location.


52791 02-Nov-1999 phk

Remove two private copies of strtoul()

Spotted by: bde


52773 01-Nov-1999 eivind

Elminiate the (unused) TUNE_1542 option.


52720 31-Oct-1999 alc

The useracc() calls in osigreturn() and sigreturn() should specify
VM_PROT_READ rather than VM_PROT_WRITE. (This mistake predates
the B_READ/B_WRITE -> VM_PROT_READ/VM_PROT_WRITE change.)

Submitted by: bde


52711 31-Oct-1999 nyan

- Sync with sys/i386/isa/if_ed.c revision 1.163.
- Supported Networld EC/EP-98X.
- Rewrite NE2000 PCMCIA (LPC-T) on old 98Note.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


52651 30-Oct-1999 marcel

Allow the source root `S' to be overridden by defining it only when
it isn't already defined. It enables config(8) to create the kernel
build directory where it wants.


52644 30-Oct-1999 phk

Change useracc() and kernacc() to use VM_PROT_{READ|WRITE|EXECUTE} for the
"rw" argument, rather than hijacking B_{READ|WRITE}.

Fix two bugs (physio & cam) resulting by the confusion caused by this.

Submitted by: Tor.Egge@fast.no
Reviewed by: alc, ken (partly)


52635 29-Oct-1999 phk

useracc() the prequel:

Merge the contents (less some trivial bordering the silly comments)
of <vm/vm_prot.h> and <vm/vm_inherit.h> into <vm/vm.h>. This puts
the #defines for the vm_inherit_t and vm_prot_t types next to their
typedefs.

This paves the road for the commit to follow shortly: change
useracc() to use VM_PROT_{READ|WRITE} rather than B_{READ|WRITE}
as argument.


52574 27-Oct-1999 mdodd

Sync with recent 'ep' driver changes.


52565 27-Oct-1999 nyan

Fix potential panic by illegal increment of wfdnlun.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)
Reviewed by: Junichi Satoh <junichi@astec.co.jp> (the original author)


52467 24-Oct-1999 nyan

Fixed to compile a kernel with scbus0 and without da0.
Added $FreeBSD$.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


52314 16-Oct-1999 kato

Sync w/ sys/i386/isa/isa_compat.h revision 1.16.


52313 16-Oct-1999 kato

Sync w/ sys/i386/conf/options.i386 revision 1.122.


52312 16-Oct-1999 kato

Merge form sys/i386/conf/GENERIC revision 1.195.


52208 13-Oct-1999 kato

Sync with sys/i386/isa/pcaudio.c revision 1.55.


52207 13-Oct-1999 kato

Sync with sys/i386/isa/mse.c revision 1.48.


52206 13-Oct-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.370.


52205 13-Oct-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.87.


52204 13-Oct-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.277.


52203 13-Oct-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.160.


52174 12-Oct-1999 dfr

* Add struct resource_list* argument to resource_list_alloc and
resource_list_release. This removes the dependancy on the
layout of ivars.

* Move set_resource, get_resource and delete_resource from
isa_if.m to bus_if.m.

* Simplify driver code by providing wrappers to those methods:

bus_set_resource(dev, type, rid, start, count);
bus_get_resource(dev, type, rid, startp, countp);
bus_get_resource_start(dev, type, rid);
bus_get_resource_count(dev, type, rid);
bus_delete_resource(dev, type, rid);

* Delete isa_get_rsrc and use bus_get_resource_start instead.

* Fix a stupid typo in isa_alloc_resource reported by Takahashi
Yoshihiro <nyan@FreeBSD.org>.

* Print a diagnostic message if we can't assign resources to a PnP
device.

* Change device_print_prettyname() so that it doesn't print
"(no driver assigned)-1" for anonymous devices.


52157 12-Oct-1999 nyan

Initialize tp->t_stop to nottystop.


52140 11-Oct-1999 luoqi

Add a per-signal flag to mark handlers registered with osigaction, so we
can provide the correct context to each signal handler.

Fix broken sigsuspend(): don't use p_oldsigmask as a flag, use SAS_OLDMASK
as we did before the linuxthreads support merge (submitted by bde).

Move ps_sigstk from to p_sigacts to the main proc structure since signal
stack should not be shared among threads.

Move SAS_OLDMASK and SAS_ALTSTACK flags from sigacts::ps_flags to proc::p_flag.
Move PS_NOCLDSTOP and PS_NOCLDWAIT flags from proc::p_flag to procsig::ps_flag.

Reviewed by: marcel, jdp, bde


52024 08-Oct-1999 marcel

Synchronize with i386 rev 1.367


52008 08-Oct-1999 peter

Zap these defucnt files before anyone things about trying to merge them.


51942 04-Oct-1999 marcel

Re-introduction of sigcontext.

struct sigcontext and ucontext_t/mcontext_t are defined in such
a way that both (ie struct sigcontext and ucontext_t) can be
passed on to sigreturn. The signal handler is still given a
ucontext_t for maximum flexibility.

For backward compatibility sigreturn restores the state for the
alternate signal stack from sigcontext.sc_onstack and not from
ucontext_t.uc_stack. A good way to determine which value the
application has set and thus which value to use, is still open
for discussion.

NOTE: This change should only affect those binaries that use
sigcontext and/or ucontext_t. In the source tree itself
this is only doscmd. Recompilation is required for those
applications.

This commit also fixes a lot of style bugs without hopefully
adding new ones.

NOTE: struct sigaltstack.ss_size now has type size_t again. For
some reason I changed that into unsigned int.

Parts submitted by: bde
sigaltstack bug found by: bde


51919 04-Oct-1999 phk

Remove unused B_FORMAT #define


51838 01-Oct-1999 kato

Sync w/ sys/i386/i386/machdep.c revision 1.364.


51837 01-Oct-1999 kato

Sync w/ sys/i386/conf/files.i386 revision 1.275.


51792 29-Sep-1999 marcel

sigset_t change (part 3 of 5)
-----------------------------

By introducing a new sigframe so that the signal handler operates
on the new siginfo_t and on ucontext_t instead of sigcontext, we
now need two version of sendsig and sigreturn.

A flag in struct proc determines whether the process expects an
old sigframe or a new sigframe. The signal trampoline handles
which sigreturn to call. It does this by testing for a magic
cookie in the frame.

The alpha uses osigreturn to implement longjmp. This means that
osigreturn is not only used for compatibility with existing
binaries. To handle the new sigset_t, setjmp saves it in
sc_reserved (see NOTE).

the struct sigframe has been moved from frame.h to sigframe.h
to handle the complex header dependencies that was caused by
the new sigframe.

NOTE: For the i386, the size of jmp_buf has been increased to hold
the new sigset_t. On the alpha this has been prevented by
using sc_reserved in sigcontext.


51756 28-Sep-1999 phk

Introduce ttyread() and ttywrite() which do the canonical thing.

Use them in many tty drivers.

Reviewed by: julian, bde


51754 28-Sep-1999 kato

Sync w/ sys/i386/isa/pcaudio.c revision 1.54.


51753 28-Sep-1999 kato

Removed aha driver.


51752 28-Sep-1999 kato

Sync w/ sys/i386/conf/files.i386 revision 1.274.


51722 27-Sep-1999 kato

ed driver re-activated.


51720 27-Sep-1999 kato

Make ed driver work again.

isa_compat.c
Copied from sys/i386/isa/isa_compat.c. It includes
sys/pc98/pc98/isa_compat.h instead of sys/i386/isa/isa_compat.h.

isa_compat.h
Copied from sys/i386/isa/isa_compat.c. The ed driver is registered
in this file until pc98's ed driver is converted into new-bus style.

files.pc98
Use sys/pc98/pc98/isa_compat.c instead of sys/i386/isa/isa_compat.c.

if_ed.c
- Fixed the location of the include file.
- Disalbed pnp support.


51719 27-Sep-1999 nyan

Merge from sys/isa/fd.c revision 1.146, 1.153, 1.154 and 1.159.


51672 26-Sep-1999 nyan

Merge from sys/i386/isa/spkr.c revision 1.37 and 1.39.


51671 26-Sep-1999 nyan

Merge from sys/i386/isa/pcaudio.c revision 1.50.


51670 26-Sep-1999 nyan

Merge from sys/i386/isa/mse.c revision 1.44.


51658 25-Sep-1999 phk

Remove five now unused fields from struct cdevsw. They should never
have been there in the first place. A GENERIC kernel shrinks almost 1k.

Add a slightly different safetybelt under nostop for tty drivers.

Add some missing FreeBSD tags


51654 25-Sep-1999 phk

This patch clears the way for removing a number of tty related
fields in struct cdevsw:

d_stop moved to struct tty.
d_reset already unused.
d_devtotty linkage now provided by dev_t->si_tty.

These fields will be removed from struct cdevsw together with
d_params and d_maxio Real Soon Now.

The changes in this patch consist of:

initialize dev->si_tty in *_open()
initialize tty->t_stop
remove devtotty functions
rename ttpoll to ttypoll
a few adjustments to these changes in the generic code
a bump of __FreeBSD_version
add a couple of FreeBSD tags


51650 25-Sep-1999 nyan

Remove unnecessary file. This file is obsolete by newbus integration.


51646 25-Sep-1999 phk

Remove NBPF conditionality of bpf calls in most of our network drivers.

This means that we will not have to have a bpf and a non-bpf version
of our driver modules.

This does not open any security hole, because the bpf core isn't loadable

The drivers left unchanged are the "cross platform" drivers where the respective
maintainers are urged to DTRT, whatever that may be.

Add a couple of missing FreeBSD tags.


51642 25-Sep-1999 nyan

Merge from sys/i386/conf/files.i386 revision 1.270 and 1.271.


51613 23-Sep-1999 nyan

- Supported 1.23MB FD again.
- Supported all formats that IBM-PC's driver (isa/fd.c) supports.
- Changed the device minor numbers. They sync in IBM-PC's driver.


51588 23-Sep-1999 kato

Fixed the bug that the number of sectors per cylinder was stored into
the ncyls (number of cylinders) in dsinit().

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


51584 23-Sep-1999 kato

Sync with sys/dev/syscons/syscons.c revision 1.322.


51547 22-Sep-1999 kato

Sync with sys/i386/isa/npx.c revision 1.78.


51546 22-Sep-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.159.


51545 22-Sep-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.86.


51544 22-Sep-1999 kato

Added mp_clock.c.


51543 22-Sep-1999 kato

Commented out ed driver.


51542 22-Sep-1999 kato

Sync with sys/i386/conf/GENERIC revision 1.192.


51480 20-Sep-1999 phk

Set si_iosize_max rather than d_maxio.

Register devsw in *attach instead of a SYSINIT.


51467 20-Sep-1999 phk

Add a DSO_BAD144 flag which indicates that the driver actually understand
BAD144 handling.

Reject DIOCSBAD and labels with BAD144 tables if the driver cannot grok it.

Reviewed by: bde


51413 19-Sep-1999 phk

Two more devstat_end_transaction() -> devstat_end_transaction_buf().


51376 18-Sep-1999 phk

Use devstat_end_transaction_buf() rather than Use devstat_end_transaction()


51276 14-Sep-1999 nyan

Gdc and pckbd driver don't support pnp mode.


51226 13-Sep-1999 bde

Removed diskerr()'s unused d_name arg and updated callers. This fixes
warnings caused by the arg having the wrong type (not const enough).
The arg was also wrong (a full name instead of a short one) for calls
from from subr_diskmbr.c and pc98/diskslice_machdep.c.


51222 13-Sep-1999 kato

Merge from sys/i386/conf/GENERIC revision 1.190.


51202 12-Sep-1999 nyan

Fixed missing changes from sys/isa/sio.c.


51200 12-Sep-1999 nyan

Merge missing changes from sys/i386/conf/files.i386.


51111 09-Sep-1999 julian

Changes to centralise the default blocksize behaviour.
More likely to follow.

Submitted by: phk@freebsd.org


51105 09-Sep-1999 kato

Merge from sys/i386/i386/machdep.c revision 1.361.


51099 08-Sep-1999 phk

Make unused tape bmajors in past tense.


51098 08-Sep-1999 phk

Don't register a bmajor.


51093 08-Sep-1999 phk

Make sa/bdev, gd/bdev and gd/cdev as past-tense.


51058 07-Sep-1999 kato

Merge from sys/i386/i386/userconfig.c revisions 1.157 & 1.158.


51057 07-Sep-1999 kato

Commented out k6_mem.c.


51056 07-Sep-1999 kato

Change isa_get/set_flags() to device_get/set_flags().

Submitted by: dfr


50869 04-Sep-1999 kato

Merge from sys/i386/isa/clock.c revision 1.145.


50868 04-Sep-1999 kato

Merge from sys/i386/conf/files.i386 revision 1.264.


50806 02-Sep-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.156.


50805 02-Sep-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.263.


50804 02-Sep-1999 kato

Sync with sys/i386/conf/GENERIC revision up to 1.186.


50748 01-Sep-1999 phk

Set si_bsize_phys and si_bsize_max in all legacy CD drivers.


50744 01-Sep-1999 phk

Try to win back the "removal of most crufty code" trophy from markm:

Remove WD formatting code which has never worked in 386bsd or FreeBSD.

Remove DIOCSSTEP and DIOCSRETRIES ioctls as well, they belong in
history, along with the SMD disks.

OK'ed by: bde


50594 29-Aug-1999 kato

- Removed COMPAT_ATDISK from option because it is pseudo-device now.
- Fixed arguments of atcompat_dsinit() in diskslice_machdep.c.


50551 29-Aug-1999 phk

Merge alpha and pc98 changes into i386 MBR handling code and replace all
three copies with one copy in MI land.


50542 29-Aug-1999 kato

Changed from dname into devtoname(bp->b_dev) in the function dsinit().


50518 28-Aug-1999 nyan

Merge missing changes from sys/i386/conf/GENERIC.


50517 28-Aug-1999 nyan

Fix ordering.


50515 28-Aug-1999 nyan

- The old printer driver is renamed 'olpt'.
- Added the gdc driver.


50513 28-Aug-1999 kato

Added MII bus support.

Reminded by: phk


50511 28-Aug-1999 phk

We don't need to pass the diskname argument all over the diskslice/label
code, we can find the name from any convenient dev_t


50477 28-Aug-1999 peter

$Id$ -> $FreeBSD$


50441 27-Aug-1999 julian

Remove some vestiges of devfs direct calls.


50436 27-Aug-1999 julian

Add PHK's make_dev() into more places where DEVFS used to be
hooked in directly.

Alpha change checked by: Matthew Jacob <mjacob@feral.com>
i4b ISDN changes checked by: Udo Schweigert <ust@cert.siemens.de>
and Hellmuth Michaelis <hm@hcs.de>
PC98 changes checked by: Takahashi Yoshihiro <nyan@FreeBSD.org>


50254 23-Aug-1999 phk

Convert DEVFS hooks in (most) drivers to make_dev().

Diskslice/label code not yet handled.

Vinum, i4b, alpha, pc98 not dealt with (left to respective Maintainers)

Add the correct hook for devfs to kern_conf.c

The net result of this excercise is that a lot less files depends on DEVFS,
and devtoname() gets more sensible output in many cases.

A few drivers had minor additional cleanups performed relating to cdevsw
registration.

A few drivers don't register a cdevsw{} anymore, but only use make_dev().


50236 23-Aug-1999 kato

Updated to new keyboard driver.

Submitted by: yokota & nyan


50233 23-Aug-1999 kato

Merge from sys/dev/syscons/syscons.c revision 1.319.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


50230 23-Aug-1999 kato

Merge from sys/i386/isa/npx.c revision 1.76.


50228 23-Aug-1999 kato

Merge from sys/i386/i386/userconfig.c revision 1.153.


50227 23-Aug-1999 kato

Merge from sys/i386/conf/options.i386 revision .1.20.


50008 18-Aug-1999 kato

Merge from sys/i386/isa/spkr.c revision 1.38.


50007 18-Aug-1999 kato

Merge from sys/i386/i386/machdep.c revision 1.359.


50006 18-Aug-1999 kato

Merge from sys/i386/conf/files.i386 revision 1.259.


49946 17-Aug-1999 nyan

Use V-FAST mode register to check whether it supports V-FST mode.

Submitted by: WATANABE Takuya <sodium@xuni.ne.jp>


49829 15-Aug-1999 phk

Give if_tun the "almost clone" makeover.


49827 15-Aug-1999 phk

Give BPF the "almost-clone" update. If you need more of them, make
more entries in /dev and be happy you don't need to recompile your
kernel.


49771 14-Aug-1999 phk

Spring cleaning around strategy and disklabels/slices:

Introduce BUF_STRATEGY(struct buf *, int flag) macro, and use it throughout.
please see comment in sys/conf.h about the flag argument.

Remove strategy argument from all the diskslice/label/bad144
implementations, it should be found from the dev_t.

Remove bogus and unused strategy1 routines.

Remove open/close arguments from dssize(). Pick them up from dev_t.

Remove unused and unfinished setgeom support from diskslice/label/bad144 code.


49674 13-Aug-1999 kato

Merge from sys/i386/conf/majors.i386 revision 1.82.


49605 10-Aug-1999 kato

Cosmetic changes in PC98 functions:
- Removed spaces after `(' and preceding `)'.
- Added missing spaces after commas.
- Fixed indentations.


49604 10-Aug-1999 kato

Fixed a compiler warning by conversion from pointer to integer.


49600 10-Aug-1999 kato

- Removed unused variable.
- Fixed missing argument of printf.
- Fixed printf format.
- Added parentheses suggested by the compiler.


49598 10-Aug-1999 kato

Sync with sys/i386/conf/userconfig.c revision 1.152.


49564 09-Aug-1999 nyan

Fixed checking a type of the interface.

Submitted by: Tomohiko Kurahashi <kura@tim.hi-ho.ne.jp>


49558 09-Aug-1999 phk

Merge the cons.c and cons.h to the best of my ability. alpha may or
may not compile, I can't test it.


49536 08-Aug-1999 phk

Make the pty driver as close to a cloning device as we can get for now,
we create the pty on the fly when it is first opened.

If you run out of ptys now, just MAKEDEV some more.

This also demonstrate the use of dev_t->si_tty_tty and dev_t->si_drv1
in a device driver.


49522 08-Aug-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.119.


49521 08-Aug-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.81.


49520 08-Aug-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.257.


49519 08-Aug-1999 kato

Enable bpf by default.


49516 08-Aug-1999 kato

Fix a panic caused by freeing unallocated structure.

Submitted by: Tomohiko Kurahashi <kura@tim.hi-ho.ne.jp>


49348 01-Aug-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.80.


49260 30-Jul-1999 kato

Sync with sys/i386/isa/clock.c revision up to 1.142.


49259 30-Jul-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.357.


49258 30-Jul-1999 kato

Removed apm_setup.s.


49195 29-Jul-1999 mdodd

Alter the behavior of sys/kern/subr_bus.c:device_print_child()

- device_print_child() either lets the BUS_PRINT_CHILD
method produce the entire device announcement message or
it prints "foo0: not found\n"

Alter sys/kern/subr_bus.c:bus_generic_print_child() to take on
the previous behavior of device_print_child() (printing the
"foo0: <FooDevice 1.1>" bit of the announce message.)

Provide bus_print_child_header() and bus_print_child_footer()
to actually print the output for bus_generic_print_child().
These functions should be used whenever possible (unless you can
just use bus_generic_print_child())

The BUS_PRINT_CHILD method now returns int instead of void.

Modify everything else that defines or uses a BUS_PRINT_CHILD
method to comply with the above changes.

- Devices are 'on' a bus, not 'at' it.
- If a custom BUS_PRINT_CHILD method does the same thing
as bus_generic_print_child(), use bus_generic_print_child()
- Use device_get_nameunit() instead of both
device_get_name() and device_get_unit()
- All BUS_PRINT_CHILD methods return the number of
characters output.

Reviewed by: dfr, peter


49121 26-Jul-1999 kato

Sync with sys/i386/isa/npx.c revision up to 1.75.


49120 26-Jul-1999 kato

Sync with sys/i386/isa/clock.c revision up to 1.140.
This commit may break 8MHz system clock mode.


49119 26-Jul-1999 kato

Sync with sys/i386/i386/userconfig.c revision up to 1.150.


49118 26-Jul-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.356.


49117 26-Jul-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.254.


49115 26-Jul-1999 kato

Sync with sys/i386/conf/GENERIC revision 1.178.


48961 21-Jul-1999 nyan

Fixed missing changes from sys/pc98/pc98/pc98.c when new-bus was integrated.

- In isa_dmastart() and isa_dmadone(), cache flush.
- Correct current word register address.

Submitted by (partial): Toshikazu Kaho <kaho@elam.kais.kyoto-u.ac.jp>


48703 09-Jul-1999 kato

Removed device-dirver flags.


48701 09-Jul-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.148.


48699 09-Jul-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.355.


48683 08-Jul-1999 kato

Sync with sys/dev/syscons/syscons.c revision 1.313.


48681 08-Jul-1999 kato

Sync with sys/i386/i386/machdep.c revision up to 1.354.


48680 08-Jul-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.79.


48679 08-Jul-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.158.


48645 06-Jul-1999 des

Rename bpfilter to bpf.


48579 05-Jul-1999 msmith

Move the initialisation/tuning of nmbclusters from param.c/machdep.c
into uipc_mbuf.c. This reduces three sets of identical tunable code to
one set, and puts the initialisation with the mbuf code proper.

Make NMBUFs tunable as well.

Move the nmbclusters sysctl here as well.

Move the initialisation of maxsockets from param.c to uipc_socket2.c,
next to its corresponding sysctl.

Use the new tunable macros for the kern.vm.kmem.size tunable (this should have
been in a separate commit, whoops).


48557 04-Jul-1999 phk

Remove cmaj and bmaj args from DEV_DRIVER_MODULE.


48551 04-Jul-1999 nyan

Remove the 'tty' interrupt label. This is obsolete.

Pointed out by: NAKAJI Hiroyuki <nakaji@tutrp.tut.ac.jp>


48516 03-Jul-1999 kato

Added copyright.

Pointed out by: yokota


48515 03-Jul-1999 kato

Removed unused files.


48514 03-Jul-1999 kato

Moved LCD controle routine for certain models of EPSON laptops into
suitable place.

Submitted by: yokota


48513 03-Jul-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.349.


48508 03-Jul-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.78.


48507 03-Jul-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.157.


48376 30-Jun-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.147.


48375 30-Jun-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.345.


48324 28-Jun-1999 kato

Typo: BUF_INITLOCK -> BUF_LOCKINIT and BUF_FREELOCK -> BUF_LOCKFREE.


48322 28-Jun-1999 kato

Sync with sys/i386/isa/clock.c revision 1.138.


48321 28-Jun-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.146.


48320 28-Jun-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.344.


48319 28-Jun-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.156.


48225 26-Jun-1999 mckusick

Convert buffer locking from using the B_BUSY and B_WANTED flags to using
lockmgr locks. This commit should be functionally equivalent to the old
semantics. That is, all buffer locking is done with LK_EXCLUSIVE
requests. Changes to take advantage of LK_SHARED and LK_RECURSIVE will
be done in future commits.


48217 25-Jun-1999 kato

From submitter:
The attached diff attempts to eliminate as much of the difference
between the i386 and the pc98 version of the file as possible. It
should not make any semantic difference (it consists of whitespace
changes, order changes, comment changes, changes of case for hex
constants, and merging in a couple of constants that hadn't made it
from the i386 version.)

Submitted by: eivind


48190 24-Jun-1999 kato

Sync with sys/dev/syscons/scvtb.c revision 1.2.

Submitted by: yokota


48188 24-Jun-1999 kato

Merge with sys/isa/syscons_isa.c and sys/dev/syscons/syscons.c
revisions 1.6 and 1.308, respectively.

Pointed-out by: yokota


48187 24-Jun-1999 kato

PC98 part of the second phase of syscons reorganization.

Submitted by: yokota


48176 24-Jun-1999 kato

Sync with sys/i386/isa/clock.c revision 1.137.


48175 24-Jun-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.118.


48154 24-Jun-1999 msmith

From the submitter:

wfd driver code tries to give wd driver first crack at ioctl's,
but incorrectly interprets internal error and never gets to send
eject to ATAPI device.

(this is fixed in the atapi-fd driver)

PR: kern/12218
Submitted by: Simon Walton <simonw@cinesite.com>


48068 21-Jun-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.342.


48067 21-Jun-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.77.


48066 21-Jun-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.247.


48006 18-Jun-1999 kato

New parallel port support for PC98. Old PC98s which have
uni-directional parallel port should use olpt driver instead of lpt
driver.

Files ppc.c and ppcreg.h are copied form i386/isa directory with PC98
change.

Submitted by: Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>


47977 17-Jun-1999 kato

Sync with sys/i386/i386/machdep.c revision up to 1.341.


47976 17-Jun-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.117.


47926 15-Jun-1999 des

Kill option FAILSAFE.

PR: i386/12187
Approved by: bde


47781 06-Jun-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.76.


47757 05-Jun-1999 dfr

Floppy driver options moved to conf/options.


47729 04-Jun-1999 kato

Oops, remove redundant comments.


47728 04-Jun-1999 kato

Declare Crtat and Atrat because screen savers use these variables.

Pointed out by: Nobuyuki Koganemaru <kogane@koganemaru.co.jp>


47714 03-Jun-1999 kato

Remove VM86 option.


47713 03-Jun-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.339.

New function getmemsize_pc98 is added in this commit, since PC98 is
quite different in obtaining memory size from IBM-PC. Many lines of
this function is shareable with IBM-PC's getmemsize function, but
sharing needs many #ifdef PC98 statements. Therefore, I gave up
sharing code with IBM-PC's and just added new function.


47711 03-Jun-1999 kato

Sync with sys/i386/conf/files.i386 and options.i386 revisions 1.246
and 1.115, respectively.


47669 01-Jun-1999 kato

Fixed locations of include files.


47667 01-Jun-1999 kato

Sync with sys/i386/isa/clock.c revision 1.136.


47640 31-May-1999 phk

Simplify cdevsw registration.

The cdevsw_add() function now finds the major number(s) in the
struct cdevsw passed to it. cdevsw_add_generic() is no longer
needed, cdevsw_add() does the same thing.

cdevsw_add() will print an message if the d_maj field looks bogus.

Remove nblkdev and nchrdev variables. Most places they were used
bogusly. Instead check a dev_t for validity by seeing if devsw()
or bdevsw() returns NULL.

Move bdevsw() and devsw() functions to kern/kern_conf.c

Bump __FreeBSD_version to 400006

This commit removes:
72 bogus makedev() calls
26 bogus SYSINIT functions

if_xe.c bogusly accessed cdevsw[], author/maintainer please fix.

I4b and vinum not changed. Patches emailed to authors. LINT
probably broken until they catch up.


47625 30-May-1999 phk

This commit should be a extensive NO-OP:

Reformat and initialize correctly all "struct cdevsw".

Initialize the d_maj and d_bmaj fields.

The d_reset field was not removed, although it is never used.

I used a program to do most of this, so all the files now use the
same consistent format. Please keep it that way.

Vinum and i4b not modified, patches emailed to respective authors.


47487 25-May-1999 kato

Merge with sys/i386/isa/wd.c revision 1.192 and 1.193.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


47485 25-May-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.145.


47484 25-May-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.114.


47302 18-May-1999 roger

Added device major 125 for the Advantech PCI-1750 Digital IO card.

A very nice i/o board with 16 open collector outputs (capable of driving 5-40v)
and 16 inputs
Also has 2 16 bit cascadable counters (10Mhz clock) capable of
generating interrupts.

It is a PCI card, and emulates the Intel 8254 timer.
It uses the PLX PCI-9050 PCI bus interface to map the
8254 style hardware and the i/o registers into the IO space.

Developed by Jennifer Clark <jen@vulture.dmem.strath.ac.uk>
Strathclyde University Transparent Telepresence Research Group


47266 17-May-1999 kato

- Fixed default irq in SMP kernel.
- Removed hardcode IRQ in #ifdef PC98.


47265 17-May-1999 kato

Sync with sys/i386/isa/npx.c revision 1.73.


47264 17-May-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.144.


47263 17-May-1999 kato

Removed ucmpdi2.c


47172 14-May-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.143.


47170 14-May-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.241.


47081 12-May-1999 luoqi

Unbreak VESA on SMP.


47054 12-May-1999 kato

Sync with sys/i386/isa/diskslice_machdep.c revision 1.34.


47024 11-May-1999 luoqi

Yet another place I missed when increasing trapframe size, which causes problem
to SIGFPE handling.

Reviewed by: Bruce Evans <bde@zeta.org.au>


47008 11-May-1999 sos

Make the driver work on HP8100 and the newer Philips that does not
support the rezero command.


47002 11-May-1999 kato

Sync with sys/isa/sio.c revision 1.241.


47001 11-May-1999 kato

Sync with sys/i386/isa/fd.c revision 1.143.


47000 11-May-1999 kato

Sync with sys/i386/i386/usercnofig.c revision 1.142.


46874 10-May-1999 kato

Fixed for COM_MULTIPORT option. Members flags and unit should be
obtained via appropriate functions.


46871 10-May-1999 kato

Sync with sys/isa/sio.c revision 1.240.


46870 10-May-1999 kato

Sync with sys/i386/isa/isa_dma.c revision 1.3.


46869 10-May-1999 kato

Sync with sys/i386/isa/if_ed.c revision 1.152.


46868 10-May-1999 kato

Sync with sys/i386/isa/clock.c revision 1.133.


46867 10-May-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.113.


46866 10-May-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.74.


46865 10-May-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.239.


46864 10-May-1999 kato

Sync with sys/i386/conf/GENERIC and Makefile.i386 revisions 1.169 and
1.152, respectively.


46792 09-May-1999 phk

Unconfuse DEV_MODULE() and DEV_DRIVER_MODULE() about the difference between
a major number for a dev_t.


46768 09-May-1999 kato

Removed DRIVER_TYPE_TTY field.


46766 09-May-1999 kato

Sync with sys/isa/sio.c revision 1.234.


46760 09-May-1999 kato

Removed DRIVER_TYPE_TTY field.


46759 09-May-1999 kato

Sync with sys/isa/atkbd_isa.c revision 1.4.


46758 09-May-1999 kato

Sync with sys/i386/isa/wd.c revision 1.197.


46757 09-May-1999 kato

Sync with sys/i386/isa/pcausio.c revision 1.48.


46756 09-May-1999 kato

Sync with sys/i386/isa/npx.c revision 1.61.


46755 09-May-1999 kato

Sync with sys/i386/isa/mse.c revision 1.42.


46754 09-May-1999 kato

Sync with sys/i386/isa/fd.c revision 1.142.


46753 09-May-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.141.


46752 09-May-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.72.


46751 09-May-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.238.


46750 09-May-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.149.


46635 07-May-1999 phk

Continue where Julian left off in July 1998:

Virtualize bdevsw[] from cdevsw. bdevsw() is now an (inline)
function.

Join CDEV_MODULE and BDEV_MODULE to DEV_MODULE (please pay attention
to the order of the cmaj/bmaj arguments!)

Join CDEV_DRIVER_MODULE and BDEV_DRIVER_MODULE to DEV_DRIVER_MODULE
(ditto!)

(Next step will be to convert all bdev dev_t's to cdev dev_t's
before they get to do any damage^H^H^H^H^H^Hwork in the kernel.)


46625 07-May-1999 phk

Introduce two functions: physread() and physwrite() and use these directly
in *devsw[] rather than the 46 local copies of the same functions.

(grog will do the same for vinum when he has time)


46580 06-May-1999 phk

remove b_proc from struct buf, it's (now) unused.

Reviewed by: dillon, bde


46572 06-May-1999 peter

Fix a precedence bug in the atapi tape driver. I think it could either
write a filemark where it wasn't needed, or neglect to write one at all,
depending on how the boolean converted to an int value for the &.


46571 06-May-1999 peter

Fix up a few easy 'assignment used as truth value' and 'suggest parens
around && within ||' type warnings. I'm pretty sure I have not masked
any problems here, I've committed real problem fixes seperately.


46547 06-May-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.138.


46546 06-May-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.237.


46539 06-May-1999 luoqi

Initialize dblfault_tss.tss_fs to the per-cpu private data segment selector.


46537 06-May-1999 luoqi

Do not set curproc until proc0 is fully initialized (in proc0_init()).


46464 05-May-1999 kato

Sync with sys/i386/isa/fd.c revision 1.137.


46463 05-May-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.71.


46460 05-May-1999 kato

Fixed missing parenthesis.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


46342 02-May-1999 peter

Operator precedence bug

PR: 11415
Submitted by: Christopher Peterson <cpeterso@cs.washington.edu>


46198 30-Apr-1999 kato

Added $Id$.


46153 28-Apr-1999 dt

s/static foo_devsw_installed = 0;/static int foo_devsw_installed;/.
(Edited automatically)


46148 28-Apr-1999 kato

Sync with sys/i386/isa/clock.c revision 1.132.


46147 28-Apr-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.332.


46112 27-Apr-1999 phk

Suser() simplification:

1:
s/suser/suser_xxx/

2:
Add new function: suser(struct proc *), prototyped in <sys/proc.h>.

3:
s/suser_xxx(\([a-zA-Z0-9_]*\)->p_ucred, \&\1->p_acflag)/suser(\1)/

The remaining suser_xxx() calls will be scrutinized and dealt with
later.

There may be some unneeded #include <sys/cred.h>, but they are left
as an exercise for Bruce.

More changes to the suser() API will come along with the "jail" code.


46049 25-Apr-1999 kato

Remove obsolete interrupt labels.


46047 25-Apr-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.137.


46046 25-Apr-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.112.


46045 25-Apr-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.148.


46044 25-Apr-1999 kato

De-quote.


45982 24-Apr-1999 kato

Commented out adv_isa.c.


45919 21-Apr-1999 kato

Sync with sys/i386/isa/isa_dma.c revision 1.2.


45918 21-Apr-1999 kato

Sync with sys/i386/isa/clock.c revision 1.131.


45858 20-Apr-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.136.


45857 20-Apr-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.330.


45856 20-Apr-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.147.


45855 20-Apr-1999 kato

Rectivate pnp0.


45830 19-Apr-1999 kato

Fixed missing changes for new-bus (return value of the probe routine).

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


45816 19-Apr-1999 kato

Sync with sys/isa/sio.c revision 1.226.


45815 19-Apr-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.135.


45783 18-Apr-1999 kato

Sync with follwing files:

Path Revision
i386/conf/GENERIC 1.162
i386/conf/Makefile.i386 1.146
i386/conf/files.i386 1.236
i386/conf/options.i386 1.111
i386/i386/machdep.c 1.329
i386/i386/userconfig.c 1.134
i386/isa/fd.c 1.135
i386/isa/if_ed.c 1.151
i386/isa/isa_dam.c 1.1
i386/isa/npx.c 1.67
isa/sio.c 1.224
dev/syscons/syscons.c 1.300
i386/isa/wd.c 1.194
isa/vga_isa.c 1.5
isa/atkbd_isa.c 1.3
isa/syscons_isa.c 1.2

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


45666 13-Apr-1999 peter

Shoot the LKM support in the old wd/wdc/atapi driver set in the head and
perform a cleanup/unifdef sweep over it to tidy things up. The atapi
code is permanently attached to the wd driver and is always probed.

I will add an extra option bit in the flags to disable an atapi probe on
either the master or slave if needed, if people want this.

Remember, this driver is destined to die some time. It's possible that
it will loose all atapi support down the track and only be used for
dumb non-ATA disks and all ata/atapi devices will be handled by the new
ata system.

ATAPI, ATAPI_STATIC and CMD640 are no longer options, all are implicit.

Previously discussed with: sos


45612 12-Apr-1999 kato

Sync with sys/i386/isa/isa.c revision 1.118.


45579 11-Apr-1999 grog

Back out default debug kernel. The flags revert to historical behaviour.

Requested-by: ache
bde
dg

Modify targets for debug kernels: when -g was specified, make will
now build a debug kernel called kernel.debug, and create a stripped
version called kernel at the same time. The two targets install and
install.debug are otherwise unchanged.

Requested-by: dillon

Update man page accordingly.


45530 10-Apr-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.133.


45529 10-Apr-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.233.


45424 07-Apr-1999 grog

1. Modify config to issue different code for debugging.
2. Config complains if you use -g:

Debugging is enabled by default, there is no ned to specify the -g option

3. Config warns you if you don't use -s:

Building kernel with full debugging symbols. Do
"config -s BSD" for historic partial symbolic support.
To install the debugging kernel, do make install.debug

(BSD was the name of the config file I used; I print out the same
name).

4. Modify Makefile.i386, Makefile.alpha, Makefile.pc98 and config to
work if a kernel name other than 'kernel' is specified. This is
not absolutely necessary, but useful, and it was relatively easy.
I now have a kernel called /crapshit :-)

5. Modify Makefile.i386, Makefile.alpha, Makefile.pc98 "clean" target
to remove both the debug and normal kernel.

6. Modify all to install the stripped kernel by default and the debug
kernel if you enter "make install.debug".

7. Update version number of Makefiles and config.


45364 06-Apr-1999 peter

Use PHOLD/PRELE() instead of P_PHSYIO.


45288 04-Apr-1999 kato

Fix for console mouse.

Submitted by: Nobuyuki Koganemaru <kogane@koganemaru.co.jp>


45270 03-Apr-1999 jdp

Restore support for executing BSD/OS binaries on the i386 by passing
the address of the ps_strings structure to the process via %ebx.
For other kinds of binaries, %ebx is still zeroed as before.

Submitted by: Thomas Stephens <tas@stephens.org>
Reviewed by: jdp


45268 03-Apr-1999 kato

Sync with sys/i386/isa/wd.c revision 1.191.


45267 03-Apr-1999 kato

Sync with sys/i386/isa/sio.c revision 1.234.


45240 02-Apr-1999 kato

o sys/i386/include/soundcard.h
Add Sound Card ID for the nss(NEC PC-9801-86 Sound System) driver.
Old name of this driver was pcm driver in FreeBSD 2.2.x.
Fix lack of the length of the name member of the synth_info structure.
(attach_mpu401 in sys/i386/isa/sound/mpu401.c requires 33 chars.)

o sys/i386/isa/sound/dev_table.h
Add the DMAbuf flags definition DMA_DISABLE.
Add the nss driver entry.

o sys/i386/isa/sound/dmabuf.c
Add the DMA_DISABLE flag check in DMAbuf_outputintr and DMAbuf_inputintr
to disable DMA control in FIFO only use (nss driver required).

o sys/i386/isa/sound/local.h
Add the nss driver entry.

o sys/i386/isa/sound/mpu401.c
Replace inb function in probe_mpu401 to mpu401_status macro.
Wrap macro argument for above replace.
Add I/O port maping macro for NEC PC-98x1 arch.
Add delay in NEC PC-98x1 arch.

o sys/i386/isa/sound/pcm86.c
Change driver name to avoid name space conflict to new pcm driver.
Fix NEC PC-9801-86 driver to work on RELENG_3 branch or latter.

o sys/i386/isa/sound/sound_calls.h
Fix the mpuintr definition.
Add the nss driver entry.
attach_nss, probe_nss, nssintr

o sys/i386/isa/sound/soundcard.c
Fix lack of the mpuintr registration.
Add the nss driver entry.

o sys/pc98/conf/files.pc98
Add the nss driver entry.

Reviewed by: kato
Submitted by: Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>


45226 01-Apr-1999 kato

Sync with sys/i386/isa/sio.c revision up to 1.233.


45225 01-Apr-1999 kato

Sync with sys/i386/isa/npx.c revision 1.66.


45224 01-Apr-1999 kato

Sync with sys/i386/conf/files.i386 revision up to 1.232.


45223 01-Apr-1999 kato

Delete the aic driver.


45184 31-Mar-1999 sos

The DEVFS case was screwed by my last commit here..


45030 25-Mar-1999 kato

Sync with sys/i386/isa/wd.c revision 1.190.


45029 25-Mar-1999 kato

Sync with sys/i386/isa/sio.c revision up to 1.231.


45028 25-Mar-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.69.


44898 19-Mar-1999 kato

Sync with sys/i386/isa/if_ed.c revision 1.150.


44825 17-Mar-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.110.


44824 17-Mar-1999 kato

Sync with sys/i386/conf/majors.i386 revision up to 1.68.


44823 17-Mar-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.229.


44822 17-Mar-1999 kato

Sync with sys/i386/conf/devices.i386 revision 1.16.


44821 17-Mar-1999 kato

Sync with sys/i386/conf/GENERIC revision 1.155.


44801 16-Mar-1999 sos

Rewert the atapi CDROM driver's name to wcd.
This is to avoid confusion with the new system.
Also provide real entires in MAKEDEV for the new system.


44721 13-Mar-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.141.


44635 10-Mar-1999 kato

Keyboard driver update.

Submitted by: Kazutaka YOKOTA <yokota@FreeBSD.org>


44633 10-Mar-1999 kato

Sync with sys/i386/conf/options.i386 revision up to 1.108.


44632 10-Mar-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.66.


44631 10-Mar-1999 kato

Sync with sys/i386/conf/files.i386 revision up to 1.227.


44514 06-Mar-1999 kato

Sync with sys/i386/i386/machdpe.c revision 1.327.


44460 04-Mar-1999 kato

Sync with sys/i386/isa/sio.c revision 1.229.


44459 04-Mar-1999 kato

Sync with sys/i386/conf/files.i386 revision 1.225.


44442 03-Mar-1999 kato

Added FE_8BIT_SUPPORT into the list. The fe driver includes opt_fe.h.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


44425 02-Mar-1999 kato

Merge with sys/i386/conf/files.i386 revision 1.224.


44424 02-Mar-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.140.


44421 02-Mar-1999 kato

Fix for LINE30 option. This option was not tested under new console
driver.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


44267 25-Feb-1999 kato

Added comment on Access/PC N98C+ and LAC-98 cards, and FE_8BIT_SUPPORT
option that LAC-98 needs.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


44265 25-Feb-1999 kato

Added adv driver support.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


44263 25-Feb-1999 kato

Commented out lpt0.


44258 25-Feb-1999 kato

Sync with sys/i386/isa/wd.c revision 1.189.


44257 25-Feb-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.132.


44084 16-Feb-1999 kato

- Cosmetic change.
- Enable bs driver.
- Add ax and xl drivers.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


44082 16-Feb-1999 kato

Merge with sys/i386/conf/options.i386 revision 1.102.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


44079 16-Feb-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.326.


43994 14-Feb-1999 des

Ignore errors from chflags. This makes it possible to make installworld
with DESTDIR set to an NFS-mounted file system.


43922 12-Feb-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.325.


43840 10-Feb-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.130.


43819 10-Feb-1999 ken

Add a prioritization field to the devstat_add_entry() call so that
peripheral drivers can determine where in the devstat(9) list they are
inserted.

This requires recompilation of libdevstat, systat, vmstat, rpc.rstatd, and
any ports that depend on the devstat code, since the size of the devstat
structure has changed. The devstat version number has been incremented as
well to reflect the change.

This sorts devices in the devstat list in "more interesting" to "less
interesting" order. So, for instance, da devices are now more important
than floppy drives, and so will appear before floppy drives in the default
output from systat, iostat, vmstat, etc.

The order of devices is, for now, kept in a central table in devicestat.h.
If individual drivers were able to make a meaningful decision on what
priority they should be at attach time, we could consider splitting the
priority information out into the various drivers. For now, though, they
have no way of knowing that, so it's easier to put them in an easy to find
table.

Also, move the checkversion() call in vmstat(8) to a more logical place.

Thanks to Bruce and David O'Brien for suggestions, for reviewing this, and
for putting up with the long time it has taken me to commit it. Bruce did
object somewhat to the central priority table (he would rather the
priorities be distributed in each driver), so his objection is duly noted
here.

Reviewed by: bde, obrien


43709 06-Feb-1999 kato

Sync with syscons for i386.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


43663 05-Feb-1999 kato

Sync with sys/i386/isa/sio.c revision up to 1.228.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


43606 04-Feb-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.129.


43589 04-Feb-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.324.


43539 02-Feb-1999 kato

Added braces around initializsers and in if-statements.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


43537 02-Feb-1999 kato

Sync with sys/dev/syscons/syscons.c revision 1.294.


43488 31-Jan-1999 sos

Bzero the devstat structure before use.

Pointed out by: <Kenneth Merry> ken@plutotech.com


43486 31-Jan-1999 sos

Add device stats for the acd device.


43483 31-Jan-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.128.


43426 30-Jan-1999 phk

Use suser() to determine super-user-ness, don't examine cr_uid directly.


43425 30-Jan-1999 phk

Use suser() to check for super user rather than examining cr_uid directly.
Use TTYDEF_SPEED rather than 9600 a couple of places.

Reviewed by: bde, with a few grumbles.


43389 29-Jan-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.323.


43341 28-Jan-1999 kato

Oops, added parentheses after `else'.

Submitted by: Takahashi Yoshihiro <nyan@dd.catv.ne.jp>


43339 28-Jan-1999 kato

The "easy" fixe for compiling the kernel -Wunused: remove unreferenced
local variable.


43338 28-Jan-1999 kato

The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static
and local variables, goto labels, and functions declared but not defined.


43332 28-Jan-1999 kato

Sync with sys/i386/isa/wd.c revision 1.187.


43331 28-Jan-1999 kato

Sync with sys/i386/isa/if_ed.c revision 1.149.


43330 28-Jan-1999 kato

Sync with sys/i386/isa/diskslice_machdep.c revision 1.33.


43329 28-Jan-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.127.


43328 28-Jan-1999 kato

Sync with sys/i386/conf/GENERIC revision 1.144.


43280 27-Jan-1999 kato

Clean up LD-BDN reset code(PC-98).

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


43275 27-Jan-1999 kato

Sync with sys/i386/isa/sio.c revision 1.225.


43274 27-Jan-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.138.


43272 27-Jan-1999 kato

Initialize the member atr_buffer.

Pointed out by: Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>


43192 25-Jan-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.137.


42893 20-Jan-1999 kato

Remove 'alog'.


42892 20-Jan-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.136.


42834 19-Jan-1999 kato

Fixed argument to intr member of the variable kbd.


42833 19-Jan-1999 kato

Sync with sys/dev/syscons and sys/dev/kbd drivers.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


42820 19-Jan-1999 peter

Update the pccard hooks to use a module style declaration instead.


42805 18-Jan-1999 kato

Added copyright.

Pointed out by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


42804 18-Jan-1999 kato

Merge with sys/dev/syscons/syscons.c revision 1.292.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


42803 18-Jan-1999 kato

Don't forget to initialize va_mode.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
Forgotten by: kato


42798 18-Jan-1999 kato

Sync with sys/i386/i386/userconfig.c revision 1.126.


42797 18-Jan-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.135.


42795 18-Jan-1999 kato

Switched to new syscons driver.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp> and
Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


42752 17-Jan-1999 kato

Make old syscons work. (New syscons driver for PC98 is still under
development.)

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


42746 17-Jan-1999 kato

Sync with sys/i386/isa/wd.c revision 1.186.


42730 16-Jan-1999 kato

Revise sio entries to synchronize with current driver.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


42728 16-Jan-1999 kato

Sync with sys/i386/isa/wd.c revision up to 1.185.


42727 16-Jan-1999 kato

Sync with sys/i386/isa/sio.c revision up to 1.223.


42726 16-Jan-1999 kato

Sync with sys/i386/isa/npx.c revision 1.65.


42725 16-Jan-1999 kato

Sync with sys/i386/isa/fd.c revision 1.131.


42724 16-Jan-1999 kato

Sync with sys/i386/i386/machdep.c revision up to 1.125.


42723 16-Jan-1999 kato

Sync with sys/i386/i386/machdep.c revision up to 1.322.


42722 16-Jan-1999 kato

Sync with sys/i386/conf/majors.i386 revision up to 1.64.


42551 12-Jan-1999 eivind

Add a prototype to silence warnings.


42546 12-Jan-1999 eivind

Silence warnings.


42450 09-Jan-1999 jdp

Switch to using ".So" as the extension for PIC object files rather
than ".so". The old extension conflicted with well-established
naming conventions for dynamically loadable modules.

The "clean" targets continue to remove ".so" files too, to deal with
old systems.


42405 08-Jan-1999 kato

Sync with sys/i386/isa/sio.c and syscons.c revisions 1.221 and 1.289,
respectively.


42404 08-Jan-1999 kato

Sync with sys/i386/i386/userconfig.c revision up to 1.120.


42403 08-Jan-1999 kato

Sync with sys/i386/i386/machdep.c revision 1.320.


42399 08-Jan-1999 kato

Oops, remove duplicate line.


42398 08-Jan-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.60.


42397 08-Jan-1999 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.133.


42283 04-Jan-1999 kato

Sync with sys/i386/conf/options.i386 revision 1.101.


42282 04-Jan-1999 kato

Sync with sys/i386/conf/majors.i386 revision 1.59.


42281 04-Jan-1999 kato

Sync with sys/i386/conf/files.i386 revision up to 1.217.


42280 04-Jan-1999 kato

Sync with sys/i386/boot/rawboot/Makefile revision 1.12.


42279 04-Jan-1999 kato

Sync with sys/i386/boot/netboot/Makefile revision 1.22.


42278 04-Jan-1999 kato

Sync with sys/i386/boot/kzipboot/Makefile revision 1.10.


42277 04-Jan-1999 kato

Sync with sys/i386/boot/biosboot/Makefile revision 1.68.


42276 04-Jan-1999 kato

Sync with sys/i386/boot/Makefile.inc revision up to 1.5.


42267 03-Jan-1999 kato

Recognize IDE controler even if HDD is not connected.

Submitted by: IMAI Takeshi <take-i@ceres.dti.ne.jp>


42265 03-Jan-1999 kato

- Remove bus-dependent addresses from `ic' file.
- Special registers of IO-DATA device's RSA series are defined in
ic/rsa.h (new file).

Pointed out by: Bruce Evans <bde@zeta.org.au>
Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


42262 03-Jan-1999 kato

Support following devices:
- on board 2nd CCU
- Midori Elec. MDC-926Rs
- Midori-Hayes ESP98
- NEC PC-9861K, PC-9801-101 PC-9801-120
- Melco IND-SP and IND-SS
- PIO-9032A/B/C
- B98-01 and B98-02
- IO-data device RSA-98II and RSA-98III
- MC-16550
- MC-RS98
- Media Inteligent RSB-2000/3000 and RSB-384
- PCMCIA modem card

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


42251 02-Jan-1999 hoek

Extraneous space.


42201 31-Dec-1998 kato

Enables snd driver.


42189 31-Dec-1998 kato

Add SMC EtherEZ98 support(PC-98).
Slim up of if_ed98.h.

Submitted by: Chiharu Shibata <chi@bd.mbn.or.jp>


42166 30-Dec-1998 kato

Sync with sys/i386/isa/sio.c revision 1.220.


42165 30-Dec-1998 kato

Sync with sys/i386/isa/pcaudio.c revision 1.45.


42164 30-Dec-1998 kato

Sync with sys/i386/isa/fd.c revision 1.130.


42163 30-Dec-1998 kato

Sync with sys/i386/conf/options.i386 revision up to 1.100.


42162 30-Dec-1998 kato

Sync with sys/i386/conf/majors.i386 revision up to 1.58.


42161 30-Dec-1998 kato

Sync with sys/i386/conf/files.i386 revision up to 1.215.


42160 30-Dec-1998 kato

Sync with sys/i386/conf/devices.i386 revision 1.15.


42159 30-Dec-1998 kato

SMP stuff has been merged into GENERIC98 file.


42158 30-Dec-1998 kato

Removed GENERICupgrade file.


42157 30-Dec-1998 kato

Sync with sys/i386/conf/GENERIC revision up to 1.140.


42092 27-Dec-1998 sos

Fix breakage by cleanup.


42059 25-Dec-1998 kato

Sync with sys/i386/isa/wd.c revision 1.182.


42058 25-Dec-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.207.


42057 25-Dec-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.132.


41975 21-Dec-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.96.


41974 21-Dec-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.131.


41894 17-Dec-1998 kato

Sync with sys/i386/isa/clock.c revision 1.129.


41893 17-Dec-1998 kato

The fe driver has been merged into sys/i386/isa/if_fe.c.

Forgotten by: kato


41892 17-Dec-1998 kato

Sync with sys/i386/isa/wd.c revision 1.181.


41891 17-Dec-1998 kato

Sync with sys/i386/isa/npx.c revision 1.64.


41890 17-Dec-1998 kato

Sync with sys/i386/isa/fd.c revision 1.129.


41871 16-Dec-1998 bde

Removed the cast to a pointer in the definition of PS_STRINGS and
adjusted related casts to match (only in the kernel in this commit).
The pointer was only wanted in one place in kern_exec.c. Applications
should use the kern.ps_strings sysctl instead of PS_STRINGS, so they
shouldn't notice this change.


41867 16-Dec-1998 kato

Sync with current sc driver in sys/i386/isa.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


41824 15-Dec-1998 kato

Oops, I forgot to commit two diffs to fe driver.


41779 14-Dec-1998 kato

Sync with sys/i386/isa/fd.c revision 1.128.


41778 14-Dec-1998 kato

Sync with sys/i386/isa/pcaudio.c revision 1.44.


41777 14-Dec-1998 kato

Sync with sys/i386/isa/if_ed.c revision 1.147.


41776 14-Dec-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.118.


41775 14-Dec-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.95.


41677 11-Dec-1998 kato

Sync with sys/i386/isa/lpt.c revision 1.72.


41675 11-Dec-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.317.


41658 10-Dec-1998 eivind

Rename one of the two devfs_link's to devfs_makelink.


41597 08-Dec-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.130.


41596 08-Dec-1998 kato

Sync with sys/i386/isa/fd.c, if_fe.c, npx.c and sio.c revisions 1.126,
1.44, 1.63 and 1.219, respectively.


41595 08-Dec-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.117.


41591 07-Dec-1998 archie

The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static
and local variables, goto labels, and functions declared but not defined.


41536 05-Dec-1998 kato

Sync with sys/i386/isa/fd.c revision 1.125.


41535 05-Dec-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.116.


41534 05-Dec-1998 kato

Sync with sys/i386/conf/optins.i386 revision 1.94.


41533 05-Dec-1998 kato

Sync with sys/i386/conf/SMP-GENERIC revision 1.23.


41532 05-Dec-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.133.


41514 04-Dec-1998 archie

Examine all occurrences of sprintf(), strcat(), and str[n]cpy()
for possible buffer overflow problems. Replaced most sprintf()'s
with snprintf(); for others cases, added terminating NUL bytes where
appropriate, replaced constants like "16" with sizeof(), etc.

These changes include several bug fixes, but most changes are for
maintainability's sake. Any instance where it wasn't "immediately
obvious" that a buffer overflow could not occur was made safer.

Reviewed by: Bruce Evans <bde@zeta.org.au>
Reviewed by: Matthew Dillon <dillon@apollo.backplane.com>
Reviewed by: Mike Spengler <mks@networkcs.com>


41501 04-Dec-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.93.


41500 04-Dec-1998 kato

Sync with sys/i386/conf/majors.i386 revision up to 1.55.


41454 02-Dec-1998 kato

- For some old Cyrix CPUs, %cr2 is clobbered by interrupts. This
problem is worked around by using an interrupt gate for the page
fault handler. This code was originally made for NetBSD/pc98 by
Naofumi Honda <honda@kururu.math.sci.hokudai.ac.jp> and has already
been in PC98 tree. Because of this bug, trap_fatal cannot show
correct page fault address if %cr2 is obtained in this function.
Therefore, trap_fatal uses the value from trap() function.
- The trap handler always enables interruption when buggy application
or kernel code has disabled interrupts and then trapped. This code
was prepared by Bruce Evans <bde@FreeBSD.org>.

Submitted by: Bruce Evans <bde@FreeBSD.org>
Naofumi Honda <honda@kururu.math.sci.hokudai.ac.jp>


41453 02-Dec-1998 kato

Sync with sys/i386/isa/isa.c revision 1.117.


41452 02-Dec-1998 kato

Sync with sys/i386/conf/majors.i386 revision up to 1.53.


41401 29-Nov-1998 kato

Sync with sys/i386/boot/netboot/Makefile revision 1.21.


41353 26-Nov-1998 kato

Sync with sys/i386/boot/netboot/Makefile revision 1.20.


41327 25-Nov-1998 kato

Reorder entries of ed drivers. Many NICs can be automatically
detected, even though a user doesn't disable unused entries with
userconfig.

Submitted by: Nobuyuki Koganemaru <kogane@koganemaru.co.jp>


41326 25-Nov-1998 kato

Cosmetic change.


41303 23-Nov-1998 kato

Sync with sys/i386/isa/sio.c revision up to 1.218.


41302 23-Nov-1998 kato

Sync with sys/i386/boot/biosboot/Makefile revision 1.67.


41277 21-Nov-1998 archie

Eliminate compiler warning.


41200 16-Nov-1998 kato

Sync with sys/i386/isa/wd.c revision up to 1.180.


41199 16-Nov-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.92.


41198 16-Nov-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.129.


41130 13-Nov-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.131.


41129 13-Nov-1998 kato

Sync with sys/i386/boot/kzipboot/malloc.c revision 1.7.


41004 08-Nov-1998 dfr

* Fix a couple of places in the device pager where an address was
truncated to 32 bits.
* Change the calling convention of the device mmap entry point to
pass a vm_offset_t instead of an int for the offset allowing
devices with a larger memory map than (1<<32) to be supported
on the alpha (/dev/mem is one such).

These changes are required to allow the X server to mmap the various
I/O regions used for device port and memory access on the alpha.


40957 06-Nov-1998 kato

Sync with sys/i386/i386/userconfig.c revision up to 1.115.


40956 06-Nov-1998 kato

Sync with sys/i386/i386/machdep.c revision up to 1.315.


40955 06-Nov-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.91.


40954 06-Nov-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.128.


40870 03-Nov-1998 des

Back out previous commit. The bpfilter -> bpf transition will have to be a
flag day unless we can hack config(8) to smooth things over.


40869 03-Nov-1998 des

Rename the 'bpfilter' pseudo-device to 'bpf'. The old syntax is still legal
and will stick around for a while.


40760 30-Oct-1998 luigi

Use "KB" instead of "Kb" for KiloBytes, consistently with other
drivers and common practices.


40693 28-Oct-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.127.


40613 23-Oct-1998 kato

Sync with sys/i386/isa/clock.c revision 1.128.


40593 22-Oct-1998 bde

Removed all `vector xxxintr' specifications. Interrupt handlers are now
configured in drivers.

Don't quote port names that don't have a digit in them.


40586 22-Oct-1998 bde

Removed all `vector xxxintr' specifications. Interrupt handlers are now
configured in drivers.


40572 22-Oct-1998 kato

Added rl driver.


40565 22-Oct-1998 bde

Initialize isa_devtab entries for interrupt handlers in individual
device drivers, not in ioconf.c. Use a different hack in isa_device.h
so that a new config(8) is not required yet.

pc98 parts approved by: kato


40515 18-Oct-1998 kato

Commented out aic.


40512 18-Oct-1998 kato

Update SMP-GENERIC98 to something a bit more recent based on GENERIC98.


40511 18-Oct-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.125.


40456 16-Oct-1998 kato

Commented out bs driver.


40374 15-Oct-1998 sos

Make the next_writeable address specific for each drive, there might
be more than one burner online.


40294 13-Oct-1998 kato

Sync with sys/i386/isa/isa.c and wd.c revisions 1.115 and 1.177,
respectively.


40293 13-Oct-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.112.


40285 13-Oct-1998 kato

Commented out aic driver.


40279 13-Oct-1998 kato

Fix for wrap arround.


40278 13-Oct-1998 kato

Implement TSC clock calibration for PC-98.


40260 12-Oct-1998 kato

Sync with sys/i386/isa/isa.c revision 1.114.


40226 11-Oct-1998 kato

Sync with sys/i386/boot/biosboot/table.c revision 1.17.


40225 11-Oct-1998 kato

Sync with sys/i386/boot/biosboot/boot.c revision up to 1.74.


40224 11-Oct-1998 kato

Sync with sysi/386/boot/biosboot/boot.h revision 1.24.


40223 11-Oct-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.313.


40222 11-Oct-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.206.


40221 11-Oct-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.126.


40220 11-Oct-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.124.


40120 09-Oct-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.312.


40071 08-Oct-1998 kato

Oops, discard my previous commits becase sumitted code is for RELENG_2_2.


40070 08-Oct-1998 kato

Add entry for EtherEZ98 and Access/PC N98C+ cards.

Reviewed by: kato
Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


40069 08-Oct-1998 kato

Add ungermann-Bass Access/PC N98C+ support to fe driver (PC-98).

Reviewed by: kato
Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


40068 08-Oct-1998 kato

Add SMC EtherEZ98 support to ed driver (PC-98).

Reviewed by: kato
Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


40064 08-Oct-1998 kato

Sync with sys/i386/conf/GENERIC revision up to 1.123.


40063 08-Oct-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.111.


40053 08-Oct-1998 sos

Remove debug output on disk change.


40003 06-Oct-1998 kato

- Implement enabling write allocate on AMD K5/K6/K6-2 cpus.
The code was originaly contributed by Kelly Yancey
<kbyanc@freedomnet.com> in PR i386/6269 and revised by Akio Morita
<amorita@meadow.scphys.kyoto-u.ac.jp> and me. Test was performed by
Akio Morita and Toshiomi Moriki <moriki@db.is.kyushu-u.ac.jp>.
- Fix stylistic bug in identcpu.c.
- Update copyright in initcpu.c
- Fix typo in LINT.

PR: 6269 and 6270


39972 05-Oct-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.125.


39970 05-Oct-1998 kato

Sync with sys/i386/boot/biosboot/boot.c revision 1.72.


39820 30-Sep-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.311.


39711 28-Sep-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.110.


39710 28-Sep-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.310.


39709 28-Sep-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.89.


39708 28-Sep-1998 kato

Sync with sys/i386/conf/SMP-GENERIC revision 1.16.


39569 22-Sep-1998 kato

Sync with sys/i386/isa/clock.c revision 1.127.


39568 22-Sep-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.50.


39567 22-Sep-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.124.


39566 22-Sep-1998 kato

Sync with sys/i386/conf/GENERICupgrade revision 1.3.


39519 20-Sep-1998 kato

Sync with sys/i386/isa/clock.c revision 1.126.


39518 20-Sep-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.205.


39486 19-Sep-1998 kato

Sync with sys/i386/conf/SMP-GENERIC revision up to 1.15.


39485 19-Sep-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.118.


39421 17-Sep-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.109.


39348 16-Sep-1998 kato

Sync with sys/i386/isa/pcaudio.c revision 1.43.


39347 16-Sep-1998 kato

Sync with sys/i386/isa/files.i386 and options.i386 revisions 1.204 and
1.87, respectively.


39336 16-Sep-1998 kato

Sync with sys/i386/isa/fd.c revision 1.123.


39335 16-Sep-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.123.


39287 15-Sep-1998 sos

Add VESA support to syscons.

Kazu writes:

The VESA support code requires vm86 support. Make sure your kernel
configuration file has the following line.
options "VM86"
If you want to statically link the VESA support code to the kernel,
add the following option to the kernel configuration file.
options "VESA"

The vidcontrol command now accepts the following video mode names:
VESA_132x25, VESA_132x43, VESA_132x50, VESA_132x60, VESA_800x600

The VESA_800x600 mode is a raster display mode. The 80x25 text will
be displayed on the 800x600 screen. Useful for some laptop computers.

vidcontrol accepts the new `-i <info>' option, where <info> must be
either `adapter' or `mode'. When the `-i adapter' option is given,
vidcontrol will print basic information (not much) on the video
adapter. When the `-i mode' option is specified, vidcontrol will
list video modes which are actually supported by the video adapter.

Submitted by: Kazutaka YOKOTA yokota@FreeBSD.ORG


39279 15-Sep-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.108.


39278 15-Sep-1998 kato

Sync with sys/i386/conf/GENERIC, SMP-GENERIC, device.i386, files.i386,
majors.i386 and options.i386 revisions 1.116, 1.13, 1.14, 1.203, 1.49
and 1.86, respectively.


39277 15-Sep-1998 kato

Adjust for sd->da and the loss of od.


39276 15-Sep-1998 kato

Sync with sys/i386/isa/fd.c and wd.c revisions 1.122 and 1.176,
respectively.


39246 15-Sep-1998 gibbs

Convert SCSI disk bios geometry code to CAM.


39233 15-Sep-1998 kato

Deleted DDB and DIAGNOSTIC options.


39228 15-Sep-1998 gibbs

Update system to new device statistics code.

Submitted by: "Kenneth D. Merry" <ken@plutotech.com>
mike@smith.net.au (Mike Smith)


39205 15-Sep-1998 kato

Sync with sys/i386/i386/machdep.c revision up to 1.309.


39204 15-Sep-1998 kato

Sync with sys/i386/confMakefile.i386 revision 1.122.


39187 14-Sep-1998 sos

Remove the SLICE code.
This clearly needs alot more thought, and we dont need this to hunt
us down in 3.0-RELEASE.


39174 14-Sep-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.277.


39173 14-Sep-1998 kato

Sync with sys/i386/isa/if_ed.c and sio.c revisions 1.145 and 1.215,
respectively.


39166 14-Sep-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.48.


39015 09-Sep-1998 imp

Print warning about block size not being optimal once per open rather than
once per offending write.


39004 09-Sep-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.47.


39003 09-Sep-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.202.


39002 09-Sep-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.85.


38956 08-Sep-1998 sos

Add new atapi-cd driver that supports atapi CD-R/RW drives.
This is only a stop-gab solution to get atapi burner support into 3.0.


38941 08-Sep-1998 kato

Sync with sys/i386/isa/clock.c revision 1.125.


38939 08-Sep-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.107.


38849 05-Sep-1998 jb

Add a GENERICupgrade config file for pc98 users to upgrade to elf
in the same way as i386 users. This is a copy of GENERIC98.


38834 05-Sep-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.201.


38833 05-Sep-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.121.


38832 05-Sep-1998 kato

Increase 'maxusers' to 32.


38727 01-Sep-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.120.


38726 01-Sep-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.306.


38717 01-Sep-1998 kato

- Fix style bug.
- hw.ispc98 -> machdep.ispc98.

Submitted by: Garrett Wollman (hw -> machdep)


38673 31-Aug-1998 kato

- hw.machine_arch returns cpu architecture type.
- moved definition of MACHINE_ARCH from cpu.h to parm.h as alpha.
- Added definitions of _MACHINE and _MACHINE_ARCH.
- Added hw.ispc98. The hw.ispc98 is 1 in PC98 kernel and is 0 in
IBM-PC kernel.

Discussed with: John Birrell <jb@FreeBSD.ORG>


38608 28-Aug-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.46.


38607 28-Aug-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.118.


38606 28-Aug-1998 kato

Sync with sys/i386/isa/if_ed.c and spkr.c revisions 1.35 and 1.144,
respectively.


38605 28-Aug-1998 kato

Sync with sys/i386/i386/trap.c revision 1.128.


38604 28-Aug-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.276.


38603 28-Aug-1998 kato

Sync with sys/i386/isa/sio.c revision up to 1.214.


38505 24-Aug-1998 bde

Fixed printf format errors. Only one left in LINT on i386's.


38493 23-Aug-1998 phk

remove bdevsw arg from dsopen();

Forgotten by: julian
Reviewed by: bde


38439 19-Aug-1998 kato

Sync with sys/i386/isa/sio.c revision 1.211.


38437 19-Aug-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.275.


38436 19-Aug-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.304.


38431 19-Aug-1998 kato

Delete dpt driver.


38388 17-Aug-1998 kato

Sync with sys/i386/isa/lpt.c revision 1.70.


38327 15-Aug-1998 kato

- change at2pc98() into global from static.
- Oops, I forgot to merge several lines from sys/i386/isa/syscons.c.


38326 15-Aug-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.274.


38321 14-Aug-1998 sos

Only write a filemark on close when data has actually been written.


38297 13-Aug-1998 kato

Sync with sys/i386/isa/sio.c revision 1.210.


38228 10-Aug-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.273.


38227 10-Aug-1998 kato

Sync with sys/i386/isa/diskslice_machdep.c revision 1.31.


38226 10-Aug-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.45.


38225 10-Aug-1998 kato

Sync with sys/i386/conf/options.i386 revision up to 1.84.


38171 07-Aug-1998 kato

Fix garbage after quitting X server.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


38163 07-Aug-1998 kato

Sync with sys/i386/conf/files.i386 and majors.i386 revisions 1.200 and
1.44, respectively.


38162 07-Aug-1998 kato

Sync with sys/i386/isa/syscons.c and syscons.h revisions 1.272 and
1.39, respectively.


38050 03-Aug-1998 kato

Sync with sys/i386/isa/syscons.h revision 1.38.


38049 03-Aug-1998 kato

Sync with sys/i386/isa/syscons.c revision up to 1.271.


38048 03-Aug-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.106.


38000 01-Aug-1998 kato

Sync with sys/i386/boot/netboot/main.c revision 1.23.


37974 30-Jul-1998 bde

Added a flags arg to dsopen() and updated drivers. The DSO_ONESLICE
and DSO_NOLABELS flags prevent searching for slices and labels
respectively. Current drivers don't set these flags. When
DSO_NOLABELS is set, the in-core label for the whole disk is cloned
to create an in-core label for each slice. This gives the correct
result (a good in-core label for the compatibility slice) if
DSO_ONESLICE is set or only one slice is found, but usually gives
broken labels otherwise, so DSO_ONESLICE should be set if DSO_NOLABELS
is set.


37971 30-Jul-1998 kato

Sync with sys/i386/isa/fd.c revision 1.120.


37965 30-Jul-1998 alex

Typo fix: teh --> (the|they)


37883 27-Jul-1998 kato

Sync with sys/i386/isa/diskslice_machdep.c revision 1.30.


37805 21-Jul-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.105.


37804 21-Jul-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.199.


37802 21-Jul-1998 kato

Sync with sys/i386/isa/diskslice_machdep.c revision 1.29.


37761 19-Jul-1998 kato

Sync with sys/i386/isa/isa.c revision 1.113.


37760 19-Jul-1998 kato

Sync with sys/i386/isa/fd.c revision 1.119.


37705 16-Jul-1998 kato

Merge from sys/i386/isa/syscons.c (1.265->1.266).


37704 16-Jul-1998 kato

Sync with sys/i386/isa/fd.c revision 1.118.


37702 16-Jul-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.104.


37701 16-Jul-1998 kato

Sync with sys/i386/isa/pcaudio.c revision 1.42.


37683 15-Jul-1998 bde

Changed %n to %r in devfs name format strings. %n has almost gone away.


37618 13-Jul-1998 bde

Fixed printf format errors (only 1 left in GENERIC now).


37617 13-Jul-1998 kato

Sync with sys/i386/isa/fd.c and wd.c revisions 1.117 and 1.172,
respectively.


37582 12-Jul-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.117.


37570 11-Jul-1998 kato

Sync with sys/i386/isa/wd.c revision 1.171.


37569 11-Jul-1998 kato

Sync with sys/i386/isa/fd.c revision 1.116.


37568 11-Jul-1998 kato

Sync with sys/i386/isa/diskslice_machdep.c revision 1.28.


37567 11-Jul-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.303.


37516 08-Jul-1998 kato

Oops, I broke netboot.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


37502 08-Jul-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.265.


37501 08-Jul-1998 kato

Sync with sys/i386/boot/netboot/Makefile revision 1.19.


37435 06-Jul-1998 kato

Sync with sys/i386/isa/fd.c and wd.c revisions 1.115 and 1.170,
respectively.


37389 04-Jul-1998 julian

There is no such thing any more as "struct bdevsw".

There is only cdevsw (which should be renamed in a later edit to deventry
or something). cdevsw contains the union of what were in both bdevsw an
cdevsw entries. The bdevsw[] table stiff exists and is a second pointer
to the cdevsw entry of the device. it's major is in d_bmaj rather than
d_maj. some cleanup still to happen (e.g. dsopen now gets two pointers
to the same cdevsw struct instead of one to a bdevsw and one to a cdevsw).

rawread()/rawwrite() went away as part of this though it's not strictly
the same patch, just that it involves all the same lines in the drivers.

cdroms no longer have write() entries (they did have rawwrite (?)).
tapes no longer have support for bdev operations.

Reviewed by: Eivind Eklund and Mike Smith
Changes suggested by eivind.


37338 02-Jul-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.82.


37337 02-Jul-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.302.


37336 02-Jul-1998 kato

Sync with sys/i386/boot/netboot/Makefile, bootmenu.c, main.c and
ns8390.c revisions 1.18, 1.15, 1.22 and 1.13, respectiely.


37171 26-Jun-1998 phk

Add D_DISK flag.


37152 25-Jun-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.115.


37139 24-Jun-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.264.


37138 24-Jun-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.208.


37109 22-Jun-1998 kato

Sync with sys/i386/isa/if_ed.c and npx.c revisions 1.143 and 1.61,
respectively.


37108 22-Jun-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.301.


37107 22-Jun-1998 kato

Sync with sys/i386/isa/if_fe.c revision 1.42.


37101 21-Jun-1998 bde

Removed unused includes.


37042 17-Jun-1998 kato

Delete redundant declaration of lptintr.


37040 17-Jun-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.114.


37039 17-Jun-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.300.


37038 17-Jun-1998 kato

Sync with sys/i386/isa/if_ed.c revision 1.142.


37025 17-Jun-1998 kato

Sync with sys/i386/isa/sio.c revision 1.207.


37024 17-Jun-1998 kato

Sync with sys/i386/isa/conf/files.i386 revision 1.198.


37002 15-Jun-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.263.


36843 10-Jun-1998 kato

Sync with sys/i386/isa/clock.c revision 1.124.


36767 08-Jun-1998 bde

Fixed pedantic semantics errors (bitfields not of type int, signed int
or unsigned int (this doesn't change the struct layout, size or
alignment in any of the files changed in this commit, at least for
gcc on i386's. Using bitfields of type u_char may affect size and
alignment but not packing)).


36763 08-Jun-1998 kato

Sync with sys/i386/isa/clock.c revision 1.123.


36762 08-Jun-1998 kato

Merge 64bit portability fixes from sys/i386 stuff.


36754 08-Jun-1998 bde

Updated yet another ioctl, and put wst in LINT to inhibit further bitrot.


36735 07-Jun-1998 dfr

This commit fixes various 64bit portability problems required for
FreeBSD/alpha. The most significant item is to change the command
argument to ioctl functions from int to u_long. This change brings us
inline with various other BSD versions. Driver writers may like to
use (__FreeBSD_version == 300003) to detect this change.

The prototype FreeBSD/alpha machdep will follow in a couple of days
time.


36720 07-Jun-1998 kato

Sync with sys/i386/isa/clock.c revision 1.122.


36691 06-Jun-1998 kato

Make LINE30 a new style option.


36690 06-Jun-1998 kato

Make BS_TARG_SAFEMODE a new style option.


36662 05-Jun-1998 kato

Sync with sys/i386/isa/sio.c revision up to 1.205.


36661 05-Jun-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.110.


36608 03-Jun-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.298.


36564 01-Jun-1998 kato

Sync with sys/i386/isa/sio.c revision 1.203.


36463 29-May-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.43.


36448 28-May-1998 kato

Sync with sys/i386/isa/clock.c revision 1.121.


36447 28-May-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.297.


36446 28-May-1998 kato

Sync with sys/i386/boot/kzipboot/Makefile revision 1.9.


36445 28-May-1998 kato

Sync with sys/i386/boot/biosboot/Makefile revision 1.64.


36367 25-May-1998 kato

Fixed missing semicolon and added space before semicolon.

Noticed by: Toshikazu Kaho <kaho@elam.kais.kyoto-u.ac.jp>


36305 23-May-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.113.


36278 21-May-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.109.


36255 20-May-1998 kato

Sync with sys/i386/isa/sio.c revision 1.202.


36254 20-May-1998 kato

Sync with sys/i386/isa/clock.c revision 1.120.


36187 19-May-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.296.


36119 17-May-1998 phk

s/nanoruntime/nanouptime/g
s/microruntime/microuptime/g

Reviewed by: bde


36038 14-May-1998 kato

Sync with sys/i386conf/majors.i386 revision 1.42.


36019 13-May-1998 kato

Sync with sys/i386/isa/sio.c revision 1.201.


36018 13-May-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.41.


35965 12-May-1998 kato

Sync with sys/i386/isa/wd.c revision 1.167.


35964 12-May-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.78.


35963 12-May-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.40.


35826 07-May-1998 kato

Sync with sys/i386/isa/wd.c revision 1.166.


35825 07-May-1998 kato

Sync with sys/i386/isa/fd.c revision 1.112.


35774 06-May-1998 kato

Sync with sys/i386/isa/wd.c revision 1.164.


35747 05-May-1998 kato

Deleted unused item.


35688 04-May-1998 kato

Sync with sys/i386/isa/sio.c revision 1.200.


35681 04-May-1998 kato

Added amd controller to support MELCO IFC-DP SCSI card.


35679 04-May-1998 kato

Added SMP kernel configuration file for PC-98 machine.


35678 04-May-1998 kato

System clock speed is always detected automatically.


35677 04-May-1998 kato

Use `0xf8' instead of `IO_NPX' macro to support compiling with `SMP'
option.


35672 04-May-1998 kato

Support compiling with `gcc -ansi'.


35671 04-May-1998 kato

Support compiling with `gcc -ansi'.


35610 02-May-1998 kato

Support 1.44MB floppy disk.

Submitted by: Nobuyuki Koganemaru <kogane@koganemaru.co.jp>,
NOKUBI Hirotaka <hnokubi@yyy.or.jp>


35514 29-Apr-1998 imp

Use ${.TARGET} rather than $@. i386 tested, pc98 untested because config
on my box doesn't grok machine type pc98.
PR: 3272
Submitted by: jhs


35508 29-Apr-1998 kato

Sync with sys/i386/i386/trap.c revision 1.127.


35448 25-Apr-1998 kato

Sync with sys/i386/isa/wd.c revision up to 1.163.


35446 25-Apr-1998 kato

Sync with sys/i386/isa/wd.c revision 1.161.


35445 25-Apr-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.108.


35387 22-Apr-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.39.


35386 22-Apr-1998 julian

close() is no longer a SLICE method.
Close is simply an open with no-read and no-write once internal to SLICE
(it still exports a close to the rest of the kernel)


35352 20-Apr-1998 sos

Enable DEVFS usage of the device (include opt_devfs.h>


35340 20-Apr-1998 kato

Commented out ide_pci.c.

Reviewed by: kato
Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


35339 20-Apr-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.77.


35338 20-Apr-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.197.


35337 20-Apr-1998 kato

Sync with sys/i386/isa/wd.c revision up to 1.159.


35336 20-Apr-1998 kato

Sync with sys/i386/isa/fd.c revision 1.109.


35335 20-Apr-1998 kato

Sync with sys/i386/isa/npx.c revision 1.60.


35263 18-Apr-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.37.


35262 18-Apr-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.260.


35261 18-Apr-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.109.


35256 17-Apr-1998 des

Seventy-odd "its" / "it's" typos in comments fixed as per kern/6108.


35236 16-Apr-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.259.


35235 16-Apr-1998 kato

Sync with sys/i386/isa/npx.c revision 1.59.


35234 16-Apr-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.108.


35233 16-Apr-1998 kato

Sync with sys/i386/isa/pcaudio.c revision 1.40.


35232 16-Apr-1998 kato

Sync with sys/i386/isa/lpt.c revision 1.68.


35231 16-Apr-1998 kato

Sync with sys/i386/isa/if_ed.c revision 1.139.


35230 16-Apr-1998 kato

Sync with sys/i386/i386/trap.c revision 1.126.


35195 14-Apr-1998 kato

Fix page fault panic by probing NE200 compatible PCI card.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


35176 13-Apr-1998 msmith

Don't use INTR when only one device supports it.
Submitted by: Satoh Junichi <junichi@astec.co.jp>


35165 13-Apr-1998 kato

Sync with sys/i386/isa/wd.c revision 1.156.


35147 12-Apr-1998 kato

Sync with sys/i386/isa/wd.c revision 1.155.


35145 12-Apr-1998 kato

Fix the problem when SCSI ID is not contiguous.

Submitted by: URATA Shuichiro <s-urata@nmit.tmg.nec.co.jp>


35106 08-Apr-1998 sos

Fix a minor bug (|| instead of |)


35096 07-Apr-1998 kato

Sync with sys/i386/boot/biosboot/README.serial revision 1.9.


35094 07-Apr-1998 kato

Sync with sys/i386/isa/npx.c revision 1.58.


35093 07-Apr-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.196.


35092 07-Apr-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.294.


35053 06-Apr-1998 kato

Sync with sys/i386/isa/clock.c revision 1.119.


35052 06-Apr-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.258.


35031 04-Apr-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.257.


35002 02-Apr-1998 kato

Sync with sys/i386/isa/wd.c revision 1.152.


34973 31-Mar-1998 kato

Cosmetic. Move a blank line.


34972 31-Mar-1998 kato

Sync with sys/i386/i386/trap.c revision 1.125 and sys/i386/isa/clock.c
revision 1.118.


34966 30-Mar-1998 kato

- Use existing file (psm.c) though the driver does not work under
PC-98 arch.
- Merge the change in sys/i386/conf/files.i386 revision from 1.187 to
1.188.


34965 30-Mar-1998 kato

Merge the change in sys/i386/boot/rawboot/Makefile revision from 1.7
to 1.8.

Forgotten by: kato


34964 30-Mar-1998 kato

Added missing #include's.


34949 29-Mar-1998 kato

Sync with sys/i386/isa/if_ed.c revision 1.138.


34948 29-Mar-1998 kato

Sync with sys/i386/i386/trap.c revision 1.124.


34947 29-Mar-1998 kato

Sync with sys/i386/isa/if_ed.c revision 1.137.


34863 24-Mar-1998 kato

Sync with sys/i386/i386/machdep.c and trap.c revisions 1.293 and
1.123, respectively.


34862 24-Mar-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.195.


34724 20-Mar-1998 msmith

Remove unuseful (and annoying) ENXIO printf.


34644 17-Mar-1998 sos

Fixed missing filemark on close if data written to tape.
Don't try to flush buffers if the drive says it has none.
More error checking and reporting.

Hack: if drive hangs, it can be reset by issuing a mt -f device offline.

I've been able to make several 4G backups. However there is still problems
with some configurations. It is not clear if it is hardware or driver
problems yet.


34643 17-Mar-1998 kato

Make EPSON_BOUNCEDMA a new-style option.


34641 17-Mar-1998 kato

Sync with sys/i386/isa/clock.c revision 1.117.


34594 15-Mar-1998 kato

Sync with sys/i386/isa/clock.c revision 1.116.


34567 14-Mar-1998 kato

Fixed include file's path.


34566 14-Mar-1998 kato

Link i386/include instead of pc98/include (there is no such directory).


34565 14-Mar-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.194.


34564 14-Mar-1998 kato

Sync with sys/i386/boot/rawboot/Makefile revision 1.11.


34563 14-Mar-1998 kato

Sync with sys/i386/boot/Makefile.inc.


34459 10-Mar-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.103.


34458 10-Mar-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.76.


34405 09-Mar-1998 kato

Make FPU_ERROR_BROKEN a new-style option.


34225 08-Mar-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.292.


34188 07-Mar-1998 kato

Sync with following changes:
> Added files:
> sys/i386/boot Makefile.inc
> Revision Changes Path
> 1.63 +3 -12 src/sys/i386/boot/biosboot/Makefile
> 1.8 +1 -17 src/sys/i386/boot/kzipboot/Makefile
> 1.16 +6 -15 src/sys/i386/boot/netboot/Makefile
> 1.10 +3 -14 src/sys/i386/boot/rawboot/Makefile


34187 07-Mar-1998 kato

Sync with sys/i386/isa/clock.c revision 1.115.


34186 07-Mar-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.291.


34039 05-Mar-1998 kato

Fixed mistakenly merged part.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


33993 02-Mar-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.290.


33952 01-Mar-1998 sos

First pre alpha Work In Progress commit of a IDE/ATAPI tape driver.

It does endeed work, but there is still some problems to solve.
I get a "nonrecovered data error" from time to time, but besides
this it has backed up several Gigs allready.

Please report any success/failure directly to me.

Thanks to Warner Losh for providing a drive to use in writing
this driver!


33938 01-Mar-1998 kato

Sync with sys/i386/isa/clock.c revision 1.114.


33917 28-Feb-1998 kato

Sync with sys/i386/isa/if_ed.c revision 1.136.


33877 27-Feb-1998 kato

Sync with sys/i386/isa/sio.c revision up to 1.199.


33876 27-Feb-1998 kato

Sync with sys/i386/isa/if_fe.c revision up to 1.39.


33875 27-Feb-1998 kato

Sync with sys/i386/isa/if_ed.c revision up to 1.135.


33874 27-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.36.


33843 26-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.35.


33842 26-Feb-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.193.


33764 23-Feb-1998 kato

Sync with sys/i386/isa/clock.c revision 1.113.


33763 23-Feb-1998 kato

Removed unused file (sync with sys/i386/i386/microtime.s).


33746 22-Feb-1998 kato

Sync with sys/i386/isa/clock.c revision 1.112.


33715 21-Feb-1998 kato

Make pc98 options new-style.


33714 21-Feb-1998 kato

Oops, previous commit was incomplete.


33713 21-Feb-1998 kato

Sync with sys/i386/isa/clock.c revision 1.111.


33712 21-Feb-1998 kato

Sync with sys/i386/isa/spkr.c revision 1.33.


33711 21-Feb-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.21.


33710 21-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.34.


33709 21-Feb-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.192.


33674 20-Feb-1998 kato

Sync with sys/i386/isa/lpt.c revision 1.167.


33673 20-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.33.


33616 19-Feb-1998 kato

Sync with sys/i386/conf/majors.1.31.


33615 19-Feb-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.191.


33565 18-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.29.


33564 18-Feb-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.190.


33563 18-Feb-1998 kato

Sync with sys/i386/conf/devices.i386 revision 1.13.


33459 17-Feb-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.107.


33445 16-Feb-1998 eivind

Add HW_WDOG to LINT, and turn it into a new-style option.


33421 16-Feb-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.189.


33420 16-Feb-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.106.


33419 16-Feb-1998 kato

Sync with sys/i386/boot/*/Makefile (Eivind's change: Make bootblock
building independent of /usr/include if relative includes are
available).


33379 15-Feb-1998 kato

Sync with sys/i386/isa/npx.c revision 1.57.


33378 15-Feb-1998 kato

Sync with sys/i386/isa/sio.c revision 1.197.


33339 14-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.27.


33338 14-Feb-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.256.


33335 13-Feb-1998 pst

Change wfd major block device to 1 as part of the effort to make wfd's
bootable without a big increase in boot2's size.


33325 13-Feb-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.255.


33324 13-Feb-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.26.


33322 13-Feb-1998 phk

Implement the spirit but not the letter of Terrys hot-char patch.

The differences Terrys patch and this patch are:
* Remove a lot of un-needed comments.
* Don't put l_hotchar at the front of stuct linesw, there is no need to.
* Use the #defines for the hotchar in the SLIP and PPP line disciplines


33319 13-Feb-1998 kato

Sync with sys/i386/isa/npx.c revision 1.56.


33318 13-Feb-1998 kato

Sync with sys/i386/isa/clock.c revision 1.110.


33317 13-Feb-1998 kato

Sync with sys/i386/isa/syscons.c and syscons.h revisions 1.254 and
1.37, respectively.


33271 12-Feb-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.251.


33270 12-Feb-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.72.


33214 10-Feb-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.102.


33210 10-Feb-1998 kato

Added entry of 16-bits bus lnc card.

Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


33204 10-Feb-1998 kato

Staticize.


33191 09-Feb-1998 kato

Sync with sys/i386/isa/clock.c and spker.c revision 1.109 and 1.32,
resplectivley.


33190 09-Feb-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.289.


33181 09-Feb-1998 eivind

Staticize.


33134 06-Feb-1998 eivind

Back out DIAGNOSTIC changes.


33117 05-Feb-1998 kato

Sync with sys/i386/isa/if_ed.c revision up to 1.132.


33116 05-Feb-1998 kato

Sync with sys/i386/isa/isa.c revision 1.110.


33115 05-Feb-1998 kato

Sync with sys/i386/i386/machdep.c and trap.c reivsions 1.287 and
1.121, respectively.


33080 04-Feb-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.71.


33079 04-Feb-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.286.


33023 02-Feb-1998 kato

Sync with sys/i386/isa/wd.c revision 1.150.


33021 02-Feb-1998 kato

Fixed bugs introduced by syncing with i386/isa/sio.c revision 1.143.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


33020 02-Feb-1998 kato

Sync with sys/i386/boot/biosboot/boot.c revision 1.70.


33019 02-Feb-1998 kato

Cosmetic changes (indentation, reordering and using existing file name).

Pointed by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


33018 02-Feb-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.69.

Pointed by: KAHO Toshikazu <kaho@rocky.kais.kyoto-u.ac.jp>
Forgotten by: kato


33000 01-Feb-1998 bde

Removed unused #includes.


32995 01-Feb-1998 bde

Forward declare more structs that are used in prototypes here - don't
depend on <sys/types.h> forward declaring common ones.


32977 01-Feb-1998 kato

Added tx driver.

Pointed-out by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


32941 31-Jan-1998 kato

Sync with sys/i386/i386/trap.c revision 1.120.


32940 31-Jan-1998 kato

Sync with sys/i386/isa/isa.c revision 1.109.


32939 31-Jan-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.70.


32938 31-Jan-1998 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.107.


32935 31-Jan-1998 kato

Deleted unused file.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


32930 31-Jan-1998 kato

Delte unused files.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


32929 31-Jan-1998 eivind

Make the debug options new-style.

This also zaps a DPT option from lint; it wasn't referenced from
anywhere.


32890 30-Jan-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.285.


32874 29-Jan-1998 pst

Remove obsolete strategy code that was replaced by the disk slice mapping code.
FreeBSD filesystems could be dammaged by repeatedly mounting and unmounting
several partitions.


32865 29-Jan-1998 msmith

Correct usage of unit to t->lun. This fixes the DEVFS case and the
"buggy Zip" message.
Suggested by: Pedro A M Vazquez <vazquez@IQM.Unicamp.BR>


32852 28-Jan-1998 kato

Sync with sys/i386/isa/clock.c revision 1.108.


32851 28-Jan-1998 kato

Sync with sys/i386/boot/biosboot/Makefile revision 1.61.


32827 27-Jan-1998 msmith

Fix operation with the Iomega Zip 100 ATAPI.
All known versions of this drive (firmware 21.* and 23.*) will lock up
if presented with a read/write request of > 64 blocks. In the presence
of such a unit, I/O requests of > 64 blocks are fragmented to avoid
this.


32807 26-Jan-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.101.


32806 26-Jan-1998 kato

Sync with sys/i386/confi/files.i386, majors.i386 and options.i386
revisions 1.187, 1.25 and 1.68, respectively.


32765 25-Jan-1998 kato

Even though BIOS writer's guide recommends cpuid instruction of Cyrix
6x86MX CPU is enabled (BIOS should not disable it), some BIOS disables
it via CCR4. In this case, cpu variable becomes CPU_486 and
identblue() is called. Because Cyrix 6x86MX has MSR and doesn't have
MSR1002, wrmsr instruction generates general protection fault.

Tested by: Simon Coggins <chaos@ultra.net.au>


32762 25-Jan-1998 kato

Sync with sys/i386/conf/options.i386 revision 1.67.


32748 25-Jan-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.105.


32730 24-Jan-1998 kato

Sync with sys/i386/isa/wd.c revision 1.148.


32729 24-Jan-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.283.


32727 24-Jan-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.282.


32726 24-Jan-1998 eivind

Make all file-system (MFS, FFS, NFS, LFS, DEVFS) related option new-style.

This introduce an xxxFS_BOOT for each of the rootable filesystems.
(Presently not required, but encouraged to allow a smooth move of option *FS
to opt_dontuse.h later.)

LFS is temporarily disabled, and will be re-enabled tomorrow.


32701 22-Jan-1998 kato

Sync with sys/i386/i386/userconfig.c revision 1.100.


32691 22-Jan-1998 kato

Added dealy.

Submitted by: Kawanobe Koh <kawanobe@st.rim.or.jp>


32646 20-Jan-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.246.


32607 18-Jan-1998 kato

Sync with sys/i386/isa/wd.c revision 1.147.


32606 18-Jan-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.186.


32605 18-Jan-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.12.


32604 18-Jan-1998 kato

Sync with sys/i386/conf/majors.i386 revision 1.24.


32582 16-Jan-1998 pst

Fix misleading comment about major #


32578 16-Jan-1998 pst

Bring in IDE ATAPI floppy support.
This is Junichi's v1.0 driver.

NOTE: Major device numbers have been changed to avoid conflict with other
FreeBSD 3.0 devices. The new numbers should be considered "official."
This driver is still considered "beta" quality, although we have been
playing with it. Please submit bugs to junichi and myself.

Submitted by: junichi@astec.co.jp


32546 16-Jan-1998 kato

Fixed bugs introduced when files were synchronized with
sys/i386/isa/mse.c and sio.c.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


32531 15-Jan-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.185.


32521 15-Jan-1998 kato

Fix I/O port address of ed8.

Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


32519 15-Jan-1998 kato

Added comment on fe0 and fe1. Added fe1 fro C-NET(98)P2 and
C-NET(9N)E NICs.

Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


32508 14-Jan-1998 kato

I forgot to synchronize some changes with sys/i386/isa/wd.c, but I
could't find exact revision numbers.

Submitted by: Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>


32482 12-Jan-1998 kato

Fix JIS code support.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


32481 12-Jan-1998 kato

Sync with sys/i386/i386/machdep.c revision 1.281.


32480 12-Jan-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.245.


32479 12-Jan-1998 kato

Sync with sys/i386/conf/GENERIC revision 1.102.


32477 12-Jan-1998 kato

Initialize the variables Crtat and Atrat in scvidprobe().

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


32389 10-Jan-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.244.


32363 09-Jan-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.184.


32350 08-Jan-1998 eivind

Make INET a proper option.

This will not make any of object files that LINT create change; there
might be differences with INET disabled, but hardly anything compiled
before without INET anyway. Now the 'obvious' things will give a
proper error if compiled without inet - ipx_ip, ipfw, tcp_debug. The
only thing that _should_ work (but can't be made to compile reasonably
easily) is sppp :-(

This commit move struct arpcom from <netinet/if_ether.h> to
<net/if_arp.h>.


32333 08-Jan-1998 kato

Sync with sys/i386/isa/syscons.c revision 1.243.


32332 08-Jan-1998 kato

Sync with sys/i386/isa/sio.c revision 1.194.


32318 07-Jan-1998 kato

1: Fixed compile error when WB_CACH is defined.
2: Fixed !M_EPSON_PC98 case.

Reviewed by: Chiharu Shibata <chi@rd.njk.co.jp>


32292 06-Jan-1998 kato

Sync with sys/i386/conf/files.i386 revision 1.183.


32233 04-Jan-1998 kato

Sync with sys/i386/isa/syscons.c (first chunk). Reorder #ifdef.

Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


32179 02-Jan-1998 kato

Sync with sys/i386/i386/microtime.s revision 1.40.


32177 02-Jan-1998 kato

Fixed wrong name in .file statement.


32092 29-Dec-1997 kato

Sync with sys/i386/conf/options.i386 revision 1.66.


32091 29-Dec-1997 kato

Sync with sys/i386/i386/microtime.s revision up to 1.39.


32090 29-Dec-1997 kato

Sync with sys/i386/isa/clock.c revision up to 1.107.


32089 29-Dec-1997 kato

Sync with sys/i386/isa/sio.c revision up to 1.193.


32088 29-Dec-1997 kato

Sync with sys/i386/i386/userconfig.c revision 1.99.


32049 28-Dec-1997 kato

Merge from sys/i386/i386/microtime.s revision 1.36.


32010 27-Dec-1997 peter

#include "opt_user_ldt.h" so that the #ifdef USER_LDT checks can work, as
commented about at length in the PR audit trail.

PR: 2412


32005 26-Dec-1997 phk

Rename "i586_ctr" to "tsc" (both upper and lower case instances).
Fix a couple of printfs too.

Warning: This changes the names of a couple of kernel options!


31890 20-Dec-1997 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.106.


31778 16-Dec-1997 eivind

Make COMPAT_43 and COMPAT_SUNOS new-style options.


31770 16-Dec-1997 kato

Don't use PG_N if EPSON PC-486HX/HG/HA (PC-9801 compatible) are
detected. These machine cannot make L2 cache write-through by PG_N,
and only I/O access (undocumented) can do that. If PG_N is used,
system hangs.

Reviewed by: tos@fa2.so-net.or.jp (Toshiyuki Kawashima)


31742 15-Dec-1997 eivind

Throw options IPX, IPXIP and IPTUNNEL into opt_ipx.h.

The #ifdef IPXIP in netipx/ipx_if.h is OK (used from ipx_usrreq.c and
ifconfig.c only).

I also fixed a typo IPXTUNNEL -> IPTUNNEL (and #ifdef'ed out the code
inside, as it never could have compiled - doh.)


31738 15-Dec-1997 kato

Sync with sys/i386/i386/microtime.s revision 1.35.


31716 14-Dec-1997 kato

Sync with sys/i386/i386/machdep.c revision 1.279.


31713 14-Dec-1997 kato

Sync with sys/i386/conf/files.i386 revision 1.182.


31663 10-Dec-1997 kato

Sync with sys/i386/conf/files.i386, majors.i386 and options.i386
revisions 1.181, 1.23 and 1.64, respectively.


31651 09-Dec-1997 kato

Sync with sys/i386/isa/mse.c and syscons.c revisions 1.36 and 1.242,
respectively.


31649 09-Dec-1997 kato

Sync with sys/i386/i386/userconfig.c revision 1.98.


31578 06-Dec-1997 bde

Use ENOIOCTL instead of -1 (= ERESTART) for diskslice ioctls that are
not handled at a particular level.


31577 06-Dec-1997 bde

Use ENOIOCTL instead of -1 (= ERESTART) for tty ioctls that are
not handled at a particular level. This fixes mainly restarting
of interrupted TIOCDRAINs and TIOCSETA{W,F}s.


31570 06-Dec-1997 kato

Sync with sys/i386/i386/trap.c revision 1.119.


31556 05-Dec-1997 kato

Sync with sys/i386/conf/options.i386 revision 1.63.


31555 05-Dec-1997 kato

Sync with sys/i386/boot/biosboot/boot.h and io.c revisions 1.23 and
1.25, respectively.


31554 05-Dec-1997 kato

Sync with sys/i386/i386/machdep.c and trap.c revisions 1.278 and
1.118, respectively.


31513 03-Dec-1997 kato

Sync with sys/i386/i386/machdep.c and trap.c revisions 1.275 and
1.116, respectively.


31493 02-Dec-1997 phk

In all such uses of struct buf: 's/b_un.b_addr/b_data/g'


31480 02-Dec-1997 kato

Sync with sys/i386/conf/files.i386 revision 1.180.


31475 01-Dec-1997 kato

Sync with sys/i386/isa/isa.c revision 1.108.


31429 27-Nov-1997 kato

Sync with sys/i386/i386/userconfig.c revision 1.97.


31428 27-Nov-1997 kato

Sync with sys/i386/conf/files.i386 revision 1.179.


31427 27-Nov-1997 kato

Sync with sys/i386/isa/syscons.c revision 1.240.


31410 25-Nov-1997 kato

Sync with sys/i386/i386/machdep.c revision up to 1.274.


31409 25-Nov-1997 kato

Sync with sys/i386/i386/trap.c revision 1.115.


31408 25-Nov-1997 kato

Sync with sys/i386/isa/isa.c revision 1.107.


31407 25-Nov-1997 kato

Sync with sys/i386/isa/syscons.c and syscons.h revisions 1.229 and
1.36, respectively.


31406 25-Nov-1997 kato

Sync with sys/i386/isa/if_ed.c, if_fe.c and sio.c revisions 1.129,
1.35 and 1.189, respectively.


31296 19-Nov-1997 kato

Sync with sys/i386/isa/pcaudio.c revision 1.38.


31295 19-Nov-1997 kato

Sync with sys/i386/isa/npx.c revision 1.54.


31294 19-Nov-1997 kato

Sync with sys/i386/isa/mse.c revision 1.35.


31293 19-Nov-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.104.


31292 19-Nov-1997 kato

Sync with sys/i386/conf/majors.i386 revision up to 1.22.


31101 10-Nov-1997 kato

Sync with sys/i386/conf/majors.i386 revision 1.20.


31018 07-Nov-1997 kato

Sync with following files:
- sys/i386/i386/machdep.c revision 1.271
- sys/i386/i386/trap.c revision 1.114
- sys/i386/isa/if_ed.c revision 1.128
- sys/i386/isa/if_fe.c revision 1.34
- sys/i386/isa/syscons.c revision 1.238.
- sys/i386/isa/wd.c revision 1.144


30990 06-Nov-1997 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.105.


30934 04-Nov-1997 kato

Sync with sys/i386/isa/wd.c revision 1.142.


30933 04-Nov-1997 kato

Sync with sys/i386/conf/Makefile.i386 revision 1.104.


30906 03-Nov-1997 kato

Sync with sys/i386/isa/sio.c revision 1.188.


30905 03-Nov-1997 kato

Sync with sys/i386/i386/userconfig.c revision 1.96.


30904 03-Nov-1997 kato

Sync with sys/i386/isa/if_fe.c revision 1.33.


30903 03-Nov-1997 kato

Sync with sys/i386/isa/if_ed.c revision 1.127.


30875 31-Oct-1997 jseger

Change comments about ijppp to iijppp.

PR: conf/4905
Submitted by: takas-su@is.aist-nara.ac.jp


30848 29-Oct-1997 sos

First cut at supporting multi-CD CDROM drives (changers).

Very rudimentary, lots of error checks missing, but it works.
Dont do an ls on two different CD's though, it will eat your
changer mechanism for lunch :), this clearly needs some more
thought. Until then this will enable those with changers to
mount their multible CD's and doing "sensible" work....

Thanks to Andrew Gordon <arg@arg1.demon.co.uk> for donating a drive
(a NEC CDR-C251 4x4) that makes this possible to develop.


30836 29-Oct-1997 kato

Sync with sys/i386/isa/if_ed.c revision 1.126.


30835 29-Oct-1997 kato

Synchronize with sys/i386/i386/microtime.s revision 1.34.


30811 28-Oct-1997 kato

Synchronize with sys/i386/isa/npx.c and clock.c revisions 1.53 and
1.103, respectively.


30810 28-Oct-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.178.


30802 28-Oct-1997 kato

Synchronize with sys/i386/conf/GENERIC revision 1.100.


30772 27-Oct-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.187.


30771 27-Oct-1997 kato

Synchronize with sys/i386/isa/if_fe.c revision 1.32.


30770 27-Oct-1997 kato

Synchronize with sys/i386/isa/if_ed.c revision 1.125.


30769 27-Oct-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.236.


30768 27-Oct-1997 kato

Synchronize with sys/i386/conf/GENERIC and majors.i386 revisions 1.99
and 1.19, respectively.


30666 23-Oct-1997 kato

Synchronize with sys/i386/isa/syscons.{c,h} revisions 1.235 and 1.35,
respectively.


30665 23-Oct-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.103.


30625 21-Oct-1997 kato

Synchronize with sys/i386/isa/fd.c revision 1.105.


30553 18-Oct-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.62.


30405 14-Oct-1997 kato

Deleted obsolete non-Intel CPU options.


30369 13-Oct-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.141.


30368 13-Oct-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.184.


30367 13-Oct-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.269.


30366 13-Oct-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.269.


30332 12-Oct-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.106.


30331 12-Oct-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.94.


30330 12-Oct-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.268.


30329 12-Oct-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.61.


30328 12-Oct-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.268.


30327 12-Oct-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.113.


30326 12-Oct-1997 kato

Synchronize with sys/i386/boot/netboot/Makefile revision 1.14.


30096 04-Oct-1997 kato

Synchronize with sys/i386/isa/if_ed.c revision 1.122.


30055 02-Oct-1997 kato

Synchronize with sys/i386/isa/syscons.c and syscons.h revisions 1.234
and 1.34, respectively.


29912 28-Sep-1997 kato

Synchronize with sys/i386/isa/diskslice_machdep.c revision 1.26.


29911 28-Sep-1997 kato

Fixed duplicate case introduced by previous commit.


29887 27-Sep-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.233.


29873 26-Sep-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.266.


29806 24-Sep-1997 kato

Commented out entries of Luigi's sound driver. The name `pcm' is
conflict with sys/isa/sound/pcm86.c.

Pointed out by: Mitsuru IWASAKI <iwasaki@pc.jaring.my>


29793 24-Sep-1997 kato

Synchronize with sys/i386/isa/fd.c revision 1.104.


29792 24-Sep-1997 kato

Synchronize with sys/i386/conf/majors.i386 revision 1.18.


29716 22-Sep-1997 kato

Synchronize with sys/i386/isa/wd.c revision up to 1.140.


29715 22-Sep-1997 kato

Synchronize with sys/i386/isa/fd.c, isa.c and sio.c revisions 1.103,
1.105 and 1.183, respectively.


29714 22-Sep-1997 kato

Synchronize with sys/i386/i386/machdep.c and trap.c reivisions 1.265
and 1.111, respectively.


29713 22-Sep-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.177.


29632 20-Sep-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.104.


29631 20-Sep-1997 kato

Synchronize with sys/i386/conf/options.i386 and sys/i386/isa/sio.c
revisions 1.60 and 1.182, respectively.


29605 19-Sep-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.93.


29568 18-Sep-1997 kato

Synchronize with sys/i386/isa/fd.c revision 1.102.


29533 17-Sep-1997 kato

Synchronize with sys/i386/conf/options.i386 and sys/i386/isa/fd.c
revisions 1.59 and 1.101, respectively.


29440 15-Sep-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.176.


29390 14-Sep-1997 kato

Synchronize with sys/i386/isa/mse.c, pcaudio.c, sio.c and syscons.c
revisions 1.34, 1.37, 1.181 and 1.232, respectively.


29346 14-Sep-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.138.


29283 10-Sep-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.137.


29276 10-Sep-1997 kato

Synchronize with sys/i386/isa/if_ed.c revision 1.121.


29275 10-Sep-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.92.


29274 10-Sep-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.175.


29240 09-Sep-1997 kato

Synchronize with sys/i386/isa/if_ed.c revision up to 1.120.


29220 08-Sep-1997 kato

Synchronize with sys/i386/i386/microtime.s revision 1.33.


29201 07-Sep-1997 kato

Synchronize with sys/i386/isa/pcaudio.c revision 1.36.


29158 06-Sep-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.110.


29137 05-Sep-1997 kato

Synchronize with sys/i386/conf/options.1386 revision 1.58.


29136 05-Sep-1997 kato

Synchronize with sys/i386/isa/syscons.c and syscons.h revisions 1.231
and 1.33, respectively.


29133 05-Sep-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.136.


29132 05-Sep-1997 kato

Synchronize with sys/i386/i386/machdep.c revision up to 1.263.


29108 04-Sep-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.91.


29107 04-Sep-1997 kato

Synchronize with sys/i386/isa/pcaudio.c revision 1.35.


29075 03-Sep-1997 kato

Synchronize with sys/i386/i386/machdep.c and microtime.s revisions
1.261 and 1.32, respectively.


29074 03-Sep-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.174.


29033 02-Sep-1997 kato

Synchronize with sys/i386/isa/if_ed.c and lpt.c revisions 1.118 and
1.62, respectively.


29010 01-Sep-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.180.


29009 01-Sep-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.102.


29008 01-Sep-1997 kato

Synchronize with sys/i386/i386/microtime.s revision 1.31.


29007 01-Sep-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.260.


29006 01-Sep-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.57.


29005 01-Sep-1997 kato

Synchronize with sys/i386/boot/biosboot/asm.S, boot.c and boot.h
revisions 1.12, 1.69 and 1.21, respectively.


28939 30-Aug-1997 kato

Synchronize with sys/i386/isa/clock.c and sio.c revisions 1.101 and
i.178, respectively.


28902 29-Aug-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.90.


28884 29-Aug-1997 kato

Synchronize with sys/i386/conf/files.i386 and sys/i386/i386/trap.c
revisions 1.173 and 1.109, respectively.


28870 28-Aug-1997 kato

Synchronize with sys/i386/conf/files.i386 and majors.i386 revisions
1.172 and 1.17, respectively.


28860 28-Aug-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.103.


28833 27-Aug-1997 kato

Use existing path, even though PC-98 doesn't support each device driver.


28831 27-Aug-1997 kato

Synchronize with sys/i386/i386/machdep.c and trap.c revision 1.258 and
1.108, respectively.


28805 26-Aug-1997 kato

Synchronize with sys/i386/isa/syscons.h revision 1.32.


28804 26-Aug-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.102.


28700 25-Aug-1997 kato

Synchronize with sys/i386/boot/netboot/ns8390.c revision 1.12.


28655 24-Aug-1997 kato

Synchronize with sys/i386/i386/microtime.s revision up to 1.29.


28570 22-Aug-1997 kato

Synchronize with sys/i386/i386/userconfig.c and sys/i386/isa/clock.c
revisions 1.89 and 1.100, respectively.


28525 21-Aug-1997 kato

Synchronize with sys/i386/i386/machdep.c, trap.c and
sys/i386/isa/npx.c revisions 1.257, 1.107 and 1.52, respectively.


28518 21-Aug-1997 kato

3c509.c was identical to kzipboot/unzip.c. I just copied it from
i386/boot/netboot/3c509.c. PC-98 support will be added near future.

Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no>


28514 21-Aug-1997 kato

Synchronize with sys/i386/isa/sio.c revision up to 1.177.


28513 21-Aug-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.101.


28511 21-Aug-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.99.


28452 20-Aug-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.106 and
sys/i386/isa/sio.c revision 1.175.


28373 18-Aug-1997 kato

Synchronize with sys/i386/i386/machdep.c, trapc and sys/i386/isa/npx.c
revisions 1.256, 1.105 and 1.51, respectively.


28281 17-Aug-1997 kato

Synchronize with foolowing files in sys/i386/boot/netboot:

1.12 Makefile
1.14 bootmenu.c
1.20 main.c
1.3 makerom.c
1.3 misc.c
1.12 netboot.h
1.11 ns8390.c
1.1 ns8390.h
1.3 rpc.c
1.6 start2.S

Submitted by: H. Nokubi <h-nokubi@nmit.mt.nec.co.jp>


28278 17-Aug-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.88.


28277 17-Aug-1997 kato

Synchronize with sys/i386/conf/majors.i386 revision 1.16.


28247 16-Aug-1997 kato

Synchronize with sys/i386/conf/majors.i386 revision 1.15.


28246 16-Aug-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.171.


28158 13-Aug-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.100.


28157 13-Aug-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.104.


28081 11-Aug-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.87.


28032 10-Aug-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.103.


28031 10-Aug-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.230.


28011 09-Aug-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.135.


28010 09-Aug-1997 kato

Disabled SW_VGA_MODEX when PC98 is defined.


28006 09-Aug-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.55.


28005 09-Aug-1997 kato

Synchronize with sys/i386/i386/trap.c revisino 1.102.


28004 09-Aug-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.255.


28003 09-Aug-1997 kato

Synchronize with sys/i386/isa/npx.c revision 1.50.


28002 09-Aug-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.229.


27939 06-Aug-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.254.


27938 06-Aug-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.174.


27937 06-Aug-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.134.


27844 02-Aug-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.54.


27842 02-Aug-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.170.


27841 02-Aug-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.53.


27806 31-Jul-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.99.


27805 31-Jul-1997 kato

Synchronize with sys/i386/conf/files.i386 and sys/i386/isa/wd.c
revisions 1.169 and 1.133, respectively.


27702 26-Jul-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.228.


27701 26-Jul-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.52.


27700 26-Jul-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.98.


27693 26-Jul-1997 kato

Synchornize with sys/i386/isa/syscons.c revision 1.227.


27692 26-Jul-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.51.


27691 26-Jul-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.168.


27690 26-Jul-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.101.


27653 24-Jul-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.96.


27627 23-Jul-1997 kato

Synchronize with sys/i386/isa/clock.c revision up to 1.97.


27580 21-Jul-1997 kato

Synchronize with sys/i386/isa/npx.c revision 1.49.


27579 21-Jul-1997 kato

Synchronize with sys/i386/i386/microtime.s revision 1.26.


27578 21-Jul-1997 kato

Synchronize with sys/i386/isa/clock.c revision up to 1.95.


27577 21-Jul-1997 kato

Synchronize with sys/i386/isa/fd.c, if_ed.c, if_fe.c, lpt.c, mse.c,
npx.c, isa.c, sio.c, syscons.c and wd.c revisions 1.100, 1.117, 1.29,
1.61, 1.33, 1.48, 1.95, 1.173, 1.226 and 1.132, respectively.


27576 21-Jul-1997 kato

Synchronize with sys/i386/i386/machdep.c and trap.c revisions 1.253
and 1.101, respectively.


27554 20-Jul-1997 kato

Removed unused #includes.


27549 20-Jul-1997 kato

Fixed the place of the `}' in comparam().


27547 20-Jul-1997 kato

Synchronize with sys/i386/i386/microtime.s revision 1.25.


27546 20-Jul-1997 kato

Synchronize with sys/i386/isa/clock.c revision up to 1.92.


27479 17-Jul-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.172.


27478 17-Jul-1997 kato

Synchronize with sys/i386/isa/npx.c revision 1.47.


27457 16-Jul-1997 kato

Synchronize with sys/i386/isa/syscons.c and syscons.h revisions 1.225
and 1.31, respectively.


27394 14-Jul-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.224.


27393 14-Jul-1997 kato

Synchronize with sys/i386/boot/biosboot/serial.S revision 1.9.


27392 14-Jul-1997 kato

Added CPU_BLUELIGHTNING_FPU_OP_CACHE and CPU_BLUELIGHTNING_3X.

Forgotten-by: me.


27391 14-Jul-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.50.


27364 13-Jul-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.89.


27363 13-Jul-1997 kato

Synchronize with following changes:

> Revision Changes Path
> 1.11 +127 -1 src/sys/i386/boot/biosboot/bios.S
> 1.20 +6 -2 src/sys/i386/boot/biosboot/boot.h
> 1.24 +32 -5 src/sys/i386/boot/biosboot/io.c


27317 10-Jul-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.94.


27316 10-Jul-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.223.


27295 09-Jul-1997 kato

Synchronize with sys/i386/isa/syscons.c revision up to 1.222.


27260 07-Jul-1997 kato

Enables scmouse.

Submitted by: H. Nokubi <h-nokubi@nmit.tmg.nec.co.jp>
T. Yamamoto <t-yamamt@ics.es.osaka-u.ac.jp>
M. Jinbo <karl@marcer.nagaokaut.ac.jp>


27175 02-Jul-1997 kato

Synchronize with sys/i386/boot/kzipboot/boot.c revision 1.7.


27174 02-Jul-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.131.


27173 02-Jul-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.49.


27172 02-Jul-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.220.


27103 30-Jun-1997 kato

Synchronize with sys/i386/isa/syscons.c and syscons.h revisions 1.219
and 1.30, respectively.


27102 30-Jun-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.252.


27101 30-Jun-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 and files.i386 revisions
1.100 and 1.166, respectively.


26961 26-Jun-1997 kato

Synchronize with sys/i386/isa/clock.c and isa.c revisions 1.88 and
1.93, respectively.


26843 23-Jun-1997 kato

Synchronize with following changes:

> Revision Changes Path
> 1.250 +1 -18 src/sys/i386/i386/machdep.c
> 1.48 +1 -7 src/sys/i386/conf/options.i386
> 1.251 +19 -46 src/sys/i386/i386/machdep.c
> 1.24 +2 -6 src/sys/i386/i386/microtime.s
> 1.100 +4 -15 src/sys/i386/i386/trap.c
> 1.46 +6 -7 src/sys/i386/isa/npx.c


26842 23-Jun-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.86.


26841 23-Jun-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.217.


26701 17-Jun-1997 kato

Added CONTEC C-NET(9N) and C-NET(98)P2 support.

Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


26681 16-Jun-1997 kato

Fixed comment.

Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


26679 16-Jun-1997 kato

Give up automatic detection of card model. Since DP8390 based NICs
are similar to each other, it is difficult to detec card type
automatically.

Reviewed by: Chiharu Shibata <chi@rd.njk.co.jp>


26662 15-Jun-1997 kato

Fixed iomem address of SMIT mode in an example of bs driver.


26661 15-Jun-1997 kato

Synchronize with sys/i386/i386/machdep.c revision up to 1.249.


26660 15-Jun-1997 kato

Synchronize with sys/i386/boot/biosboot/boot.c revision 1.67.


26634 14-Jun-1997 kato

Deleted #ifdef PROBE_KEYBOARD to synchronize.

Submitted by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


26604 13-Jun-1997 kato

Replace I/O port adress for PC-9801-108 with vendor default value.

Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


26528 09-Jun-1997 kato

Synchronize with followings:

> Revision Changes Path
> 1.57 +1 -16 src/sys/i386/boot/biosboot/Makefile
> 1.8 +95 -63 src/sys/i386/boot/biosboot/README.serial
> 1.66 +71 -69 src/sys/i386/boot/biosboot/boot.c
> 1.19 +4 -1 src/sys/i386/boot/biosboot/boot.h
> 1.23 +23 -13 src/sys/i386/boot/biosboot/io.c
> 1.21 +8 -3 src/sys/i386/boot/biosboot/sys.c


26527 09-Jun-1997 kato

Synchronize with sys/i386/isa/isa.c revision up to 1.92.


26526 09-Jun-1997 kato

Synchronize with sys/i386/i386/machdep.c and trap.c revisions 1.247
and 1.99, respectively.


26525 09-Jun-1997 kato

Synchronize with sys/i386/conf/GENERIC revision 1.91.


26478 06-Jun-1997 kato

Synchronize with sys/i386/isa/sio.c and sioreg.h revisions1.171 and
1.10, respectively.


26477 06-Jun-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.47.


26440 04-Jun-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.46.


26439 04-Jun-1997 kato

Synchronize with sys/i386/isa/sio.c and sioreg.h revisions 1.170 and
1.9, respectively.


26384 02-Jun-1997 kato

Synchronize with following files:

Revision Changes Path
> 1.165 +2 -1 src/sys/i386/conf/files.i386
> 1.246 +2 -1 src/sys/i386/i386/machdep.c
> 1.98 +2 -2 src/sys/i386/i386/trap.c
> 1.87 +2 -2 src/sys/i386/isa/clock.c
> 1.89 +2 -356 src/sys/i386/isa/isa.c
> 1.45 +2 -1 src/sys/i386/isa/npx.c


26381 02-Jun-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.169.


26375 02-Jun-1997 kato

Synchronize with sys/i386/conf/files.i386 revision up to 1.164.


26374 02-Jun-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.99.


26319 31-May-1997 kato

Include file update: <machine/spl.h> --> <machine/ipl.h>.


26318 31-May-1997 kato

Synchronize with following changes:

> Revision Changes Path
> 1.97 +2 -1 src/sys/i386/i386/trap.c
> 1.86 +2 -1 src/sys/i386/isa/clock.c
> 1.88 +2 -1 src/sys/i386/isa/isa.c
> 1.44 +3 -2 src/sys/i386/isa/npx.c


26317 31-May-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.162.


26316 31-May-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.98.


26281 30-May-1997 kato

Synchronize with sys/i386/isa/isa.c revision up to 1.87.


26280 30-May-1997 kato

Synchronize with sys/i386/i386/microtime.s revision 1.23.


26279 30-May-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.96.


26278 30-May-1997 kato

Synchronize with sys/i386/isa/clock.c and sio.c revisions 1.85 and
1.168, respectively.


26229 28-May-1997 kato

Synchronize with following files:

> Revision Changes Path
> 1.65 +3 -3 src/sys/i386/boot/biosboot/boot.c
> 1.18 +1 -5 src/sys/i386/boot/biosboot/boot.h
> 1.26 +7 -6 src/sys/i386/boot/biosboot/disk.c
> 1.22 +4 -2 src/sys/i386/boot/biosboot/io.c
> 1.20 +12 -9 src/sys/i386/boot/biosboot/sys.c


26228 28-May-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.130.


26227 28-May-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.85.


26226 28-May-1997 kato

Synchronize with sys/i386/i386/machdep.c revision up to 1.245.


26225 28-May-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.84.


26059 23-May-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.242.


26058 23-May-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.97.


26057 23-May-1997 kato

Synchronize with sys/i386/conf/files.i386 and options.i386 revisions
1.161 and 1.45, respectively.


25924 19-May-1997 kato

Synchronize with sys/i386/isa/sio.c revison 1.167.


25893 18-May-1997 kato

Synchronize with sys/i386/boot/biosboot/bios.S and
sys/i386/boot/biosboot/serial.S revisions 1.10 and 1.7, respectively.


25863 17-May-1997 kato

Synchronize with sys/i386/isa/syscons.c and sys/i386/isa/syscons.h
revisions 1.216 and 1.29, respectively.


25748 12-May-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.241.


25576 08-May-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.240.


25575 08-May-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.95.


25574 08-May-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.215.


25573 08-May-1997 kato

Synchronize with sys/i386/isa/npx.c revision 1.43.


25572 08-May-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.44.


25571 08-May-1997 kato

Synchronize with sys/i386/conf/Makefile.pc98 revision 1.96.


25534 07-May-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.214.


25533 07-May-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.84.


25490 05-May-1997 kato

Synchornize with sys/i386/isa/clock.c revision upto 1.94.


25489 05-May-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.94.


25346 01-May-1997 kato

Synchronize with sys/i386/isa/syscons.c up to revision 1.213.


25268 29-Apr-1997 kato

Synchronize with sys/i386/conf/options.i386 and sys/i386/isa/wd.c
revisions 1.43 and 1.129, respectively.


25258 28-Apr-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.83.


25257 28-Apr-1997 kato

Synchornize with sys/i386/conf/options.i386 revision 1.42.


25256 28-Apr-1997 kato

Synchronize with sys/i386/conf/Makefile.i386 revision 1.95.


25197 27-Apr-1997 kato

Delete opt_ddb.h.


25196 27-Apr-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.211.


25195 27-Apr-1997 kato

Merge SMP code from IBM-PC tree into PC-98 tree.


25158 26-Apr-1997 kato

Synchronize with sys/i386/boot/biosboot/Makefile and
sys/i386/boot/rawboot/Makefile revsions 1.56 and 1.7, respectively.


25088 22-Apr-1997 kato

Synchronize with sys/i386/conf/Makefile.i386, sys/i386/i386/machdep.c
and sys/i386/isa/npx.c revisions 1.94, 1.238 and 1.41, respectively.


25069 21-Apr-1997 kato

Synchronize with sys/i386/isa/lpt.c revision 1.60.


25068 21-Apr-1997 kato

Synchronize with sys/i386/isa/syscons.c.revision 1.210.


25036 20-Apr-1997 kato

Synchronize with sys/i386/isa/diskslice_machdep.c revision 1.25.


25026 19-Apr-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.163.


24958 15-Apr-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.92.


24957 15-Apr-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.159.


24854 13-Apr-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.237.


24808 11-Apr-1997 kato

Deleted ddb_inb and ddb_outb functions that provide I/O access
routines as function for DDB. The inb and outb are provided as
functions in machdep.c when DDB is defined.


24803 11-Apr-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.209.


24726 08-Apr-1997 kato

Added lnc driver.


24721 08-Apr-1997 kato

Enables lnc driver on PC-98 to support NEC SV-98/2-B06 PCI card.
Cascade mode of DMA is disabled when PC98 is defined because PC-98
doesn't support it.


24701 07-Apr-1997 kato

Synchronize with sys/i386/i386{machdep.c,trap.c} revisions 1.236 and
1.91, respectively.


24700 07-Apr-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.80.


24675 06-Apr-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.89.


24657 05-Apr-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.39.


24656 05-Apr-1997 kato

Synchronize with sys/i386/isa/sioreg.h revision 1.8.


24655 05-Apr-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.162.


24620 04-Apr-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.208.


24619 04-Apr-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.128.


24581 03-Apr-1997 kato

Removed <mv/lock.h> and <mv/vm_map.h>.


24580 03-Apr-1997 kato

Synchronize with sys/i386/confi/files.i386 revision 1.158.


24437 31-Mar-1997 dg

Changed the way that the exec image header is read to be filesystem-
centric rather than VM-centric to fix a problem with errors not being
detectable when the header is read.
Killed exech_map as a result of these changes.
There appears to be no performance difference with this change.


24432 31-Mar-1997 kato

Synchronize with sys/i386/conf/GENERIC revision 1.89.


24358 29-Mar-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.233.


24357 29-Mar-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.207.


24356 29-Mar-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.80.


24285 26-Mar-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.232.


24260 25-Mar-1997 kato

Fixed reset port address for PC-9801-108 card.


24259 25-Mar-1997 kato

Synchronize with sys/i386/isa/isa.c revision 1.79.


24209 24-Mar-1997 bde

Don't include <sys/ioctl.h> in the kernel. Stage 9: same changes
in pc98 as in isa.


24199 24-Mar-1997 kato

Merge PC-98 code int i386/isa/ft.c.


24167 24-Mar-1997 kato

Fixed corrupted CFLAGS definition. (Deleted harmful backslash.)

Submitted by: H. Nokubi <h-nokubi@nmit.mt.nec.co.jp>


24132 23-Mar-1997 bde

Don't #include <sys/fcntl.h> in <sys/file.h> if KERNEL is defined.
Fixed everything that depended on getting fcntl.h stuff from the wrong
place. Most things don't depend on file.h stuff at all.


24112 22-Mar-1997 kato

Improved CPU identification and initialization routines. This
supports All Cyrix CPUs, IBM Blue Lightning CPU and NexGen (now AMD)
Nx586 CPU, and initialize special registers of Cyrix CPU and msr of
IBM Blue Lightning CPU.

If revision of Cyrix 6x86 CPU < 2.7, CPU cache is enabled in
write-through mode. This can be disabled by kernel configuration
options.

Reviewed by: Bruce Evans <bde@freebsd.org> and
Jordan K. Hubbard <jkh@freebsd.org>


24042 19-Mar-1997 kato

Synchronize with sys/i386/conf/files.i386 revision 1.156.


23937 16-Mar-1997 kato

Synchronize with sys/i386/boot/biosboot/sys.c revision 1.19.


23903 15-Mar-1997 kato

Synchronize with sys/i386/conf/GNERIC revision up to 1.88.


23900 15-Mar-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.85.


23847 13-Mar-1997 kato

Synchornize with sys/i386/conf/options.i386 revision 1.37.


23846 13-Mar-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.126.


23845 13-Mar-1997 kato

Synchronize with sys/i386/boot/biosboot/boot.c revision 1.64.


23825 13-Mar-1997 kato

Added `\' (backslash) at the end of line in the CFLAGS definition.
Submitted by: H. Nokubi <h-nokubi@nmit.mt.nec.co.jp>


23718 11-Mar-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.84.


23717 11-Mar-1997 kato

Synchronize with sys/i386/conf/majors.i386 revision 1.14.


23522 08-Mar-1997 kato

Synchronize with sys/i386/boot/biosboot/Makefile revision 1.55.


23447 06-Mar-1997 kato

Added missing i8251 code.

Submitted by: H. Nokubi <h-nokubi@nmit.mt.nec.co.jp>


23407 05-Mar-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.79.


23371 04-Mar-1997 kato

Fixed devfs code. Old code remained in pc98 tree.
Submitted by: URATA Shuichiro <s-urata@nmit.tmg.nec.co.jp>


23369 04-Mar-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.205.


23238 01-Mar-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.36.


23236 01-Mar-1997 kato

Synchronize with sys/i386/isa/syscons.c up to revision 1.204.


23116 25-Feb-1997 kato

Synchronize with sys/i386/i386/machdep.c revision 1.229.


22975 22-Feb-1997 peter

Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not
ready for it yet.


22926 19-Feb-1997 kato

Synchronize with sys/i386/isa/wd.c revision 1.124.


22925 19-Feb-1997 kato

Synchronize with sys/i386/boot/biosboot/boot.h revision 1.16.


22662 13-Feb-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.201.


22661 13-Feb-1997 kato

Synchronize with sys/i386/boot/biosboot/boot.c revision 1.62.


22588 12-Feb-1997 kato

Added check routine for memory window configuration. The probe
routine of C-NET(98) returns 0 when isa_dev->id_maddr == 0 or
isa_dev->id_msize == 0.


22586 12-Feb-1997 kato

Added memory addres and size of d8 (C-NET(98) network card).


22562 11-Feb-1997 kato

Deleted prototypes. They are in pc98_machdep.h.


22560 11-Feb-1997 kato

Synchronize with sys/i386/isa/if_ed.c revision 1.114.


22559 11-Feb-1997 kato

Synchronize with sys/i386/conf/majors.i386 revision 1.12.


22533 10-Feb-1997 kato

Synchronize with Lite/2 commit: i386/i386/machdep.c, i386/i386/trap.c,
i386/isa/fd.c and i386/isa/wd.c revisions 1.227, 1.87, 1.96 and 1.123,
respectively.


22424 08-Feb-1997 kato

Replaced hardcoded unit number with ftu.


22422 08-Feb-1997 kato

Synchronize with sys/i386/conf/majors.i386 revision 1.11.


22407 07-Feb-1997 kato

Moved macros which are related to BIOS work area from pc98.h
(corresponds to isa.h) to pc98_machdep.h.


22405 07-Feb-1997 kato

Enabled pccard code which was disabled by mistake.

Reminded by: Masahiro Sekiguchi <seki@sysrap.cs.fujitsu.co.jp>


22341 06-Feb-1997 kato

Deleted ioskip member of the structure pc98_edregister. The member
port is always used for accessing PAR and MAR instead of constant
interval of I/O address.


22338 06-Feb-1997 kato

Cosmetic change. Sorted by function, added `1997' to copyright
notice, and added comment.


22301 05-Feb-1997 kato

Changed document encoding system from JIS X 0208 to EUC.


22263 04-Feb-1997 kato

Moved PC-98 routine in sd_get_parms() to pc98_machdep.c.


22239 03-Feb-1997 kato

Changed return value of ed_probe (= number of I/O ports). Because
I/O port address of most devices is not contiguos, a return value of
probe routine is not so useful for detecting conflict. The return
value was too big, and kernel sometimes detected conflict even though
two devices are not conflict in I/O address between them.

Suggested by: Chiharu Shibata <chi@rd.njk.co.jp>


22200 02-Feb-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.158.


22165 31-Jan-1997 kato

- KNFized pc98 specific files.
- Disabled unuseinit_cpu_accel_mem() which doesn't work now.
- Deleted extra space at the end of line.


22162 31-Jan-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.200.


22161 31-Jan-1997 kato

Synchronize with sys/i386/i386/locore.s revision 1.80.


22120 30-Jan-1997 kato

Synchronize with sys/i386/isa/sio.c revision 1.157.


22119 30-Jan-1997 kato

Synchronize with sys/i386/isa/npx.c revision 1.38.


22118 30-Jan-1997 kato

Synchronize with sys/i386/isa/clock.c revision 1.75.


22089 29-Jan-1997 kato

Fixed reset port address of PC-9801-108.
Submitted by: Chiharu Shibata <chi@rd.njk.co.jp>


22065 28-Jan-1997 kato

Synchronize with sys/i386/conf/options.i386 revision 1.34.


22003 25-Jan-1997 kato

Change default I/O recovery time for Cyrix 5x86 to 0. The BIOS
Writers Guide mentions that IORT should be 0 for errata fix.


22002 25-Jan-1997 kato

Synchronize with sys/i386/i386/machdep.c rev. 1.226.


22001 25-Jan-1997 kato

Synchronize with sys/i386/isa/syscons.{c,h} rev. 1.199 and 1.27,
respectively.


22000 25-Jan-1997 kato

Synchronize with sys/i386/isa/if_fe.c rev. 1.26.


21961 23-Jan-1997 kato

Synchronize with sys/i386/i386/trap.c revision 1.86.


21909 21-Jan-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.198.


21892 20-Jan-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.197.


21858 19-Jan-1997 kato

Synchronize with sys/i386/isa/syscons.c revision 1.196.


21850 18-Jan-1997 kato

Re-construct PC-98 code of device_infor[] entries. Enabled all
devices which was #ifndef PC98'ed. This makes diff small between
i386/i386/userconfig.c and pc98/i386/userconfig.c.


21848 18-Jan-1997 kato

- Changed retry count from 1000000 to 10000 (same as IBM-PC's).
- Deleted unnecessary DELAY().
- Deleted space character at the end of line.


21845 18-Jan-1997 kato

Synchronize with sys/i386/conf/files.i386 (revision 1.151).


21844 18-Jan-1997 kato

Synchronize with sys/i386/isa/syscons.c (revision 1.195).


21843 18-Jan-1997 kato

Synchronize with sys/i386/isa/clock.c (revision 1.74).


21842 18-Jan-1997 kato

Synchronize with sys/i386/i386/machdep.c (revision 1.225).


21841 18-Jan-1997 kato

Synchronize with sys/i386/i386/userconfig.s (revision 1.82).


21803 17-Jan-1997 kato

Disabled LPC_ENA related I/O access. This I/O access clobbers i8255
mode register on PC98.


21773 16-Jan-1997 kato

Synchronize with followings:
sys/i386/conf/files.i386 revision 1.149
sys/i386/conf/options.i386 revision 1.33
sys/i386/isa/if_fe.c revision 1.25
sys/i386/isa/syscons.c revision 1.194
sys/i386/isa/syscons.h revision 1.26


21755 16-Jan-1997 kato

Re-enable ds_subtype, and ds_name (included in #ifdef PC98).
Userland programs which access partition information require
ds_subtype and ds_name on PC98.


21681 14-Jan-1997 kato

Synchronize with sys/i386/isa/if_ed.c revision 1.112 and
sys/i386/isa/if_fe.c revision 1.23 (new if_multiaddrs list).


21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


21657 13-Jan-1997 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.80.


21532 11-Jan-1997 kato

Fix typo.


21527 11-Jan-1997 kato

Change initialize routine of Cyrix 5x86 CPU.

- Turn off BTB (Branch Target Buffer) because the BTB makes system
unstable on some machines. The BTB feature can be enabled if
"options BTB_EN" is added in kernel a configuration file.
- Change comment.
- Reorder `orb XX,%al's.
- Reset NMI F/F (mask NMI) before setting registers, and set it after
setting them. Normally, this change has no effect.


21493 10-Jan-1997 kato

Staticize the functions rtc_inb, rtc_outb, rtc_serialcombit, and
rtc_serialcom. These functions are only used by PC98.


21484 10-Jan-1997 kato

Synchronize with sys/i386/isa/ft.c revision 1.29 (fix ft driver
panics).


21457 09-Jan-1997 kato

Synchronize with sys/i386/isa/isa.c rev. 1.75.


21321 05-Jan-1997 kato

Synchronize with sys/i386/isa/npx.c revision 1.36 (reenable
i586_optimized_copyin/out).


21303 04-Jan-1997 kato

Fix collapse code included in #ifdef WDDEBUG: add `;' at the end of the
line, and `"' at the end of first argument of printf().

Submitted by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


21297 04-Jan-1997 kato

Fix cursor address calculation.
Submitted by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


21274 04-Jan-1997 kato

Delete collapse code to avoid overflow of the number of cylinders.

This should be in 2.2 after src/sys/i386/isa/wdreg.h revsion 1.15
(short -> u_short change) is merged.


21272 04-Jan-1997 kato

(1) Change iomem of SMIT transfer mode from 0xdd000 (BIOS ROM base
address+0x1000) into 0xdc000 (BIOS ROM base address).
(2) Add sample line for Logitec LHA-20x SCSI card.
(3) Change I/O port address of ed8 (C-NET(98) card) from 0x00d0 into
0x03d0 (vendor default).

Submitted by: Michio "Karl" Jibo <karl@marcer.nagaokaut.ac.jp>


21271 04-Jan-1997 kato

Clean-up.
Submitted by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


21270 04-Jan-1997 kato

Staticize dma_bouncebuf. This variable was kept global because sbic
driver used it. The sbic driver has been obsoleted now, so the
variable can be static as that in isa.c.
This is a 2.2 candidate.


21269 04-Jan-1997 kato

Correct I/O port address table for ELECOM LD-BDN ethernet card.
Should be in 2.2.


21268 04-Jan-1997 kato

Add `#ifdef PC98' to include PC98-specific code. Add declaration of the
function rtc_outb().
This is a 2.2 candidate.


21256 03-Jan-1997 kato

Oops, delete extra push %edi and push %esi in memsize().

Submitted by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


21251 03-Jan-1997 kato

Change IMR of master PIC from 0x7f into 0xff in isa_defaultirq().
This is a 2.2 candidate.


21012 29-Dec-1996 kato

Synchronize with sys/i386/isa/npx.c revision 1.35 (disable
i586-optimized copyin and copyout).


21011 29-Dec-1996 kato

Synchronize with sys/i386/i386/machdep.c revision 1.223 (clean-up of
useracc call).


20950 27-Dec-1996 kato

Staticize dmapageport and isa_dmarangecheck.


20898 24-Dec-1996 kato

Synchronize with sys/i386/isa/sio.c revision 1.155 (use breakpoint()
instead of Debugger()).


20897 24-Dec-1996 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.79 (cosmetic
change).


20743 21-Dec-1996 kato

Improve probe routine for CONTEC C-NET(98) card. I/O port and memory
window addresses don't need to be set as default values.

Submitted by: Yoshimasa Ohnishi <ohnishi@isc.kyutech.ac.jp>


20715 20-Dec-1996 kato

Add `#include <pc98/pc98/pc98.h>'.


20714 20-Dec-1996 kato

Synchronize with sys/i386/isa/mse.c revision 1.29 (test in mseopen).


20713 20-Dec-1996 kato

Synchronize with sys/i386/isa/syscons.c revision 1.192 (fix typo).


20682 19-Dec-1996 kato

Add `ep' driver support.

Submitted by: Naoki Hamada <nao@sbl.cl.nec.co.jp>


20669 19-Dec-1996 kato

Synchronize with sys/i386/i386/trap.c revision 1.84 (handle
copyin/out/etc code).


20668 19-Dec-1996 kato

Synchronize with sys/i386/isa/fd.c revision 1.94 (disable disk
statistics support).


20659 18-Dec-1996 kato

Delete comment for "sbic" driver.
2.2 candidate.


20658 18-Dec-1996 kato

Sync with sys/i386/i386/userconfig.c revision 1.78 (amd driver entry).


20657 18-Dec-1996 kato

Sync with sys/i386/i386/machdep.c revision 1.222 (move printing of
BIOS geometry).


20592 17-Dec-1996 kato

(1) Fix typo.
(2) Change I/O port addresses of ed3(MELCO LGY) and ed9(CONTEC C-NET).


20588 17-Dec-1996 kato

Sync with i386/i386/userconfig.c revision 1.77 (I/O port limit).


20587 17-Dec-1996 kato

Sync with i386/i386/machdep.c revision 1.221 (fix nbuf calculation).


20554 16-Dec-1996 kato

Synchronize with sys/i386/i386/userconfig.s revision 1.76 (update
comment for "ncr" SCSI controllers).


20502 15-Dec-1996 kato

Fix typo.


20499 15-Dec-1996 kato

Synchronize with sys/i386/i386/userconfig.c revison 1.74.
Definite 2.2 candidate.


20498 15-Dec-1996 kato

Synchronize with sys/i386/i386/userconfig.c revision 1.72 and 1.73.


20497 15-Dec-1996 kato

Synchronize with sys/i386/boot/rawboot/Makefile revison 1.4.


20496 15-Dec-1996 kato

Synchronize with sys/i386/i386/machdep.c revision 1.220.
Definite 2.2 candidate.


20495 15-Dec-1996 kato

Synchronize with if_ed.c revision 1.111 and if_fe.c revision 1.22.


20494 15-Dec-1996 kato

Synchronize with Makefile.i386 revison 1.91.


20364 12-Dec-1996 kato

Synchronize with sys/i386/i386/machdep.c revision 1.219.
2.2 candidate.


20329 11-Dec-1996 kato

Sync with sys/i386/boot/biosboot/disk.c revision 1.23.


20328 11-Dec-1996 kato

Sync with sys/i386/isa/if_ed.c revision 1.110.
It's not 2.2 candidate.


20327 11-Dec-1996 kato

Sync with sys/i386/i386/machdep.c revision 1.218.
It's not 2.2 candidate.


20262 09-Dec-1996 kato

Synchronize with IBM-PC's userconfig.c revision 1.71.
Should not be in 2.2 until original change is merged into 2.2.


20219 08-Dec-1996 kato

Synchronize with sys/i386/isa/syscons.c revision 1.191. This change
just keeps appearance, and no effect on the PC98.

2.2 candidate.


20194 07-Dec-1996 kato

Synchronize with sys/i386/isa/if_ed.c revision 1.09.
It's a 2.2 candidate.


20192 07-Dec-1996 kato

Change obsolete SBIC55 into SCSI in a comment line.
Definite 2.2 candidate.


20176 06-Dec-1996 kato

Synchronize with sys/i386/i386/machdep.c revision 1.217.
This should not be in 2.2 until original change is merged.


20129 04-Dec-1996 asami

Syncronize.

Submitted by: The FreeBSD(98) Development Team


20128 04-Dec-1996 asami

Replace sbic driver (WD33C93 SCSI card driver) with new bs driver.

Submitted by: The FreeBSD(98) Development Team
Obtained from: NetBSD/pc98 based on NetBSD 1.2


20127 04-Dec-1996 asami

Synchronize with the RELENG_2_2 branch.

Definite 2.2 candidate.

Submitted by: The FreeBSD(98) Development Team


20070 01-Dec-1996 bde

Removed all references to b_cylinder (aka b_cylin). It was evil and
hasn't been used for a year or two since disksort() started sorting
on b_pblkno.


19737 14-Nov-1996 asami

Some more updates.

wdreg.h: Delete wd_ctlr macro. PC98 version of wd.c treats it as a
variable.

GENERIC98: Delete ep0 entry. Current ep driver write I/O port 0x100.
This clobbers ICW of i8259, because upper 8bits of address line is not
masked on mother board.

if_fe.c: Merge from revision 1.18 of sys/i386/isa/if_fe.c.

pc98.c: Globalize dmapageport, because SCSI driver use this
variable.

wd82371.c: Yet another merge.

These are 2.2 candidates.

Submitted by: The FreeBSD(98) Development Team


19701 13-Nov-1996 asami

Another round of resync and some added sound support.

sys/pc98/i386/machdep.c: sync with i386/i386/machdep.c
sys/pc98/conf/options.pc98: sync with i386/conf/options.i386

sys/i386/isa/sound: DMA auto initialize mode support for PC98.
contributed by: Akio Morita <amorita@bird.scphys.kyoto-u.ac.jp>

Definite 2.2 material, I believe.

Submitted by: The FreeBSD (98) Development Team


19551 09-Nov-1996 asami

Re-sync with -current. Should be in 2.2.

Submitted by: The FreeBSD(98) Development Team


19550 09-Nov-1996 asami

(1) Update

(2) Don't depend on BOOTSEG

(3) Change BOOTSEG from 0x9000 to 0x1000

Should be in 2.2.

Submitted by: FreeBSD(98) Development Team


19326 02-Nov-1996 asami

The last update/merge of PC98 stuff before 2.2. The whole
pc98/pc98/sound directory has vanished now!

Submitted by: FreeBSD(98) Development Team


19269 30-Oct-1996 asami

More merge and update.

(1) deleted #if 0

pc98/pc98/mse.c

(2) hold per-unit I/O ports in ed_softc

pc98/pc98/if_ed.c
pc98/pc98/if_ed98.h

(3) merge more files by segregating changes into headers.

new file (moved from pc98/pc98):

i386/isa/aic_98.h

deleted:

well, it's already in the commit message so I won't repeat the
long list here ;)

Submitted by: The FreeBSD(98) Development Team


19248 29-Oct-1996 asami

Another round of merge/updates.

(1) Add #ifdef PC98:

sys/pc98/boot/biosboot/boot2.S

(2) Fix bug that made it impossible to boot from sd's other than unit 0:
sys/pc98/boot/biosboot/sys.c

(3) Delete redundant $Id$:

sys/pc98/pc98/clock.c (reject?\027$B$5$l$k$+$b$7$l$J$$?\027(B)

(4) unt -> u_int:
sys/pc98/pc98/if_ed.c

(5) Add support for rebooting by the hot-key sequence:

sys/pc98/pc98/kbdtables.h

(6) Display now looks like PC/AT version:

sys/pc98/pc98/npx.c

(7) Change comment to match that of PC/AT version:

sys/pc98/pc98/pc98.c

(8) Add function prototypes:

sys/pc98/pc98/pc98_machdep.c

(9) Include PC98 headers:

sys/pc98/pc98/sound/adlib_card.c
sys/pc98/pc98/sound/audio.c
sys/pc98/pc98/sound/dev_table.c
sys/pc98/pc98/sound/dmabuf.c
sys/pc98/pc98/sound/midi_synth.c
sys/pc98/pc98/sound/midibuf.c
sys/pc98/pc98/sound/opl3.c
sys/pc98/pc98/sound/oatmgr.c
sys/pc98/pc98/sound/sb16_dsp.c
sys/pc98/pc98/sound/sb16_midi.c
sys/pc98/pc98/sound/sb_card.c
sys/pc98/pc98/sound/sb_dsp.c
sys/pc98/pc98/sound/sb_midi.c
sys/pc98/pc98/sound/sb_mixer.c
sys/pc98/pc98/sound/sequencer.c
sys/pc98/pc98/sound/sound_config.h
sys/pc98/pc98/sound/sound_switch.c
sys/pc98/pc98/sound/soundcard.c
sys/pc98/pc98/sound/sys_timer.c

(10) Merge in PC98 changes:

sys/i386/isa/sound/os.h

(11) Deleted as result of 9. and 10. above:

sys/pc98/pc98/sound/ad1848_mixer.h
sys/pc98/pc98/sound/aedsp16.c
sys/pc98/pc98/sound/coproc.h
sys/pc98/pc98/sound/finetune.h
sys/pc98/pc98/sound/gus_hw.h
sys/pc98/pc98/sound/gus_linearvol.h
sys/pc98/pc98/sound/hex2hex.h
sys/pc98/pc98/sound/mad16.h
sys/pc98/pc98/sound/midi_ctrl.h
sys/pc98/pc98/sound/midi_synth.h
sys/pc98/pc98/sound/opl3.h
sys/pc98/pc98/sound/os.h
sys/pc98/pc98/sound/pas.h
sys/pc98/pc98/sound/sb_mixer.h
sys/pc98/pc98/sound/soundvers.h
sys/pc98/pc98/sound/tuning.h

Submitted by: The FreeBSD(98) Development Team


19122 23-Oct-1996 asami

Another round of merge.

(1) Bug fix (pass boot drive):

pc98/boot/biosboot/boot2.S

(2) Delete code for unsupported high-resolution modes and move old
Epson notebook code to epsonio.h:

pc98/boot/biosboot/io.c
pc98/i386/vm_machdep.c
pc98/pc98/fd.c
pc98/pc98/pc98.c
pc98/pc98/pc98.h
pc98/pc98/epsonio.h (new)

(3) Change aic driver so that PCMCIA cards (I/O port same as PC/AT)
and PC-9801-100 cards can be selected with a flag in kernel config
file:

pc98/pc98/aic6360.c
pc98/pc98/aic_98.h (new)

(4) Fix wcd entry (it was broken). Delete mcd, it doesn't work on
98. Change aic entry according to above:

pc98/conf/GENERIC98

(5) Move pc98_machdep.c to top of files in pc98/pc98:

pc98/conf/files.pc98

(6) Delete empty lines:

pc98/i386/locore.s

(7) Fix (it didn't work if I586 was specified):

pc98/pc98/clock.c

(8) Staticize:

pc98/pc98/pc98_machdep.c

(9) Enable workaround for Cyrix bug for 5x86 also:

pc98/i386/machdep.c
pc98/i386/trap.c

All the above deletes this file too:

pc98/i386/pmap.c

(phew!)
Submitted by: The FreeBSD(98) Development Team


18846 09-Oct-1996 asami

Another round of updates. Highlights:

(1) Merged i386/i386/sb.h, deleted pc98/pc98/sb.h.

(2) pc98/conf/GENERIC8 looks more like i386/conf/GENERIC now.

(3) Fixed display bug in pc98/boot/biosboot/io.c.

(4) Prepare to merge memory allocation routines:

pc98/i386/locore.s
pc98/i386/machdep.c
pc98/pc98/pc98_machdep.c
pc98/pc98/pc98_machdep.h

(5) Support new board "C-NET(98)":

pc98/pc98/if_ed98.h
pc98/pc98/if_ed.c

(6) Make sure FPU is recognized for non-Intel CPUs:

pc98/pc98/npx.c

(7) Do not expect bss to be zero-allocated:

pc98/pc98/pc98.c

Submitted by: The FreeBSD(98) Development Team


18842 09-Oct-1996 bde

Put I*86_CPU defines in opt_cpu.h.


18266 12-Sep-1996 asami

Back out typo introduced by latest commit.

Corrected by: Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>


18265 12-Sep-1996 asami

Another round of merge/update.

(1) Add PC98 support to apm_bios.h and ns16550.h, remove pc98/pc98/ic
(2) Move PC98 specific code out of cpufunc.h (to pc98.h)
(3) Let the boot subtrees look more alike

Submitted by: The FreeBSD(98) Development Team
<freebsd98-hackers@jp.freebsd.org>


18208 10-Sep-1996 asami

More merge. Change "pc98" to "isa" in a few places. Misc. cleanup.
Add some more devices to userconfig.c.

Submitted by: The FreeBSD(98) Development Team


18095 07-Sep-1996 asami

Yet another merge. Remove support.s by deleting memcopy. Remove
autoconf.c by merging icu.h. Fix a couple of typos.

Submitted by: The FreeBSD(98) Development Team.


18084 06-Sep-1996 phk

Remove devconf, it never grew up to be of any use.


18029 04-Sep-1996 asami

More merge.

(1) Remove mk30line (moved to /usr/sbin, but not in our source tree yet)

(2) Delete unneeded (well, harmful now :) code to prohibit #including
of isa_device.h from PC98 sources.

(3) Remove files now equal to their ISA/PC-AT counterparts.

Submitted by: The FreeBSD(98) Development Team


18010 03-Sep-1996 asami

Second phase of merge, get rid of more machine-independent-dependencies.
Get rid of pc98/pc98/pc98_device.h.

Submitted by: The FreeBSD(98) Development Team


17973 31-Aug-1996 asami

s/pc98/isa/g in struct *_device and *_driver. Resync along the way.

Submitted by: The FreeBSD(98) Development Team


17947 30-Aug-1996 asami

Re-sync with the state of PC98 world. This will be the last commit before
we start merging things in earnest...

Submitted by: The FreeBSD(98) Development Team


17350 30-Jul-1996 asami

Another round of merge.

Submitted by: The FreeBSD(98) Development Team


17256 23-Jul-1996 asami

Update to current state of PC98 world.

Submitted by: The FreeBSD(98) development team


16360 14-Jun-1996 asami

This commit was generated by cvs2svn to compensate for changes in r16359,
which included commits to RCS files with non-trunk default branches.


16359 14-Jun-1996 asami

The PC98-specific files.

Ok'd by: core
Submitted by: FreeBSD(98) development team


15238 13-Apr-1996 bde

Eliminated sloppy common-style declarations. Now there are no duplicated
common labels for LINT. There are still some common declarations for the
!KERNEL case in tcp_debug.h and spx_debug.h. trpt depends on the ones in
tcp_debug.h.


13765 30-Jan-1996 mpp

Fix a bunch of spelling errors in the comment fields of
a bunch of system include files.


12453 21-Nov-1995 bde

Completed function declarations and/or added prototypes.


11474 14-Oct-1995 dg

Latest fixes from Serge:

I tried to solve the problem of IDE probing compatibility in this version.
When compiled without an ATAPI option, the wd driver is
fully backward compatible with 2.0.5. With ATAPI option,
the wdprobe becomes strictly weaker. That is, if wdprobe works
without ATAPI option, it will always work with it too.

Another problem was with the CD-ROM drive attached as a slave
in the IDE bus, where there is no master. All IDE CD-ROM
drives are shipped in slave configuration, and most users
just plug them in, never thinking about jumpers.
It works fine with ms-dos and ms-windows, and this
version of the driver supports it as well.

The eject op can now load disks. Just repeat it twice,
and the disk will be ejected and then loaded back.

The disc cannot be ejected if it is mounted.

Submitted by: Serge Vakulenko, <vak@cronyx.ru>


11076 30-Sep-1995 jkh

Bring IDE CDROM support up to latest version (1.8a?) from Serge.
Submitted by: vak@cronyx.ru


10097 18-Aug-1995 jkh

Bring in Serge Vakulenko's IDE CDROM (ATAPI) driver. A number of
people have now indicated to me that it's working more than well
enough to bring into -current.
Submitted by: Serge Vakulenko <vak@cronyx.ru>