[alsa-devel] [PATCH] wss_lib: snd_wss_calibrate_mute improvement
Krzysztof Helt
krzysztof.h1 at poczta.fm
Sun Aug 17 22:38:27 CEST 2008
From: Krzysztof Helt <krzysztof.h1 at wp.pl>
Mute sound by setting mute bit without
setting volume to 0. It makes both source code
and binary shorter.
Signed-off-by: Krzysztof Helt <krzysztof.h1 at wp.pl>
---
diff -urp alsa-ref/sound/isa/wss/wss_lib.c alsa-driver/sound/isa/wss/wss_lib.c
--- alsa-ref/sound/isa/wss/wss_lib.c 2008-08-14 00:05:30.000000000 +0200
+++ alsa-driver/sound/isa/wss/wss_lib.c 2008-08-17 22:33:24.620085406 +0200
@@ -574,7 +574,7 @@ static void snd_wss_calibrate_mute(struc
{
unsigned long flags;
- mute = mute ? 1 : 0;
+ mute = mute ? 0x80 : 0;
spin_lock_irqsave(&chip->reg_lock, flags);
if (chip->calibrate_mute == mute) {
spin_unlock_irqrestore(&chip->reg_lock, flags);
@@ -589,34 +589,34 @@ static void snd_wss_calibrate_mute(struc
chip->image[CS4231_LOOPBACK]);
}
snd_wss_dout(chip, CS4231_AUX1_LEFT_INPUT,
- mute ? 0x80 : chip->image[CS4231_AUX1_LEFT_INPUT]);
+ mute | chip->image[CS4231_AUX1_LEFT_INPUT]);
snd_wss_dout(chip, CS4231_AUX1_RIGHT_INPUT,
- mute ? 0x80 : chip->image[CS4231_AUX1_RIGHT_INPUT]);
+ mute | chip->image[CS4231_AUX1_RIGHT_INPUT]);
snd_wss_dout(chip, CS4231_AUX2_LEFT_INPUT,
- mute ? 0x80 : chip->image[CS4231_AUX2_LEFT_INPUT]);
+ mute | chip->image[CS4231_AUX2_LEFT_INPUT]);
snd_wss_dout(chip, CS4231_AUX2_RIGHT_INPUT,
- mute ? 0x80 : chip->image[CS4231_AUX2_RIGHT_INPUT]);
+ mute | chip->image[CS4231_AUX2_RIGHT_INPUT]);
snd_wss_dout(chip, CS4231_LEFT_OUTPUT,
- mute ? 0x80 : chip->image[CS4231_LEFT_OUTPUT]);
+ mute | chip->image[CS4231_LEFT_OUTPUT]);
snd_wss_dout(chip, CS4231_RIGHT_OUTPUT,
- mute ? 0x80 : chip->image[CS4231_RIGHT_OUTPUT]);
+ mute | chip->image[CS4231_RIGHT_OUTPUT]);
if (!(chip->hardware & WSS_HW_AD1848_MASK)) {
snd_wss_dout(chip, CS4231_LEFT_LINE_IN,
- mute ? 0x80 : chip->image[CS4231_LEFT_LINE_IN]);
+ mute | chip->image[CS4231_LEFT_LINE_IN]);
snd_wss_dout(chip, CS4231_RIGHT_LINE_IN,
- mute ? 0x80 : chip->image[CS4231_RIGHT_LINE_IN]);
+ mute | chip->image[CS4231_RIGHT_LINE_IN]);
snd_wss_dout(chip, CS4231_MONO_CTRL,
mute ? 0xc0 : chip->image[CS4231_MONO_CTRL]);
}
if (chip->hardware == WSS_HW_INTERWAVE) {
snd_wss_dout(chip, CS4231_LEFT_MIC_INPUT,
- mute ? 0x80 : chip->image[CS4231_LEFT_MIC_INPUT]);
+ mute | chip->image[CS4231_LEFT_MIC_INPUT]);
snd_wss_dout(chip, CS4231_RIGHT_MIC_INPUT,
- mute ? 0x80 : chip->image[CS4231_RIGHT_MIC_INPUT]);
+ mute | chip->image[CS4231_RIGHT_MIC_INPUT]);
snd_wss_dout(chip, CS4231_LINE_LEFT_OUTPUT,
- mute ? 0x80 : chip->image[CS4231_LINE_LEFT_OUTPUT]);
+ mute | chip->image[CS4231_LINE_LEFT_OUTPUT]);
snd_wss_dout(chip, CS4231_LINE_RIGHT_OUTPUT,
- mute ? 0x80 : chip->image[CS4231_LINE_RIGHT_OUTPUT]);
+ mute | chip->image[CS4231_LINE_RIGHT_OUTPUT]);
}
chip->calibrate_mute = mute;
spin_unlock_irqrestore(&chip->reg_lock, flags);
----------------------------------------------------------------------
Igrzyska na Dzikim Zachodzie!
Sprawdz >> http://link.interia.pl/f1edc
More information about the Alsa-devel
mailing list