From patchwork Mon Sep 30 06:01:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hui Wang X-Patchwork-Id: 1169125 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46hWxR4G66z9sP7; Mon, 30 Sep 2019 16:01:31 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1iEokQ-0006yF-SC; Mon, 30 Sep 2019 06:01:26 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokO-0006xr-Ds for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:24 +0000 Received: from [114.253.242.92] (helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokN-0006XT-Kt for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:24 +0000 From: Hui Wang To: kernel-team@lists.ubuntu.com Subject: [SRU][OEM-B-OSP1][PATCH 1/4] ALSA: hda: clear output link mappinp Date: Mon, 30 Sep 2019 14:01:00 +0800 Message-Id: <20190930060103.7125-2-hui.wang@canonical.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190930060103.7125-1-hui.wang@canonical.com> References: <20190930060103.7125-1-hui.wang@canonical.com> X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Rander Wang BugLink: https://bugs.launchpad.net/bugs/1845904 All streams are valid with default status. Clear it to invalidate them when powered up Signed-off-by: Rander Wang (cherry picked from commit 9e87d43e4da566c810d39c1d3142ebdecd83c7a2 git://github.com/thesofproject/linux.git) Signed-off-by: Hui Wang --- include/sound/hda_register.h | 2 ++ sound/hda/ext/hdac_ext_controller.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/include/sound/hda_register.h b/include/sound/hda_register.h index 0fd39295b426..dae21fbbe8e6 100644 --- a/include/sound/hda_register.h +++ b/include/sound/hda_register.h @@ -264,6 +264,8 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 }; #define AZX_REG_ML_LOUTPAY 0x20 #define AZX_REG_ML_LINPAY 0x30 +#define ML_LOSIDV_STREAM_MASK 0xFFFE + #define ML_LCTL_SCF_MASK 0xF #define AZX_MLCTL_SPA (0x1 << 16) #define AZX_MLCTL_CPA (0x1 << 23) diff --git a/sound/hda/ext/hdac_ext_controller.c b/sound/hda/ext/hdac_ext_controller.c index 60cb00fd0c69..a794c319add5 100644 --- a/sound/hda/ext/hdac_ext_controller.c +++ b/sound/hda/ext/hdac_ext_controller.c @@ -278,6 +278,9 @@ int snd_hdac_ext_bus_link_get(struct hdac_bus *bus, ret = snd_hdac_ext_bus_link_power_up(link); + snd_hdac_updatew(link->ml_addr, AZX_REG_ML_LOSIDV, + ML_LOSIDV_STREAM_MASK, 0); + /* * wait for 521usec for codec to report status * HDA spec section 4.3 - Codec Discovery From patchwork Mon Sep 30 06:01:01 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hui Wang X-Patchwork-Id: 1169127 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46hWxS1gQ5z9sPW; Mon, 30 Sep 2019 16:01:32 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1iEokS-0006ys-0y; Mon, 30 Sep 2019 06:01:28 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokQ-0006y3-0u for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:26 +0000 Received: from [114.253.242.92] (helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokP-0006XT-89 for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:25 +0000 From: Hui Wang To: kernel-team@lists.ubuntu.com Subject: [SRU][OEM-B-OSP1][PATCH 2/4] ALSA: SOF: disable L1SEN for capture stream Date: Mon, 30 Sep 2019 14:01:01 +0800 Message-Id: <20190930060103.7125-3-hui.wang@canonical.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190930060103.7125-1-hui.wang@canonical.com> References: <20190930060103.7125-1-hui.wang@canonical.com> X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Rander Wang BugLink: https://bugs.launchpad.net/bugs/1845904 Fix noise issue when doing capture Signed-off-by: Rander Wang (cherry picked from commit b1221cb7ed6efbe2f078538278535717981930d5 git://github.com/thesofproject/linux.git) Signed-off-by: Hui Wang --- sound/soc/sof/intel/hda-pcm.c | 18 ++++++++++++++++++ sound/soc/sof/intel/hda.h | 3 +++ sound/soc/sof/sof-priv.h | 1 + 3 files changed, 22 insertions(+) diff --git a/sound/soc/sof/intel/hda-pcm.c b/sound/soc/sof/intel/hda-pcm.c index 5714a79fbe1a..bcd7a30d51ee 100644 --- a/sound/soc/sof/intel/hda-pcm.c +++ b/sound/soc/sof/intel/hda-pcm.c @@ -215,6 +215,15 @@ int hda_dsp_pcm_open(struct snd_sof_dev *sdev, return -ENODEV; } + if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) { + sdev->capture_stream_num++; + if (sdev->capture_stream_num == 1) + snd_sof_dsp_update_bits(sdev, HDA_DSP_HDA_BAR, + HDA_DSP_EM2, + HDA_DSP_L1SEN, + 0); + } + /* binding pcm substream to hda stream */ substream->runtime->private_data = &dsp_stream->hstream; return 0; @@ -234,6 +243,15 @@ int hda_dsp_pcm_close(struct snd_sof_dev *sdev, return -ENODEV; } + if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) { + sdev->capture_stream_num--; + if (sdev->capture_stream_num == 0) + snd_sof_dsp_update_bits(sdev, HDA_DSP_HDA_BAR, + HDA_DSP_EM2, + HDA_DSP_L1SEN, + 1); + } + /* unbinding pcm substream to hda stream */ substream->runtime->private_data = NULL; return 0; diff --git a/sound/soc/sof/intel/hda.h b/sound/soc/sof/intel/hda.h index 3ab90266244a..598d529c73fc 100644 --- a/sound/soc/sof/intel/hda.h +++ b/sound/soc/sof/intel/hda.h @@ -332,6 +332,9 @@ #define SOF_SKL_NUM_DAIS 8 #endif +#define HDA_DSP_EM2 0x1030 +#define HDA_DSP_L1SEN BIT(13) + /* Intel HD Audio SRAM Window 0*/ #define HDA_ADSP_SRAM0_BASE_SKL 0x8000 diff --git a/sound/soc/sof/sof-priv.h b/sound/soc/sof/sof-priv.h index 62132d36d311..4608437bffbe 100644 --- a/sound/soc/sof/sof-priv.h +++ b/sound/soc/sof/sof-priv.h @@ -427,6 +427,7 @@ struct snd_sof_dev { u32 dtrace_error; u32 msi_enabled; + u32 capture_stream_num; void *private; /* core does not touch this */ }; From patchwork Mon Sep 30 06:01:02 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hui Wang X-Patchwork-Id: 1169128 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46hWxT4XhKz9sPd; Mon, 30 Sep 2019 16:01:33 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1iEokU-0006zu-6e; Mon, 30 Sep 2019 06:01:30 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokR-0006yl-KF for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:27 +0000 Received: from [114.253.242.92] (helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokQ-0006XT-RT for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:27 +0000 From: Hui Wang To: kernel-team@lists.ubuntu.com Subject: [SRU][OEM-B-OSP1][PATCH 3/4] ALSA: sof: refine stop-start sequence for driver and FW Date: Mon, 30 Sep 2019 14:01:02 +0800 Message-Id: <20190930060103.7125-4-hui.wang@canonical.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190930060103.7125-1-hui.wang@canonical.com> References: <20190930060103.7125-1-hui.wang@canonical.com> X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Pan Xiuli BugLink: https://bugs.launchpad.net/bugs/1845904 Stop FW first, then stop HDA controller Start HDA contorller first, then start FW Signed-off-by: Pan Xiuli Signed-off-by: Rander Wang (cherry picked from commit 2424b716fd1df0518f07ce9f205b20c3289a99be git://github.com/thesofproject/linux.git) Signed-off-by: Hui Wang --- sound/soc/sof/pcm.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/sound/soc/sof/pcm.c b/sound/soc/sof/pcm.c index c0f29eb8645d..38cc7eeb4476 100644 --- a/sound/soc/sof/pcm.c +++ b/sound/soc/sof/pcm.c @@ -314,6 +314,7 @@ static int sof_pcm_trigger(struct snd_pcm_substream *substream, int cmd) struct snd_sof_pcm *spcm; struct sof_ipc_stream stream; struct sof_ipc_reply reply; + bool ipc_first = false; int ret; /* nothing to do for BE */ @@ -334,6 +335,7 @@ static int sof_pcm_trigger(struct snd_pcm_substream *substream, int cmd) switch (cmd) { case SNDRV_PCM_TRIGGER_PAUSE_PUSH: stream.hdr.cmd |= SOF_IPC_STREAM_TRIG_PAUSE; + ipc_first = true; break; case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: stream.hdr.cmd |= SOF_IPC_STREAM_TRIG_RELEASE; @@ -354,18 +356,23 @@ static int sof_pcm_trigger(struct snd_pcm_substream *substream, int cmd) case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_STOP: stream.hdr.cmd |= SOF_IPC_STREAM_TRIG_STOP; + ipc_first = true; break; default: dev_err(sdev->dev, "error: unhandled trigger cmd %d\n", cmd); return -EINVAL; } - snd_sof_pcm_platform_trigger(sdev, substream, cmd); + if (!ipc_first) + snd_sof_pcm_platform_trigger(sdev, substream, cmd); /* send IPC to the DSP */ ret = sof_ipc_tx_message(sdev->ipc, stream.hdr.cmd, &stream, sizeof(stream), &reply, sizeof(reply)); + if (ipc_first) + snd_sof_pcm_platform_trigger(sdev, substream, cmd); + if (ret < 0 || cmd != SNDRV_PCM_TRIGGER_SUSPEND) return ret; From patchwork Mon Sep 30 06:01:03 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hui Wang X-Patchwork-Id: 1169129 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46hWxX0Z0vz9s7T; Mon, 30 Sep 2019 16:01:36 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1iEokW-00070j-CT; Mon, 30 Sep 2019 06:01:32 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokT-0006za-7B for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:29 +0000 Received: from [114.253.242.92] (helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iEokS-0006XT-EA for kernel-team@lists.ubuntu.com; Mon, 30 Sep 2019 06:01:29 +0000 From: Hui Wang To: kernel-team@lists.ubuntu.com Subject: [SRU][OEM-B-OSP1][PATCH 4/4] ALSA: sof: disable debug message for production release Date: Mon, 30 Sep 2019 14:01:03 +0800 Message-Id: <20190930060103.7125-5-hui.wang@canonical.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190930060103.7125-1-hui.wang@canonical.com> References: <20190930060103.7125-1-hui.wang@canonical.com> X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Rander Wang BugLink: https://bugs.launchpad.net/bugs/1845904 It is clear for release version without many debug messages. Signed-off-by: Rander Wang (cherry picked from commit 6a4a82454644b858e9ad4f3d733b3b62a5aec5cc git://github.com/thesofproject/linux.git) Signed-off-by: Hui Wang --- sound/soc/sof/Makefile | 2 -- sound/soc/sof/intel/Makefile | 2 -- sound/soc/sof/xtensa/Makefile | 2 -- 3 files changed, 6 deletions(-) diff --git a/sound/soc/sof/Makefile b/sound/soc/sof/Makefile index 33c3ded2b7e2..8f14c9d2950b 100644 --- a/sound/soc/sof/Makefile +++ b/sound/soc/sof/Makefile @@ -1,7 +1,5 @@ # SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) -ccflags-y += -DDEBUG - snd-sof-objs := core.o ops.o loader.o ipc.o pcm.o pm.o debug.o topology.o\ control.o trace.o utils.o diff --git a/sound/soc/sof/intel/Makefile b/sound/soc/sof/intel/Makefile index 03b22924d0c4..84a65c80f62a 100644 --- a/sound/soc/sof/intel/Makefile +++ b/sound/soc/sof/intel/Makefile @@ -1,7 +1,5 @@ # SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) -ccflags-y += -DDEBUG - snd-sof-intel-byt-objs := byt.o snd-sof-intel-hsw-objs := hsw.o snd-sof-intel-bdw-objs := bdw.o diff --git a/sound/soc/sof/xtensa/Makefile b/sound/soc/sof/xtensa/Makefile index 34b27be0f7be..cc89c7472a38 100644 --- a/sound/soc/sof/xtensa/Makefile +++ b/sound/soc/sof/xtensa/Makefile @@ -1,7 +1,5 @@ # SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) -ccflags-y += -DDEBUG - snd-sof-xtensa-dsp-objs := core.o obj-$(CONFIG_SND_SOC_SOF_XTENSA) += snd-sof-xtensa-dsp.o