]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
21 years agoMerge from DRI CVS. Includes newly ported SiS 300/305/540/630/730 driver and
anholt [Tue, 9 Sep 2003 00:24:31 +0000 (00:24 +0000)]
Merge from DRI CVS.  Includes newly ported SiS 300/305/540/630/730 driver and
updates to allow system memory to be used for textures on PCI Radeons.

Sponsored by: LinuxFund

21 years agoTurn aac back on now that its been cleaned up for 64 bit compilation
peter [Mon, 8 Sep 2003 20:00:55 +0000 (20:00 +0000)]
Turn aac back on now that its been cleaned up for 64 bit compilation

21 years agomdoc(7): Use the new feature of the .In macro.
ru [Mon, 8 Sep 2003 19:57:22 +0000 (19:57 +0000)]
mdoc(7): Use the new feature of the .In macro.

21 years agoFinish the reversion of rev. 1.52.
ru [Mon, 8 Sep 2003 18:58:47 +0000 (18:58 +0000)]
Finish the reversion of rev. 1.52.

21 years agoCorrect bzero length so we clear the entire key structure.
phk [Mon, 8 Sep 2003 18:35:26 +0000 (18:35 +0000)]
Correct bzero length so we clear the entire key structure.

21 years agoCorrectly bzero the entire context, not just the first sizeof(void *) bytes.
phk [Mon, 8 Sep 2003 18:32:33 +0000 (18:32 +0000)]
Correctly bzero the entire context, not just the first sizeof(void *) bytes.

Found by: Juergen Buchmueller <pullmoll@stop1984.com>

21 years agoArgh. This file was completely out of sync with mcontext/trapframe.
peter [Mon, 8 Sep 2003 18:31:48 +0000 (18:31 +0000)]
Argh.  This file was completely out of sync with mcontext/trapframe.

21 years agoHmm. Two copies of the mcontext...
peter [Mon, 8 Sep 2003 18:28:41 +0000 (18:28 +0000)]
Hmm.  Two copies of the mcontext...

21 years agoUnbreak Russian KOI8-R support.
ru [Mon, 8 Sep 2003 17:46:33 +0000 (17:46 +0000)]
Unbreak Russian KOI8-R support.

21 years agoQuiet down boot verbose and allow commands to be submitted to a target
ps [Mon, 8 Sep 2003 16:45:33 +0000 (16:45 +0000)]
Quiet down boot verbose and allow commands to be submitted to a target
which does not have a volume attached.  This will stop cam from retrying
a bunch of time at boot for devices which do not exsist.

21 years agoIn the !MNT_BYFSID case, return EINVAL from unmount(2) when the
iedowse [Mon, 8 Sep 2003 16:23:21 +0000 (16:23 +0000)]
In the !MNT_BYFSID case, return EINVAL from unmount(2) when the
specified directory is not found in the mount list. Before the
MNT_BYFSID changes, unmount(2) used to return ENOENT for a nonexistent
path and EINVAL for a non-mountpoint, but we can no longer distinguish
between these cases. Of the two error codes, EINVAL was more likely
to occur in practice, and it was the only one of the two that was
documented.

Update the manual page to match the current behaviour.

Suggested by: tjr
Reviewed by: tjr

21 years ago- Use trademark entities.
simon [Mon, 8 Sep 2003 14:53:02 +0000 (14:53 +0000)]
- Use trademark entities.
- Add trademark attributions.
- Don't join trademarks with other words, e.g. using hyphens.

21 years agoAdd another ID for the SiI3112a SATA chip as used on the Adaptec 1210SA.
sos [Mon, 8 Sep 2003 13:55:05 +0000 (13:55 +0000)]
Add another ID for the SiI3112a SATA chip as used on the Adaptec 1210SA.
RAID support is still in the works, so for now just normal ATA ops.

Sponsored by: Matt Douhan(www.fruitsalad.org)

21 years agoLimit the size of the rebuild requests to be within safety.
sos [Mon, 8 Sep 2003 13:36:26 +0000 (13:36 +0000)]
Limit the size of the rebuild requests to be within safety.

21 years agoBump __FreeBSD_version for Coda 6.x venus<->kernel API support.
tjr [Mon, 8 Sep 2003 11:54:59 +0000 (11:54 +0000)]
Bump __FreeBSD_version for Coda 6.x venus<->kernel API support.

21 years agoUse __FBSDID().
obrien [Mon, 8 Sep 2003 09:11:32 +0000 (09:11 +0000)]
Use __FBSDID().
Also some minor style cleanups.

