Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp1177811yba; Thu, 9 May 2019 12:03:15 -0700 (PDT) X-Google-Smtp-Source: APXvYqxM08+dCVBI++JsENzknjHVqps0ML8DwL5Bwp+CM2dknlegk0qUuXnWt+dx4xhlRsqqO7la X-Received: by 2002:a17:902:a503:: with SMTP id s3mr7340360plq.16.1557428595254; Thu, 09 May 2019 12:03:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557428595; cv=none; d=google.com; s=arc-20160816; b=iw0/gW1Y9urcy8+kDA/rLJJO4OpmrFuudM5HPcX0z7Ys30WB1uRFgHmgYO0e6ma0n/ sNpN9uELCfp6VNN/cPdeNEZ3QynVr0v+/JYCr3hxV3RZGTBYdMEWQaOX8Ep2rebqqMv/ IGRZ5Gh+9BGEIFCS2SF3c5TuSX6uVAySz3pdCZ04WUda34KxoZcWaSWVdasC7kZe4/EQ tmOUi6HogegbwC6eSIzsZN+6wHUmwhWAqaCWQrvDx/8O7HMe7TVeHajJfS4S5GFpscIL itxPgia/r03vcmTuFU/AmjSMyRytbXhkhJkoH6ibfT8ucQRASbONpLdP6Fw1W9UTUIVp YN8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=5eY4OVTbbDjnQHxEkAkYrUT6qeZKFW+/BQDYVEWg/0w=; b=ZzQ6KSdp1pE3w6NvcLHySWaSkKkDea62TPJ91h/Fns8qEW4kAmcIJj15RgkPMlOqOk 5B6aokPW9R9jxBF//6eLYS8WjWKpHlWJB5S6CfLRuCvC51YKDWIXYceOGmU6AylLTO+L Z+1HgsV0lKZrjywSXKwI+3aNIEb3Ed8pws6GiT3qnhulZEiFV+9aeHMhnUPK/rlc7geO H/o7pSpTVkQ5lsj9fFhPXeTGC9/F7sQecX3Hr6zD85HJqmrJwXvgpKP1kRPJC2OET21m 2cp73iT6OnOU1U2HQG6aECMcA9gE3/PfYdpMzp+b0Evk1IkE9vy4UdPivVjG8okUErnb l7SA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=rTiCu2ur; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 71si4088758plc.160.2019.05.09.12.02.58; Thu, 09 May 2019 12:03:15 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=rTiCu2ur; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728930AbfEITAX (ORCPT + 99 others); Thu, 9 May 2019 15:00:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:45464 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728328AbfEISvk (ORCPT ); Thu, 9 May 2019 14:51:40 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 035032177E; Thu, 9 May 2019 18:51:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1557427899; bh=AFVKm1rtHlf4BYp39A7OOmkyXbVuznMWBpMiJDUsB8g=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=rTiCu2urJk7DK8Nb9zpYgeKoq1X4UNSkNBx74aPqeCC7B9xQOgYuexubmkJV9JdDL RgX0xk0kgWj3eEBNtxJdGsfIyep5hRBewWoYxrzNO8ufvMCT/YG4gaUdGOWedtKX6/ 7EqEy7LnA3LEF8AznDMQBnCtYsfNBjsck+Ce/lBo= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Charles Keepax , Mark Brown , Sasha Levin Subject: [PATCH 5.0 46/95] ASoC: cs35l35: Disable regulators on driver removal Date: Thu, 9 May 2019 20:42:03 +0200 Message-Id: <20190509181312.688513493@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190509181309.180685671@linuxfoundation.org> References: <20190509181309.180685671@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [ Upstream commit 47c4cc08cb5b34e93ab337b924c5ede77ca3c936 ] The chips main power supplies VA and VP are enabled during probe but then never disabled, this will cause warnings from the regulator framework on driver removal. Fix this by adding a remove callback and disabling the supplies, whilst doing so follow best practice and put the chip back into reset as well. Signed-off-by: Charles Keepax Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/cs35l35.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sound/soc/codecs/cs35l35.c b/sound/soc/codecs/cs35l35.c index 9f4a59871cee7..c71696146c5ec 100644 --- a/sound/soc/codecs/cs35l35.c +++ b/sound/soc/codecs/cs35l35.c @@ -1635,6 +1635,16 @@ static int cs35l35_i2c_probe(struct i2c_client *i2c_client, return ret; } +static int cs35l35_i2c_remove(struct i2c_client *i2c_client) +{ + struct cs35l35_private *cs35l35 = i2c_get_clientdata(i2c_client); + + regulator_bulk_disable(cs35l35->num_supplies, cs35l35->supplies); + gpiod_set_value_cansleep(cs35l35->reset_gpio, 0); + + return 0; +} + static const struct of_device_id cs35l35_of_match[] = { {.compatible = "cirrus,cs35l35"}, {}, @@ -1655,6 +1665,7 @@ static struct i2c_driver cs35l35_i2c_driver = { }, .id_table = cs35l35_id, .probe = cs35l35_i2c_probe, + .remove = cs35l35_i2c_remove, }; module_i2c_driver(cs35l35_i2c_driver); -- 2.20.1