From: Oswald Buddenhagen Date: Sun, 14 May 2023 17:03:23 +0000 (+0200) Subject: ALSA: emu10k1: optimize mask calculation in snd_emu10k1_ptr_read() X-Git-Tag: v6.6.7~2394^2~16^2~105 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2e9bd50f117ea3f638802627a196949f7eefcf02;p=platform%2Fkernel%2Flinux-starfive.git ALSA: emu10k1: optimize mask calculation in snd_emu10k1_ptr_read() Unlike in snd_emu10k1_ptr_write(), we don't need to keep the value's bits in place, so we can save one shift. Signed-off-by: Oswald Buddenhagen Link: https://lore.kernel.org/r/20230514170323.3408798-4-oswald.buddenhagen@gmx.de Signed-off-by: Takashi Iwai --- diff --git a/sound/pci/emu10k1/io.c b/sound/pci/emu10k1/io.c index 2d6bbb7..59b0f4d 100644 --- a/sound/pci/emu10k1/io.c +++ b/sound/pci/emu10k1/io.c @@ -50,9 +50,9 @@ unsigned int snd_emu10k1_ptr_read(struct snd_emu10k1 * emu, unsigned int reg, un size = (reg >> 24) & 0x3f; offset = (reg >> 16) & 0x1f; - mask = ((1 << size) - 1) << offset; + mask = (1 << size) - 1; - return (val & mask) >> offset; + return (val >> offset) & mask; } else { return val; }