21 years ago#ifdef out the vague ATA disk detection code causing fake ATA disks
sos [Mon, 8 Sep 2003 08:36:46 +0000 (08:36 +0000)]
#ifdef out the vague ATA disk detection code causing fake ATA disks
to be found on some systems.
Hopefully this doesn't loose any real ATA disks...

21 years agoHandle shared channels better.
sos [Mon, 8 Sep 2003 08:32:25 +0000 (08:32 +0000)]
Handle shared channels better.
Try to avoid the spurios interrupts better.

21 years agoUpdate the PIO mode gathering code.
sos [Mon, 8 Sep 2003 08:30:43 +0000 (08:30 +0000)]
Update the PIO mode gathering code.

Reported by: bde

21 years agoCommand line variables take precedence over global variables.
ru [Mon, 8 Sep 2003 08:23:29 +0000 (08:23 +0000)]
Command line variables take precedence over global variables.
Make this true in the .for loops too.  The following fragment,

FOO= foo bar

all:
.for f in ${FOO}
@echo ${f}
.endfor

when run as "make FOO=xxx" should print "xxx".  (OpenBSD had
this bug fixed for some time.)

21 years agoLooks like the re.4 man page didn't make it in the last commit,
dougb [Mon, 8 Sep 2003 07:46:41 +0000 (07:46 +0000)]
Looks like the re.4 man page didn't make it in the last commit,
so unhook it to get the build back in action.

21 years agoDont re-arm the timeout twice on a timeout error.
sos [Mon, 8 Sep 2003 06:28:50 +0000 (06:28 +0000)]
Dont re-arm the timeout twice on a timeout error.
The problem with the first timeout still exsists though, but not
it doesn't enter a groundbound spin loop :)

Found by: Aaron Smith <aaron@mutex.org>

21 years agoDon't disable interrupts a second time. Remove an extraneous interrupt
njl [Mon, 8 Sep 2003 06:22:54 +0000 (06:22 +0000)]
Don't disable interrupts a second time.  Remove an extraneous interrupt
enable (that happens elsewhere).  Clarify the interrupt disabling point
by using ACPI_DISABLE_IRQS().

Tested by: Kevin Oberman

21 years agoUse pmap_extract_and_hold() in pipe_build_write_buffer(). Consequently,
alc [Mon, 8 Sep 2003 04:58:32 +0000 (04:58 +0000)]
Use pmap_extract_and_hold() in pipe_build_write_buffer().  Consequently,
pipe_build_write_buffer() no longer requires Giant on entry.

Reviewed by: tegge

21 years agoFix path of pci #includes that I botched.
wpaul [Mon, 8 Sep 2003 04:28:20 +0000 (04:28 +0000)]
Fix path of pci #includes that I botched.

Also pointed out by: Larry Rosenman

21 years agoFix PATH: directive in sys/modules/re/Makefile, and add the re(4) driver to
wpaul [Mon, 8 Sep 2003 03:24:29 +0000 (03:24 +0000)]
Fix PATH: directive in sys/modules/re/Makefile, and add the re(4) driver to
devd.conf.

Pointed out by: Larry Rosenman

21 years agoIntroduce a new pmap function, pmap_extract_and_hold(). This function
alc [Mon, 8 Sep 2003 02:45:03 +0000 (02:45 +0000)]
Introduce a new pmap function, pmap_extract_and_hold().  This function
atomically extracts and holds the physical page that is associated with the
given pmap and virtual address.  Such a function is needed to make the
memory mapping optimizations used by, for example, pipes and raw disk I/O
MP-safe.

Reviewed by: tegge

21 years agoTake the support for the 8139C+/8169/8169S/8110S chips out of the
wpaul [Mon, 8 Sep 2003 02:11:25 +0000 (02:11 +0000)]
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).

21 years agoUntangle the code in this file to improve understandability. Both
marcel [Sun, 7 Sep 2003 23:09:08 +0000 (23:09 +0000)]
Untangle the code in this file to improve understandability.  Both
ia64_count_cpus() and ia64_probe_sapics() called a single function
to do the the actual work. The difference in behaviour was handled
in that function and was further complicated by adding bootverbose
related code. As such, even the simplest of changes was hard to
comprehend.

Untangling has been done by increasing code duplication and using
a more naive style of coding. FWIW, the object file is slightly
smaller than before, so things aren't as bad as it may seem.

Triggered by: a simple fix on the P4 branch that never got merged.

21 years agoRemove the assumption that a bus_space_handle_t is an I/O address
marcel [Sun, 7 Sep 2003 21:51:03 +0000 (21:51 +0000)]
Remove the assumption that a bus_space_handle_t is an I/O address
from the SAB82532 and the Z8530 hardware drivers by introducing
uart_cpu_busaddr(). The assumption is not true on pc98 where
bus_space_handle_t is a pointer to a structure.
The uart_cpu_busaddr() function will return the bus address
corresponding the tag and handle given to it by the BAS.

