From patchwork Fri Oct 21 04:29:48 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 9388043 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 27D78607F0 for ; Fri, 21 Oct 2016 05:09:58 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1897E29CBF for ; Fri, 21 Oct 2016 05:09:58 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 0D36829D29; Fri, 21 Oct 2016 05:09:58 +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 CD09F29CBF for ; Fri, 21 Oct 2016 05:09:56 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 436902668CC; Fri, 21 Oct 2016 07:09:55 +0200 (CEST) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id 65A6C2668DB; Fri, 21 Oct 2016 07:07:37 +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 1033426688A; Fri, 21 Oct 2016 06:30:01 +0200 (CEST) Received: from relmlie1.idc.renesas.com (relmlor2.renesas.com [210.160.252.172]) by alsa0.perex.cz (Postfix) with ESMTP id 7D639266875 for ; Fri, 21 Oct 2016 06:29:53 +0200 (CEST) Received: from unknown (HELO relmlir3.idc.renesas.com) ([10.200.68.153]) by relmlie1.idc.renesas.com with ESMTP; 21 Oct 2016 13:29:52 +0900 Received: from relmlac2.idc.renesas.com (relmlac2.idc.renesas.com [10.200.69.22]) by relmlir3.idc.renesas.com (Postfix) with ESMTP id 1E3DB4D2F6; Fri, 21 Oct 2016 13:29:52 +0900 (JST) Received: by relmlac2.idc.renesas.com (Postfix, from userid 0) id 113D728070; Fri, 21 Oct 2016 13:29:52 +0900 (JST) Received: from relmlac2.idc.renesas.com (localhost [127.0.0.1]) by relmlac2.idc.renesas.com (Postfix) with ESMTP id 0AF952806F; Fri, 21 Oct 2016 13:29:52 +0900 (JST) Received: from relmlii1.idc.renesas.com [10.200.68.65] by relmlac2.idc.renesas.com with ESMTP id PAA02392; Fri, 21 Oct 2016 13:29:52 +0900 X-IronPort-AV: E=Sophos;i="5.22,559,1449500400"; d="scan'208";a="222968117" Received: from mail-pu1apc01lp0019.outbound.protection.outlook.com (HELO APC01-PU1-obe.outbound.protection.outlook.com) ([65.55.88.19]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA; 21 Oct 2016 13:29:50 +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=dOS+Rt/WmVebU9UnU9Ya1JHyv7xIAHHbGE7MRnGT4GE=; b=HZselIGsN7yTdwNGJJb/hwcBUv4V4/8FDzV8zKlxguPO61HkrsMP6JQqWwsDyk47qwCuToA8DjLaydXFWzrdSqxrZWQWUxAqHnlR6Tf4xiFSygijwzUEjJU6CFLDQthwCdM7tKtC5AIqSwVFCMP1/OzAKJoPONOn5xFSZ3/gG70= 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 KL1PR0601MB1448.apcprd06.prod.outlook.com (10.169.69.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.659.11; Fri, 21 Oct 2016 04:29:48 +0000 Message-ID: <87bmye2v0i.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Mark Brown , Lars-Peter In-Reply-To: <87eg3a2v32.wl%kuninori.morimoto.gx@renesas.com> References: <87eg3a2v32.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Fri, 21 Oct 2016 04:29:48 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: OS2PR01CA0044.jpnprd01.prod.outlook.com (10.164.161.154) To KL1PR0601MB1448.apcprd06.prod.outlook.com (10.169.69.26) X-MS-Office365-Filtering-Correlation-Id: dd1c1491-3a48-42b0-cd78-08d3f96ae4f8 X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1448; 2:XepO0lax+7C3Jim0FKeNoJwbUV8D4touZR2Ip3T50cyMZm1C3iu5sRCPbo1TwJbCDmy877AXwTj9le92p0LiEUu00ngT0bl+ljVQbhsKs+oSGvsvY16fWGRZ4RlEj5+fKL81zUWi751p4jky2Vw8vLaiET51WIPH0yf+6oWRY7ZNkRcpTpQ4hNVtDPk+RqMfDdOz0g7MAWxPVJ8QY6bFTw==; 3:oQQLCR0ldDz1mDbrzn7KjD5fLD3WtLH57uxr0yeeVVHbtxoYs72lrAK6OEwCBOqK87QvgmEmazvBXZwelC07+zS1OLpxR1YFEJ/LZeJjmsWcbUM9H6HSlLUaBMYVuChi1D0ZAx8kYJmfIxD6m45y5Q== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:KL1PR0601MB1448; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1448; 25:zb/opNQEMZpEKIuTQ+lqpxLfBq8kBTW3i3/GT/NQ7KV0Ae0Xh8l5qPj2QOn8Bwn/p54phx/E9LJc8C+QVzPt2cIUduUvyktbXe3lyDK52XFjo2LDXEfVXrrCd7wDH1956P265I8X/LWVGHeC2jpOcKIz/vE0uNlqzJ/vey8gymKctIKMCx/pVRAvso68IlupTKGXpdpXOgFmdG+cGzr+yYLpfWCVyNBHle7hQXYP03yUWJ9KVzr8p1FAQGAbWZsSvEnLwivzUmG+zEjkpD6d0yWAfXcUNrdS8hTS+zwszdvRfSWXj9DNPLG90ue0SjlUkWfTcFcIYKB2ZHhRXeBo6Y8J59UdI6caNXBddqU29iCK9INSxDBNEsLb6MOdiwCEvGoXKWIMFFvMyVuMT46nJrW5ouCsKZ/ZcqOb7r0IH9ad85sR+EKhtn3jGnzxa6pKSz/Azwcuk4laVMC7qe6heV0lJE8Ja8RKNX74YwirenUaaCddVlDfbnmXd82PtXVxaBm3frQ1HvWkr4+nNl8S8vrfTVKil3OwAe9t9zG/s3quRdZuwoSy2vCUq6+5WxdFDrrZ8tsSVquKgPRUmYqiXmaRNDjlmlakLbWORpxTdzAZ2xvFso2jGY1tyzRlWoCzA6J4fOoiXEjvbrbDV2n/dwiTVHCoF1lFB4n7hwJGTfdrlhyW10EViIK68fGRLb1ezOYcSIeR+jWd9JhqqoiXsmGqrZhJLNGba9/z5GgVCgtRdpm39oqbom8hvs6bcofC X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1448; 31:E3DH3iy9H0/I5VtHx4a6LWjmTvCXPt+FJ56V2l8UtLM/PrnFKfhpS+xQ5B+SeTheP+dfIzxmCXaeaL1xYHO6HeVV5/pw9OHMB19XjajV094FXQlmhAUP/G99Od7wiDE7RB1VeGn87kRxoZ+iIdIvzVpBErhEywCkrPb+r4gkM8pUgxqN9aPQ+t6vkjkRDCP8WY0NxF2tZDgVvc9/jsDLrY2LtWSjoSiPQ3+22dLKUP3rxxMUJJ74+bn1GoPwvYG2; 20:/q+CAUV74y71sDZyZpcepjUdqewE9mgxqtHQlCWugs++8G1X/02srIANw8Stlyojl53IYmTnAiloBKrgtWb51JpXZ/3H8Djwl6qJqT3yYms1PSLuO3roXa0wtCvlGc0C+gDVG5Q8ZnO+cKy5SMzu5ifwFtRHavl73WbySCubMHiXYTssPRZjDd5H485lDplTVkrjBYYpIRgeSrbN0fVfE5mzqtI4wzKVhTYaQ0dJejberU0apQeFs9BoXDbK0qFtGBqpk9uMwgOLo6v3vQoczBEu6RRk3ZNiG2Ex+n5/9qc8Wf1Cf6jhse0AbJTfbTsdbnEOIVwoOk9orlYe3+ucD2Dw37s3Z/sW5SNCjrCurPYTyqE/jA7qqcxX+wFnai4LlwKp+mFNL/qJKM23jJUVhiVYAaRS3jEY2KuxOtKuWrdqehjGTQriFpIh7M/Ett4Wglc8XIMmI+iQMuofuaDqN7yHQHu+3s/SbU/fR4EPurPyYNDHkcAC53i8os0wYup6 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026); SRVR:KL1PR0601MB1448; BCL:0; PCL:0; RULEID:; SRVR:KL1PR0601MB1448; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1448; 4:kJ3fbvKNrFJemCM2y5RPNRN/BiW75qxDxf2zTHmqVhwjds41AUhuBNjp/X/zRVWoE6E4k+s4yuVQZaq5xG/uPHFQiWmXyP20UUedYSN5RP9odAXz8rGwYlJsO62aj9mumW2imzcxm2vLFrQCoU0kTnt8ToLKojvQ7JGJullrMEIy4GKmsfkr7hU68Alz65faHEeIGfwM+peTA+wbwUQyYTB7L96YIAGmlrPQS9wjsGGILFDw7pZX3fcYl5YgLf+06VKWTGFn1KYyCQl+Yt0M0WeDRCc6hPLrjxGZB5qy9b+EFa1A7w64oetc65gQTf6HBRSuWYCCO1CtW7Q9x+xphdQNPNqE8oBrTMgHJ7mkPEyEnhUhM9drprbGCdFfeML3RHlZ0BeJvXYRDcm0IlbY/8xkd/Zs4IiwRrWZODsnuKxdQMxix8rQNpx4YR/pReiuINA1JcJqk5kYJSTiz/Fedw== X-Forefront-PRVS: 01026E1310 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(189002)(199003)(305945005)(575784001)(76176999)(81166006)(7736002)(19580395003)(66066001)(5001770100001)(8676002)(47776003)(2950100002)(77096005)(81156014)(7846002)(19580405001)(54356999)(50986999)(3846002)(97736004)(23726003)(6116002)(101416001)(33646002)(189998001)(105586002)(106356001)(229853001)(586003)(4001350100001)(42186005)(4326007)(83506001)(53416004)(69596002)(2906002)(50466002)(86362001)(68736007)(92566002)(36756003)(46406003)(5660300001)(15760500001)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:KL1PR0601MB1448; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; KL1PR0601MB1448; 23:7xy3xGgS8sXzitVACsfiSeRH5o0MOvUg1ME5kwJ?= =?us-ascii?Q?jmo0/bIuIJu/TkBQKJfXldTf4ZTz0im4foiZDwFMMXGK2rDvgQnSvP4ViUzO?= =?us-ascii?Q?zMbvYyAbmcQNwGy8GCOOJy2xT2ITwimsGHmGGOAjcJ/LzTCK0CKdEdGCTNNS?= =?us-ascii?Q?22azffZ+yx7y/qLIEgHdfWSRiOy7E8PXi+yRl2oeUdQaftmmSJqBmGh+R3gi?= =?us-ascii?Q?NFatH9aGqM6shkWafXT4wLlBJLPeWgueM/wSiBKl4hydy9KU/gGF/uaSQzDQ?= =?us-ascii?Q?Y3jo95wtgJ8RE/Bd9nSnCAmvRgO7vai4IM3hFOWg8kctsuUq+P/YVTD33N8c?= =?us-ascii?Q?wariwqpoQ6vyZ1vf+yTrdsLkGlI9wrsv0U6NXizsjsXaao39B+TkjMGxZwzG?= =?us-ascii?Q?aJuFvwymssMo36Ht2WVmwu9dZFDnjDbZ6fnkpXGYSof8ICCMf+m4CiUpJK7q?= =?us-ascii?Q?h9J8uT+uPcdLVc/P5eEH20rrJdNBeVyyJyfT7mYJVYPDWiQiATrGsWjencz+?= =?us-ascii?Q?L8h09Htd1I4u+LAzuZL6gOIcr1gnRTrqT4kq8iFMnsw42fzF9fvIihFYDD4c?= =?us-ascii?Q?NftHL1E0pImqOzBJxLcpYBt/IAG36YLcPlu3kEaF1cEwqb18ZSBvI8WuutYx?= =?us-ascii?Q?cQK2mAufvfbnBsJNu85NNPtcC4w2lNW/v3UeGl3xcuT3wPyv0UuQ7SRjJIv3?= =?us-ascii?Q?SI4IjE+BmthRS0Sao7FIE3SVkkH1er2aXYfGOm+hDDYvTuULHQDzpyGnMoWS?= =?us-ascii?Q?WZqX8snS3K/w8CLhw6HzIzGrtIaNeSw3rjG4ZPPR64RQBZpj9c24zyUFNJvI?= =?us-ascii?Q?BRLfrXz2EBCV96zTAna/l8FWyycNCfq2lr4VBcU0Uic7JqxBexOyAOELhur1?= =?us-ascii?Q?LAiOk7jOev3KKkbHZCPEY64RHqF9rdJhFgRJY7b0mqRB/mfbgXuVZaIms+Ds?= =?us-ascii?Q?yWmLzoqowM/BJ9GgbYm2iUrog5Qpdc18gvihsyiSbZXlRtDIY2UzdxApiJnS?= =?us-ascii?Q?jkWw7wYdSyDZ8VxjOxVcbYGuMmBd4mRGCYYVqRhjJs02h1VHSyl4nljQLHSE?= =?us-ascii?Q?QSTI6PJ9x50UVyq/dMGsKFmNSmk7+8wFgZiS3jpVFBJyKz15cdD0suXZWBG9?= =?us-ascii?Q?J4DKq4MfDKq5TXSrsvJS/9L8W8oHB5tRj1js5W1i3PQ5wUB0dbpGxeYsG4cl?= =?us-ascii?Q?LEYavnvUD0FUjMBb0DcMQUMWunPXb/yNPgCLhmyXhhDt8qIcZRe4ZLItXOrR?= =?us-ascii?Q?dzVKhjLFR6ZcIBqnvFck=3D?= X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1448; 6:M9eZ9SwvSvH+47oc3QgPd/ULD17FwX89+t6kkGOWsIWZiPR4MAFIWbHA4LAiM0zAB5MGlSNH8y+EqZ3VFvpxuMJ/MA1GdoPw2j3s61DnaTLtTZoD33mkwhvAndGPp/7XVm6kx1dgWj4IwIpNWCPlvAzJs7PaBROYzr5Hjri06hf2JEb0RRZfktP76jn/G0hme6HHs8WhwZfgTH7HMqfNzKi72IwTna2k1NsXlJnPPcYklRz0on0A3VjHyjsKudG5g/07tQeW4luldZHDv1eH/e9+/ka6hw+nYBuA4Pz5J3iFGdsxYY9GoeomEXQqITj/SwFlkThpV2MwANZ11U3a5VD7F1z76mM854HV+maXpF0=; 5:eBg3ZzFItU7H1Mwye5a76ahZopvQ2jOj0qgEU8bY7NXheBXl1P3EtFpDWccl/8ZbCHqYjbmWfd66TvuUVyImMqZGGc9IuPw2BQwscioy+pmJqi3UMQPALcZKiybz1uF4dbOZo5DvRd10TMXHlfbjZLaUkarVAEXjnS62DSaihpc=; 24:OCI4+A9twZarqvaNJTm4BHBBKZWmbrQK9nyt2ghEG2D+XAyjJB6z9E3dTObUxVf7ODTOdhlwKNlKZcM8pIPOf3I0n0PaXP1kyRQ5NVZPO2Y= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1448; 7:LDo2nH8tzs1x7a2zFspsMfhyADKQXDsuKIfnp9sEXpcNcd1MiRKcV+I6ePJ107hCQNbFNUvBPtpqDwnhcISkeHzOIHjt7QpjytJXwMc+ZS7hOVpxfUaUNYvZaGMZByrWjXbcs+s6q0L2rsV/ipctkJVd2PZhc9N95c+YeooyPHrZ8YJTpvJ38ca1p6jPbOyqXDPPdQff8CXtYYoIK45tK8uXvy0aGQsKx6gxhF9yGlx7pLYxV1x38ynK+78kqRDy8RCVFhauIsFvqAWKWV+QpUblSXNO/0eUZ3TODM/JSKyGE6RVvCrRpbV7O4KOmJwNQtHYMgs1sxoNMTJCBvOeE9hY1t/1KSxDcgHrOitDjuM=; 20:rd6bxkECSgPzu6/byf8ZuW4BMW9CrAzBYenJIPTCjI+waDyH4TYfPOXGFO8gTMxnhjwep/FdNzlQrbfs8DBbxZRNuUyVUtcE7pV3fdP/tsB8eT4boOTHAAHVD3/X8S/PuRcA7YejjSAw1pMF/0LLCq8enp6gyP4ZQY+xH9e2xYA= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2016 04:29:48.6636 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR0601MB1448 Cc: Linux-ALSA , Simon Subject: [alsa-devel] [PATCH 2/4] ASoC: rt5670: rt5670_jack_suspend/resume() uses 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 Intel cht_bsw_rt5672 is using card->codec_dev_list, but it will be replaced to component list soon. Then, it will not be able to use "codec". So, rt5670_jack_suspend/resume() needs to use component instead of codec. This patch replace it. Signed-off-by: Kuninori Morimoto --- sound/soc/codecs/rt5670.c | 53 +++++++++++++++++---------------- sound/soc/codecs/rt5670.h | 4 +-- sound/soc/intel/boards/cht_bsw_rt5672.c | 4 +-- 3 files changed, 31 insertions(+), 30 deletions(-) diff --git a/sound/soc/codecs/rt5670.c b/sound/soc/codecs/rt5670.c index 49caf13..47e3bac 100644 --- a/sound/soc/codecs/rt5670.c +++ b/sound/soc/codecs/rt5670.c @@ -413,46 +413,47 @@ static bool rt5670_readable_register(struct device *dev, unsigned int reg) * Returns detect status. */ -static int rt5670_headset_detect(struct snd_soc_codec *codec, int jack_insert) +static int rt5670_headset_detect(struct snd_soc_component *component, int jack_insert) { int val; - struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); - struct rt5670_priv *rt5670 = snd_soc_codec_get_drvdata(codec); + struct snd_soc_dapm_context *dapm = snd_soc_component_get_dapm(component); + struct rt5670_priv *rt5670 = snd_soc_component_get_drvdata(component); if (jack_insert) { snd_soc_dapm_force_enable_pin(dapm, "Mic Det Power"); snd_soc_dapm_sync(dapm); - snd_soc_update_bits(codec, RT5670_GEN_CTRL3, 0x4, 0x0); - snd_soc_update_bits(codec, RT5670_CJ_CTRL2, + snd_soc_component_update_bits(component, RT5670_GEN_CTRL3, 0x4, 0x0); + snd_soc_component_update_bits(component, RT5670_CJ_CTRL2, RT5670_CBJ_DET_MODE | RT5670_CBJ_MN_JD, RT5670_CBJ_MN_JD); - snd_soc_write(codec, RT5670_GPIO_CTRL2, 0x0004); - snd_soc_update_bits(codec, RT5670_GPIO_CTRL1, + snd_soc_component_write(component, RT5670_GPIO_CTRL2, 0x0004); + snd_soc_component_update_bits(component, RT5670_GPIO_CTRL1, RT5670_GP1_PIN_MASK, RT5670_GP1_PIN_IRQ); - snd_soc_update_bits(codec, RT5670_CJ_CTRL1, + snd_soc_component_update_bits(component, RT5670_CJ_CTRL1, RT5670_CBJ_BST1_EN, RT5670_CBJ_BST1_EN); - snd_soc_write(codec, RT5670_JD_CTRL3, 0x00f0); - snd_soc_update_bits(codec, RT5670_CJ_CTRL2, + snd_soc_component_write(component, RT5670_JD_CTRL3, 0x00f0); + snd_soc_component_update_bits(component, RT5670_CJ_CTRL2, RT5670_CBJ_MN_JD, RT5670_CBJ_MN_JD); - snd_soc_update_bits(codec, RT5670_CJ_CTRL2, + snd_soc_component_update_bits(component, RT5670_CJ_CTRL2, RT5670_CBJ_MN_JD, 0); msleep(300); - val = snd_soc_read(codec, RT5670_CJ_CTRL3) & 0x7; + snd_soc_component_read(component, RT5670_CJ_CTRL3, &val); + val &= 0x7; if (val == 0x1 || val == 0x2) { rt5670->jack_type = SND_JACK_HEADSET; /* for push button */ - snd_soc_update_bits(codec, RT5670_INT_IRQ_ST, 0x8, 0x8); - snd_soc_update_bits(codec, RT5670_IL_CMD, 0x40, 0x40); - snd_soc_read(codec, RT5670_IL_CMD); + snd_soc_component_update_bits(component, RT5670_INT_IRQ_ST, 0x8, 0x8); + snd_soc_component_update_bits(component, RT5670_IL_CMD, 0x40, 0x40); + snd_soc_component_read(component, RT5670_IL_CMD, &val); } else { - snd_soc_update_bits(codec, RT5670_GEN_CTRL3, 0x4, 0x4); + snd_soc_component_update_bits(component, RT5670_GEN_CTRL3, 0x4, 0x4); rt5670->jack_type = SND_JACK_HEADPHONE; snd_soc_dapm_disable_pin(dapm, "Mic Det Power"); snd_soc_dapm_sync(dapm); } } else { - snd_soc_update_bits(codec, RT5670_INT_IRQ_ST, 0x8, 0x0); - snd_soc_update_bits(codec, RT5670_GEN_CTRL3, 0x4, 0x4); + snd_soc_component_update_bits(component, RT5670_INT_IRQ_ST, 0x8, 0x0); + snd_soc_component_update_bits(component, RT5670_GEN_CTRL3, 0x4, 0x4); rt5670->jack_type = 0; snd_soc_dapm_disable_pin(dapm, "Mic Det Power"); snd_soc_dapm_sync(dapm); @@ -461,21 +462,21 @@ static int rt5670_headset_detect(struct snd_soc_codec *codec, int jack_insert) return rt5670->jack_type; } -void rt5670_jack_suspend(struct snd_soc_codec *codec) +void rt5670_jack_suspend(struct snd_soc_component *component) { - struct rt5670_priv *rt5670 = snd_soc_codec_get_drvdata(codec); + struct rt5670_priv *rt5670 = snd_soc_component_get_drvdata(component); rt5670->jack_type_saved = rt5670->jack_type; - rt5670_headset_detect(codec, 0); + rt5670_headset_detect(component, 0); } EXPORT_SYMBOL_GPL(rt5670_jack_suspend); -void rt5670_jack_resume(struct snd_soc_codec *codec) +void rt5670_jack_resume(struct snd_soc_component *component) { - struct rt5670_priv *rt5670 = snd_soc_codec_get_drvdata(codec); + struct rt5670_priv *rt5670 = snd_soc_component_get_drvdata(component); if (rt5670->jack_type_saved) - rt5670_headset_detect(codec, 1); + rt5670_headset_detect(component, 1); } EXPORT_SYMBOL_GPL(rt5670_jack_resume); @@ -512,7 +513,7 @@ static int rt5670_irq_detection(void *data) case 0x30: /* 2 port */ case 0x0: /* 1 port or 2 port */ if (rt5670->jack_type == 0) { - report = rt5670_headset_detect(rt5670->codec, 1); + report = rt5670_headset_detect(&rt5670->codec->component, 1); /* for push button and jack out */ gpio->debounce_time = 25; break; @@ -549,7 +550,7 @@ static int rt5670_irq_detection(void *data) case 0x20: /* 1 port */ report = 0; snd_soc_update_bits(rt5670->codec, RT5670_INT_IRQ_ST, 0x1, 0x0); - rt5670_headset_detect(rt5670->codec, 0); + rt5670_headset_detect(&rt5670->codec->component, 0); gpio->debounce_time = 150; /* for jack in */ break; default: diff --git a/sound/soc/codecs/rt5670.h b/sound/soc/codecs/rt5670.h index 3f1b0f1..132b151 100644 --- a/sound/soc/codecs/rt5670.h +++ b/sound/soc/codecs/rt5670.h @@ -2007,8 +2007,8 @@ struct rt5670_priv { int jack_type_saved; }; -void rt5670_jack_suspend(struct snd_soc_codec *codec); -void rt5670_jack_resume(struct snd_soc_codec *codec); +void rt5670_jack_suspend(struct snd_soc_component *component); +void rt5670_jack_resume(struct snd_soc_component *component); int rt5670_set_jack_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack); #endif /* __RT5670_H__ */ diff --git a/sound/soc/intel/boards/cht_bsw_rt5672.c b/sound/soc/intel/boards/cht_bsw_rt5672.c index df9d254..5bc8ab4 100644 --- a/sound/soc/intel/boards/cht_bsw_rt5672.c +++ b/sound/soc/intel/boards/cht_bsw_rt5672.c @@ -297,7 +297,7 @@ static int cht_suspend_pre(struct snd_soc_card *card) list_for_each_entry(codec, &card->codec_dev_list, card_list) { if (!strcmp(codec->component.name, "i2c-10EC5670:00")) { dev_dbg(codec->dev, "disabling jack detect before going to suspend.\n"); - rt5670_jack_suspend(codec); + rt5670_jack_suspend(&codec->component); break; } } @@ -311,7 +311,7 @@ static int cht_resume_post(struct snd_soc_card *card) list_for_each_entry(codec, &card->codec_dev_list, card_list) { if (!strcmp(codec->component.name, "i2c-10EC5670:00")) { dev_dbg(codec->dev, "enabling jack detect for resume.\n"); - rt5670_jack_resume(codec); + rt5670_jack_resume(&codec->component); break; } }