From patchwork Tue Feb 9 07:04:09 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 8258751 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 A0BC09F38B for ; Tue, 9 Feb 2016 07:04:41 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id A9B2F202C8 for ; Tue, 9 Feb 2016 07:04:40 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id 407DF20254 for ; Tue, 9 Feb 2016 07:04:39 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id C3713261B01; Tue, 9 Feb 2016 08:04:37 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Spam-Status: No, score=-1.8 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, RCVD_IN_DNSWL_NONE, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=no version=3.3.1 Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id AC342261687; Tue, 9 Feb 2016 08:04:28 +0100 (CET) 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 179DA2616F3; Tue, 9 Feb 2016 08:04:28 +0100 (CET) Received: from relmlie1.idc.renesas.com (relmlor2.renesas.com [210.160.252.172]) by alsa0.perex.cz (Postfix) with ESMTP id 1F8832614FD for ; Tue, 9 Feb 2016 08:04:20 +0100 (CET) Received: from unknown (HELO relmlir2.idc.renesas.com) ([10.200.68.152]) by relmlie1.idc.renesas.com with ESMTP; 09 Feb 2016 16:04:18 +0900 Received: from relmlac2.idc.renesas.com (relmlac2.idc.renesas.com [10.200.69.22]) by relmlir2.idc.renesas.com (Postfix) with ESMTP id F2C92448A2; Tue, 9 Feb 2016 16:04:17 +0900 (JST) Received: by relmlac2.idc.renesas.com (Postfix, from userid 0) id 023C72806E; Tue, 9 Feb 2016 16:04:17 +0900 (JST) Received: from relmlac2.idc.renesas.com (localhost [127.0.0.1]) by relmlac2.idc.renesas.com (Postfix) with ESMTP id EF8A82806D; Tue, 9 Feb 2016 16:04:17 +0900 (JST) Received: from relmlii2.idc.renesas.com [10.200.68.66] by relmlac2.idc.renesas.com with ESMTP id SAF12129; Tue, 9 Feb 2016 16:04:17 +0900 X-IronPort-AV: E=Sophos;i="5.22,420,1449500400"; d="scan'";a="205274042" Received: from mail-hk2apc01lp0208.outbound.protection.outlook.com (HELO APC01-HK2-obe.outbound.protection.outlook.com) ([65.55.88.208]) by relmlii2.idc.renesas.com with ESMTP/TLS/AES256-SHA; 09 Feb 2016 16:04:17 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesasgroup.onmicrosoft.com; s=selector1-renesas-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=rHuV7b9MTSGUJ/HaOG1G/TtpbiRSBKiBUKH0888wvVk=; b=oupSPC6/guDm7zQHlV8vX16OJ7d/tVomCt760dIkBuCkdVLWmE+97iIbWHZDQPFhvqflSiMYE8q6Moplp3YhXJA02etVtLmwJAp30EmVarrSw/S60IIP5mlLIdwWJVJ4zMEqCOhE1GOuFfZ0KOwlwo3TS+192/RfzBMOp1BcuO4= Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=none action=none header.from=renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.144) by HKXPR06MB1016.apcprd06.prod.outlook.com (10.161.181.156) with Microsoft SMTP Server (TLS) id 15.1.403.16; Tue, 9 Feb 2016 07:04:09 +0000 Message-ID: <87io1ynzbc.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Mark Brown , Nguyen Viet Dung In-Reply-To: References: <56AB2BCC.1080704@jinso.co.jp> <56B0785D.2000604@jinso.co.jp> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Tue, 9 Feb 2016 07:04:09 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: TY1PR01CA0002.jpnprd01.prod.outlook.com (25.161.131.140) To HKXPR06MB1016.apcprd06.prod.outlook.com (25.161.181.156) X-Microsoft-Exchange-Diagnostics: 1; HKXPR06MB1016; 2:OK4ecdnje32CRqnQZgmJmkz7/8NjNsBrHk27If1zv9DiDQShAREpbWWwco+XUzAwBqq5Cbb9+Y/BigrltVtNZgdvpYRUCZ3tEif58LiXJtLgwCCbpa0DUwEfdYKu8nLRvJkwq3g43ONaolXXa69o+w==; 3:XH+/lD2TyvUxQUZu67caXDXkqKn+SusZOv1o+5cqqIaHBqVISEjXFy8ha8OgLcEt1JZNo4R5FXPt+QmdY8UvY+12x4ZSmLhkiu2MlYmVokFDW+0LbImMX4g55c2/ndQT; 25:PEgAw2D01EjSo7t1b3xM1MulYSf/n0bSeVrHE9TIvavvdPDKunfxte93etsSDy7nbQ0RwBP+9nJ5oSF2bOBYylLgCl14WFYhoZwUTUc4FnVZRzGxAFkQoTlV5jiaESUL7PAGyGapyxqHxr6vGkM2ZGDxuY8b1ylFPjxV7U9RfUmKq25JaFTEXLv2PVhAGYyLQK3d7sgTSoQY/pfbZ2tDWjbyOViLftBhr0S5lYEse0HEFUpOFIUQAISBvIjyrnf+VaISTyrKHmmkBlmqH3oIaKSzA+/lIMu5p13OgI/zn02t+cVSyeTXErhUDe5xp8+h X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HKXPR06MB1016; X-MS-Office365-Filtering-Correlation-Id: dc86ac4a-dceb-4217-f8be-08d3311f38ee X-Microsoft-Exchange-Diagnostics: 1; HKXPR06MB1016; 20:cWaXT1UdUErwwX2p5q8v2/fFkCXQ2HhYBh5JaHsJe1kQqWQHRi9bYY2UNMUCGO+QzwwY+QJaqOQJ2V9gQ3C5yFVkofmroeS+UCq5R1UG+g08WL0naxb/aOag8Ixj0buk0CBstTsZLVsVr/gnV385esWiG7YBfy4tihgNZ/vMfyAPU8HlOqcLuH/0wzEIB+O/Xc+kIlqLrJ9uT5stT1639nqwz5n+U7wFNiMaXAUdM+pZDPZ759STJ+0wSQdePUgHIyjemBQRUvHIiXt6TpQqPeYe6NhZyfPvEo8d+J6N12IJUHQMOyneur4Pmbm7MllGQCqz2HJ55rc0gtFyNaf7Cfrcr7GV9hYUusfqD5rFOhluntgODx3YQltKtUMgTZDiGJX7lMJbupMUAHn186Dl2euIH7GKZQ/q6SDto4yR2KBjA15BTVAaJaUYCuvK9dWRwKk5q+n4jx53T6euxQMrHSFruB80V6IK9NHbGIKYfociaGJoKRRR5XusmHEBjVmp; 4:2avsnm5xpsTxIsufY7cKXnxzeFjDZO0ZdITgZ8q7mDAlNNsxx2er7lmFcJlTf17ep8zePCG+4t72o4EiJ0rKpbRCIVTc6lfIVPd1Y49JVKbo9wQvSV/b2S7/weS1rYS52zgDY9zPwaTLMg73LzTx3y/HpMVMDECbuft7+T4bX8bheGObW50/wkKHGnpXYicKgY5WiORdHRBrpJlfhw0cWg5s9PgRpG2iU03rFYizOWaVddVcB/QWWDpeyyXUTR4enO2o6teWaFtmaPK9lGwqZhvJ2p0KDDGN9AeAhagqI2o+CvasN+MOxVXLRP+aIEsMNRr/dcve4JrgBX9MWy1w7kzHCehHtREWZkULz6uqCSenm47noatXerosT35xLOSa X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001); SRVR:HKXPR06MB1016; BCL:0; PCL:0; RULEID:; SRVR:HKXPR06MB1016; X-Forefront-PRVS: 08476BC6EF X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(50986999)(586003)(19580395003)(76176999)(54356999)(19580405001)(189998001)(122386002)(33646002)(83506001)(86362001)(66066001)(42186005)(87976001)(53416004)(5008740100001)(5001770100001)(5001960100002)(4001350100001)(229853001)(6116002)(47776003)(3846002)(77096005)(40100003)(93886004)(1096002)(92566002)(2906002)(46406003)(2950100001)(4326007)(50466002)(36756003)(23726003)(5004730100002); DIR:OUT; SFP:1102; SCL:1; SRVR:HKXPR06MB1016; H:morimoto-PC.renesas.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HKXPR06MB1016; 23:eDDA42Ew2uCgsESl9KDq74/w6YEBix9i/BscDJz+W?= =?us-ascii?Q?Wvq4RedJCz5u0945dtH/wxK4r2XG62y6NQQj7UndbkIuKL4niRuirlv6a75Q?= =?us-ascii?Q?1guiOl19NIlYKIf2ezpzEjZj37hzDQO+BKTYyZFHNVgFEwmO7zhSNCAatb0J?= =?us-ascii?Q?NFfS2rDEp8jfFW+ikgYQ67sPz2C90kTk3Mbx8E1I+BrlkgMJQpsntN4Ee3+F?= =?us-ascii?Q?weWGWnUTrAu7yQ3enHt1ltDxUZC+C+UrY3AIUu7vnp5GKJXN1jTeNu1Z6gwL?= =?us-ascii?Q?MjUPq4bagEWj6SEA0eGR9BWpCqJT1Mz4VxIdD1nLzmOuGvNvpMwWuqW/A+qG?= =?us-ascii?Q?4TV+bUYDh2fn+pwuvkGcSDJSfnPzzUaqFEA3vna4S0qkQqXPSi1lZi5UTdnl?= =?us-ascii?Q?s7+tFsySw2Sil6EfF3AyXrY068Rc1Grt5d7hIWvdfE97cAxGzpmeetmaJfeB?= =?us-ascii?Q?606CqahYe6w7qQO1+9J2TH1ecE9oUHNdWpnxpdhh3xfUc+iaURBpob7DLq05?= =?us-ascii?Q?ifohONsfM5W3lDi6klc+21zoOCs1mZGxF3WoFdxCu2l5H4HlFZmi+udEstkS?= =?us-ascii?Q?6EfrnB5gsdPx+NM7zs1mKRN4ckkOuxOLeROdVkoSN3RWZ6TEmyJfMB+fVOsH?= =?us-ascii?Q?mPSOKJio6BpYRSoQ5R6iHuJs4P1meGH4KP9D1TkCccnrK1Sq0afb1vxU9yR4?= =?us-ascii?Q?oHrVcUqm0WQ/ZV2UPjVc5ooxgvR9tQ694kc84MSycUuPNralKZ5DGeJLhCh9?= =?us-ascii?Q?FS08RK9Npi9KgfCVla0axhxBOBSZXlrSCPU/7g+n9WOQ74HThcukCMb35IKV?= =?us-ascii?Q?Ij3V7l800kgusZLgLDx62linTgxvv0uts4UZA2LT3VYn2/hUEla6m5xkzNEp?= =?us-ascii?Q?DQLOT8SnjkLcjqemOSlhgfJjLNl+MUdtL3+ekSIvV6WM7VrviNmjL7TQF7ap?= =?us-ascii?Q?LC/A0SLRr0uYOszreZhwfIR2uW4BRlyVGbMx90HJaIh47eqrV25giZi5v0aJ?= =?us-ascii?Q?DRzwT8hQ4KcHJJZDfu78Ws0?= X-Microsoft-Exchange-Diagnostics: 1; HKXPR06MB1016; 5:xnBGzqcrJNVClx/kvoj5lSltvKxmncn390tLEILBw32ScYOL2tqDQcES88Yxvf6h0iVXrBoGldVdAqWKFqIzuuaFNQoeCie9tVea8b1libv+BVGeEUtyTAlbe9m5W1Zn6FJT85u5zw3kT+6HqnKLJA==; 24:dD4VD4ejYRbHd2VqcMPbFv3yLjs5DHe5osHkKlAl5+lE3TggL02kDcOopl3UM9IZAcMD1YJH/ymljBhX3ojVJh+0uJoCxu3uIpC7tL2KVKU=; 20:3xc0Dn+P2anpJU75AkOtrcTGJU7x48gt9gJbjKTKC6cw/ZZBmnxW5Gi5KdNIy+yE4J2JygRG3jLGQ/kcWV4/EkIL7YnZg9z2E2j5vAsVBJPKMRgb9tcCX/v9vKlQvCyEbtIEJ9pj64I/y7fETP5tqOe8NK6xjtCFilVJgWA9aNA= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Feb 2016 07:04:09.7678 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HKXPR06MB1016 Cc: Linux-ALSA , NAOYA SHIIBA , Cao Minh Hiep , Yoshihiro Shimoda , Ryusuke Sakato , Liam Girdwood , TOSHIAKI KOMATSU , Yusuke Goda , Simon , "osd2@lm.renesas.com" , =?ISO-2022-JP?B?GyRCMHA1SCEnP00lPRsoQg==?= , =?ISO-2022-JP?B?GyRCOzAxOiQ1JHMbKEI=?= , Nguyen Viet Dung Subject: [alsa-devel] [PATCH] ASoC: rsnd: rsnd_ssi_is_multi_slave() macro uses rsnd_ssi_multi_slaves() 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 From: Kuninori Morimoto b4c83b171 ("ASoC: rsnd: add Multi channel support") added Multi channel support, and current rsnd_ssi_is_multi_slave()'s check method is !SSI equals SSIM1/2/3. But, SSI parent also hit to this macro. Because of this reason, some stream which needs SSI parent clock can't work correctly. This patch uses rsnd_ssi_multi_slaves() to solve this issue. This issue was reported by Dung. Reported-by: Nguyen Viet Dung Signed-off-by: Kuninori Morimoto --- >> Dung-san Can you please check/test this patch ? sound/soc/sh/rcar/ssi.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c index 7ee89da..72e8420 100644 --- a/sound/soc/sh/rcar/ssi.c +++ b/sound/soc/sh/rcar/ssi.c @@ -96,7 +96,8 @@ struct rsnd_ssi { #define rsnd_mod_to_ssi(_mod) container_of((_mod), struct rsnd_ssi, mod) #define rsnd_ssi_mode_flags(p) ((p)->flags) #define rsnd_ssi_is_parent(ssi, io) ((ssi) == rsnd_io_to_mod_ssip(io)) -#define rsnd_ssi_is_multi_slave(ssi, io) ((mod) != rsnd_io_to_mod_ssi(io)) +#define rsnd_ssi_is_multi_slave(mod, io) \ + (rsnd_ssi_multi_slaves(io) & (1 << rsnd_mod_id(mod))) int rsnd_ssi_use_busif(struct rsnd_dai_stream *io) { @@ -175,9 +176,6 @@ static int rsnd_ssi_irq_disable(struct rsnd_mod *ssi_mod) u32 rsnd_ssi_multi_slaves(struct rsnd_dai_stream *io) { struct rsnd_mod *mod; - struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); - struct rsnd_priv *priv = rsnd_io_to_priv(io); - struct device *dev = rsnd_priv_to_dev(priv); enum rsnd_mod_type types[] = { RSND_MOD_SSIM1, RSND_MOD_SSIM2, @@ -185,16 +183,6 @@ u32 rsnd_ssi_multi_slaves(struct rsnd_dai_stream *io) }; int i, mask; - switch (runtime->channels) { - case 2: /* Multi channel is not needed for Stereo */ - return 0; - case 6: - break; - default: - dev_err(dev, "unsupported channel\n"); - return 0; - } - mask = 0; for (i = 0; i < ARRAY_SIZE(types); i++) { mod = rsnd_io_to_mod(io, types[i]);