Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp2643210pxb; Tue, 9 Mar 2021 07:31:40 -0800 (PST) X-Google-Smtp-Source: ABdhPJxx64IDdvpQZh82ZSSqQ9cY77IfrdjFCLaJoQBwrLOuTJSLzJ6MZlsGZEEecvzO+KBknOTG X-Received: by 2002:a05:600c:198f:: with SMTP id t15mr4713696wmq.8.1615303900340; Tue, 09 Mar 2021 07:31:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1615303900; cv=none; d=google.com; s=arc-20160816; b=hE6LUASZbaup+2zhI2gDepm/4vdmfyUYj2O4AM3OFe2xtdANeEPBaB4GHJJ5iKQS6e yms2pCFkNr/gAlQ2I54gbx7QIqYNC8PBYmhEweuRP8j8y6/LQDYMbuEaIqMTvJuTqYEa 6DIzCD2bdcRppaxMzgwper715BzWL6QXM39LyugJHVv2va4a2D/Upb8VmbHEgsRoEFqO iWEGH8J0VVmLQl4bE5h7jVt8F9/29SWgXdNxIJG2u7IyWYhtTzZRf44AGWUvvpWUgCrs I6KmBruKOfXW5f+tgnjDV0AYK7SJzA/X+Cjj3/ieH8tgTtakEd7TgJEUeh0xbT5VNgxZ ZNxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:ironport-sdr:ironport-sdr; bh=5NzyxuwKGGxX2QEeUt7brdgVKNmShDMf38iX2LfqATE=; b=Po0D6ZZD5JRSbW2GUa/gvM5rxMxrD3HJvzBao+VJhN4InXSUBp2J+7HEuGbqyS/x7R UPkKt+4BCJYn8MuYD24D5K+Dw2OlC5Wje20p88Y3dSKqrsUp9cHH9C6To9bteOtJJ2XS TEdF6PbLNI9uxljBnQs2Z0HtTsFAi9aBdCXRICOh+55qlZ4W13czISzjBRgPPV8mPbrW KrI7y6OANNWM4FTp51TnBWYeVrwQaDXTvY3rtxQgvvCbMa1KNb4lLEZ2k15Y0HRxKHyV aH4Yn3+gO4VMdlmLtjyWB5JExIDb/0NGIo5oDy+3L4pYldR561l8mTuPYOUxBsuGnvDD l/BQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k24si9432760ejs.280.2021.03.09.07.31.17; Tue, 09 Mar 2021 07:31:40 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231699AbhCIP3n (ORCPT + 99 others); Tue, 9 Mar 2021 10:29:43 -0500 Received: from mga01.intel.com ([192.55.52.88]:61154 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231410AbhCIP3T (ORCPT ); Tue, 9 Mar 2021 10:29:19 -0500 IronPort-SDR: K6lOzAKmN+HZ8xYshP/ndP1W1RpTxlxq+nam3O4PUQhB+MdaxTaBN++OJAcWvn2E3q8ieHoLqc CaYsvruWrVdA== X-IronPort-AV: E=McAfee;i="6000,8403,9918"; a="208038578" X-IronPort-AV: E=Sophos;i="5.81,234,1610438400"; d="scan'208";a="208038578" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Mar 2021 07:29:19 -0800 IronPort-SDR: HXhNSzlJcaoWxXYMkJh0n/FLWUC0iN37HDe7/go7waGyvAvW5JPz9GIuQhayOOfHX2Fahu7fN7 bwUKx3XLRhdw== X-IronPort-AV: E=Sophos;i="5.81,234,1610438400"; d="scan'208";a="409775839" Received: from crojewsk-mobl1.ger.corp.intel.com (HELO [10.213.0.249]) ([10.213.0.249]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Mar 2021 07:29:16 -0800 Subject: Re: No sound cards detected on Kabylake laptops after upgrade to kernel 5.8 To: Chris Chiu , pierre-louis.bossart@linux.intel.com, liam.r.girdwood@linux.intel.com, yang.jie@linux.intel.com, broonie@kernel.org, Takashi Iwai Cc: alsa-devel@alsa-project.org, Linux Kernel References: From: Cezary Rojewski Message-ID: Date: Tue, 9 Mar 2021 16:29:13 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2021-03-09 1:19 PM, Chris Chiu wrote: > Hi Guys, > We have received reports that on some Kabylake laptops (Acer Swift > SF314-54/55 and Lenovo Yoga C930...etc), all sound cards no longer be > detected after upgrade to kernel later than 5.8. These laptops have > one thing in common, all of them have Realtek audio codec and connect > the internal microphone to DMIC of the Intel SST controller either > [8086:9d71] or [8086:9dc8]. Please refer to > https://bugzilla.kernel.org/show_bug.cgi?id=201251#c246 and > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117. > > From the dmesg from kernel 5.8, the sound related parts only show > as follows but the expected snd_hda_codec_realtek and the snd_soc_skl > are not even loaded then. > [ 13.357495] snd_hda_intel 0000:00:1f.3: DSP detected with PCI > class/subclass/prog-if info 0x040100 > [ 13.357500] snd_hda_intel 0000:00:1f.3: Digital mics found on > Skylake+ platform, using SST driver > > Building the kernel with the CONFIG_SND_SOC_INTEL_KBL removed can > load the snd_hda_codec_realtek successfully and the pulseaudio and > alsa-utils can detect the sound cards again. The result of bisecting > between kernel 5.4 and 5.8 also get similar result, reverting the > commit "ALSA: hda: Allow SST driver on SKL and KBL platforms with > DMIC" can fix the issue. I tried to generate the required firmware for > snd_soc_skl but it did not help. Please refer to what I did in > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117/comments/14 > and https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117/comments/18. > > Since the skl_hda_dsp_generic-tplg.bin and dfw_sst.bin are not in > the linux-firmware. The Intel SST support for Skylake family is not > yet complete. Can we simply revert the "ALSA: hda: Allow SST driver on > SKL and KBL platforms with DMIC" in the current stage and wait for SOF > support for Skylake family? Or please suggest a better solution for > this. Thanks > > Chris > Hello Chris, Guide: "Linux: HDA+DMIC with skylake driver" [1] should help understanding history behind the problem as well as fixing it. Upstream skylake driver - snd_soc_skl - is intended to support HDA DSP + DMIC configuration via means of snd_soc_skl_hda_dsp machine board driver. You _may_ switch to legacy HDAudio driver - snd_hda_intel - losing DMIC support in the process. To remove any confusion - for Skylake and Kabylake platforms, snd_soc_skl is your option. Now, due to above, I doubt any skylake-related topology has ever been upstreamed to linux-firmware as a) most boards are I2S-based, these are used by our clients which we support via separate channel b) hda dsp+dmic support on linux for missing until early 2020. Topologies for most common skylake driver configurations: - skl/kbl with i2s rt286 - apl/glk with i2s rt298 - with hda dsp can be found in alsa-topology-conf [2]. Standard, official tool called 'alsatplg' is capable of compiling these into binary form which, after being transferred to /lib/firmware/ may be consumed by the driver during runtime. I have no problem with providing precompiled binaries to linux-firmware, if that's what community wants. Regards, Czarek [1]: https://gist.github.com/crojewsk/4e6382bfb0dbfaaf60513174211f29cb [2]: https://github.com/alsa-project/alsa-topology-conf/tree/master/topology