diff options
Diffstat (limited to 'sound/pci/emu10k1')
-rw-r--r-- | sound/pci/emu10k1/emu10k1x.c | 5 | ||||
-rw-r--r-- | sound/pci/emu10k1/emumixer.c | 4 | ||||
-rw-r--r-- | sound/pci/emu10k1/emuproc.c | 4 | ||||
-rw-r--r-- | sound/pci/emu10k1/io.c | 2 |
4 files changed, 7 insertions, 8 deletions
diff --git a/sound/pci/emu10k1/emu10k1x.c b/sound/pci/emu10k1/emu10k1x.c index 36e08bd2b3cc..1d369ff73805 100644 --- a/sound/pci/emu10k1/emu10k1x.c +++ b/sound/pci/emu10k1/emu10k1x.c | |||
@@ -184,7 +184,7 @@ MODULE_PARM_DESC(enable, "Enable the EMU10K1X soundcard."); | |||
184 | * The hardware has 3 channels for playback and 1 for capture. | 184 | * The hardware has 3 channels for playback and 1 for capture. |
185 | * - channel 0 is the front channel | 185 | * - channel 0 is the front channel |
186 | * - channel 1 is the rear channel | 186 | * - channel 1 is the rear channel |
187 | * - channel 2 is the center/lfe chanel | 187 | * - channel 2 is the center/lfe channel |
188 | * Volume is controlled by the AC97 for the front and rear channels by | 188 | * Volume is controlled by the AC97 for the front and rear channels by |
189 | * the PCM Playback Volume, Sigmatel Surround Playback Volume and | 189 | * the PCM Playback Volume, Sigmatel Surround Playback Volume and |
190 | * Surround Playback Volume. The Sigmatel 4-Speaker Stereo switch affects | 190 | * Surround Playback Volume. The Sigmatel 4-Speaker Stereo switch affects |
@@ -1040,8 +1040,7 @@ static void snd_emu10k1x_proc_reg_write(struct snd_info_entry *entry, | |||
1040 | if (sscanf(line, "%x %x %x", ®, &channel_id, &val) != 3) | 1040 | if (sscanf(line, "%x %x %x", ®, &channel_id, &val) != 3) |
1041 | continue; | 1041 | continue; |
1042 | 1042 | ||
1043 | if ((reg < 0x49) && (reg >= 0) && (val <= 0xffffffff) | 1043 | if (reg < 0x49 && val <= 0xffffffff && channel_id <= 2) |
1044 | && (channel_id >= 0) && (channel_id <= 2) ) | ||
1045 | snd_emu10k1x_ptr_write(emu, reg, channel_id, val); | 1044 | snd_emu10k1x_ptr_write(emu, reg, channel_id, val); |
1046 | } | 1045 | } |
1047 | } | 1046 | } |
diff --git a/sound/pci/emu10k1/emumixer.c b/sound/pci/emu10k1/emumixer.c index b0fb6c917c38..05afe06e353a 100644 --- a/sound/pci/emu10k1/emumixer.c +++ b/sound/pci/emu10k1/emumixer.c | |||
@@ -1818,8 +1818,8 @@ int __devinit snd_emu10k1_mixer(struct snd_emu10k1 *emu, | |||
1818 | "Master Playback Switch", "Master Capture Switch", | 1818 | "Master Playback Switch", "Master Capture Switch", |
1819 | "Master Playback Volume", "Master Capture Volume", | 1819 | "Master Playback Volume", "Master Capture Volume", |
1820 | "Wave Master Playback Volume", "Master Playback Volume", | 1820 | "Wave Master Playback Volume", "Master Playback Volume", |
1821 | "PC Speaker Playback Switch", "PC Speaker Capture Switch", | 1821 | "Beep Playback Switch", "Beep Capture Switch", |
1822 | "PC Speaker Playback Volume", "PC Speaker Capture Volume", | 1822 | "Beep Playback Volume", "Beep Capture Volume", |
1823 | "Phone Playback Switch", "Phone Capture Switch", | 1823 | "Phone Playback Switch", "Phone Capture Switch", |
1824 | "Phone Playback Volume", "Phone Capture Volume", | 1824 | "Phone Playback Volume", "Phone Capture Volume", |
1825 | "Mic Playback Switch", "Mic Capture Switch", | 1825 | "Mic Playback Switch", "Mic Capture Switch", |
diff --git a/sound/pci/emu10k1/emuproc.c b/sound/pci/emu10k1/emuproc.c index 216f9748aff5..baa7cd508cd8 100644 --- a/sound/pci/emu10k1/emuproc.c +++ b/sound/pci/emu10k1/emuproc.c | |||
@@ -451,7 +451,7 @@ static void snd_emu_proc_io_reg_write(struct snd_info_entry *entry, | |||
451 | while (!snd_info_get_line(buffer, line, sizeof(line))) { | 451 | while (!snd_info_get_line(buffer, line, sizeof(line))) { |
452 | if (sscanf(line, "%x %x", ®, &val) != 2) | 452 | if (sscanf(line, "%x %x", ®, &val) != 2) |
453 | continue; | 453 | continue; |
454 | if ((reg < 0x40) && (reg >= 0) && (val <= 0xffffffff) ) { | 454 | if (reg < 0x40 && val <= 0xffffffff) { |
455 | spin_lock_irqsave(&emu->emu_lock, flags); | 455 | spin_lock_irqsave(&emu->emu_lock, flags); |
456 | outl(val, emu->port + (reg & 0xfffffffc)); | 456 | outl(val, emu->port + (reg & 0xfffffffc)); |
457 | spin_unlock_irqrestore(&emu->emu_lock, flags); | 457 | spin_unlock_irqrestore(&emu->emu_lock, flags); |
@@ -527,7 +527,7 @@ static void snd_emu_proc_ptr_reg_write(struct snd_info_entry *entry, | |||
527 | while (!snd_info_get_line(buffer, line, sizeof(line))) { | 527 | while (!snd_info_get_line(buffer, line, sizeof(line))) { |
528 | if (sscanf(line, "%x %x %x", ®, &channel_id, &val) != 3) | 528 | if (sscanf(line, "%x %x %x", ®, &channel_id, &val) != 3) |
529 | continue; | 529 | continue; |
530 | if ((reg < 0xa0) && (reg >= 0) && (val <= 0xffffffff) && (channel_id >= 0) && (channel_id <= 3) ) | 530 | if (reg < 0xa0 && val <= 0xffffffff && channel_id <= 3) |
531 | snd_ptr_write(emu, iobase, reg, channel_id, val); | 531 | snd_ptr_write(emu, iobase, reg, channel_id, val); |
532 | } | 532 | } |
533 | } | 533 | } |
diff --git a/sound/pci/emu10k1/io.c b/sound/pci/emu10k1/io.c index c1a5aa15af8f..5ef7080e14d0 100644 --- a/sound/pci/emu10k1/io.c +++ b/sound/pci/emu10k1/io.c | |||
@@ -256,7 +256,7 @@ int snd_emu1010_fpga_write(struct snd_emu10k1 * emu, u32 reg, u32 value) | |||
256 | if (reg > 0x3f) | 256 | if (reg > 0x3f) |
257 | return 1; | 257 | return 1; |
258 | reg += 0x40; /* 0x40 upwards are registers. */ | 258 | reg += 0x40; /* 0x40 upwards are registers. */ |
259 | if (value < 0 || value > 0x3f) /* 0 to 0x3f are values */ | 259 | if (value > 0x3f) /* 0 to 0x3f are values */ |
260 | return 1; | 260 | return 1; |
261 | spin_lock_irqsave(&emu->emu_lock, flags); | 261 | spin_lock_irqsave(&emu->emu_lock, flags); |
262 | outl(reg, emu->port + A_IOCFG); | 262 | outl(reg, emu->port + A_IOCFG); |