John Baldwin [Wed, 3 Jan 2001 01:32:57 +0000 (01:32 +0000)]
- When acknowledging interrupts, write the value 0xff to the interrupt
status register rather than 0. Without this, a single hardware volume
event triggers an interrupt storm.
- Implement hardware volume control for the Maestro chips. This version
only handles the case where both channels are adjusted at the same time.
John Baldwin [Wed, 3 Jan 2001 01:29:47 +0000 (01:29 +0000)]
Add a new API for soundcards that have hardware volume control:
- The mixer_hwmute() function can be called when a soundcard receives a
mute request.
- The mixer_hwstep() function can be used to adjust the volume of one or
both channels.
- The 'hw.snd.hwvol_step' sysctl determines the amount that mixer_hwstep()
adjusts the volume by on each call.
- The 'hw.snd.hwvol_mixer' sysctl specifies the mixer device to adjust the
volume on for both functions. The values used correspond to the
SOUNDCARD_MIXER_* constants.
Warner Losh [Tue, 2 Jan 2001 21:42:48 +0000 (21:42 +0000)]
Add device id for the OZ Micro 6832. I didn't try to init it like the
Cirrus Logic parts that end in 6832, but maybe some machines will need
that in the future.
Nicolas Souchu [Tue, 2 Jan 2001 21:29:06 +0000 (21:29 +0000)]
Cleanup and improve mode detection. Now, you should get what you actually
want according to the modes set with the ppc(4) flags. Especially, it
should fix some problems with mode detection of parallel chipsets
configured to EPP but which have timing troubles with the drives. In such
a case, the driver should now fall back to slower modes (PS2, NIBBLE).
John Baldwin [Tue, 2 Jan 2001 18:54:09 +0000 (18:54 +0000)]
The previous commit wasn't entirely correct. At least one goto to the
out: label in psignal() did not grab sched_lock before trying to release
it. Also, the previous version had several cases where it grabbed
sched_lock before jumping to out: unneccessarily, so rework this a bit.
The runfast: and out: labels must be called with sched_lock released, and
the run: label must be called with it held. Appropriate mtx_assert()'s
have been added that should catch any bugs that may still be in this
code.
David Malone [Tue, 2 Jan 2001 11:35:57 +0000 (11:35 +0000)]
Use a slightly better documented way of calculating easter and
include a reference to the Calendar FAQ. Also make argument parsing
a little more robust.
Peter Wemm [Tue, 2 Jan 2001 09:30:48 +0000 (09:30 +0000)]
Newbusify the PCI PDQ (fddi) attachment. This isn't as clean as
the EISA attachment and has not been tested (no hardware!), but at least
it stands a chance at working. At least it compiles now.
Daniel Eischen [Mon, 1 Jan 2001 13:29:19 +0000 (13:29 +0000)]
Change the interface of getlogin_r to return an int. The former
interface was based on a draft version of POSIX whereas the final
(1996) version of POSIX specified that the error is returned.
While I'm here, fix getlogin_r so that it works for more than just
the first time it's called.
Ben Smithurst [Mon, 1 Jan 2001 05:19:52 +0000 (05:19 +0000)]
Make it a bit clearer that asprintf doesn't actually "return" a pointer in
the normal sense of the word, but does it through one of its arguments which
is a pointer to a pointer.
John Baldwin [Mon, 1 Jan 2001 02:31:08 +0000 (02:31 +0000)]
Push down sched_lock in psignal(). sched_lock was being held across
recursive calls into psignal() as well as calls to signotify(),
forward_signal(), etc.
Matt Jacob [Sun, 31 Dec 2000 20:29:56 +0000 (20:29 +0000)]
Oops, I'm such an idiot. For reasons I don't really agree with,
all devices are by default known by their 'cooked' name, so
my change was wrong. I thought it was a hangover from old 'block
tape device' support which hasn't worked (if it ever did) since
v6/PWB.
So, the default tape name is now the same as Linux. Far out, man....
Paul Saab [Sun, 31 Dec 2000 01:30:27 +0000 (01:30 +0000)]
Backout rev 1.57 & 1.58. While the previous revisions fixed
attaching to running processes, it completely breaks normal debugging.
A better fix is in the works, but cannot be properly tested until
the problem with gdb hanging the system in -current is solved.
Matthew Dillon [Sat, 30 Dec 2000 23:32:24 +0000 (23:32 +0000)]
Fix a lockup problem that occurs with 'cvs update'. specfs's fsync can
get into the same sort of infinite loop that ffs's fsync used to get
into, probably due to background bitmap writes. The solution is
the same.