From patchwork Mon Jul 6 08:49:17 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zidan Wang X-Patchwork-Id: 6720811 Return-Path: X-Original-To: patchwork-alsa-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 49C229F319 for ; Mon, 6 Jul 2015 08:48:33 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 5D331206E7 for ; Mon, 6 Jul 2015 08:48:32 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id 2068E203B6 for ; Mon, 6 Jul 2015 08:48:31 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 07C6826063D; Mon, 6 Jul 2015 10:48:30 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 Received: from alsa0.perex.cz (localhost [IPv6:::1]) by alsa0.perex.cz (Postfix) with ESMTP id 10A952605C3; Mon, 6 Jul 2015 10:47:59 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 53F232605D9; Mon, 6 Jul 2015 10:47:57 +0200 (CEST) Received: from na01-by2-obe.outbound.protection.outlook.com (mail-by2on0143.outbound.protection.outlook.com [207.46.100.143]) by alsa0.perex.cz (Postfix) with ESMTP id EC454260511 for ; Mon, 6 Jul 2015 10:47:49 +0200 (CEST) Received: from CH1PR03CA003.namprd03.prod.outlook.com (10.255.156.148) by BN3PR0301MB1249.namprd03.prod.outlook.com (10.161.207.25) with Microsoft SMTP Server (TLS) id 15.1.207.19; Mon, 6 Jul 2015 08:47:47 +0000 Received: from BY2FFO11FD053.protection.gbl (10.255.156.132) by CH1PR03CA003.outlook.office365.com (10.255.156.148) with Microsoft SMTP Server (TLS) id 15.1.201.16 via Frontend Transport; Mon, 6 Jul 2015 08:47:47 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of freescale.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BY2FFO11FD053.mail.protection.outlook.com (10.1.15.190) with Microsoft SMTP Server (TLS) id 15.1.190.9 via Frontend Transport; Mon, 6 Jul 2015 08:47:47 +0000 Received: from b50113.ap.freescale.net (b50113.ap.freescale.net [10.192.241.89]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id t668laMu022380; Mon, 6 Jul 2015 01:47:44 -0700 From: Zidan Wang To: Date: Mon, 6 Jul 2015 16:49:17 +0800 Message-ID: <59abec18b5cf1d8e05ba3ae4aad89719bbeca052.1436172253.git.zidan.wang@freescale.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: References: X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD053; 1:tqrkw0zVg1bYEOuAKG2YYnq/57Jkty8nHbONKdovTdGZxdM9fQp+5+1xROOar4xVPU+YYDsEK5/T2HqC8vrEAAAWjrxybtHGgkBn6rjf2pKcEreTY7TbAdsq/9KECQeWy1moC//eDbi47tZGtlR5+efdWJDo9UtyA2a1wYqzdTg75XcJjL2A6WDH9l3D/3FKqIjOdh/DcbTmUoSVNfQEnHl6/2buguvzPxHpjWL2/Ar/8JsRteIIQbSNmuYGhXR9xTbXtUgUjdbdPZhCqCPxTEr2NX1seIdLd0x++UwKkCTSCAB6UCm5oKrZPPvsxZGMptcmkKUcOio+mbFCYAUuFojNjVXJWKjFziTemAAWdtICP0x4JD/DDLjoO1WYRLpF X-Forefront-Antispam-Report: CIP:192.88.158.2; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(1060300003)(2980300002)(339900001)(199003)(189002)(6806004)(86362001)(19580395003)(19580405001)(85426001)(50986999)(50226001)(118296001)(110136002)(107886002)(5001960100002)(76176999)(87936001)(46102003)(62966003)(50466002)(105606002)(36756003)(106466001)(92566002)(77156002)(47776003)(229853001)(2950100001)(4290100001)(77096005)(33646002)(2351001)(110436001)(104016003)(48376002)(4001430100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0301MB1249; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:sfv; A:1; MX:1; LANG:en; MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1249; 2:5JJEULYAzaUvEC5RO+Qp5jXC4iZKga5hTTMoFTstLR7WtNVPfzGbJS2eSOisrd9d; 3:K5pQQzO4vnW4L74d5DM8iKt9EOkAnTfqvV08aHZdeS1G14zpnDTvAZfsLEVkPvpjeOKbvlMjDeyM+t5OLvxuC2sIWs0D30y2A0zZc+Ilatw1J0mxaHYYksPvwxB+ao+LSXraumWS9mLYEcyEUDGdka3V9P9O84lbw0flYhs6CDWvEvUgNTLi1YBK1WvaT1BMU4JKmrERTxEg7nEwPqAozT8ovWlBSPuxYKY3+GRsfto=; 25:XwqEwz7nTWWLqGQrIb5yKu2FGQjbWVXMJ7JxkV7DDwYH/tcH5Ky2zeDyZW1xaqUa/rjFuazK0hllywA2NDf8W7E+4xL4mXn6rRNZHWm/iz2xo697dWZbmhHFhDQs+T2Ft8LPCWOiehp0xKL8xiX4UiC/U8p4FcBFPT9kBI4P852NK4hMK8aW4BkWRjwkcG3GveFT+NzUHCESnTgunZ5iFFwHoRXYllRStBdshQ/yNobscGWT5wjnZ4I0v/+ziHx1WRkcfeGC/yYs/Wa0hVDj5w==; 20:RYSpdyBAzzWwgUeKhNvnC+h94dTblmh7fCnOXu3aD6B88QyJ2Vmog0SLdoyQwgqISip4rkm8VEICt04kA8hIpVZr8Uv1CAgevofU+Mqxpo+GGLkrQtDXD5Vqjv45YOfYnhcM3bLJyqvVAxB3WeHPEfWeeKXzO1GCaU+/JvHdT+OZfo2o+I7v0NOogv8SgC+MQ4/FSV3ZZb/2TvXZDclpQZUjPPowEpCOXn0cNyiZ8yXuNJ4BmoccAnR9OVakZyo7VGQ8GaUGFOKpGaCrKF2M7r5Nld1qHyZ8urrfJ0YvQfuYtM6lSr9yipX/nVyKarj+SPSDSmo3vYRCFy4ZgFOCvfEMXmDXmoLISJstcpECp34= X-Microsoft-Antispam: UriScan:;BCL:1;PCL:0;RULEID:;SRVR:BN3PR0301MB1249; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:1; PCL:0; RULEID:(601004)(1201001)(5005006)(3002001); SRVR:BN3PR0301MB1249; BCL:1; PCL:0; RULEID:; SRVR:BN3PR0301MB1249; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1249; 4:yhzIhpcFwbcBpNIn7wVZpuT+dQ76nj5J4oGEm3NQtbxUXrS99h3HsAzADG3Yvgu0UpUNTqacsZqm4Wc3R5/PTS+i4UdQV1M5EjpwSq+FV6iaQ2X3ISfa94VM6qvcaAP6qQjf5l2rg3tWlCQnItUdsY+ZMllgx1UyiBRdPvgrU0mcYgkpQlR5FixsKaJPI7X65WPSaHeTXAgtYlDZB3EHZ8BueHXQvdIng/oOGh0RGGh6KSlDhXouM0O/R+KCfxi+rQwpssDTG0CP8ALwWpVzIQkGutbhIIKAljweDxjpSCkePunF7Xqa9P5i5Et1epBN X-Forefront-PRVS: 06290ECA9D X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0301MB1249; 23:qBSQE2F9srxlsPewHncYJ19ne70Gsl2C3CctpEG?= =?us-ascii?Q?473/KfOeHt/oGm9DVLLzD7/ZE1pWwkwwROhJ/UVTjV7cy2kmPg8R5400VKnj?= =?us-ascii?Q?GAeobGWHdcaj1bJdazj3aaAt1aqRUqAuUaM709Ycwqqg7BSRtdoSC2b3iuUX?= =?us-ascii?Q?8vQNO/iQVqMsAEebYW0Pc8ui1aAMHs0oQOeZLLqb2cAQcAIVFvsVeHcDke4V?= =?us-ascii?Q?7xSz4nJvVPuH5WFpMeq8ybv0bQmYV6j8Xn4wFFdi96hlHoI/sad0noO+rOJF?= =?us-ascii?Q?mqGu2P39SMjxNX7+PGiYLOhJdaJxCswEmiqJkzjAuO1PDuTfH+G8pUzAqQaH?= =?us-ascii?Q?sEERh2SW8/exy1xJ+GCcVRbxFT/O5ro+RFJ862hI8ocs+pZkHpc7u41aj0oO?= =?us-ascii?Q?V1MX04eFLciF0lWwT+BjSKMDCZY0r+Gs/B1rhcMGsEivB7wJ4YXrktMS0fjI?= =?us-ascii?Q?wSdi74zKNSnIIOoFWQaiE2UEXi8gx68NIYPZKbnecNNj4u6cYsM8eiVAC9lL?= =?us-ascii?Q?2PTnnrCLX/Ay70Jele1BgYaehRwiIYF0Q66ZhT2P4D91PzwZ+ChnkYppaYuc?= =?us-ascii?Q?87zVIxRx3rt73EmAJKWGntGIwcBwcaPkwDgd5LrK2nSHxa2X+91gJ61Ei4jv?= =?us-ascii?Q?IUTVs7io20d+BZ92BJ0lFO4DYT3don9JMDZgUmX3H53ifzx+3pcjPcxUD+O3?= =?us-ascii?Q?fwI1SQv4qvwpphewNMpH7MHI7LRHMWpuytDVt0ABln4yCbl5GyQziFlTrayU?= =?us-ascii?Q?qiCz/HwcvuL+mJDLuupMHwm6f5gwoWtxiyX7CvY2tVNGsOTvOTZ00H9PxqW7?= =?us-ascii?Q?T+LSCc2+ij1UmialVGxVU8O02iBD2G/IP7CoUAATiR/4ZIKwRMllQ/GZjTOn?= =?us-ascii?Q?e3vEDcCV1T2L7AmzFHrZHgR9BvKHZ/ALw/Bt1By/HrLeRuO9PLwgSAjgEMq8?= =?us-ascii?Q?pRUQShiynefCuYlr2ywZ7fcRbQpC8Q+o3XC+4bNm9M9WrwLbhCI0LJa9o8jO?= =?us-ascii?Q?Ez4jzNeLRu6xr2yM/ailcE3BP?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1249; 5:yOt8+FYIneMXVeBD5D/6FliQnESgFvLIy9Mpq3L9iuQDrScjddvzXmRxCGV3zIqn9qhzGt50iZ0w0Q7XYqhQxZ+Xx0hSNztvhg5A9ESMSBGjs4hdzkYxZQE7oGDO3cf96R2s4EKoB3/Crmu5NrIFAw==; 24:/4NqfO2kacNdP7X8SHA7YsmCqfiAOZA+xoH7exoMknmbqk14DL/q8l24QFCzalc9HEyEpeYv2lKQKPa1lsTBsCrYVcZpx1p4iuvgw/fwk/E=; 20:8LwONaE5/1Ihiinux70ybj5PClM1jfRegXo523b9xpXU/+gz54GYU3BJgbDbKMMt0uAy2/tQqOfTZJP+laoJAg== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jul 2015 08:47:47.1297 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0301MB1249 Cc: alsa-devel@alsa-project.org, Zidan Wang , tiwai@suse.de, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, nicoleotsuka@gmail.com, broonie@kernel.org, linuxppc-dev@lists.ozlabs.org Subject: [alsa-devel] [PATCH 2/2] ASoC: fsl_ssi: sound is wrong after suspend/resume X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 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-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP The register SFCSR is volatile, but some bits in it need to be recovered after suspend/resume. Signed-off-by: Zidan Wang --- sound/soc/fsl/fsl_ssi.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c index 52b894f..e414f18 100644 --- a/sound/soc/fsl/fsl_ssi.c +++ b/sound/soc/fsl/fsl_ssi.c @@ -262,6 +262,9 @@ struct fsl_ssi_private { unsigned int baudclk_streams; unsigned int bitclk_freq; + /*regcache for SFCSR*/ + u32 regcache_sfcsr; + /* DMA params */ struct snd_dmaengine_dai_dma_data dma_params_tx; struct snd_dmaengine_dai_dma_data dma_params_rx; @@ -1553,6 +1556,9 @@ static int fsl_ssi_suspend(struct device *dev) struct fsl_ssi_private *ssi_private = dev_get_drvdata(dev); struct regmap *regs = ssi_private->regs; + regmap_read(regs, CCSR_SSI_SFCSR, + &ssi_private->regcache_sfcsr); + regcache_cache_only(regs, true); regcache_mark_dirty(regs); @@ -1565,6 +1571,12 @@ static int fsl_ssi_resume(struct device *dev) struct regmap *regs = ssi_private->regs; regcache_cache_only(regs, false); + + regmap_update_bits(regs, CCSR_SSI_SFCSR, + CCSR_SSI_SFCSR_RFWM1_MASK | CCSR_SSI_SFCSR_TFWM1_MASK | + CCSR_SSI_SFCSR_RFWM0_MASK | CCSR_SSI_SFCSR_TFWM0_MASK, + ssi_private->regcache_sfcsr); + return regcache_sync(regs); } #endif /* CONFIG_PM_SLEEP */