WARNING: the intend of the function is STRICTLY to allow hardware
drivers to determine which logical channel they control and is NOT
to be used for actual I/O. It is therefore EXPLICITLY allowed that
uart_cpu_busaddr() returns only the lower 8 bits of the address
and garbage in all other bits. No mistakes...

21 years agoEnable '--interpreter=mi' support.
obrien [Sun, 7 Sep 2003 20:38:23 +0000 (20:38 +0000)]
Enable '--interpreter=mi' support.

Submitted by: Rui Lopes <rui@ruilopes.com>

21 years agos/x86-64/amd64/
obrien [Sun, 7 Sep 2003 20:21:14 +0000 (20:21 +0000)]
s/x86-64/amd64/

21 years agostyle.Makefile(5)
obrien [Sun, 7 Sep 2003 20:19:32 +0000 (20:19 +0000)]
style.Makefile(5)

21 years agoMFamd64/i386
alc [Sun, 7 Sep 2003 20:02:38 +0000 (20:02 +0000)]
MFamd64/i386
 Add necessary page locking to pmap_mincore().

21 years agoImproved English, proper spacing and capitalization for the serial
marcel [Sun, 7 Sep 2003 19:19:49 +0000 (19:19 +0000)]
Improved English, proper spacing and capitalization for the serial
drivers. The shared 0x10 flag has been reworded to be more precise
and complete.

Submitted by: bde
Edited by: marcel

21 years agoRevise the locking in mincore(2).
alc [Sun, 7 Sep 2003 18:47:54 +0000 (18:47 +0000)]
Revise the locking in mincore(2).

21 years agoUse uid_t.
charnier [Sun, 7 Sep 2003 16:43:53 +0000 (16:43 +0000)]
Use uid_t.

21 years agoChange an `is' to a `was' in the AUTHORS section.
hmp [Sun, 7 Sep 2003 16:34:03 +0000 (16:34 +0000)]
Change an `is' to a `was' in the AUTHORS section.

Recommended by: jmallett

21 years agoDo not print the result of strftime() in case of failure, the content is
charnier [Sun, 7 Sep 2003 16:31:32 +0000 (16:31 +0000)]
Do not print the result of strftime() in case of failure, the content is
indeterminate in such a case. The correct value for 2nd argument is
sizeof(buf). Do not NUL-terminate the result string, strftime() will do it
for us.

21 years agoupdate my email address.
cg [Sun, 7 Sep 2003 16:28:03 +0000 (16:28 +0000)]
update my email address.

21 years agoAdd FBSDID. Do not \n terminate warnx() argument. fprint() -> warnx().
charnier [Sun, 7 Sep 2003 15:50:43 +0000 (15:50 +0000)]
Add FBSDID. Do not \n terminate warnx() argument. fprint() -> warnx().

21 years agoIntroduce arguments the standard way. In .Ar command ..., ... is not an
charnier [Sun, 7 Sep 2003 15:43:50 +0000 (15:43 +0000)]
Introduce arguments the standard way. In .Ar command ..., ... is not an
argument, command is.

21 years agoRemove duplicate #include. Do not \n terminate errx() arg.
charnier [Sun, 7 Sep 2003 15:30:42 +0000 (15:30 +0000)]
Remove duplicate #include. Do not \n terminate errx() arg.

21 years agoAdd FBSDID. Use errx() instead of fprintf()/exit(). Call exit() at the end
charnier [Sun, 7 Sep 2003 15:26:44 +0000 (15:26 +0000)]
Add FBSDID. Use errx() instead of fprintf()/exit(). Call exit() at the end
of usage() and make the code aware of that.

21 years agoThe .Fn function. Dot terminate sentences. Use .Bd/.Ed instead of .Ar to
charnier [Sun, 7 Sep 2003 14:33:07 +0000 (14:33 +0000)]
The .Fn function. Dot terminate sentences. Use .Bd/.Ed instead of .Ar to
emphasize examples of source definition file.

21 years agoclock.c:
bde [Sun, 7 Sep 2003 14:23:08 +0000 (14:23 +0000)]
clock.c:
Quick fix for calling DELAY() for ddb input in some (atkbd-based)
console drivers.  ddb must not use any normal locks, but DELAY()
normally calls getit() which needs clock_lock.  One problem with using
normal locks in ddb is that deadlock is possible, but deadlock on
clock_lock is unlikely becaluse clock_lock is bogusly recursive,
apparently just to hide the problem of ddb using it.  The i8254 clock
hardware has mostly write-only registers so it is important for it to
use a lock that gives exclusive access.  (atkbd hardware is also
unfriendly to reentrant software but that problem is more local and
already solved.)  I mostly saw the symptoms of the bug caused by
unlocking in getit() running cpu_unpend().  cpu_unpend() should not
be called while in ddb and Debugger() calls for failing assertions
about this caused a breakpoint within ddb.

