Received: by 10.213.65.68 with SMTP id h4csp869757imn; Tue, 27 Mar 2018 10:16:16 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+2th5OrXajrygI1UpAWPzmzHo2qVzP8CR5gbUBRINAAXNYzOJDEDvlvhyygcr1vIfieoCg X-Received: by 2002:a17:902:6547:: with SMTP id d7-v6mr150438pln.253.1522170975956; Tue, 27 Mar 2018 10:16:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522170975; cv=none; d=google.com; s=arc-20160816; b=gKFdeOqBdd2QfoRp9lqCm9uQQm+peIGQUsEYCa7BETKuwxZpl1J0sxmzU0wymP7fkF 0C+qBmCSnK4Ik84oZyS7xS0ULlRd+8O01jXBq6UPDlLs4FEI4T9MVVR7c46CslU3F7C/ yOG/sRm9Z7a7Q2qcsigF3oQIFkp5BkaIl1vQwGOax05d3HagaObS7r1/BP2YE4O6L1xm a2Uaqvz2f3tj5gAcjsvDT0nAio2szCN4TqJRn+y1JuxHbY15Uha5Sf3WBJLvUGR4SNSL owo/1Vzyw85cv5kapdXIiZW7Pk+uH+mtNpHqIZNEBKX+fJiG6Nr2F5+Kn01O7uJ70P1/ 7Mqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=ZI/PrHrkfT07dhHLYXuPOfbRCSYOxAVohVh3pYm3nn0=; b=ulVgC2nJeOV1I6p/squ3H3ecV2Pwyw0fThSZmA4Btkn/zxaDN4WVgmR/v0ewNSX7l+ AxTLSDBUAtbrQx/UD4frVE5E4ykZP5nP+fZSu4G8hodHF1fGPEzos9D4aetALV7vP2OY cVJgm6xLt+ZXydrBE7tXIV7ZQwp9BSk4ihafNmfrvBt9a65pwp3EISnvXGQPlEbvngTu H+VnfA6VQImmAWF7SeY2vCcvT9qNAYv4cd4+kayP7xvrperfolvU4YLuakESkzW1Euy+ V5uOHRDsnRceLP/pS2C3oLIi3hnYFe8lKCnTUKdGmlhBG9BiYGat8GvGwH9vxoW4Ya0A ZvUA== ARC-Authentication-Results: i=1; mx.google.com; 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 o69si1221539pfj.329.2018.03.27.10.16.01; Tue, 27 Mar 2018 10:16:15 -0700 (PDT) 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; 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 S1755338AbeC0Qi6 (ORCPT + 99 others); Tue, 27 Mar 2018 12:38:58 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:46946 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755307AbeC0Qiv (ORCPT ); Tue, 27 Mar 2018 12:38:51 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 8D0CF1005; Tue, 27 Mar 2018 16:38:50 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Takashi Iwai Subject: [PATCH 4.15 012/105] ALSA: hda - Force polling mode on CFL for fixing codec communication Date: Tue, 27 Mar 2018 18:26:52 +0200 Message-Id: <20180327162758.364905955@linuxfoundation.org> X-Mailer: git-send-email 2.16.3 In-Reply-To: <20180327162757.813009222@linuxfoundation.org> References: <20180327162757.813009222@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.15-stable review patch. If anyone has any objections, please let me know. ------------------ From: Takashi Iwai commit a8d7bde23e7130686b76624b099f3e22dd38aef7 upstream. We've observed too long probe time with Coffee Lake (CFL) machines, and the likely cause is some communication problem between the HD-audio controller and the codec chips. While the controller expects an IRQ wakeup for each codec response, it seems sometimes missing, and it takes one second for the controller driver to time out and read the response in the polling mode. Although we aren't sure about the real culprit yet, in this patch, we put a workaround by forcing the polling mode as default for CFL machines; the polling mode itself isn't too heavy, and much better than other workarounds initially suggested (e.g. disabling power-save), at least. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199007 Fixes: e79b0006c45c ("ALSA: hda - Add Coffelake PCI ID") Reported-and-tested-by: Hui Wang Cc: Signed-off-by: Takashi Iwai Signed-off-by: Greg Kroah-Hartman --- sound/pci/hda/hda_intel.c | 5 +++++ 1 file changed, 5 insertions(+) --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c @@ -375,6 +375,7 @@ enum { ((pci)->device == 0x160c)) #define IS_BXT(pci) ((pci)->vendor == 0x8086 && (pci)->device == 0x5a98) +#define IS_CFL(pci) ((pci)->vendor == 0x8086 && (pci)->device == 0xa348) static char *driver_short_names[] = { [AZX_DRIVER_ICH] = "HDA Intel", @@ -1744,6 +1745,10 @@ static int azx_create(struct snd_card *c else chip->bdl_pos_adj = bdl_pos_adj[dev]; + /* Workaround for a communication error on CFL (bko#199007) */ + if (IS_CFL(pci)) + chip->polling_mode = 1; + err = azx_bus_init(chip, model[dev], &pci_hda_io_ops); if (err < 0) { kfree(hda);