Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 92084
b: refs/heads/master
c: c74056d
h: refs/heads/master
v: v3
  • Loading branch information
Harvey Harrison authored and Takashi Iwai committed Apr 24, 2008
1 parent e76a0be commit b651747
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 608b10bad3563e2349393136ce421d9f67329170
refs/heads/master: c74056d437401dc7d43970cd845c34a7e28723c0
28 changes: 14 additions & 14 deletions trunk/sound/pci/ali5451/ali5451.c
Original file line number Diff line number Diff line change
Expand Up @@ -1809,26 +1809,26 @@ static int snd_ali5451_spdif_get(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
struct snd_ali *codec = kcontrol->private_data;
unsigned int enable;
unsigned int spdif_enable;

enable = ucontrol->value.integer.value[0] ? 1 : 0;
spdif_enable = ucontrol->value.integer.value[0] ? 1 : 0;

spin_lock_irq(&codec->reg_lock);
switch (kcontrol->private_value) {
case 0:
enable = (codec->spdif_mask & 0x02) ? 1 : 0;
spdif_enable = (codec->spdif_mask & 0x02) ? 1 : 0;
break;
case 1:
enable = ((codec->spdif_mask & 0x02) &&
spdif_enable = ((codec->spdif_mask & 0x02) &&
(codec->spdif_mask & 0x04)) ? 1 : 0;
break;
case 2:
enable = (codec->spdif_mask & 0x01) ? 1 : 0;
spdif_enable = (codec->spdif_mask & 0x01) ? 1 : 0;
break;
default:
break;
}
ucontrol->value.integer.value[0] = enable;
ucontrol->value.integer.value[0] = spdif_enable;
spin_unlock_irq(&codec->reg_lock);
return 0;
}
Expand All @@ -1837,17 +1837,17 @@ static int snd_ali5451_spdif_put(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
struct snd_ali *codec = kcontrol->private_data;
unsigned int change = 0, enable = 0;
unsigned int change = 0, spdif_enable = 0;

enable = ucontrol->value.integer.value[0] ? 1 : 0;
spdif_enable = ucontrol->value.integer.value[0] ? 1 : 0;

spin_lock_irq(&codec->reg_lock);
switch (kcontrol->private_value) {
case 0:
change = (codec->spdif_mask & 0x02) ? 1 : 0;
change = change ^ enable;
change = change ^ spdif_enable;
if (change) {
if (enable) {
if (spdif_enable) {
codec->spdif_mask |= 0x02;
snd_ali_enable_spdif_out(codec);
} else {
Expand All @@ -1859,9 +1859,9 @@ static int snd_ali5451_spdif_put(struct snd_kcontrol *kcontrol,
break;
case 1:
change = (codec->spdif_mask & 0x04) ? 1 : 0;
change = change ^ enable;
change = change ^ spdif_enable;
if (change && (codec->spdif_mask & 0x02)) {
if (enable) {
if (spdif_enable) {
codec->spdif_mask |= 0x04;
snd_ali_enable_spdif_chnout(codec);
} else {
Expand All @@ -1872,9 +1872,9 @@ static int snd_ali5451_spdif_put(struct snd_kcontrol *kcontrol,
break;
case 2:
change = (codec->spdif_mask & 0x01) ? 1 : 0;
change = change ^ enable;
change = change ^ spdif_enable;
if (change) {
if (enable) {
if (spdif_enable) {
codec->spdif_mask |= 0x01;
snd_ali_enable_spdif_in(codec);
} else {
Expand Down

0 comments on commit b651747

Please sign in to comment.