ddb must also not call getit() because ddb may be being used to step
through clock initialization code that has stopped or otherwise mangled
the clock.  If the clock is stopped, then getit() always returns the
same value and DELAY() takes forever if it trusts getit().

The quick fix is implement DELAY(n) as (n * timer_freq / 1000000)
inb(0x84)'s if ddb is active.

machdep.c:
Don't permit recursion on clock_lock.

21 years ago- No need to create libfoo.so -> libfoo.so.X symlinks in /lib,
ru [Sun, 7 Sep 2003 14:15:40 +0000 (14:15 +0000)]
- No need to create libfoo.so -> libfoo.so.X symlinks in /lib,
  as it was decided that our toolchain will revert to looking
  for libraries in /usr/lib only.

- Make /usr/lib/libfoo.so -> /lib/libfoo.so.X symlinks absolute
  so that they still work if /usr is symlinked.

- Remove stale /usr/lib/libfoo.so.X libraries during install.

Discussed with: gordon, obrien, peter

21 years agoReplace a reference to non existant mount_ffs(8) by a reference to mount(8).
charnier [Sun, 7 Sep 2003 14:11:02 +0000 (14:11 +0000)]
Replace a reference to non existant mount_ffs(8) by a reference to mount(8).

21 years agoMoved stop/start code for other CPUs to near the beginning/end of
bde [Sun, 7 Sep 2003 13:43:01 +0000 (13:43 +0000)]
Moved stop/start code for other CPUs to near the beginning/end of
kdb_trap().  Stopping the other CPUs acts like locking them out, but
it wasn't done early enough or held long enough to prevent concurrent
accesses to shared data.  In particular, the saved regs could be
clobbered.

21 years agoEliminate the need in uname(1) during install.
ru [Sun, 7 Sep 2003 13:38:07 +0000 (13:38 +0000)]
Eliminate the need in uname(1) during install.

21 years agoRestored non-egregious casts so that this file compiles on i386's with
bde [Sun, 7 Sep 2003 13:23:45 +0000 (13:23 +0000)]
Restored non-egregious casts so that this file compiles on i386's with
64-bit longs again.

21 years agoOnly evaluate CVS version once, when necessary.
ru [Sun, 7 Sep 2003 13:17:31 +0000 (13:17 +0000)]
Only evaluate CVS version once, when necessary.
Eliminates the need in sed(1) during install.

21 years agoOnly evaluate CVS version once, when necessary.
ru [Sun, 7 Sep 2003 13:09:47 +0000 (13:09 +0000)]
Only evaluate CVS version once, when necessary.
Eliminates the need in sed(1) during install.

21 years agoRestored a non-egregious cast so that this file compiles on i386's
bde [Sun, 7 Sep 2003 13:03:13 +0000 (13:03 +0000)]
Restored a non-egregious cast so that this file compiles on i386's
with 64-bit longs again.  This was fixed in rev.1.42 but the fix
rotted non-fatally in rev.1.105 and fatally in rev.1.137.

Many more non-egregrious casts are strictly required for conversions
from semi-opaque types to pointers, but we avoid most of them by using
types that are almost certain to be compatible with uintptr_t for
representing pointers (e.g., vm_offset_t).  Here we don't really want
the u_longs, but we have them because a.out.h and its support code
doesn't use typedefs (it uses unsigned in V7 and unsigned long in
FreeBSD) and is too obsolete to fix now.

21 years agoImplement sed(1) commands using the make(1)'s RE variable modifier.
ru [Sun, 7 Sep 2003 12:59:22 +0000 (12:59 +0000)]
Implement sed(1) commands using the make(1)'s RE variable modifier.
(This almost eliminates the need of a sed(1) during installworld.)

21 years agoDon't escape names in MLINKS: this won't work with bsd.man.mk,v 1.53.
ru [Sun, 7 Sep 2003 12:52:17 +0000 (12:52 +0000)]
Don't escape names in MLINKS: this won't work with bsd.man.mk,v 1.53.

21 years agoReturn EINVAL if the contested bit is not set on the umtx passed to
tjr [Sun, 7 Sep 2003 11:14:52 +0000 (11:14 +0000)]
Return EINVAL if the contested bit is not set on the umtx passed to
_umtx_unlock() instead of firing a KASSERT.

