From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.2 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, UNWANTED_LANGUAGE_BODY,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6D894C4724C for ; Thu, 30 Apr 2020 13:55:40 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id EF7E920873 for ; Thu, 30 Apr 2020 13:55:39 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=alsa-project.org header.i=@alsa-project.org header.b="hP/J9ag9"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="HRBWvn2S" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EF7E920873 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 622FE167D; Thu, 30 Apr 2020 15:54:48 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 622FE167D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1588254938; bh=j7EesqpJdFMIiohM4Zu86JeArWKo8byoEHxcvBmIFJs=; h=From:To:Subject:Date:In-Reply-To:References:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=hP/J9ag9yukQD5ujWnClOeffIa+vPvpYdaxGujpAiq3fydn3YENqpmmO2vREvkQUf 9xZpVxrs8IL9EvemmT7OZoDCFxbatAaYS9DJqYgO9veK+/mwDRE1uNnL9flxBvKi2p C7R45694hM3AkxZXSPXQTFtkiwk/5xBlfwXXKFNA= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 4D694F802BC; Thu, 30 Apr 2020 15:51:14 +0200 (CEST) Received: by alsa1.perex.cz (Postfix, from userid 50401) id E7E5EF8028F; Thu, 30 Apr 2020 15:51:09 +0200 (CEST) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 31F7EF8021C for ; Thu, 30 Apr 2020 15:51:06 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 31F7EF8021C Authentication-Results: alsa1.perex.cz; dkim=pass (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="HRBWvn2S" Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id BE44120873; Thu, 30 Apr 2020 13:51:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588254664; bh=j7EesqpJdFMIiohM4Zu86JeArWKo8byoEHxcvBmIFJs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HRBWvn2SU5htasFxi1UM7LtEFOkn8Wa2dca9nph9ekjzsLKnACh/JSgog1kP2qsAO DPN0tXGA8wNV5OZ6bs5ZJTs+ky59j5YrizkZdENcviIjidXbyvhb3cuAZXoD8tlC74 6yFsxExFP0oX0+mxx+EZqXRn1aOKagxTsDd5MTsY= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: [PATCH AUTOSEL 5.6 17/79] ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume Date: Thu, 30 Apr 2020 09:49:41 -0400 Message-Id: <20200430135043.19851-17-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200430135043.19851-1-sashal@kernel.org> References: <20200430135043.19851-1-sashal@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Cc: Sasha Levin , alsa-devel@alsa-project.org, linux-samsung-soc@vger.kernel.org, Arnd Bergmann , Krzysztof Kozlowski , Mark Brown , linux-arm-kernel@lists.infradead.org X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" From: Krzysztof Kozlowski [ Upstream commit ec21bdc6dd16d74b3674ef1fd12ae8e4e7418603 ] Commit 450312b640f9 ("ASoC: soc-core: remove DAI suspend/resume") removed the DAI side suspend/resume hooks and switched entirely to component suspend/resume. However the Samsung SoC s3c-i2s-v2 driver was not updated. Move the suspend/resume hooks from s3c-i2s-v2.c to s3c2412-i2s.c while changing dai to component which allows to keep the struct snd_soc_component_driver const. This fixes build errors: sound/soc/samsung/s3c-i2s-v2.c: In function ‘s3c_i2sv2_register_component’: sound/soc/samsung/s3c-i2s-v2.c:730:9: error: ‘struct snd_soc_dai_driver’ has no member named ‘suspend’ dai_drv->suspend = s3c2412_i2s_suspend; Reported-by: Arnd Bergmann Fixes: 450312b640f9 ("ASoC: soc-core: remove DAI suspend/resume") Signed-off-by: Krzysztof Kozlowski Link: https://lore.kernel.org/r/20200413124548.28197-1-krzk@kernel.org Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/samsung/s3c-i2s-v2.c | 57 --------------------------------- sound/soc/samsung/s3c2412-i2s.c | 56 ++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 57 deletions(-) diff --git a/sound/soc/samsung/s3c-i2s-v2.c b/sound/soc/samsung/s3c-i2s-v2.c index 593be1b668d64..b3e12d6a78a19 100644 --- a/sound/soc/samsung/s3c-i2s-v2.c +++ b/sound/soc/samsung/s3c-i2s-v2.c @@ -656,60 +656,6 @@ void s3c_i2sv2_cleanup(struct snd_soc_dai *dai, } EXPORT_SYMBOL_GPL(s3c_i2sv2_cleanup); -#ifdef CONFIG_PM -static int s3c2412_i2s_suspend(struct snd_soc_dai *dai) -{ - struct s3c_i2sv2_info *i2s = to_info(dai); - u32 iismod; - - if (dai->active) { - i2s->suspend_iismod = readl(i2s->regs + S3C2412_IISMOD); - i2s->suspend_iiscon = readl(i2s->regs + S3C2412_IISCON); - i2s->suspend_iispsr = readl(i2s->regs + S3C2412_IISPSR); - - /* some basic suspend checks */ - - iismod = readl(i2s->regs + S3C2412_IISMOD); - - if (iismod & S3C2412_IISCON_RXDMA_ACTIVE) - pr_warn("%s: RXDMA active?\n", __func__); - - if (iismod & S3C2412_IISCON_TXDMA_ACTIVE) - pr_warn("%s: TXDMA active?\n", __func__); - - if (iismod & S3C2412_IISCON_IIS_ACTIVE) - pr_warn("%s: IIS active\n", __func__); - } - - return 0; -} - -static int s3c2412_i2s_resume(struct snd_soc_dai *dai) -{ - struct s3c_i2sv2_info *i2s = to_info(dai); - - pr_info("dai_active %d, IISMOD %08x, IISCON %08x\n", - dai->active, i2s->suspend_iismod, i2s->suspend_iiscon); - - if (dai->active) { - writel(i2s->suspend_iiscon, i2s->regs + S3C2412_IISCON); - writel(i2s->suspend_iismod, i2s->regs + S3C2412_IISMOD); - writel(i2s->suspend_iispsr, i2s->regs + S3C2412_IISPSR); - - writel(S3C2412_IISFIC_RXFLUSH | S3C2412_IISFIC_TXFLUSH, - i2s->regs + S3C2412_IISFIC); - - ndelay(250); - writel(0x0, i2s->regs + S3C2412_IISFIC); - } - - return 0; -} -#else -#define s3c2412_i2s_suspend NULL -#define s3c2412_i2s_resume NULL -#endif - int s3c_i2sv2_register_component(struct device *dev, int id, const struct snd_soc_component_driver *cmp_drv, struct snd_soc_dai_driver *dai_drv) @@ -727,9 +673,6 @@ int s3c_i2sv2_register_component(struct device *dev, int id, if (!ops->delay) ops->delay = s3c2412_i2s_delay; - dai_drv->suspend = s3c2412_i2s_suspend; - dai_drv->resume = s3c2412_i2s_resume; - return devm_snd_soc_register_component(dev, cmp_drv, dai_drv, 1); } EXPORT_SYMBOL_GPL(s3c_i2sv2_register_component); diff --git a/sound/soc/samsung/s3c2412-i2s.c b/sound/soc/samsung/s3c2412-i2s.c index 787a3f6e9f242..b35d828c1cfe9 100644 --- a/sound/soc/samsung/s3c2412-i2s.c +++ b/sound/soc/samsung/s3c2412-i2s.c @@ -117,6 +117,60 @@ static int s3c2412_i2s_hw_params(struct snd_pcm_substream *substream, return 0; } +#ifdef CONFIG_PM +static int s3c2412_i2s_suspend(struct snd_soc_component *component) +{ + struct s3c_i2sv2_info *i2s = snd_soc_component_get_drvdata(component); + u32 iismod; + + if (component->active) { + i2s->suspend_iismod = readl(i2s->regs + S3C2412_IISMOD); + i2s->suspend_iiscon = readl(i2s->regs + S3C2412_IISCON); + i2s->suspend_iispsr = readl(i2s->regs + S3C2412_IISPSR); + + /* some basic suspend checks */ + + iismod = readl(i2s->regs + S3C2412_IISMOD); + + if (iismod & S3C2412_IISCON_RXDMA_ACTIVE) + pr_warn("%s: RXDMA active?\n", __func__); + + if (iismod & S3C2412_IISCON_TXDMA_ACTIVE) + pr_warn("%s: TXDMA active?\n", __func__); + + if (iismod & S3C2412_IISCON_IIS_ACTIVE) + pr_warn("%s: IIS active\n", __func__); + } + + return 0; +} + +static int s3c2412_i2s_resume(struct snd_soc_component *component) +{ + struct s3c_i2sv2_info *i2s = snd_soc_component_get_drvdata(component); + + pr_info("component_active %d, IISMOD %08x, IISCON %08x\n", + component->active, i2s->suspend_iismod, i2s->suspend_iiscon); + + if (component->active) { + writel(i2s->suspend_iiscon, i2s->regs + S3C2412_IISCON); + writel(i2s->suspend_iismod, i2s->regs + S3C2412_IISMOD); + writel(i2s->suspend_iispsr, i2s->regs + S3C2412_IISPSR); + + writel(S3C2412_IISFIC_RXFLUSH | S3C2412_IISFIC_TXFLUSH, + i2s->regs + S3C2412_IISFIC); + + ndelay(250); + writel(0x0, i2s->regs + S3C2412_IISFIC); + } + + return 0; +} +#else +#define s3c2412_i2s_suspend NULL +#define s3c2412_i2s_resume NULL +#endif + #define S3C2412_I2S_RATES \ (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 | SNDRV_PCM_RATE_16000 | \ SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \ @@ -146,6 +200,8 @@ static struct snd_soc_dai_driver s3c2412_i2s_dai = { static const struct snd_soc_component_driver s3c2412_i2s_component = { .name = "s3c2412-i2s", + .suspend = s3c2412_i2s_suspend, + .resume = s3c2412_i2s_resume, }; static int s3c2412_iis_dev_probe(struct platform_device *pdev) -- 2.20.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.3 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,UNWANTED_LANGUAGE_BODY,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9036DC4724C for ; Thu, 30 Apr 2020 14:12:32 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 6C19B2076D for ; Thu, 30 Apr 2020 14:12:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588255952; bh=j7EesqpJdFMIiohM4Zu86JeArWKo8byoEHxcvBmIFJs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=jpHcD6H47rs7tH8uUJmzU83l4wKu/6m7/ovdFrk5EhPO5QsmDNyLL86MNquEl9c9Y Ms8UfcZLnLwftHCNyQIE2tTSoTZeRp85uUFAoYSQ6sEer1kvMVhERHyoGRi0v9Gl0R darBmjikW+UKQvfLbt8d46MPaLWzF8QgUcDDImKw= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727891AbgD3NvG (ORCPT ); Thu, 30 Apr 2020 09:51:06 -0400 Received: from mail.kernel.org ([198.145.29.99]:58958 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727878AbgD3NvF (ORCPT ); Thu, 30 Apr 2020 09:51:05 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id BE44120873; Thu, 30 Apr 2020 13:51:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588254664; bh=j7EesqpJdFMIiohM4Zu86JeArWKo8byoEHxcvBmIFJs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HRBWvn2SU5htasFxi1UM7LtEFOkn8Wa2dca9nph9ekjzsLKnACh/JSgog1kP2qsAO DPN0tXGA8wNV5OZ6bs5ZJTs+ky59j5YrizkZdENcviIjidXbyvhb3cuAZXoD8tlC74 6yFsxExFP0oX0+mxx+EZqXRn1aOKagxTsDd5MTsY= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Krzysztof Kozlowski , Arnd Bergmann , Mark Brown , Sasha Levin , linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, alsa-devel@alsa-project.org Subject: [PATCH AUTOSEL 5.6 17/79] ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume Date: Thu, 30 Apr 2020 09:49:41 -0400 Message-Id: <20200430135043.19851-17-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200430135043.19851-1-sashal@kernel.org> References: <20200430135043.19851-1-sashal@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org From: Krzysztof Kozlowski [ Upstream commit ec21bdc6dd16d74b3674ef1fd12ae8e4e7418603 ] Commit 450312b640f9 ("ASoC: soc-core: remove DAI suspend/resume") removed the DAI side suspend/resume hooks and switched entirely to component suspend/resume. However the Samsung SoC s3c-i2s-v2 driver was not updated. Move the suspend/resume hooks from s3c-i2s-v2.c to s3c2412-i2s.c while changing dai to component which allows to keep the struct snd_soc_component_driver const. This fixes build errors: sound/soc/samsung/s3c-i2s-v2.c: In function ‘s3c_i2sv2_register_component’: sound/soc/samsung/s3c-i2s-v2.c:730:9: error: ‘struct snd_soc_dai_driver’ has no member named ‘suspend’ dai_drv->suspend = s3c2412_i2s_suspend; Reported-by: Arnd Bergmann Fixes: 450312b640f9 ("ASoC: soc-core: remove DAI suspend/resume") Signed-off-by: Krzysztof Kozlowski Link: https://lore.kernel.org/r/20200413124548.28197-1-krzk@kernel.org Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/samsung/s3c-i2s-v2.c | 57 --------------------------------- sound/soc/samsung/s3c2412-i2s.c | 56 ++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 57 deletions(-) diff --git a/sound/soc/samsung/s3c-i2s-v2.c b/sound/soc/samsung/s3c-i2s-v2.c index 593be1b668d64..b3e12d6a78a19 100644 --- a/sound/soc/samsung/s3c-i2s-v2.c +++ b/sound/soc/samsung/s3c-i2s-v2.c @@ -656,60 +656,6 @@ void s3c_i2sv2_cleanup(struct snd_soc_dai *dai, } EXPORT_SYMBOL_GPL(s3c_i2sv2_cleanup); -#ifdef CONFIG_PM -static int s3c2412_i2s_suspend(struct snd_soc_dai *dai) -{ - struct s3c_i2sv2_info *i2s = to_info(dai); - u32 iismod; - - if (dai->active) { - i2s->suspend_iismod = readl(i2s->regs + S3C2412_IISMOD); - i2s->suspend_iiscon = readl(i2s->regs + S3C2412_IISCON); - i2s->suspend_iispsr = readl(i2s->regs + S3C2412_IISPSR); - - /* some basic suspend checks */ - - iismod = readl(i2s->regs + S3C2412_IISMOD); - - if (iismod & S3C2412_IISCON_RXDMA_ACTIVE) - pr_warn("%s: RXDMA active?\n", __func__); - - if (iismod & S3C2412_IISCON_TXDMA_ACTIVE) - pr_warn("%s: TXDMA active?\n", __func__); - - if (iismod & S3C2412_IISCON_IIS_ACTIVE) - pr_warn("%s: IIS active\n", __func__); - } - - return 0; -} - -static int s3c2412_i2s_resume(struct snd_soc_dai *dai) -{ - struct s3c_i2sv2_info *i2s = to_info(dai); - - pr_info("dai_active %d, IISMOD %08x, IISCON %08x\n", - dai->active, i2s->suspend_iismod, i2s->suspend_iiscon); - - if (dai->active) { - writel(i2s->suspend_iiscon, i2s->regs + S3C2412_IISCON); - writel(i2s->suspend_iismod, i2s->regs + S3C2412_IISMOD); - writel(i2s->suspend_iispsr, i2s->regs + S3C2412_IISPSR); - - writel(S3C2412_IISFIC_RXFLUSH | S3C2412_IISFIC_TXFLUSH, - i2s->regs + S3C2412_IISFIC); - - ndelay(250); - writel(0x0, i2s->regs + S3C2412_IISFIC); - } - - return 0; -} -#else -#define s3c2412_i2s_suspend NULL -#define s3c2412_i2s_resume NULL -#endif - int s3c_i2sv2_register_component(struct device *dev, int id, const struct snd_soc_component_driver *cmp_drv, struct snd_soc_dai_driver *dai_drv) @@ -727,9 +673,6 @@ int s3c_i2sv2_register_component(struct device *dev, int id, if (!ops->delay) ops->delay = s3c2412_i2s_delay; - dai_drv->suspend = s3c2412_i2s_suspend; - dai_drv->resume = s3c2412_i2s_resume; - return devm_snd_soc_register_component(dev, cmp_drv, dai_drv, 1); } EXPORT_SYMBOL_GPL(s3c_i2sv2_register_component); diff --git a/sound/soc/samsung/s3c2412-i2s.c b/sound/soc/samsung/s3c2412-i2s.c index 787a3f6e9f242..b35d828c1cfe9 100644 --- a/sound/soc/samsung/s3c2412-i2s.c +++ b/sound/soc/samsung/s3c2412-i2s.c @@ -117,6 +117,60 @@ static int s3c2412_i2s_hw_params(struct snd_pcm_substream *substream, return 0; } +#ifdef CONFIG_PM +static int s3c2412_i2s_suspend(struct snd_soc_component *component) +{ + struct s3c_i2sv2_info *i2s = snd_soc_component_get_drvdata(component); + u32 iismod; + + if (component->active) { + i2s->suspend_iismod = readl(i2s->regs + S3C2412_IISMOD); + i2s->suspend_iiscon = readl(i2s->regs + S3C2412_IISCON); + i2s->suspend_iispsr = readl(i2s->regs + S3C2412_IISPSR); + + /* some basic suspend checks */ + + iismod = readl(i2s->regs + S3C2412_IISMOD); + + if (iismod & S3C2412_IISCON_RXDMA_ACTIVE) + pr_warn("%s: RXDMA active?\n", __func__); + + if (iismod & S3C2412_IISCON_TXDMA_ACTIVE) + pr_warn("%s: TXDMA active?\n", __func__); + + if (iismod & S3C2412_IISCON_IIS_ACTIVE) + pr_warn("%s: IIS active\n", __func__); + } + + return 0; +} + +static int s3c2412_i2s_resume(struct snd_soc_component *component) +{ + struct s3c_i2sv2_info *i2s = snd_soc_component_get_drvdata(component); + + pr_info("component_active %d, IISMOD %08x, IISCON %08x\n", + component->active, i2s->suspend_iismod, i2s->suspend_iiscon); + + if (component->active) { + writel(i2s->suspend_iiscon, i2s->regs + S3C2412_IISCON); + writel(i2s->suspend_iismod, i2s->regs + S3C2412_IISMOD); + writel(i2s->suspend_iispsr, i2s->regs + S3C2412_IISPSR); + + writel(S3C2412_IISFIC_RXFLUSH | S3C2412_IISFIC_TXFLUSH, + i2s->regs + S3C2412_IISFIC); + + ndelay(250); + writel(0x0, i2s->regs + S3C2412_IISFIC); + } + + return 0; +} +#else +#define s3c2412_i2s_suspend NULL +#define s3c2412_i2s_resume NULL +#endif + #define S3C2412_I2S_RATES \ (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 | SNDRV_PCM_RATE_16000 | \ SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \ @@ -146,6 +200,8 @@ static struct snd_soc_dai_driver s3c2412_i2s_dai = { static const struct snd_soc_component_driver s3c2412_i2s_component = { .name = "s3c2412-i2s", + .suspend = s3c2412_i2s_suspend, + .resume = s3c2412_i2s_resume, }; static int s3c2412_iis_dev_probe(struct platform_device *pdev) -- 2.20.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,UNWANTED_LANGUAGE_BODY,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 913B8C28CBC for ; Thu, 30 Apr 2020 13:52:11 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2AEDB20873 for ; Thu, 30 Apr 2020 13:52:11 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="oUCg/oWP"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="HRBWvn2S" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2AEDB20873 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=4KBpj7u+kucS6Z4Ka8+D5DXZmKain2qdayM87cPLB+Q=; b=oUCg/oWP3C1DBC Epl87Bw9hNc20d3RG8HZMH/vkFBzxgY1fR1N//4d0IJk5xjmoaB9CnhW5ggTjKdC42p9hv7YtgFD0 7jBqh0KDrfTnzzX+Q2Cour/eRqcfIAYiXnAmSPMGCX73X+PC9sLpXwmtaLgNgQmqvbP2pJczS1bOh Lgm/RfhK8FpjSQWFo/a4ZxdfB37kSzu3ihmat6YpMkhKQsSkZdIlIEiCkLxHgydarJXJFpoGtDd22 QgOZ7dc7Y9Y5SYDwlbeKICiCVYWzWM9cNMvGGS0EWutf4EQTgxw9Po27xD8a+0W8uqucOlPub2RcP PzJSuhV7Y+5wKlhFnNnA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jU9bi-0000v2-DP; Thu, 30 Apr 2020 13:52:06 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jU9aj-00009J-Fk for linux-arm-kernel@lists.infradead.org; Thu, 30 Apr 2020 13:51:07 +0000 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id BE44120873; Thu, 30 Apr 2020 13:51:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588254664; bh=j7EesqpJdFMIiohM4Zu86JeArWKo8byoEHxcvBmIFJs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HRBWvn2SU5htasFxi1UM7LtEFOkn8Wa2dca9nph9ekjzsLKnACh/JSgog1kP2qsAO DPN0tXGA8wNV5OZ6bs5ZJTs+ky59j5YrizkZdENcviIjidXbyvhb3cuAZXoD8tlC74 6yFsxExFP0oX0+mxx+EZqXRn1aOKagxTsDd5MTsY= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: [PATCH AUTOSEL 5.6 17/79] ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume Date: Thu, 30 Apr 2020 09:49:41 -0400 Message-Id: <20200430135043.19851-17-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200430135043.19851-1-sashal@kernel.org> References: <20200430135043.19851-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200430_065105_595716_89B8337D X-CRM114-Status: GOOD ( 14.94 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sasha Levin , alsa-devel@alsa-project.org, linux-samsung-soc@vger.kernel.org, Arnd Bergmann , Krzysztof Kozlowski , Mark Brown , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org RnJvbTogS3J6eXN6dG9mIEtvemxvd3NraSA8a3J6a0BrZXJuZWwub3JnPgoKWyBVcHN0cmVhbSBj b21taXQgZWMyMWJkYzZkZDE2ZDc0YjM2NzRlZjFmZDEyYWU4ZTRlNzQxODYwMyBdCgpDb21taXQg NDUwMzEyYjY0MGY5ICgiQVNvQzogc29jLWNvcmU6IHJlbW92ZSBEQUkgc3VzcGVuZC9yZXN1bWUi KQpyZW1vdmVkIHRoZSBEQUkgc2lkZSBzdXNwZW5kL3Jlc3VtZSBob29rcyBhbmQgc3dpdGNoZWQg ZW50aXJlbHkgdG8KY29tcG9uZW50IHN1c3BlbmQvcmVzdW1lLiAgSG93ZXZlciB0aGUgU2Ftc3Vu ZyBTb0MgczNjLWkycy12MiBkcml2ZXIgd2FzCm5vdCB1cGRhdGVkLgoKTW92ZSB0aGUgc3VzcGVu ZC9yZXN1bWUgaG9va3MgZnJvbSBzM2MtaTJzLXYyLmMgdG8gczNjMjQxMi1pMnMuYyB3aGlsZQpj aGFuZ2luZyBkYWkgdG8gY29tcG9uZW50IHdoaWNoIGFsbG93cyB0byBrZWVwIHRoZSBzdHJ1Y3QK c25kX3NvY19jb21wb25lbnRfZHJpdmVyIGNvbnN0LgoKVGhpcyBmaXhlcyBidWlsZCBlcnJvcnM6 CgogICAgc291bmQvc29jL3NhbXN1bmcvczNjLWkycy12Mi5jOiBJbiBmdW5jdGlvbiDigJhzM2Nf aTJzdjJfcmVnaXN0ZXJfY29tcG9uZW504oCZOgogICAgc291bmQvc29jL3NhbXN1bmcvczNjLWky cy12Mi5jOjczMDo5OiBlcnJvcjog4oCYc3RydWN0IHNuZF9zb2NfZGFpX2RyaXZlcuKAmSBoYXMg bm8gbWVtYmVyIG5hbWVkIOKAmHN1c3BlbmTigJkKICAgICAgZGFpX2Rydi0+c3VzcGVuZCA9IHMz YzI0MTJfaTJzX3N1c3BlbmQ7CgpSZXBvcnRlZC1ieTogQXJuZCBCZXJnbWFubiA8YXJuZEBhcm5k Yi5kZT4KRml4ZXM6IDQ1MDMxMmI2NDBmOSAoIkFTb0M6IHNvYy1jb3JlOiByZW1vdmUgREFJIHN1 c3BlbmQvcmVzdW1lIikKU2lnbmVkLW9mZi1ieTogS3J6eXN6dG9mIEtvemxvd3NraSA8a3J6a0Br ZXJuZWwub3JnPgoKTGluazogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvci8yMDIwMDQxMzEyNDU0 OC4yODE5Ny0xLWtyemtAa2VybmVsLm9yZwpTaWduZWQtb2ZmLWJ5OiBNYXJrIEJyb3duIDxicm9v bmllQGtlcm5lbC5vcmc+ClNpZ25lZC1vZmYtYnk6IFNhc2hhIExldmluIDxzYXNoYWxAa2VybmVs Lm9yZz4KLS0tCiBzb3VuZC9zb2Mvc2Ftc3VuZy9zM2MtaTJzLXYyLmMgIHwgNTcgLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzb3VuZC9zb2Mvc2Ftc3VuZy9zM2MyNDEyLWkycy5j IHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg NTYgaW5zZXJ0aW9ucygrKSwgNTcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc291bmQvc29j L3NhbXN1bmcvczNjLWkycy12Mi5jIGIvc291bmQvc29jL3NhbXN1bmcvczNjLWkycy12Mi5jCmlu ZGV4IDU5M2JlMWI2NjhkNjQuLmIzZTEyZDZhNzhhMTkgMTAwNjQ0Ci0tLSBhL3NvdW5kL3NvYy9z YW1zdW5nL3MzYy1pMnMtdjIuYworKysgYi9zb3VuZC9zb2Mvc2Ftc3VuZy9zM2MtaTJzLXYyLmMK QEAgLTY1Niw2MCArNjU2LDYgQEAgdm9pZCBzM2NfaTJzdjJfY2xlYW51cChzdHJ1Y3Qgc25kX3Nv Y19kYWkgKmRhaSwKIH0KIEVYUE9SVF9TWU1CT0xfR1BMKHMzY19pMnN2Ml9jbGVhbnVwKTsKIAot I2lmZGVmIENPTkZJR19QTQotc3RhdGljIGludCBzM2MyNDEyX2kyc19zdXNwZW5kKHN0cnVjdCBz bmRfc29jX2RhaSAqZGFpKQotewotCXN0cnVjdCBzM2NfaTJzdjJfaW5mbyAqaTJzID0gdG9faW5m byhkYWkpOwotCXUzMiBpaXNtb2Q7Ci0KLQlpZiAoZGFpLT5hY3RpdmUpIHsKLQkJaTJzLT5zdXNw ZW5kX2lpc21vZCA9IHJlYWRsKGkycy0+cmVncyArIFMzQzI0MTJfSUlTTU9EKTsKLQkJaTJzLT5z dXNwZW5kX2lpc2NvbiA9IHJlYWRsKGkycy0+cmVncyArIFMzQzI0MTJfSUlTQ09OKTsKLQkJaTJz LT5zdXNwZW5kX2lpc3BzciA9IHJlYWRsKGkycy0+cmVncyArIFMzQzI0MTJfSUlTUFNSKTsKLQot CQkvKiBzb21lIGJhc2ljIHN1c3BlbmQgY2hlY2tzICovCi0KLQkJaWlzbW9kID0gcmVhZGwoaTJz LT5yZWdzICsgUzNDMjQxMl9JSVNNT0QpOwotCi0JCWlmIChpaXNtb2QgJiBTM0MyNDEyX0lJU0NP Tl9SWERNQV9BQ1RJVkUpCi0JCQlwcl93YXJuKCIlczogUlhETUEgYWN0aXZlP1xuIiwgX19mdW5j X18pOwotCi0JCWlmIChpaXNtb2QgJiBTM0MyNDEyX0lJU0NPTl9UWERNQV9BQ1RJVkUpCi0JCQlw cl93YXJuKCIlczogVFhETUEgYWN0aXZlP1xuIiwgX19mdW5jX18pOwotCi0JCWlmIChpaXNtb2Qg JiBTM0MyNDEyX0lJU0NPTl9JSVNfQUNUSVZFKQotCQkJcHJfd2FybigiJXM6IElJUyBhY3RpdmVc biIsIF9fZnVuY19fKTsKLQl9Ci0KLQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIGludCBzM2MyNDEy X2kyc19yZXN1bWUoc3RydWN0IHNuZF9zb2NfZGFpICpkYWkpCi17Ci0Jc3RydWN0IHMzY19pMnN2 Ml9pbmZvICppMnMgPSB0b19pbmZvKGRhaSk7Ci0KLQlwcl9pbmZvKCJkYWlfYWN0aXZlICVkLCBJ SVNNT0QgJTA4eCwgSUlTQ09OICUwOHhcbiIsCi0JCWRhaS0+YWN0aXZlLCBpMnMtPnN1c3BlbmRf aWlzbW9kLCBpMnMtPnN1c3BlbmRfaWlzY29uKTsKLQotCWlmIChkYWktPmFjdGl2ZSkgewotCQl3 cml0ZWwoaTJzLT5zdXNwZW5kX2lpc2NvbiwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNDT04pOwot CQl3cml0ZWwoaTJzLT5zdXNwZW5kX2lpc21vZCwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNNT0Qp OwotCQl3cml0ZWwoaTJzLT5zdXNwZW5kX2lpc3BzciwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNQ U1IpOwotCi0JCXdyaXRlbChTM0MyNDEyX0lJU0ZJQ19SWEZMVVNIIHwgUzNDMjQxMl9JSVNGSUNf VFhGTFVTSCwKLQkJICAgICAgIGkycy0+cmVncyArIFMzQzI0MTJfSUlTRklDKTsKLQotCQluZGVs YXkoMjUwKTsKLQkJd3JpdGVsKDB4MCwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNGSUMpOwotCX0K LQotCXJldHVybiAwOwotfQotI2Vsc2UKLSNkZWZpbmUgczNjMjQxMl9pMnNfc3VzcGVuZCBOVUxM Ci0jZGVmaW5lIHMzYzI0MTJfaTJzX3Jlc3VtZSAgTlVMTAotI2VuZGlmCi0KIGludCBzM2NfaTJz djJfcmVnaXN0ZXJfY29tcG9uZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgaW50IGlkLAogCQkJICAg Y29uc3Qgc3RydWN0IHNuZF9zb2NfY29tcG9uZW50X2RyaXZlciAqY21wX2RydiwKIAkJCSAgIHN0 cnVjdCBzbmRfc29jX2RhaV9kcml2ZXIgKmRhaV9kcnYpCkBAIC03MjcsOSArNjczLDYgQEAgaW50 IHMzY19pMnN2Ml9yZWdpc3Rlcl9jb21wb25lbnQoc3RydWN0IGRldmljZSAqZGV2LCBpbnQgaWQs CiAJaWYgKCFvcHMtPmRlbGF5KQogCQlvcHMtPmRlbGF5ID0gczNjMjQxMl9pMnNfZGVsYXk7CiAK LQlkYWlfZHJ2LT5zdXNwZW5kID0gczNjMjQxMl9pMnNfc3VzcGVuZDsKLQlkYWlfZHJ2LT5yZXN1 bWUgPSBzM2MyNDEyX2kyc19yZXN1bWU7Ci0KIAlyZXR1cm4gZGV2bV9zbmRfc29jX3JlZ2lzdGVy X2NvbXBvbmVudChkZXYsIGNtcF9kcnYsIGRhaV9kcnYsIDEpOwogfQogRVhQT1JUX1NZTUJPTF9H UEwoczNjX2kyc3YyX3JlZ2lzdGVyX2NvbXBvbmVudCk7CmRpZmYgLS1naXQgYS9zb3VuZC9zb2Mv c2Ftc3VuZy9zM2MyNDEyLWkycy5jIGIvc291bmQvc29jL3NhbXN1bmcvczNjMjQxMi1pMnMuYwpp bmRleCA3ODdhM2Y2ZTlmMjQyLi5iMzVkODI4YzFjZmU5IDEwMDY0NAotLS0gYS9zb3VuZC9zb2Mv c2Ftc3VuZy9zM2MyNDEyLWkycy5jCisrKyBiL3NvdW5kL3NvYy9zYW1zdW5nL3MzYzI0MTItaTJz LmMKQEAgLTExNyw2ICsxMTcsNjAgQEAgc3RhdGljIGludCBzM2MyNDEyX2kyc19od19wYXJhbXMo c3RydWN0IHNuZF9wY21fc3Vic3RyZWFtICpzdWJzdHJlYW0sCiAJcmV0dXJuIDA7CiB9CiAKKyNp ZmRlZiBDT05GSUdfUE0KK3N0YXRpYyBpbnQgczNjMjQxMl9pMnNfc3VzcGVuZChzdHJ1Y3Qgc25k X3NvY19jb21wb25lbnQgKmNvbXBvbmVudCkKK3sKKwlzdHJ1Y3QgczNjX2kyc3YyX2luZm8gKmky cyA9IHNuZF9zb2NfY29tcG9uZW50X2dldF9kcnZkYXRhKGNvbXBvbmVudCk7CisJdTMyIGlpc21v ZDsKKworCWlmIChjb21wb25lbnQtPmFjdGl2ZSkgeworCQlpMnMtPnN1c3BlbmRfaWlzbW9kID0g cmVhZGwoaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNNT0QpOworCQlpMnMtPnN1c3BlbmRfaWlzY29u ID0gcmVhZGwoaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNDT04pOworCQlpMnMtPnN1c3BlbmRfaWlz cHNyID0gcmVhZGwoaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNQU1IpOworCisJCS8qIHNvbWUgYmFz aWMgc3VzcGVuZCBjaGVja3MgKi8KKworCQlpaXNtb2QgPSByZWFkbChpMnMtPnJlZ3MgKyBTM0My NDEyX0lJU01PRCk7CisKKwkJaWYgKGlpc21vZCAmIFMzQzI0MTJfSUlTQ09OX1JYRE1BX0FDVElW RSkKKwkJCXByX3dhcm4oIiVzOiBSWERNQSBhY3RpdmU/XG4iLCBfX2Z1bmNfXyk7CisKKwkJaWYg KGlpc21vZCAmIFMzQzI0MTJfSUlTQ09OX1RYRE1BX0FDVElWRSkKKwkJCXByX3dhcm4oIiVzOiBU WERNQSBhY3RpdmU/XG4iLCBfX2Z1bmNfXyk7CisKKwkJaWYgKGlpc21vZCAmIFMzQzI0MTJfSUlT Q09OX0lJU19BQ1RJVkUpCisJCQlwcl93YXJuKCIlczogSUlTIGFjdGl2ZVxuIiwgX19mdW5jX18p OworCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IHMzYzI0MTJfaTJzX3Jlc3VtZShz dHJ1Y3Qgc25kX3NvY19jb21wb25lbnQgKmNvbXBvbmVudCkKK3sKKwlzdHJ1Y3QgczNjX2kyc3Yy X2luZm8gKmkycyA9IHNuZF9zb2NfY29tcG9uZW50X2dldF9kcnZkYXRhKGNvbXBvbmVudCk7CisK Kwlwcl9pbmZvKCJjb21wb25lbnRfYWN0aXZlICVkLCBJSVNNT0QgJTA4eCwgSUlTQ09OICUwOHhc biIsCisJCWNvbXBvbmVudC0+YWN0aXZlLCBpMnMtPnN1c3BlbmRfaWlzbW9kLCBpMnMtPnN1c3Bl bmRfaWlzY29uKTsKKworCWlmIChjb21wb25lbnQtPmFjdGl2ZSkgeworCQl3cml0ZWwoaTJzLT5z dXNwZW5kX2lpc2NvbiwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNDT04pOworCQl3cml0ZWwoaTJz LT5zdXNwZW5kX2lpc21vZCwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNNT0QpOworCQl3cml0ZWwo aTJzLT5zdXNwZW5kX2lpc3BzciwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNQU1IpOworCisJCXdy aXRlbChTM0MyNDEyX0lJU0ZJQ19SWEZMVVNIIHwgUzNDMjQxMl9JSVNGSUNfVFhGTFVTSCwKKwkJ ICAgICAgIGkycy0+cmVncyArIFMzQzI0MTJfSUlTRklDKTsKKworCQluZGVsYXkoMjUwKTsKKwkJ d3JpdGVsKDB4MCwgaTJzLT5yZWdzICsgUzNDMjQxMl9JSVNGSUMpOworCX0KKworCXJldHVybiAw OworfQorI2Vsc2UKKyNkZWZpbmUgczNjMjQxMl9pMnNfc3VzcGVuZCBOVUxMCisjZGVmaW5lIHMz YzI0MTJfaTJzX3Jlc3VtZSAgTlVMTAorI2VuZGlmCisKICNkZWZpbmUgUzNDMjQxMl9JMlNfUkFU RVMgXAogCShTTkRSVl9QQ01fUkFURV84MDAwIHwgU05EUlZfUENNX1JBVEVfMTEwMjUgfCBTTkRS Vl9QQ01fUkFURV8xNjAwMCB8IFwKIAlTTkRSVl9QQ01fUkFURV8yMjA1MCB8IFNORFJWX1BDTV9S QVRFXzMyMDAwIHwgU05EUlZfUENNX1JBVEVfNDQxMDAgfCBcCkBAIC0xNDYsNiArMjAwLDggQEAg c3RhdGljIHN0cnVjdCBzbmRfc29jX2RhaV9kcml2ZXIgczNjMjQxMl9pMnNfZGFpID0gewogCiBz dGF0aWMgY29uc3Qgc3RydWN0IHNuZF9zb2NfY29tcG9uZW50X2RyaXZlciBzM2MyNDEyX2kyc19j b21wb25lbnQgPSB7CiAJLm5hbWUJCT0gInMzYzI0MTItaTJzIiwKKwkuc3VzcGVuZAk9IHMzYzI0 MTJfaTJzX3N1c3BlbmQsCisJLnJlc3VtZQkJPSBzM2MyNDEyX2kyc19yZXN1bWUsCiB9OwogCiBz dGF0aWMgaW50IHMzYzI0MTJfaWlzX2Rldl9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2KQotLSAKMi4yMC4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBs aXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlz dGluZm8vbGludXgtYXJtLWtlcm5lbAo=