Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp5406962imu; Wed, 19 Dec 2018 10:32:28 -0800 (PST) X-Google-Smtp-Source: AFSGD/XJQQ5HS7BwQj8th7LbbFKi8s1pkThVNyMCBf6JEkz+kPonVcytD9sJif4Dow7iq8/6X5Qu X-Received: by 2002:a63:2406:: with SMTP id k6mr19693204pgk.229.1545244348138; Wed, 19 Dec 2018 10:32:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1545244348; cv=none; d=google.com; s=arc-20160816; b=t9leosPAeAZy/KWtxsKjfMRwRgSd9OSKrJGhbYv2VFlafy9owzvfZGBseIZRLsz+dW KEYq8LUC/kPFYXgPSxcu7C1/mrp797htq2SzYgFVNkrsk/fI6xCe1XmNGsbvFiBGTYHb cILSfkxxmmD/Wk38w81gMwo48iL7b4wBcYEJVdnuAJo9lC7goTEmrrzdbRcwBXmpGeg6 XohFjWWH94pCbkuGhSRissPyeSPWeKQ2gp/tdjeHZd76lua3q5PMVCXfLiGP0CJnyY0h QLd/r8AyIr8Aog0bKaCftU1StkC2XCCSL3+MTyvnzK1TLnX3s6wG5zlJ8buj5DttaxTa CE/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=lwqp6MPaLaDSvvxA6D4zugqBrI18FOB7RSz173m0LnU=; b=IiPU4Fi7mjfBbk8Q98+bIEoxHBxfEPrjXHT2g5nU3BWmFYJ6ZhhN1V0qPrO7Uei0+i lnlc8R4Jzq4hduJe8HlkYY6Xdv018d/Hvxgqz4g/8RJuFRUyjwul6hA/RdQK5MTPyQHn YJP3kBO6jN4Yu8gUSYCCSnwYNZ3v2RTKGqw8wug0YuKJ6qK3vD6l3tF9cbnjn0X6x4T5 vJ9c7vbBP7tO4PDi+wovYO7uMQ/iXpwE4ddKLZSb/USOz71cghbQZOOZXP1ubXqEdfHV 4X8OYoIUNM7UfyjGYLgjEe4CM3knQSEEO0So0JQw5FurweZ4pWdDk7rqiBl49N/ViUDX 8BxA== ARC-Authentication-Results: i=1; mx.google.com; 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 x2si7594079pgi.152.2018.12.19.10.32.12; Wed, 19 Dec 2018 10:32:28 -0800 (PST) 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; 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 S1730141AbeLSQtS (ORCPT + 99 others); Wed, 19 Dec 2018 11:49:18 -0500 Received: from sauhun.de ([88.99.104.3]:55894 "EHLO pokefinder.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729975AbeLSQsj (ORCPT ); Wed, 19 Dec 2018 11:48:39 -0500 Received: from localhost (p54B333DA.dip0.t-ipconnect.de [84.179.51.218]) by pokefinder.org (Postfix) with ESMTPSA id 644B02E35D2; Wed, 19 Dec 2018 17:48:37 +0100 (CET) From: Wolfram Sang To: linux-i2c@vger.kernel.org Cc: linux-renesas-soc@vger.kernel.org, Hans de Goede , linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Wolfram Sang , Jun Nie , Shawn Guo , linux-kernel@vger.kernel.org Subject: [PATCH 05/10] i2c: zx2967: use core helper to mark adapter suspended Date: Wed, 19 Dec 2018 17:48:21 +0100 Message-Id: <20181219164827.20985-6-wsa+renesas@sang-engineering.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20181219164827.20985-1-wsa+renesas@sang-engineering.com> References: <20181219164827.20985-1-wsa+renesas@sang-engineering.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Rejecting transfers should be handled by the core. Also, this will ensure proper locking which was forgotten in this open coded version and make sure resume mark is set after enabling clocks (not before). Signed-off-by: Wolfram Sang Acked-by: Shawn Guo --- drivers/i2c/busses/i2c-zx2967.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/i2c/busses/i2c-zx2967.c b/drivers/i2c/busses/i2c-zx2967.c index b8f9e020d80e..7b98d97da3c6 100644 --- a/drivers/i2c/busses/i2c-zx2967.c +++ b/drivers/i2c/busses/i2c-zx2967.c @@ -66,7 +66,6 @@ struct zx2967_i2c { int msg_rd; u8 *cur_trans; u8 access_cnt; - bool is_suspended; int error; }; @@ -313,9 +312,6 @@ static int zx2967_i2c_xfer(struct i2c_adapter *adap, int ret; int i; - if (i2c->is_suspended) - return -EBUSY; - zx2967_set_addr(i2c, msgs->addr); for (i = 0; i < num; i++) { @@ -470,7 +466,7 @@ static int __maybe_unused zx2967_i2c_suspend(struct device *dev) { struct zx2967_i2c *i2c = dev_get_drvdata(dev); - i2c->is_suspended = true; + i2c_mark_adapter_suspended(&i2c->adap); clk_disable_unprepare(i2c->clk); return 0; @@ -480,8 +476,8 @@ static int __maybe_unused zx2967_i2c_resume(struct device *dev) { struct zx2967_i2c *i2c = dev_get_drvdata(dev); - i2c->is_suspended = false; clk_prepare_enable(i2c->clk); + i2c_mark_adapter_resumed(&i2c->adap); return 0; } -- 2.11.0