21 years agoFix testing of arith_assign() value for $((a=15)).
schweikh [Sun, 7 Sep 2003 10:14:56 +0000 (10:14 +0000)]
Fix testing of arith_assign() value for $((a=15)).

Submitted by: Enache Adrian <enache@rdslink.ro>

21 years agoUse KERN_PROC_PROC instead of KERN_PROC_ALL when enumerating processes so
tjr [Sun, 7 Sep 2003 09:13:44 +0000 (09:13 +0000)]
Use KERN_PROC_PROC instead of KERN_PROC_ALL when enumerating processes so
that we kill each process once, not once for every thread it owns. This
avoids "No such process" warnings when killing threaded processes.

21 years agomake sure we really don't have a tty when installing rules. This prevents
jmg [Sun, 7 Sep 2003 07:52:56 +0000 (07:52 +0000)]
make sure we really don't have a tty when installing rules.  This prevents
a flush command from asking a question (you can't see):
If there is no tty associated with the process, this is implied.

MFC after: 1 day

21 years agoAdd support for the Coda 6.x venus<->kernel interface. This extends
tjr [Sun, 7 Sep 2003 07:43:10 +0000 (07:43 +0000)]
Add support for the Coda 6.x venus<->kernel interface. This extends
FIDs to be 128-bits wide and adds support for realms.

Add a new CODA_COMPAT_5 option, which requests support for the old
Coda 5.x interface instead of the new one.

Create a new coda5.ko module that supports the 5.x interface, and make
the existing coda.ko module use the new 6.x interface. These modules
cannot both be loaded at the same time.

Obtained from: Jan Harkes & the coda-6.0.2 distribution,
NetBSD (drochner) (CODA_COMPAT_5 option).

21 years agoNow that PC98 has it's own MD file, use uart_cpu_${MACHINE}.c and
marcel [Sun, 7 Sep 2003 06:50:08 +0000 (06:50 +0000)]
Now that PC98 has it's own MD file, use uart_cpu_${MACHINE}.c and
not uart_cpu_${MACHINE_ARCH}.c.

21 years agoMFp4: Revamped GENERIC (and hints). This is some much more pleasant
marcel [Sun, 7 Sep 2003 06:39:51 +0000 (06:39 +0000)]
MFp4: Revamped GENERIC (and hints). This is some much more pleasant
to look at...

21 years agoReplace the ttyd[0-3] entries with ttyu[0-3]. The former are the
marcel [Sun, 7 Sep 2003 06:02:36 +0000 (06:02 +0000)]
Replace the ttyd[0-3] entries with ttyu[0-3]. The former are the
device special files created by sio(4). The latter are the device
special files created by uart(4). As of this moment sio(4) is not
supported on ia64... by me, that is :-)

21 years agoReplace sio(4) with uart(4). Remove the sio(4) hints and only add
marcel [Sun, 7 Sep 2003 05:47:10 +0000 (05:47 +0000)]
Replace sio(4) with uart(4). Remove the sio(4) hints and only add
those hints used by uart(4) for the determination of the serial
console in the absence of the HCDP table.

21 years agomsync(2) should be declared MP-safe.
alc [Sun, 7 Sep 2003 05:42:07 +0000 (05:42 +0000)]
msync(2) should be declared MP-safe.

21 years agoFix build breakage caused by the inclusion of <ddb/ddb.h> while
marcel [Sun, 7 Sep 2003 05:33:46 +0000 (05:33 +0000)]
Fix build breakage caused by the inclusion of <ddb/ddb.h> while
building a module. Inclusion of option files (opt_ddb.h in this
case) is not possible for modules. The inclusion of opt_ddb.h
in this header is questionable.

21 years agoTurning on warning for static LDT allocation.
davidxu [Sun, 7 Sep 2003 05:23:28 +0000 (05:23 +0000)]
Turning on warning for static LDT allocation.

21 years agoAdd proper pc98 MD files. Add a commented out cbus attachment for
imp [Sun, 7 Sep 2003 05:05:40 +0000 (05:05 +0000)]
Add proper pc98 MD files.  Add a commented out cbus attachment for
uart because that depends on the cbus implementation that nyan-san and
I came up with after the CBUG meeting and not yet ready for the tree.

21 years agoadd i8251
imp [Sun, 7 Sep 2003 05:00:32 +0000 (05:00 +0000)]
add i8251

