Received: by 10.213.65.68 with SMTP id h4csp892508imn; Tue, 27 Mar 2018 10:42:17 -0700 (PDT) X-Google-Smtp-Source: AIpwx48auhf4iAxTO/Aqb6EGWmu6nUNLivaUaKeeLnfao7es8xpIYYoE+E7nRT9MGv/tJW1FqNqB X-Received: by 2002:a17:902:ab81:: with SMTP id f1-v6mr241769plr.5.1522172537231; Tue, 27 Mar 2018 10:42:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522172537; cv=none; d=google.com; s=arc-20160816; b=dyHvqfJjqakzwlMg/AuCFzKmeBDtsS3BtC5TvXBjUj7ylm1liOaweVm86CgTjouWd+ Dv37bUT/QiDw5maCQ20xTZrLnPq1Yg470dgTW8i/5T2dYn6lhx3+yhDyCnm9z9CG62sm cvgUiUjTQKqbkuXM4HeTeHjD8iISDt5SKu9aPnR5tdeCuYcAvCcBTHOEsUJaD3jHfA3c fph8ufGGeEag4DctiQDwLz4W1HSpN4qT4xh41aCu/9KoYCosIXD0ED3pY4doADO7jtih bxQl4CTNLeKTpnK7fydXMK7h4kwvIM4p9klM0UzNrH3WZRJ80X3AGID+SSV0Zf0QHe6W mL/g== 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=jxopGOv3CfJLD34Uhlt9wM6qZNaRetKY8+e8+IJ82/w=; b=DMhVxYjQvIYvKGpWg4AWVIsP6EYIsU3Vex8AtvcQfr8SebQl7/FPyrBMhRCw6Bqlfl qG95tfgbHAg+AF7vKJUoFeBrXTzywaIwphyCChdYPe+/m5GG2grsFIGT2IZ0v7iINfzr ZlAh/3hUczfJnk8w7YOZ2iSiFiapHLZiwWfDZhBgN+o/6N0S0AH1hwmepDVzfm+t1eXl SY5UcoHWT/DyHK1QMjGChZmkocLrGtnltvvE6XVft0Ac9Rk22YhRTdBAom/PPZNIGL73 6wdbyKWAsaPewIs88SK4tucAJFBh6P20MR3NjxxYaIHwh3a/8EPxMCF5f6PhswfMzbYg Fg0g== 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 t10-v6si1643284plh.231.2018.03.27.10.42.02; Tue, 27 Mar 2018 10:42:17 -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 S1754122AbeC0QeA (ORCPT + 99 others); Tue, 27 Mar 2018 12:34:00 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:44126 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754107AbeC0Qd5 (ORCPT ); Tue, 27 Mar 2018 12:33:57 -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 A141611C0; Tue, 27 Mar 2018 16:33:56 +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.14 012/101] ALSA: hda - Force polling mode on CFL for fixing codec communication Date: Tue, 27 Mar 2018 18:26:44 +0200 Message-Id: <20180327162750.746050409@linuxfoundation.org> X-Mailer: git-send-email 2.16.3 In-Reply-To: <20180327162749.993880276@linuxfoundation.org> References: <20180327162749.993880276@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.14-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);