From patchwork Thu Jan 21 01:56:59 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 8076661 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 21AFF9F859 for ; Thu, 21 Jan 2016 02:01:27 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 111A0205E8 for ; Thu, 21 Jan 2016 02:01:26 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id D18E9205DD for ; Thu, 21 Jan 2016 02:01:24 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 006FA26501B; Thu, 21 Jan 2016 03:01:23 +0100 (CET) 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, RCVD_IN_DNSWL_NONE, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id DCF2F261A3D; Thu, 21 Jan 2016 02:58:58 +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 1BB88261A3D; Thu, 21 Jan 2016 02:58:58 +0100 (CET) Received: from relmlie2.idc.renesas.com (relmlor3.renesas.com [210.160.252.173]) by alsa0.perex.cz (Postfix) with ESMTP id 3650326078A for ; Thu, 21 Jan 2016 02:57:03 +0100 (CET) Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 21 Jan 2016 10:57:02 +0900 Received: from relmlac1.idc.renesas.com (relmlac1.idc.renesas.com [10.200.69.21]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id E1EB53D3B4; Thu, 21 Jan 2016 10:57:02 +0900 (JST) Received: by relmlac1.idc.renesas.com (Postfix, from userid 0) id B7DC78002D; Thu, 21 Jan 2016 10:57:02 +0900 (JST) Received: from relmlac1.idc.renesas.com (localhost [127.0.0.1]) by relmlac1.idc.renesas.com (Postfix) with ESMTP id B633F8002F; Thu, 21 Jan 2016 10:57:02 +0900 (JST) Received: from relmlii2.idc.renesas.com [10.200.68.66] by relmlac1.idc.renesas.com with ESMTP id LAH00768; Thu, 21 Jan 2016 10:57:02 +0900 X-IronPort-AV: E=Sophos;i="5.22,323,1449500400"; d="scan'";a="203941170" Received: from mail-pu1apc01lp0016.outbound.protection.outlook.com (HELO APC01-PU1-obe.outbound.protection.outlook.com) ([65.55.88.16]) by relmlii2.idc.renesas.com with ESMTP/TLS/AES256-SHA; 21 Jan 2016 10:57:01 +0900 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.144) by SIXPR06MB1021.apcprd06.prod.outlook.com (10.160.238.156) with Microsoft SMTP Server (TLS) id 15.1.365.19; Thu, 21 Jan 2016 01:56:59 +0000 Message-ID: <87io2n4s18.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Mark Brown In-Reply-To: <87r3hb4s53.wl%kuninori.morimoto.gx@renesas.com> References: <87r3hb4s53.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Thu, 21 Jan 2016 01:56:59 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: KAWPR01CA0008.jpnprd01.prod.outlook.com (25.161.24.18) To SIXPR06MB1021.apcprd06.prod.outlook.com (25.160.238.156) X-Microsoft-Exchange-Diagnostics: 1; SIXPR06MB1021; 2:EvaPmgfS3YDql6oSntpaaYqi7z1jgVmA9vluB+wFaiMYuaUJDS34ZQW4P2ynp/GfQ2XEyMrMS10O2E11jbd+4NHMQjboEjNsyKFQDF5SQz3xeuFLP98o6cl9wzlVy/WriNyGruic+Dstj91L167Zfg==; 3:2EUnhpQdf2Il8mSwpRsENIsbah836fZGa0ga9o+u9pKnllKvqoxE8XDxdLlo8pKCu0HCBFojxnNOtsnRJS8SvrQxckeYqYaW/JFHeyh0c+37AxosiGqYGCCJ0mEXsspQ; 25:JpxW+tCq0uB6+ciKmsLE2Axp1yYdZm9/Cl9IQd/NXCDHcubSoIjpb7P4SYONRM1tC9YNz8kWpe20zl8kSgWD/nCnU1Qig0Uape3scVvuh/tKGdjWbCRnY/Rhz3ZI9uOBhys09BGuOLnYu1pl22GUa7Aje+76bKwihTNT6rROfjkRV14QWneOviGNYFabr/cD3iGXaRBjbwylPsgH4Zt19ONrVEEE3vQbbYAf+RGUiZ+/9ve6CEENGwivfNBw0iXC X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SIXPR06MB1021; X-MS-Office365-Filtering-Correlation-Id: dd9580a1-cea2-4d9e-e774-08d3220626b3 X-Microsoft-Exchange-Diagnostics: 1; SIXPR06MB1021; 20:ztLQEyrt64n9pn0St3o8KIBUxMS0c8MqHptZVZ3ujQe/JlFDseqqvjLk5KOMZnk0M9XXLBjURsLTXDcwNXHhAep1CrUOILo6FtfprsaOCZuXe0g7+mvYrEEN26c0PVN8heW2lYeZfJYqDCJRO8N7iPGPrJrBnw3VeTVAozssny6IY7LdBvq1tcc+JnGKGxvPEKvMethtRFRxZrF3ykMoAPauN3irWHgajCwMLdDGA1Y0h10N04XSIhSN+ZnhSqwvM+HtViz4gEDwe4jq5GRdpmm8wk74fM9MAI0J1xdHkzWRiVinxwsixbsaedvvt2i5ikMLgk3qgM3rhsXyXkZ3PJU3jQ46HoZ2l/4TQS9LQ4DvRDgIUD4dAJK21fF/gXLQcFHFGm3eNcd0EUFqfm77gurzeKfYSCrAuC4/2cCrzXJ22eeJj0HpK1FvVLQCYigkR95KBSPLm09F4jykUTQD6wGh2YHBz9n093r8Emynpbweq2cy74uv+N8uKH2oM2vL; 4:5FD581Y65cpOu6MzPlSsxN6faJWA/3fQAw3eE6HPA2EJ/IerrpTzmanoJ3hrGLUf7B/SWtH+8LzBHQxnw7dvD3NG9SNKxZ0HSjroWw9YdA1WdZ+LBFAAByB3ElZ/Lp7cI1ACXEhSB2I+Z2ajcP0OXKsX9tPmNdbHTU7tz/ks5kWbucIG7wqWmeeH2DuT9aBq6XyXLxlYL5Tco7AKNe7zlYbkCD2XoNf8TSYyjV7XFBsKpbf2GFBwxk/wKn9/sVuz2GHrgT3LLI0M1j36DxOtyqBqmgiZV6nW6X0bchaJrI9pEbYyt352C6q340be/XUN0NQcItcfc8v28OoD+aTePP5TKOmbYYaPWRD5+LkXSJ+H36Ikg7boSXkTV3jJHLRm3jDR6Lf2kGtJKyPhVcyDPPRwdA/nv9VqRz5I5Detgms= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(85106069007906); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(520078)(8121501046)(5005006)(3002001)(10201501046); SRVR:SIXPR06MB1021; BCL:0; PCL:0; RULEID:; SRVR:SIXPR06MB1021; X-Forefront-PRVS: 08286A0BE2 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(189002)(199003)(40100003)(19580405001)(54356999)(69596002)(19580395003)(77096005)(4001350100001)(76176999)(122386002)(5008740100001)(50986999)(53416004)(83506001)(87976001)(229853001)(106356001)(46406003)(97736004)(2950100001)(81156007)(42186005)(66066001)(101416001)(92566002)(47776003)(189998001)(5004730100002)(110136002)(33646002)(2906002)(5001960100002)(50466002)(86362001)(23726003)(1096002)(36756003)(6116002)(105586002)(586003)(3846002)(4326007); DIR:OUT; SFP:1102; SCL:1; SRVR:SIXPR06MB1021; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SIXPR06MB1021; 23:/igwNAxBJr6amVrELu1mQZ2xZm/oMFUdziAP3QGN/?= =?us-ascii?Q?NQJQXItEHBO/dQCO42g1R6hksgp1EQd+FnViPjswMuJt4Khxjq00ufM8ZiW+?= =?us-ascii?Q?LYv+7PZln1qZdgT6wgzYHB4KQKt8rmGkg20H7laDayTDv4MNxSp/CX3o9CCl?= =?us-ascii?Q?X7x7qxrVf2Llg/JKgd7EljPxleHmZQNcHwmAzkmc0a8N3nJv6vxFtR1W/KYz?= =?us-ascii?Q?qSm5noWso8phWwWMYHYOviHsaslckz3SzFMTc1kNnsjHYvEJ9PTshzMVaEnO?= =?us-ascii?Q?pDHnl0KnxvyIY66VypTd71W6jDmFYiY9AZx4kO32ZVL8CLpWQH82nxLemNCZ?= =?us-ascii?Q?azEy2P4FrsKHS07a0RTCOVLzk2ubWlhlOQ+/j2yz9wlxoKGX6pVCnmUx/gyM?= =?us-ascii?Q?r+nU3mda5sdoK06O4A2Armtf1goen7vdk7hpj2zBd+hvo2wmb0IU2wHKTmpP?= =?us-ascii?Q?2oqM/KIwKSu4WB4FV83gjp87G3r4hA61xGeXUxao8RT+8BYPtiSTbymwzK60?= =?us-ascii?Q?RjhgzR05pwiPp+eSbDiP6rUNquPU8PDGtEK1GAq96vFqYLkyetc0XPqLZHGn?= =?us-ascii?Q?+HoU80ISAq0WHzOgJnCNs5KxksVg3boH4A6+EyQ4YHptfw9XcHNHbsigaafv?= =?us-ascii?Q?ecckmKyZhJkp7L0IaV81yvmLcuinDz69N91xNDT7cCpyJO/ELWSbqaSeFGlV?= =?us-ascii?Q?2O6z7Mz7hKgAxv/UWyEPW/pxjEU5IpW7lj9ZUuakzjGI8sktCUBoo/K4BGNF?= =?us-ascii?Q?2JT+bJv8obCW9WoJdcsXKsiMHPkphdRaOasSizc7HXD3hFuF1LP52KTIRbpf?= =?us-ascii?Q?tFCKvPcG0lun78n1hQYKlLBZgO4ACViSyQLyLqL4n2Yopp2nwLrRVTtVM+co?= =?us-ascii?Q?N5KISZNdqVQbNwVH8YwXKvR3ESjmq7Mut2H0XVoLcrtv0F0Y94pL0Jndywfs?= =?us-ascii?Q?1lSKJTlzC4zKKixniXA5qqOjgUGz+buhEvGEHoUc7enF75C6C4gFax+YohjK?= =?us-ascii?Q?Fxz/JZFPIlwb5PyrGaByyozMzlFQSsQzWgXp6e2GojHtvNpLx/UQutRTq2ok?= =?us-ascii?Q?EO8JKl4+eu9WbV+slB5mPUi1kyZDPQ0iAfJUeOKW4W6nYXACeJd88L0cHcuF?= =?us-ascii?Q?kt5w88+OVcxX6wLyKUM1xqfDXcQI3kv?= X-Microsoft-Exchange-Diagnostics: 1; SIXPR06MB1021; 5:7q1tIggQl8zPaiydRhGTDzI+DMW1VxIZ3JUunHwnGSYJZ2DjKaSgUMYnaG2H7Z65yRfnz7oHhr2UObKJ7tBWjBOChSZvplqnasZgvBfnt3P2Uur+Y3uDYweHJJ9uhIiHCZmJ7oLV3bxDvfueSOsHxA==; 24:ug3iORcQ+HBPDT/ZplTHsd2os6mZ1lHH8ZMcdGmeZ3Pu8ICi3QCnQGHqO0ZBf73l0j/I7DouRPPui1k5qK8M0/FAE8PsietJBmMOyjTI/KA=; 20:/Pp6F+KfkPV3V2QpdiExLI2i2/sei3JMX6itG9WageFxuF/xSzF9xr0kPXr5bI4Sr3m5LxQGeHAjq9edgBnyR5SDFEDLcwT/JzclQfzPNyuRuSqFaaU6qowJdAHnqKdYX7YuOsnqdHAOXsyQABQf7BDlJKPwoyed2ChVX7d3wAg= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jan 2016 01:56:59.8531 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SIXPR06MB1021 Cc: Linux-ALSA , Simon , Liam Girdwood Subject: [alsa-devel] [PATCH 06/15] ASoC: rsnd: always call probe/remove for MUX 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 CTU/MUX/DVC/SSIU/SSI/Audio-DMAC-periperi might be used under multipath. So, probe()/remove() need to be called multiple times. This patch allows it. Signed-off-by: Kuninori Morimoto --- sound/soc/sh/rcar/core.c | 1 + sound/soc/sh/rcar/rsnd.h | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/sound/soc/sh/rcar/core.c b/sound/soc/sh/rcar/core.c index ad97ce3..ed09189 100644 --- a/sound/soc/sh/rcar/core.c +++ b/sound/soc/sh/rcar/core.c @@ -163,6 +163,7 @@ void rsnd_mod_quit(struct rsnd_mod *mod) { if (mod->clk) clk_unprepare(mod->clk); + mod->clk = NULL; } void rsnd_mod_interrupt(struct rsnd_mod *mod, diff --git a/sound/soc/sh/rcar/rsnd.h b/sound/soc/sh/rcar/rsnd.h index 317dd79..c7b2ba0 100644 --- a/sound/soc/sh/rcar/rsnd.h +++ b/sound/soc/sh/rcar/rsnd.h @@ -237,29 +237,29 @@ struct rsnd_mod { /* * status * - * 0xH0000CBA + * 0xH0000CB0 * - * A 0: probe 1: remove * B 0: init 1: quit * C 0: start 1: stop * * H is always called (see __rsnd_mod_call) + * H 0: probe 1: remove * H 0: pcm_new * H 0: fallback * H 0: hw_params */ -#define __rsnd_mod_shift_probe 0 -#define __rsnd_mod_shift_remove 0 #define __rsnd_mod_shift_init 4 #define __rsnd_mod_shift_quit 4 #define __rsnd_mod_shift_start 8 #define __rsnd_mod_shift_stop 8 +#define __rsnd_mod_shift_probe 28 /* always called */ +#define __rsnd_mod_shift_remove 28 /* always called */ #define __rsnd_mod_shift_pcm_new 28 /* always called */ #define __rsnd_mod_shift_fallback 28 /* always called */ #define __rsnd_mod_shift_hw_params 28 /* always called */ -#define __rsnd_mod_add_probe 1 -#define __rsnd_mod_add_remove -1 +#define __rsnd_mod_add_probe 0 +#define __rsnd_mod_add_remove 0 #define __rsnd_mod_add_init 1 #define __rsnd_mod_add_quit -1 #define __rsnd_mod_add_start 1 @@ -269,7 +269,7 @@ struct rsnd_mod { #define __rsnd_mod_add_hw_params 0 #define __rsnd_mod_call_probe 0 -#define __rsnd_mod_call_remove 1 +#define __rsnd_mod_call_remove 0 #define __rsnd_mod_call_init 0 #define __rsnd_mod_call_quit 1 #define __rsnd_mod_call_start 0