21 years agoBetter stab at MD code for pc98. The 8251 stuff is a total lie
imp [Sun, 7 Sep 2003 04:59:15 +0000 (04:59 +0000)]
Better stab at MD code for pc98.  The 8251 stuff is a total lie
(ns8250 copied and s/ns8250/i8251/g), but there for linkage purposes.
Real code to follow, once I get past some boot issues on my pc98 boxes
with recent current.

21 years agoDocument msize which is often needed with maddr.
jb [Sun, 7 Sep 2003 04:18:17 +0000 (04:18 +0000)]
Document msize which is often needed with maddr.

21 years agoAdd uart(4). Shuffle the information about sio(4) flags and options
marcel [Sun, 7 Sep 2003 03:45:48 +0000 (03:45 +0000)]
Add uart(4). Shuffle the information about sio(4) flags and options
so that it's clear whicfh flags/options are used by both sio(4) and
uart(4) and which flags/options are specific to sio(4).

21 years agoHook-up the uart(4) manpage.
marcel [Sun, 7 Sep 2003 02:52:25 +0000 (02:52 +0000)]
Hook-up the uart(4) manpage.

Reminded by: bmah@

21 years agoKeep up with minor changes to NetBSD. Consider a variable empty when
imp [Sun, 7 Sep 2003 02:16:10 +0000 (02:16 +0000)]
Keep up with minor changes to NetBSD.  Consider a variable empty when
not define.

Obtained From: NetBSD (rev 1.18; sjg)

21 years agoMdoc Review:
hmp [Sat, 6 Sep 2003 23:46:29 +0000 (23:46 +0000)]
Mdoc Review:

* Remove extraneous .Pp in SYNOPSIS

* Remove hard sentence break

* Add the AUTHORS section

21 years agoHook-up the uart(4) driver to the build. For a detailed description
marcel [Sat, 6 Sep 2003 23:23:26 +0000 (23:23 +0000)]
Hook-up the uart(4) driver to the build. For a detailed description
of what uart(4) is and/or is not see the initial commit log of one
of the files in sys/dev/uart (or see share/man/man4/uart.4).

Note that currently pc98 shares the MD file with i386. This needs
to change when pc98 support is fleshed-out to properly support the
various UARTs. A good example is sparc64 in this respect.

We build uart(4) as a module on all platforms. This may break
the ppc port. That depends on whether they do actually build
modules.

To use uart(4) on alpha, one must use the NO_SIO option.

21 years agoThe uart(4) driver is an universal driver for various UART hardware.
marcel [Sat, 6 Sep 2003 23:13:47 +0000 (23:13 +0000)]
The uart(4) driver is an universal driver for various UART hardware.
It improves on sio(4) in the following areas:
o  Fully newbusified to allow for memory mapped I/O. This is a must
   for ia64 and sparc64,
o  Machine dependent code to take full advantage of machine and firm-
   ware specific ways to define serial consoles and/or debug ports.
o  Hardware abstraction layer to allow the driver to be used with
   various UARTs, such as the well-known ns8250 family of UARTs, the
   Siemens sab82532 or the Zilog Z8530. This is especially important
   for pc98 and sparc64 where it's common to have different UARTs,
o  The notion of system devices to unkludge low-level consoles and
   remote gdb ports and provides the mechanics necessary to support
   the keyboard on sparc64 (which is UART based).
o  The notion of a kernel interface so that a UART can be tied to
   something other than the well-known TTY interface. This is needed
   on sparc64 to present the user with a device and ioctl handling
   suitable for a keyboard, but also allows us to cleanly hide an
   UART when used as a debug port.

Following is a list of features and bugs/flaws specific to the ns8250
family of UARTs as compared to their support in sio(4):
o  The uart(4) driver determines the FIFO size and automaticly takes
   advantages of larger FIFOs and/or additional features. Note that
   since I don't have sufficient access to 16[679]5x UARTs, hardware
   flow control has not been enabled. This is almost trivial to do,
   provided one can test. The downside of this is that broken UARTs
   are more likely to not work correctly with uart(4). The need for
   tunables or knobs may be large enough to warrant their creation.
o  The uart(4) driver does not share the same bumpy history as sio(4)
   and will therefore not provide the necessary hooks, tweaks, quirks
   or work-arounds to deal with once common hardware. To that extend,
   uart(4) supports a subset of the UARTs that sio(4) supports. The
   question before us is whether the subset is sufficient for current
   hardware.
o  There is no support for multiport UARTs in uart(4). The decision
   behind this is that uart(4) deals with one EIA RS232-C interface.
   Packaging of multiple interfaces in a single chip or on a single
   expansion board is beyond the scope of uart(4) and is now mostly
   left for puc(4) to deal with. Lack of hardware made it impossible
   to actually implement such a dependency other than is present for
   the dual channel SAB82532 and Z8350 SCCs.

