From patchwork Mon Jan 29 04:05:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 10189057 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 6B7E360375 for ; Mon, 29 Jan 2018 04:34:50 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 558F028783 for ; Mon, 29 Jan 2018 04:34:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4A62C28786; Mon, 29 Jan 2018 04:34:50 +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 7E41328783 for ; Mon, 29 Jan 2018 04:34:49 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id E3683267ADA; Mon, 29 Jan 2018 05:25:32 +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 C66F4267ADB; Mon, 29 Jan 2018 05:25:31 +0100 (CET) Received: from relmlie2.idc.renesas.com (relmlor3.renesas.com [210.160.252.173]) by alsa0.perex.cz (Postfix) with ESMTP id DC0CC26784B for ; Mon, 29 Jan 2018 05:05:18 +0100 (CET) Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 29 Jan 2018 13:05:17 +0900 Received: from relmlii1.idc.renesas.com (relmlii1.idc.renesas.com [10.200.68.65]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id 553855D8DF; Mon, 29 Jan 2018 13:05:17 +0900 (JST) X-IronPort-AV: E=Sophos;i="5.46,429,1511794800"; d="scan'208";a="269593865" Received: from mail-sg2apc01lp0241.outbound.protection.outlook.com (HELO APC01-SG2-obe.outbound.protection.outlook.com) ([65.55.88.241]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-GCM-SHA384; 29 Jan 2018 13:05:16 +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=Qp85l9G9VXNEtYx91p/fCWmIUGM6ZcodWzWw92BcJ9w=; b=ltF7RiTgS45wy9bcfVffXbdjOveH0/P3zyOI5y2WnBVkGnjU9YSHQxj6I0GDInA18HVRYoLZMv9/z7fPj7/YryWbr6vN8VJZek8oWygjNjZ+ZZEIY0b6AGn55j2WcSKa9GgBIfuTUdZjED3iWjKHbxMNLSzgHhPpQKv0aggKKbs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.138) by KL1PR0601MB1879.apcprd06.prod.outlook.com (2603:1096:802:8::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.444.14; Mon, 29 Jan 2018 04:05:15 +0000 Message-ID: <87r2q9z4yk.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: <87inbl5q6q.wl%kuninori.morimoto.gx@renesas.com> References: <87607l8k9i.wl%kuninori.morimoto.gx@renesas.com> <87inbl5q6q.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Mon, 29 Jan 2018 04:05:15 +0000 X-Originating-IP: [211.11.155.138] X-ClientProxiedBy: TY1PR01CA0140.jpnprd01.prod.outlook.com (2603:1096:402:1::16) To KL1PR0601MB1879.apcprd06.prod.outlook.com (2603:1096:802:8::15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 61bd1386-9e2f-4dd6-3f50-08d566cd80ab X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:KL1PR0601MB1879; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1879; 3:ixYUBBM7ddyLOc8XsEKhtLWJ/kKDKScCF4VxPqKvdP1IgcWZOqZMQK28lpi7yR8NZLS7CAVx5j8ztK61M5iO/5o5tddu9USJ+3L5uKZM1KsfsM/wiB6OhPspQEmke0oGy5u54PPTmiHi1NBCyvP/8C/TmrirwoeYqc3KHC0iqEWC1+lIlmld4aKn1rCZEmOmCckqlW5+02WMr1f3WyEbiOIU3p47zRYr2twgfsvqYj2iBfwJBcW4Ax+9jyEvpNep; 25:mPAFD/nmaZk7Whres9QWvwPkQ7iPeC9LNXtzluanOQyfE2BIhOA6EyK7iwYw9euI0rC2RSVcFLqyWEe9uOj/ylmnz2G1awLwKS4qGHqkEteCb1m3wly4NB54UL8sVVJKloQN8CfPYGvGBx9j3YNQyGa4CpBbdRhdMBAYuPrXxNVMjVmMpd156/iUievtZv7aRx9h7rnzdG5ddHCoYXW6rIU/pfGvtD4XXGuyC/bEWHJa1Rc0HcAnbh8NYXZmMz+IiEpudm1J2viAPMH+4oTP2ajo2S+a7JmtPHWEZYDiMHIgiqkAXDUhLTD8tYIEGwxJQuN4iYYfci0Z8XR0notjuw==; 31:nm7NGOi6WL77lEU+KZurl9pYj8osTZQW744YF4hRg094Rj86XlWasdQHmMNcpcKxhbpIJ2mfGd+x5WaVZgo/Rtls1IkSLELLlkiyzAjgQvZyKlw0lS0uHF1UpUuEhfE1cajmcUxdq0O+pl8FzEe6zpOm9IxZI0FNmO/mXtvgnvJiLpqmqxTOPNgllQRXlGdTnmgCE9hV0EYAzs0YCRU6f3HQScxztTa+beAAUULZT/E= X-MS-TrafficTypeDiagnostic: KL1PR0601MB1879: X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1879; 20:Nb5RB/Cc7PRsziW11mjyJxZ5qW3Ag95H+C7E54LrC6DcrFObwnOpiNu12rMnCGs65wDv20lqAdNXa1o/00PjG88m5g8uJg1tnE0omjP+ieSJxMtVqxZSLnbjml4JaYiyMbNr5X5L5uinHN9buBeW+Ak2jv7sl9w5LfuNdToH86xmROxVgzkTXdS0tKTWxTGrPjynuJ1GDcLxvUqh72fKoBlLU/tlrUQZVFCwBns3nYnU94jj5p6HIj+U+Bgoax0ksJT9Xh4XbIwScQzjZA7c0L6bmsvXR/1TCpn/elbIyZrBQ+iOanHbBD/LTOuSUQ8f9DmFI9n7VVvrQDpAE99qPKAmoAU518NbryxZqxLK4mtrqBdmouX/Ao22z/W6xZeGDhOqTVVDjBHOurK8pMpmTpZGyY2Wja/PP1aUVjdi3OPSKdzF/qkjPZklyTovQ3ierC1D6sPMVfLOlXXUsh5xDoAPAHeV+NOhJ8q6MHtHoauPAsuZ3TN5+HxY8VMbDisW; 4:9xgBpGpgagwON7z5H5PG7DRC5m6oMzBPfvmi+micQM9Uj7VKEzX8SkKLaQbZ64U/wT5YSr73avEIZ9xV1mkeRTvzevmkcxYZb3cdJPLzCSB+JP+b1MtUJreYmN0P7WZV2s1TS/Q485F69hLEFVaLE9c1HsLchcloF4BVN1GXuxxZ0w2+g960SJKFEgxfYhbEyoJA2cvmT2M3/h0XQ2WXSFsVpmOSj4uDeoDsU/7kBxSXRsOp2WZjvo35lWr2njSaT/zxWtjNZ/vfblhdADpw3LH5zn1f/bQeGo5ayJXHaaxhijjT3SabzjNSK5QZy00A X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231101)(944501161)(3002001)(10201501046)(6055026)(6041288)(20161123564045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(6072148)(201708071742011); SRVR:KL1PR0601MB1879; BCL:0; PCL:0; RULEID:; SRVR:KL1PR0601MB1879; X-Forefront-PRVS: 0567A15835 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39860400002)(39380400002)(366004)(376002)(346002)(396003)(189003)(199004)(478600001)(106356001)(68736007)(25786009)(5660300001)(4326008)(23726003)(3846002)(36756003)(2906002)(2950100002)(6116002)(305945005)(7736002)(6916009)(81156014)(53416004)(8936002)(8676002)(83506002)(81166006)(76176011)(105586002)(52116002)(53936002)(7696005)(186003)(97736004)(386003)(26005)(59450400001)(50466002)(69596002)(58126008)(86362001)(316002)(16526019)(16586007)(66066001)(47776003)(6486002)(21314002)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:KL1PR0601MB1879; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A: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; KL1PR0601MB1879; 23:qkh2ISGRX5tkOQ944hUnSDhf6zdWPbe8SEJeAeA?= =?us-ascii?Q?dhELMeKXwwJTQ1XH9w5unn1OI2JZd2gN2tiKlj/smMfjiJ/Qyp99ifyJourI?= =?us-ascii?Q?7XgvIuQxXTSqCsrrGBDPPZu6+2sz8ego9r5L4FNo5wprSPFW4hNjVTmu2HIh?= =?us-ascii?Q?R8RdGPClHZF8VGhLw0wPipAC9j4ohAjB+5TYxpW96DBeF690/GGnRBvNbTUi?= =?us-ascii?Q?Y1LKTLPESSTHD+MVMxkTxg5dHK2J+Aws6+dlsSvvTUPKf4IhCIUD52ULkMfU?= =?us-ascii?Q?ZP3yF1B7EkvISupFkdhJR2vBwYOanDJiXJFzyl9NPFgKHtv+F4n/2YuxiSJu?= =?us-ascii?Q?hP9BFLbRtaxpBsmYQn3hurZ3vM5UDAFGwk8cx/JBHjy9dtWZ6y7gsdBiQtS8?= =?us-ascii?Q?m/iXZBa/qEmmnWQrxJgWr+rtc5hVxgC1ACX1/B1LsNMP4gZN7mm6qEBT9ixc?= =?us-ascii?Q?0tbiPTJCE9+EAGKXr4ETgZcRyX9d//CoNSPPuGLkM7u8nRygytiWMMOsH65i?= =?us-ascii?Q?JtZ0EAeFQtH2WG5sWvTdu1Iyd8RxJkJrKIO3sdhZ5iE07RHxQ417OJsTd1jd?= =?us-ascii?Q?WCy5kLNfgrW3nPk5pUUMTr+LgX3rlBXjtWF1WzyL9UdHyqegHFPD6DUvKoPB?= =?us-ascii?Q?COIHpd9JSj5nSFkc9Gd0tne2r6LBDOj/Kdo2lTlCEwjbjuQlMc/JOBceikZW?= =?us-ascii?Q?2O8+oJ/qlwV4kN3NYYqF3rqGyeMJQYyNg96pAiKrFQyGKch4RNpVj3to3txX?= =?us-ascii?Q?Ff5HkbF4LcGyrkwU4TlRUmRmWuWnD9EX168F5aCC3T7YgY+PJ5suWgrRzL0N?= =?us-ascii?Q?JtSc9qvoDyI7sjhQLLRLkZ1Tu9eqgp8SpfyOzQ8fXhWdx5+KnFEH0cx7RFKS?= =?us-ascii?Q?yMlMOWKh3PosIBm5/4OQzkVzK3szoq1pP2iXuRqZ1t5o+JDnEeZyengWyP8Z?= =?us-ascii?Q?XmKFqq3KKSHsPuwlJtssYL5yj5MEs0p3NjqEXQIZk241+FLnT6wFmeCNeq7h?= =?us-ascii?Q?mGTcK00YfAWNM6MfczBH3Xyf4nszu1LNeS580iSM7udH68YffAkrq+3wi+3H?= =?us-ascii?Q?B6bM+Gzi8Fi8172lTNdM96CbNdH86xIjiS6bQToBOQLaB4xGKX5wxRmXb8b5?= =?us-ascii?Q?NYWvC0wMakceNWWbuj0mkXMqmRtKrMuT9WiYo1oMNOFSGeJ3GfMvhvQJgaDT?= =?us-ascii?Q?HZ6pEGMAsa6GLslY=3D?= X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1879; 6:OGwi/EjKc+LHswHJhDCQSKa87eRxDIpt/I7X7MyROS8TU/VZaNqQ7/+gZ/3DscAQld5JzSe59wQe2KEGMGxK08IFfgFgwxTNTJ+tC+1+C4crnjeQYL2f6xCwIE5e0QVZEpfB9+WCG9edG9x9LFUkF3X/FdSXiqm7q+XE84YEPSEsOlZqS0A4W90m2tUjbuPFOrQcB0PR4Mjs9OSVCc6Fhj8rB01n2ota2SqFrvFhMMUbhkmlVAAW3UeGiHpm+TgX2U13pGhNV9mB3Si5j0lTeGYTAnHzyFJlJ1h6zZhBh+MS/KtmfKF5FeViwKSST/SX5HMMidp3BZnchIRWHmoB05kIuo9gNT7LRHsttFFblLE=; 5:goAHIlbls2NhZhG8jqQKbYJd5mNfdAMmcYIgLBLC9GktnZEHvuZiGsH3i4nl+O0RoKYG0S6uyXr9nTQYFhYs26lyBhlIdyPSwvBdugHV2S7lF1blzibjg/nS1nV9FHUfceQGMQ2UQ69g+PLIzcGeJvXSxm05uRvGC2RAKQW7LoU=; 24:j8WW+eVEsY3TGQ3F93D9s0KNWh1wyeEGKsWZbDW4hKy8qImlZJYX8f6Rx7Tca8pkZwDqPdehfg/IIC2zDuXkYJT/znPkpw0COOzyQghBld8=; 7:RJP5StjofXzT/y2gXMLknMw59zSUk/tcHh97QJXTFSDiqx7xYnSLbKNiE+ID38iqDSCa9nNJoAD8OHy+1T+rd/fkTl++pRW4IjeYjO6FAIZWSvC+IvdPjqu/OyB2DDPKNKt2sf98/5RSDc260xMXL2n2xedotbln00apjzFlm7GdmhWD6CrO1/8whTUGFLGJsJGGaMWR53TC+dS6jN2MYnNuLLoyzH1ccIvMVEzwAIYhIiJz91j2GirZ3JaNAnyn SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1879; 20:CnQoKiAD8QNQTL6B3Mto4ZybMTX+qbhGzhUmqSEYyydj5DspPAOI3tOLRyK1Bx4MUxH8r7utDS+B6iWmPjIThTi4/bAMq+O0dd7jMWhVPnG2I1jfJi7VXfmPUypCPP3CMk/fIvCarzyjDTtVfjtcrv6+mU7jImIM6TnM32XJ6u4= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jan 2018 04:05:15.2234 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 61bd1386-9e2f-4dd6-3f50-08d566cd80ab X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR0601MB1879 Cc: Linux-ALSA Subject: [alsa-devel] [PATCH v2 093/186] ASoC: max98371: 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 = 0 -> .idle_bias_on = 1 .ignore_pmdown_time = 0 -> .use_pmdown_time = 1 - -> .endianness = 1 - -> .non_legacy_dai_naming = 1 Signed-off-by: Kuninori Morimoto --- sound/soc/codecs/max98371.c | 43 +++++++++++++++++++------------------------ sound/soc/codecs/max98371.h | 1 - 2 files changed, 19 insertions(+), 25 deletions(-) diff --git a/sound/soc/codecs/max98371.c b/sound/soc/codecs/max98371.c index 7bc2a17..d4ba139 100644 --- a/sound/soc/codecs/max98371.c +++ b/sound/soc/codecs/max98371.c @@ -187,15 +187,15 @@ static const DECLARE_TLV_DB_RANGE(max98371_noload_gain_tlv, static int max98371_dai_set_fmt(struct snd_soc_dai *codec_dai, unsigned int fmt) { - struct snd_soc_codec *codec = codec_dai->codec; - struct max98371_priv *max98371 = snd_soc_codec_get_drvdata(codec); + struct snd_soc_component *component = codec_dai->component; + struct max98371_priv *max98371 = snd_soc_component_get_drvdata(component); unsigned int val = 0; switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) { case SND_SOC_DAIFMT_CBS_CFS: break; default: - dev_err(codec->dev, "DAI clock mode unsupported"); + dev_err(component->dev, "DAI clock mode unsupported"); return -EINVAL; } @@ -210,7 +210,7 @@ static int max98371_dai_set_fmt(struct snd_soc_dai *codec_dai, val |= MAX98371_DAI_LEFT; break; default: - dev_err(codec->dev, "DAI wrong mode unsupported"); + dev_err(component->dev, "DAI wrong mode unsupported"); return -EINVAL; } regmap_update_bits(max98371->regmap, MAX98371_FMT, @@ -222,8 +222,8 @@ static int max98371_dai_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 max98371_priv *max98371 = snd_soc_codec_get_drvdata(codec); + struct snd_soc_component *component = dai->component; + struct max98371_priv *max98371 = snd_soc_component_get_drvdata(component); int blr_clk_ratio, ch_size, channels = params_channels(params); int rate = params_rate(params); @@ -348,15 +348,17 @@ static int max98371_dai_hw_params(struct snd_pcm_substream *substream, } }; -static const struct snd_soc_codec_driver max98371_codec = { - .component_driver = { - .controls = max98371_snd_controls, - .num_controls = ARRAY_SIZE(max98371_snd_controls), - .dapm_routes = max98371_audio_map, - .num_dapm_routes = ARRAY_SIZE(max98371_audio_map), - .dapm_widgets = max98371_dapm_widgets, - .num_dapm_widgets = ARRAY_SIZE(max98371_dapm_widgets), - }, +static const struct snd_soc_component_driver max98371_component = { + .controls = max98371_snd_controls, + .num_controls = ARRAY_SIZE(max98371_snd_controls), + .dapm_routes = max98371_audio_map, + .num_dapm_routes = ARRAY_SIZE(max98371_audio_map), + .dapm_widgets = max98371_dapm_widgets, + .num_dapm_widgets = ARRAY_SIZE(max98371_dapm_widgets), + .idle_bias_on = 1, + .use_pmdown_time = 1, + .endianness = 1, + .non_legacy_dai_naming = 1, }; static const struct regmap_config max98371_regmap = { @@ -397,21 +399,15 @@ static int max98371_i2c_probe(struct i2c_client *i2c, } dev_info(&i2c->dev, "device version %x\n", reg); - ret = snd_soc_register_codec(&i2c->dev, &max98371_codec, + ret = devm_snd_soc_register_component(&i2c->dev, &max98371_component, max98371_dai, ARRAY_SIZE(max98371_dai)); if (ret < 0) { - dev_err(&i2c->dev, "Failed to register codec: %d\n", ret); + dev_err(&i2c->dev, "Failed to register component: %d\n", ret); return ret; } return ret; } -static int max98371_i2c_remove(struct i2c_client *client) -{ - snd_soc_unregister_codec(&client->dev); - return 0; -} - static const struct i2c_device_id max98371_i2c_id[] = { { "max98371", 0 }, { } @@ -432,7 +428,6 @@ static int max98371_i2c_remove(struct i2c_client *client) .of_match_table = of_match_ptr(max98371_of_match), }, .probe = max98371_i2c_probe, - .remove = max98371_i2c_remove, .id_table = max98371_i2c_id, }; diff --git a/sound/soc/codecs/max98371.h b/sound/soc/codecs/max98371.h index 9f63309..06e9ba7 100644 --- a/sound/soc/codecs/max98371.h +++ b/sound/soc/codecs/max98371.h @@ -62,6 +62,5 @@ struct max98371_priv { struct regmap *regmap; - struct snd_soc_codec *codec; }; #endif