From patchwork Fri Jan 12 01:48:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 10159459 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 73EC9601A1 for ; Fri, 12 Jan 2018 02:44:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5E184287B6 for ; Fri, 12 Jan 2018 02:44:56 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 524DD2897C; Fri, 12 Jan 2018 02:44:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, RCVD_IN_DNSWL_NONE, T_DKIM_INVALID autolearn=no version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6992B287B6 for ; Fri, 12 Jan 2018 02:44:55 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id 41AE926834C; Fri, 12 Jan 2018 03:37:41 +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 508DF2682ED; Fri, 12 Jan 2018 03:37:37 +0100 (CET) Received: from relmlie2.idc.renesas.com (relmlor3.renesas.com [210.160.252.173]) by alsa0.perex.cz (Postfix) with ESMTP id B79412680F6 for ; Fri, 12 Jan 2018 02:48:29 +0100 (CET) Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 12 Jan 2018 10:48:24 +0900 Received: from relmlii1.idc.renesas.com (relmlii1.idc.renesas.com [10.200.68.65]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id 979A16B959; Fri, 12 Jan 2018 10:48:24 +0900 (JST) X-IronPort-AV: E=Sophos;i="5.46,346,1511794800"; d="scan'208";a="268011317" Received: from mail-sg2apc01lp0243.outbound.protection.outlook.com (HELO APC01-SG2-obe.outbound.protection.outlook.com) ([65.55.88.243]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA256; 12 Jan 2018 10:48:23 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesasgroup.onmicrosoft.com; s=selector1-renesas-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=YD11Nt3wNVVwhxFO+W7dlp7M7qrfyUF1DHmJ2SRf2MM=; b=TjIOWIMw0E7U3MDX9bqytUcy5Dhuu07aO/BVXL/EPBJ26qBPwadEcW/nqbSxC9sRnDdpopvjf5MQHBCHZYSIXKr92OApd+g4P905+zksCbSFp5BvjGpLj8IOwZA1mFfXu4uo4KemoV8c6TiGmuN7yJdCSm1epekZwe6XyBkcN+w= Received: from morimoto-PC.renesas.com (211.11.155.138) by KL1PR0601MB1880.apcprd06.prod.outlook.com (2603:1096:802:8::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.386.5; Fri, 12 Jan 2018 01:48:21 +0000 Message-ID: <87r2qv6e73.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: <87bmhzevk9.wl%kuninori.morimoto.gx@renesas.com> References: <87bmhzevk9.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Fri, 12 Jan 2018 01:48:21 +0000 X-Originating-IP: [211.11.155.138] X-ClientProxiedBy: TYXPR01CA0020.jpnprd01.prod.outlook.com (2603:1096:401::30) To KL1PR0601MB1880.apcprd06.prod.outlook.com (2603:1096:802:8::16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a9c6fe86-7876-4e2b-0419-08d5595e8ffa X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020074)(4652020)(5600026)(4604075)(48565401081)(2017052603307)(7153060)(7193020); SRVR:KL1PR0601MB1880; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1880; 3:84S89Tozy+5YOGEiZ3FjxxnG9vQ6dWe+pd9CMsRsFB0EOwOCgILyZklfVm4EA0R/NnvPAd8S+mh8/Yw9LIDr9h1asMiYB80+y42c0o6/zqF2meLbXGuzkKDa/ZS/FX2wqI0KCwE5RM8EaEC4C9zOgeftQyUYoCE6Bb0mdAoXEPMqL3+dvHYra9bUil1VxL9tDSNuw5DKpcCGYXP/t/FTx4fNKiKh7Gyzohj4lAvONExTg+1Sk+iFkGD9QcXLgRUH; 25:ljU73foLTIGlw/IAuXwl9Zr6hP4B4f3YvMIHfL44P1oyVKUMg7J3xHlPCtS63fDfvekL5YstzUgOnMY4izK61hHwbUwfCEr/UnZC0svlcm+M3S3GJZ68ZOSyEdNtE6+8UyWWdcIPj7nFLZHl7SRYk89p56kxknYb7SWOAkGWaUTJymkutA24ofro3DX5XGyWU98HN/SJHee5EWMPeLsivo8nXgu6gbhJOLe4M3Gve+8Msd9mr0sBAtYABYsjBgp9aCJAkzX2+nsVFnlydx+XYcW2MyUpE8d+kTalNoy33kc0ocjz+Oez5VMZRQ9oinCkltLzh26UGLeMM0B1fEgHPQ==; 31:4PUIi7flMp7vJQLuMreYmH9TvRpn2jAmmefiSSrDd5U86r/Ko1MavDgtRUGiUOer2OC3/f3MB5i/MViq+AOf/ufuLxL6E1SmpGWH9Qrp0irF9iX1qJ+cMLpvSYhd0b43gatDTm3wo0yFX+EVAT2ywoMvFOgAotH4YqxyFKhg2sCE28GqkNqvtXK8NfjRX/keF9k5xNWw78gZNULDKLApAicew3aXT0lAqI6OBh+3+v4= X-MS-TrafficTypeDiagnostic: KL1PR0601MB1880: Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1880; 20:Qhe4gDVnECFGyIZUdUDC7CsBQK4KB4Km09N4kJgXXhN5Wa2UCxkP3cDYKQnE6kT7L3qxN7cHmKsHMC3aFqkDq/ycnVY1NUjS7B04ae/Q5p9t1u8DSI2Mlkggf/pBQHS2a7X3nGjRYt48JdeW0kp8AFJNEjzzN30zLaAculefvg2z4+dB70SSzNRrAb7lnQLumAEVtbQAx+5Sn5ZCavU4z4vfY2lgCLh7tP6lgiWk5Oy+forBlk0SP20+h7qZAdDKCGwfrLYa5dxyYqjs+CYU2y6kfIEJE1dt/lZSbPZOhAOJgQcmtNDPCJ7q2u104EGfpWPBXgchW/jdHjj7uZLHLm5vqftLOd397kS6WbLjV97J6iPk7MKcj/9YxttDtyYqv6ZK8WlrlzcsrlfIxKCj64FSbllj0FDoFyHpkj65L1mazHHVwnvhBgNGWJMKjo8uS0uFuJ7zrui7n1ipbMcXM5Ts7ub9pKBlNd4+GBVhXZNtFUHXeUyUNfH7suLa3HVl; 4:fBE4V7XehAu3BwYF/t1hl+JFYavG38X88bTTRc57+biseNSaFdp6RYq0u7lYfvbQpUvGalhfSm1hBaRqsrS1hE5TMwDvF5wQ6I2fBXQdOMXSa0JH2FfjrKe2UpnfBS22P27CLHudT4utTKph2BR5MI4B9UMqDWVNq2TifTr8zo/BWJXB4qFXuXlchw79s6S1pFXY67haCYhRwsMQijp2D/LIIvBhNdCjj1aZrOnxQNMPvhsvBTZQYiNt7BwMjQ2W+snINQWV2lE8qk4tqKQCvcM0paupG5WVtfVGizZ6DjYDnvQsAlTcupH/2FVC/qtu X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231023)(944501138)(10201501046)(3002001)(6055026)(6041268)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(6072148)(201708071742011); SRVR:KL1PR0601MB1880; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:KL1PR0601MB1880; X-Forefront-PRVS: 0550778858 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(366004)(346002)(376002)(39860400002)(39380400002)(396003)(199004)(189003)(105586002)(16526018)(97736004)(386003)(58126008)(54906003)(50466002)(16586007)(69596002)(316002)(7696005)(7736002)(86362001)(478600001)(305945005)(83506002)(2906002)(52116002)(68736007)(47776003)(81156014)(36756003)(23726003)(8936002)(5660300001)(106356001)(6116002)(3846002)(81166006)(53416004)(76176011)(66066001)(6486002)(4326008)(25786009)(6916009)(53936002)(2950100002)(8676002)(21314002)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:KL1PR0601MB1880; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: renesas.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; KL1PR0601MB1880; 23:cvDOxDE4gNT+l9yrRh1GW6Iz0G+5jD18KSUK9Ko?= =?us-ascii?Q?mifiPvavqF1iy4/8qP/QMh/PQk1Tk1XH2mg1KMWLNMDJoiMopbBjzbEw4Vf3?= =?us-ascii?Q?D1kyo/mkD7I0oTOH4edkrhZ1X0l1vb4rskefHx5+tYPGFdB5AXOhk0c9amwT?= =?us-ascii?Q?baAlSExKyf6D/fuQVayL9ucolcQqVx6jrG/C0IDpZ6txKdk9M6Y7Oh4ADGXR?= =?us-ascii?Q?/TVIneoVXkMMC9zehXzihss7GuxlPQqY+Rd6CV8bOem7qjcpjR/p/AKyHnwg?= =?us-ascii?Q?2YQleZP9tfN3hH1X+80Lgp8WNVESMVyt3WFkephRNklzcxDDQAkld5KST95n?= =?us-ascii?Q?NbEdkr4LRezMJ0oBN+iwh7Ka2y8eDfnoEf8fdB+MMCQwCG7QZEPMB2nLrSI1?= =?us-ascii?Q?4eR0ebhhxwyBGleicgpquuWUNGi6/QtUD1W9bAcCLMQ9lNb9E/CKlHORm3Dv?= =?us-ascii?Q?VZjIlVQLQS8WHlnYpk26maAej0kaiBrWdE9ftz2rACDsA5zmSN3tt07waDtr?= =?us-ascii?Q?ABAcA8Fmte1dm/UDqkDdacyVnhOtcDHUtPJFSSaLn3pg37DHx23pnsxiGuwr?= =?us-ascii?Q?v9Udgq3LJCRgHElHlVkKgvGlOORfEmTCQU341XoNdmZOIufTOjRtLGN1k3wk?= =?us-ascii?Q?xxvTCfMh6s44DLeipUZUL+MAT9hTfG3QDYF2rLgffvWNeAgOITi72tJVY5wS?= =?us-ascii?Q?c08WdXMPjI16P2K4eMUjN9a4Ftd3/XYc3zR0G58MIw1eeDj8y36Ix2S9XMAj?= =?us-ascii?Q?e5NilldujjXId73Xit5vREQGgAcbrhpxZRvqVrANQo4VxxfBNleUCgzeAi62?= =?us-ascii?Q?Ri0B2cjCLYhnpdW5zgeGg30ZJZXVtql7OqKfP1zUhK/2jXM3b3KWxHLLwEYX?= =?us-ascii?Q?Cdztdrw4ropAD5dqeYTbkNytd7iu4gajIKX8+PODsopXv+C/yKL/n3eTkCtI?= =?us-ascii?Q?W5d52qwLf8lczfORYaynukMwgLmt162M+zgK9rgDNN3HzWI6s5gzTNEcNYir?= =?us-ascii?Q?tVsPuOzMGL0pt7Qnqc35vulug1NVZli8ZjJt/PATYexrdmHyGtPWyMQPVrtJ?= =?us-ascii?Q?zEGq84fnv5EI9SOVbiIHQlLjoLWVYtoa0biljxOGQJ5s9nZpe3GMRlM7BdYv?= =?us-ascii?Q?sB686DzyapvdadfCW4hWKfpuClS1OOBX/?= X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1880; 6:xdgXI1UHNZBptd3tuBaJ2PONmM2TgWUkCcMcdJzmJRMiBE8THI535knPHcpKZVCu9s4Tl1bWE0SmnfD17v2vQEqAkVoEQq2aFIIcLvZdxq7lYpbju0kUPFdQGf0in8/rmsjK8BxOJruwaMtl1Y0M/mu8Myag5aXPCdG6vtYGBHLmvEQ2LF1PgH3GU8+7vRhQKmE2vF+4BadxMeYm+uZMAfg931HxYBfhwmM7/SZcP9fcbF+oicufljzDYgRxYsvwD2Zr/E/Hg/h+5hqUt+WZS5NKdj7xyQZhb+MDJSErUYxSJYfyLoOd6EhHJ8Sy26MiPd7hz4DxpxyRze8WFaFPDOhgfn/cd9kndfqcheMsodY=; 5:V4bOV4SlOQCl3MP5tvFXrJ6GfLW7U0hU6e/lz/dn+sug2uS72ZxEyskKIk9p5Gx0y1abUBd8q36jI4TBjTVyoxHfsbeandh4+XFCyiZNkw9FhzjEw+EbQ0gusLPXYeiscNDcdzy+vYgoyjAzuHjmzVgi/PQn2n4rg5GhMd0feXE=; 24:rqGlGtHCuff71D/jpF51T5UeXbwoXhG8uPV/VIFy5x5dFkSYshuV3jQ2RbjcyHK8JVJ8ITE/oSy93uyFe2U4u6Juc0jcR+cysgJ1tjp/CCc=; 7:+8/MYp9Rq/4bH1nar27nylgqkkOg4cmLHkxLnggb/rIOw5EygGfZ9MHAFAtEplCNwrJNUBLw3Zf8Sy7hz3Aeimfadx9Gy0cS7zo8ohdOVJRBagAhrPiewj6TBBCuiXtNWi1xXPO31+5qO+NOZzLGgfPloF3ck2MQg7MjTFgYrdK2p27uX6/78XLD5rTeK8+cuB1egrVK5TJhh0jj4bMGEF/UPMJdtfpliQVqrLrDVB7E71/m0pJ9LpJBZD3Kf2Zy SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1880; 20:0pcKM47M2BPV5glVQkLFQQgs7cBQyi9ExCr6bkC7xtyx4ivTmggHOmuEjsqiaQJSDJPW2ts8ubKDrh88KBbe3A7MC+gKK7RakOZaepAkTkW1lTidvkghYTQY+wkzctnxPy7uCgU85RY6VQr3+eRRILT833IiuwYlYXsEi0gLdb4= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jan 2018 01:48:21.5586 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a9c6fe86-7876-4e2b-0419-08d5595e8ffa X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR0601MB1880 Cc: Linux-ALSA , Simon Subject: [alsa-devel] [PATCH 139/187] ASoC: ssm4567: replace codec to component 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 Now we can replace Codec to Component. Let's do it. Note: xxx_codec_xxx() -> xxx_component_xxx() .idle_bias_off = 1 -> .idle_bias_on = 0 .ignore_pmdown_time = 0 -> .pmdown_time = 1 - -> .endianness = 1 - -> .non_legacy_dai_naming = 1 Signed-off-by: Kuninori Morimoto --- sound/soc/codecs/ssm4567.c | 44 ++++++++++++++++++-------------------------- 1 file changed, 18 insertions(+), 26 deletions(-) diff --git a/sound/soc/codecs/ssm4567.c b/sound/soc/codecs/ssm4567.c index 4afedde..cd3d83d 100644 --- a/sound/soc/codecs/ssm4567.c +++ b/sound/soc/codecs/ssm4567.c @@ -199,8 +199,8 @@ static bool ssm4567_volatile_reg(struct device *dev, unsigned int reg) static int ssm4567_hw_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai) { - struct snd_soc_codec *codec = dai->codec; - struct ssm4567 *ssm4567 = snd_soc_codec_get_drvdata(codec); + struct snd_soc_component *component = dai->component; + struct ssm4567 *ssm4567 = snd_soc_component_get_drvdata(component); unsigned int rate = params_rate(params); unsigned int dacfs; @@ -223,7 +223,7 @@ static int ssm4567_hw_params(struct snd_pcm_substream *substream, static int ssm4567_mute(struct snd_soc_dai *dai, int mute) { - struct ssm4567 *ssm4567 = snd_soc_codec_get_drvdata(dai->codec); + struct ssm4567 *ssm4567 = snd_soc_component_get_drvdata(dai->component); unsigned int val; val = mute ? SSM4567_DAC_MUTE : 0; @@ -366,10 +366,10 @@ static int ssm4567_set_power(struct ssm4567 *ssm4567, bool enable) return ret; } -static int ssm4567_set_bias_level(struct snd_soc_codec *codec, +static int ssm4567_set_bias_level(struct snd_soc_component *component, enum snd_soc_bias_level level) { - struct ssm4567 *ssm4567 = snd_soc_codec_get_drvdata(codec); + struct ssm4567 *ssm4567 = snd_soc_component_get_drvdata(component); int ret = 0; switch (level) { @@ -378,7 +378,7 @@ static int ssm4567_set_bias_level(struct snd_soc_codec *codec, case SND_SOC_BIAS_PREPARE: break; case SND_SOC_BIAS_STANDBY: - if (snd_soc_codec_get_bias_level(codec) == SND_SOC_BIAS_OFF) + if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_OFF) ret = ssm4567_set_power(ssm4567, true); break; case SND_SOC_BIAS_OFF: @@ -417,18 +417,17 @@ static int ssm4567_set_bias_level(struct snd_soc_codec *codec, .ops = &ssm4567_dai_ops, }; -static const struct snd_soc_codec_driver ssm4567_codec_driver = { - .set_bias_level = ssm4567_set_bias_level, - .idle_bias_off = true, - - .component_driver = { - .controls = ssm4567_snd_controls, - .num_controls = ARRAY_SIZE(ssm4567_snd_controls), - .dapm_widgets = ssm4567_dapm_widgets, - .num_dapm_widgets = ARRAY_SIZE(ssm4567_dapm_widgets), - .dapm_routes = ssm4567_routes, - .num_dapm_routes = ARRAY_SIZE(ssm4567_routes), - }, +static const struct snd_soc_component_driver ssm4567_component_driver = { + .set_bias_level = ssm4567_set_bias_level, + .controls = ssm4567_snd_controls, + .num_controls = ARRAY_SIZE(ssm4567_snd_controls), + .dapm_widgets = ssm4567_dapm_widgets, + .num_dapm_widgets = ARRAY_SIZE(ssm4567_dapm_widgets), + .dapm_routes = ssm4567_routes, + .num_dapm_routes = ARRAY_SIZE(ssm4567_routes), + .pmdown_time = 1, + .endianness = 1, + .non_legacy_dai_naming = 1, }; static const struct regmap_config ssm4567_regmap_config = { @@ -469,16 +468,10 @@ static int ssm4567_i2c_probe(struct i2c_client *i2c, if (ret) return ret; - return snd_soc_register_codec(&i2c->dev, &ssm4567_codec_driver, + return devm_snd_soc_register_component(&i2c->dev, &ssm4567_component_driver, &ssm4567_dai, 1); } -static int ssm4567_i2c_remove(struct i2c_client *client) -{ - snd_soc_unregister_codec(&client->dev); - return 0; -} - static const struct i2c_device_id ssm4567_i2c_ids[] = { { "ssm4567", 0 }, { } @@ -510,7 +503,6 @@ static int ssm4567_i2c_remove(struct i2c_client *client) .acpi_match_table = ACPI_PTR(ssm4567_acpi_match), }, .probe = ssm4567_i2c_probe, - .remove = ssm4567_i2c_remove, .id_table = ssm4567_i2c_ids, }; module_i2c_driver(ssm4567_driver);