The current list of missing features is:
o  No configuration capabilities. A set of tunables and sysctls is
   being worked out. There are likely not going to be any or much
   compile-time knobs. Such configuration does not fit well with
   current hardware.
o  No support for the PPS API. This is partly dependent on the
   ability to configure uart(4) and partly dependent on having
   sufficient information to implement it properly.

As usual, the manpage is present but lacks the attention the
software has gotten.

21 years agoEnhance puc(4) to support uart(4). This includes:
marcel [Sat, 6 Sep 2003 21:48:50 +0000 (21:48 +0000)]
Enhance puc(4) to support uart(4). This includes:
o  Introduce PUC_PORT_TYPE_UART so that we can attach to uart(4),
o  Introduce port sub-types (eg PUC_PORT_UART_NS8250, PUC_PORT_UART_Z8530)
   to handle different hardware and determine resource sizes.
o  Introduce two new IVARs: PUC_IVAR_SUBTYPE and PUC_IVAR_REGSHFT. Both
   are used by uart(4) to get sufficient information to talk to the HW.
o  Introduce PUC_FLAGS_ALTRES to tell puc(4) to try memory mapped I/O
   if I/O port space cannot be allocated, or vice versa.
o  Have ports of type PUC_PORT_TYPE_COM attach to uart(1) if attaching
   to sio(4) fails (due to not having the sio driver).
o  Put struct puc_device_description in struct puc_softc instead of
   having a pointer to a device description in the softc. This allows
   us to create device descriptions on the fly without having to use
   malloc() or otherwise have them staticly defined.
o  Move puc_find_description() from puc.c to puc_pci.c as it's specific
   to PCI.
o  Add EBUS and SBUS frontends for use on sparc64. Note that the P in
   puc stands for PCI, so we kinda mess things up here. It's too soon
   to worry about it though. We'll know what to do about it in time.

NOTE: This commit changes the behaviour of puc(4) to not quieten the
device probe and attach for child devices. The uart(4) driver provides
additional device description that is valuable to have.

21 years agoadd fast swi taskqueue spinlock to the order_list so witness doesn't complain
sam [Sat, 6 Sep 2003 21:06:08 +0000 (21:06 +0000)]
add fast swi taskqueue spinlock to the order_list so witness doesn't complain

Submitted by: Tor Egge <Tor.Egge@cvsup.no.freebsd.org>

21 years agocorrect fast swi taskqueue spinlock name to be different from the sleep lock
sam [Sat, 6 Sep 2003 21:05:18 +0000 (21:05 +0000)]
correct fast swi taskqueue spinlock name to be different from the sleep lock

Submitted by: Tor Egge <Tor.Egge@cvsup.no.freebsd.org>

21 years agoGiant is no longer required by pipe_destroy_write_buffer(). Reduce
alc [Sat, 6 Sep 2003 21:02:10 +0000 (21:02 +0000)]
Giant is no longer required by pipe_destroy_write_buffer().  Reduce
unnecessary white space from pipe_destroy_write_buffer().

21 years agoTrim the twe(4) device list; the twe(4) manual page is more up-to-date.
simon [Sat, 6 Sep 2003 20:03:09 +0000 (20:03 +0000)]
Trim the twe(4) device list; the twe(4) manual page is more up-to-date.

21 years agoBzero the right number of bytes.
phk [Sat, 6 Sep 2003 18:37:17 +0000 (18:37 +0000)]
Bzero the right number of bytes.

Found by: Juergen Buchmueller <pullmoll@stop1984.com>

21 years agoBaud rate capability is `br', not `ba'.
hmp [Sat, 6 Sep 2003 18:36:51 +0000 (18:36 +0000)]
Baud rate capability is `br', not `ba'.

PR: docs/56426
Submitted by: FUJISHIMA Satsuki <sf@FreeBSD.ORG>

21 years agoNew release notes: PIM support, amd-6.0.9, GNU Readline 4.3, GNU Sort
bmah [Sat, 6 Sep 2003 18:15:11 +0000 (18:15 +0000)]
New release notes:  PIM support, amd-6.0.9, GNU Readline 4.3, GNU Sort
2.1, ISC DHCP client 3.0.1rc12.

21 years agoTrim isp(4), vx(4), and stg(4) device lists.
bmah [Sat, 6 Sep 2003 17:56:05 +0000 (17:56 +0000)]
Trim isp(4), vx(4), and stg(4) device lists.

21 years agoCatch up isp.4 manpage with hardware notes.
bmah [Sat, 6 Sep 2003 17:47:25 +0000 (17:47 +0000)]
Catch up isp.4 manpage with hardware notes.

