Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp6540712ybx; Mon, 11 Nov 2019 10:37:53 -0800 (PST) X-Google-Smtp-Source: APXvYqwzFSFTzF80RIvZTDfHSd4gr0beAk/brl5gZ1JETPKdyRmC8UiOTqpyqU/B+Ntv0y79FAUI X-Received: by 2002:aa7:c343:: with SMTP id j3mr27734310edr.4.1573497473811; Mon, 11 Nov 2019 10:37:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1573497473; cv=none; d=google.com; s=arc-20160816; b=KOQI+XrQmdsjHd6HgC5lVRQQyNvVIi4RAf+G8whZT/aIy5PelWO4BbWpBfhzFefYhj qJPAMIn3Orrnku+bcY0df8XyaNp4ZUXV1IYT/lv1405fjwLFPmVIefBBfXoB0YDCZ+vA xXdHvVLdeorBUlqUeMu1Su5u4AiZ4eLCi+X15UR21C0oazNDHegdTo5DNrro1RkMRr37 IwlVTD088zWu5mdYyjV6QkWFa4bRVPx7nLI6ZFgIQc9XAHPDOB4K9cem1+K9XeSJdDXo BvGAe34tXxREBeHBlcOjmo8o9IFQVQ8RUABl3FLzZPE1OUblhfwzTKOxhZ/cqkNr0kvp yp3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=8kERuOX4DPJZBAlbxmkFAmHd8ialm6hKy27u27LyS5s=; b=Vo+J3MOMjXSZsJlG3hFQvl/AG80Xpj0ozBvD7i8+Qf1JfGQ75GYp/Mdy34cYLsYn74 22GnU0eAP+hl8EmpLREYTK9Y96qyYqflSxH3RtP9NQXQxXG+/ZUSPSqF/DJjupQF0FVG 3XRAVZL0e6gOB3jPupgpO/I1F0EHksermf6s+10dyarVxupFQAxkHKPAC32PnyXsaAV5 Ws4Uc7oqnEtm4DrSb5Aa96W8YLETSFciikxb+H+kT4Vg0dslu9iL+LxDAbbWk+KYWxR1 780pBoBwd5isD3PDWon9cee+ZIRwvOV1sJZpIfp0gmXXqzO6EcuPl2OROxgdruwPLxMl UZng== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=LekTA0vf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h53si11693688edh.200.2019.11.11.10.37.30; Mon, 11 Nov 2019 10:37:53 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=LekTA0vf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727384AbfKKSd3 (ORCPT + 99 others); Mon, 11 Nov 2019 13:33:29 -0500 Received: from mail.kernel.org ([198.145.29.99]:50756 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727345AbfKKSdY (ORCPT ); Mon, 11 Nov 2019 13:33:24 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 8B27F21655; Mon, 11 Nov 2019 18:33:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1573497202; bh=hsj6mtJD8TKRNhJwMDJL0ulHgOWI8gc8BwKJnbp9dbs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LekTA0vfa67Ytojm6gpfU5L51WYczedNtxn5zofJL4dnD+MgWPhLy3pPwyWlHLRNR Pvluz6Hc+M7hlWgm8OSITht+J5wPo077ABLQbqiOp75xVNV1eq7nKGBEGKUjtqvVv+ DC6mZasjEbdnJwi3p6K9wi+8OsopGuwDo4o5rrnM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Takashi Sakamoto , Takashi Iwai Subject: [PATCH 4.9 10/65] ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series Date: Mon, 11 Nov 2019 19:28:10 +0100 Message-Id: <20191111181339.256403940@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191111181331.917659011@linuxfoundation.org> References: <20191111181331.917659011@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Takashi Sakamoto commit 706ad6746a66546daf96d4e4a95e46faf6cf689a upstream. For Focusrite Saffire Pro i/o, the lowest 8 bits of register represents configured source of sampling clock. The next lowest 8 bits represents whether the configured source is actually detected or not just after the register is changed for the source. Current implementation evaluates whole the register to detect configured source. This results in failure due to the next lowest 8 bits when the source is connected in advance. This commit fixes the bug. Fixes: 25784ec2d034 ("ALSA: bebob: Add support for Focusrite Saffire/SaffirePro series") Cc: # v3.16+ Signed-off-by: Takashi Sakamoto Link: https://lore.kernel.org/r/20191102150920.20367-1-o-takashi@sakamocchi.jp Signed-off-by: Takashi Iwai Signed-off-by: Greg Kroah-Hartman --- sound/firewire/bebob/bebob_focusrite.c | 3 +++ 1 file changed, 3 insertions(+) --- a/sound/firewire/bebob/bebob_focusrite.c +++ b/sound/firewire/bebob/bebob_focusrite.c @@ -28,6 +28,8 @@ #define SAFFIRE_CLOCK_SOURCE_SPDIF 1 /* clock sources as returned from register of Saffire Pro 10 and 26 */ +#define SAFFIREPRO_CLOCK_SOURCE_SELECT_MASK 0x000000ff +#define SAFFIREPRO_CLOCK_SOURCE_DETECT_MASK 0x0000ff00 #define SAFFIREPRO_CLOCK_SOURCE_INTERNAL 0 #define SAFFIREPRO_CLOCK_SOURCE_SKIP 1 /* never used on hardware */ #define SAFFIREPRO_CLOCK_SOURCE_SPDIF 2 @@ -190,6 +192,7 @@ saffirepro_both_clk_src_get(struct snd_b map = saffirepro_clk_maps[1]; /* In a case that this driver cannot handle the value of register. */ + value &= SAFFIREPRO_CLOCK_SOURCE_SELECT_MASK; if (value >= SAFFIREPRO_CLOCK_SOURCE_COUNT || map[value] < 0) { err = -EIO; goto end;