summaryrefslogtreecommitdiff
path: root/sound/firewire
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2017-04-03 15:13:50 +0300
committerTakashi Iwai <tiwai@suse.de>2017-04-05 22:36:11 +0300
commit5b33504bada4d85092b69b3aaa7048c398b21dbb (patch)
treebd495b65bea0bc0925915623b2358b4358457aad /sound/firewire
parentfdb2b2eee6bc33f4dcb1b05176e3008a4e494612 (diff)
downloadlinux-5b33504bada4d85092b69b3aaa7048c398b21dbb.tar.xz
ALSA: firewire-motu: remove invalid bitshift for register value
In protocol version 3, drivers can read current sampling clock status from register 0x'ffff'f000'0b14. 8 bits of LSB of this register represents type of signal as source of clock. Current driver code includes invalid bitshift to handle the parameter. This commit fixes the bug. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Fixes: 5992e30034c4 ("ALSA: firewire-motu: add support for MOTU 828mk3 (FireWire/Hybrid) as a model with protocol version 3") Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/firewire')
-rw-r--r--sound/firewire/motu/motu-protocol-v3.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sound/firewire/motu/motu-protocol-v3.c b/sound/firewire/motu/motu-protocol-v3.c
index b463da99feb1..ddb647254ed2 100644
--- a/sound/firewire/motu/motu-protocol-v3.c
+++ b/sound/firewire/motu/motu-protocol-v3.c
@@ -14,7 +14,6 @@
#define V3_CLOCK_RATE_MASK 0x0000ff00
#define V3_CLOCK_RATE_SHIFT 8
#define V3_CLOCK_SOURCE_MASK 0x000000ff
-#define V3_CLOCK_SOURCE_SHIFT 8
#define V3_OPT_IFACE_MODE_OFFSET 0x0c94
#define V3_ENABLE_OPT_IN_IFACE_A 0x00000001
@@ -101,7 +100,7 @@ static int v3_get_clock_source(struct snd_motu *motu,
return err;
data = be32_to_cpu(reg);
- val = (data & V3_CLOCK_SOURCE_MASK) >> V3_CLOCK_SOURCE_SHIFT;
+ val = data & V3_CLOCK_SOURCE_MASK;
if (val == 0x00) {
*src = SND_MOTU_CLOCK_SOURCE_INTERNAL;
} else if (val == 0x01) {