PR: 55558
Submitted by: Lukas Ertl <l.ertl@univie.ac.at>

21 years agoRemove hard sentence breaks.
hmp [Sat, 6 Sep 2003 17:46:16 +0000 (17:46 +0000)]
Remove hard sentence breaks.

21 years agoAdd stg(4) manpage and hook up to the section 4 manpage build.
bmah [Sat, 6 Sep 2003 17:31:50 +0000 (17:31 +0000)]
Add stg(4) manpage and hook up to the section 4 manpage build.

PR: 55605
Submitted by: Bob Bishop <rb@gid.co.uk>

21 years agoTrim the device lists for tl(4), aue(4), and kue(4) after recent
bmah [Sat, 6 Sep 2003 17:19:59 +0000 (17:19 +0000)]
Trim the device lists for tl(4), aue(4), and kue(4) after recent
manpage catchup updates.  The nearby axe(4) and rue(4) lists appear to
be in sync with the manpages so trim those too.

21 years ago#include <string.h> for prototypes for strcpy() and strlen().
tjr [Sat, 6 Sep 2003 16:33:55 +0000 (16:33 +0000)]
#include <string.h> for prototypes for strcpy() and strlen().

Submitted by: Stefan Farfeleder

21 years agoMake indentation uniform.
dfr [Sat, 6 Sep 2003 14:04:30 +0000 (14:04 +0000)]
Make indentation uniform.

21 years agoNo need for a separate nfpm driver now - amdpm handles both.
dfr [Sat, 6 Sep 2003 13:58:06 +0000 (13:58 +0000)]
No need for a separate nfpm driver now - amdpm handles both.

21 years agoWhen recording resources for the amdpm driver, only describe the ports
dfr [Sat, 6 Sep 2003 13:56:56 +0000 (13:56 +0000)]
When recording resources for the amdpm driver, only describe the ports
we actually use. Originally, the code reserved 0x8000 to 0x80ff inclusive
which on my hardware conflicts with the acpi timer. This broke the amdpm
driver since it was actually given ports 0x800c to 0x810b (which should
not have happened, IMHO).

This also allows us to considerably simplify the handling of the nForce
smb driver, removing the need for a separate nfpm driver. With this, SMB
accesses appear to work on my Tyan Tiger MP board. Your mileage may vary.
In particular, the nForce changes have not been tested.

21 years agoRemoved another spurious semicolon forgotten in the previous commit.
schweikh [Sat, 6 Sep 2003 11:55:05 +0000 (11:55 +0000)]
Removed another spurious semicolon forgotten in the previous commit.

21 years agoRemoved two spurious semicolons after function definitions.
schweikh [Sat, 6 Sep 2003 10:55:30 +0000 (10:55 +0000)]
Removed two spurious semicolons after function definitions.
Removed three spurious tabs on lines by themselves.

PR: bin/56492
Submitted by: Stefan Farfeleder <stefan@fafoe.narf.at>
MFC after: 6 weeks

21 years agoLoad the kernel at a 64M instead of 5M. The advantage of this is that
marcel [Sat, 6 Sep 2003 05:15:36 +0000 (05:15 +0000)]
Load the kernel at a 64M instead of 5M. The advantage of this is that
we can switch to 64M-sized identity mappings and not having to map the
first 64M. This is especially important because the first 1M contains
the VGA frame buffer and is otherwise a legacy memory range. Best to
make as little assumptions about it as possible. Switching to 64M-sized
mappings is important to avoid creating overlapping translations, which
have the side-effect of triggering machine checks. This is currently
what's preventing us to boot on an Intel Tiger 4.

Note that since we currently use 256M-sized identity mappings, we
would reduce the size of the mappings and consequently increase the
TLB pressure. The performance implications of this are minimal if
measurable at all because identify mappings are not our primary
means for memory management.

Also note that there's no guarantee that physical memory exists at
64M. Then again, we didn't had the guarantee when we were loading at
5M. We'll deal with this when it's a problem.

Discussed with: arun@

21 years agoAdd locking.
sam [Sat, 6 Sep 2003 04:53:43 +0000 (04:53 +0000)]
Add locking.

Special thanks to Pavlin Radoslavov <pavlin@icir.org> for testing and
fixing numerous problems.

Sponsored by: FreeBSD Foundation
Reviewed by: Pavlin Radoslavov <pavlin@icir.org>

21 years agoFinish the deorbital burn of the i386-only a.out toolchain.
obrien [Sat, 6 Sep 2003 02:18:03 +0000 (02:18 +0000)]
Finish the deorbital burn of the i386-only a.out toolchain.