From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934000AbcJ2QOE (ORCPT ); Sat, 29 Oct 2016 12:14:04 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:39482 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932635AbcJ2QOD (ORCPT ); Sat, 29 Oct 2016 12:14:03 -0400 DMARC-Filter: OpenDMARC Filter v1.3.1 smtp.codeaurora.org B936461160 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=pass smtp.mailfrom=kwestfie@codeaurora.org Date: Sat, 29 Oct 2016 09:14:01 -0700 From: Kenneth Westfield To: Srinivas Kandagatla Cc: Mark Brown , alsa-devel@alsa-project.org, Banajit Goswami , Liam Girdwood , Jaroslav Kysela , Takashi Iwai , linux-kernel@vger.kernel.org, Kenneth Westfield , Kuninori Morimoto Subject: Re: [PATCH 2/3] ASoC: lpass-platform: Fix broken pcm data usage Message-ID: <20161029161401.GB24622@kwestfie-linux.qualcomm.com> Mail-Followup-To: Srinivas Kandagatla , Mark Brown , alsa-devel@alsa-project.org, Banajit Goswami , Liam Girdwood , Jaroslav Kysela , Takashi Iwai , linux-kernel@vger.kernel.org, Kuninori Morimoto References: <1477668740-30389-1-git-send-email-srinivas.kandagatla@linaro.org> <1477668740-30389-3-git-send-email-srinivas.kandagatla@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1477668740-30389-3-git-send-email-srinivas.kandagatla@linaro.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Oct 28, 2016 at 04:32:19PM +0100, Srinivas Kandagatla wrote: > This patch fixes lpass-platform driver which was broken in v4.9-rc1. > lpass_pcm_data data structure holds information specific to stream. > Holding a single private pointer to it in global lpass_data > will not work, because it would be overwritten by for each pcm instance. > > This code was breaking playback when we have both playback and capture > pcm streams, as playback settings are over written by capture settings. > > Fix this by moving channel allocation logic out of pcm_new to pcm_open > so that we can store the stream specific information private_data of > snd_pcm_runtime. > > Fixes: 6adcbdcd4b6e ("ASoC: lpass-platform: don't use snd_soc_pcm_set_drvdata()") > Signed-off-by: Srinivas Kandagatla > --- > sound/soc/qcom/lpass-platform.c | 151 ++++++++++++++++++---------------------- > sound/soc/qcom/lpass.h | 1 - > 2 files changed, 67 insertions(+), 85 deletions(-) After you address Mark's comments: Acked-by: Kenneth Westfield -- Kenneth Westfield Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project