From patchwork Mon Dec 10 21:02:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wolfram Sang X-Patchwork-Id: 10722465 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BE9AD18A7 for ; Mon, 10 Dec 2018 21:03:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id AEB202A88C for ; Mon, 10 Dec 2018 21:03:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A327A2AB00; Mon, 10 Dec 2018 21:03:44 +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=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 510EB2AAEF for ; Mon, 10 Dec 2018 21:03:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=Y3I80k/JNjKIZzZjCOOjHolMIErcYeAU4JaisOAbOAc=; b=shQ pB+0p2kCOupyeL+LU/QBj3LLbcQpxT1DlY75dBeSGn+ly8aa+j9TUZ9Q9/kWfb7dO5Dtw83rhplJ8 aYDWI4V/M5X3CFqTO2c1FumRQ39+SlYz/+YyXX969+HeCvvJcYUZx1Rt34JhWJpm4svvV6Y3Yr1li Zbgmv+Z5LyYw8kHD0a044htHgORgAZ13ZuOyIQFbCFtFfa4+Ys+dSfAnpLgLMKTTg/Z6xZR3wTf4P 8JT1BPu4TTmlMmaksgKeiApUSj/d2fgLtj4LJg6clTDntjaVrC1u3whLGWQ/SFFgXlfzu5LsQzzfM 1FnwSGAKIVGZEgtyzhufsVgyn4Zk8rQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWSiL-0007Uo-3Q; Mon, 10 Dec 2018 21:03:41 +0000 Received: from sauhun.de ([88.99.104.3] helo=pokefinder.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWSi8-00076i-4Y for linux-arm-kernel@lists.infradead.org; Mon, 10 Dec 2018 21:03:30 +0000 Received: from localhost (p54B335CF.dip0.t-ipconnect.de [84.179.53.207]) by pokefinder.org (Postfix) with ESMTPSA id 0103B4C200E; Mon, 10 Dec 2018 22:03:12 +0100 (CET) From: Wolfram Sang To: linux-i2c@vger.kernel.org Subject: [RFC/RFT 00/10] i2c: move handling of suspended adapters to the core Date: Mon, 10 Dec 2018 22:02:58 +0100 Message-Id: <20181210210310.12677-1-wsa+renesas@sang-engineering.com> X-Mailer: git-send-email 2.11.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181210_130328_334804_0530E9E1 X-CRM114-Status: UNSURE ( 9.57 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-samsung-soc@vger.kernel.org, Wolfram Sang , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Hans de Goede , bcm-kernel-feedback-list@broadcom.com, linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Finally, here is the implementation Hans and I agreed on. Plus, all potential users I could spot already converted. Renesas R-Car driver was added on top. This series was tested on a Renesas Lager board (R-Car H2). I had to hack some error cases into the code to verify the workings. I couldn't create an error case otherwise, this is why further testing with more complex setups is very welcome. For my taste, there is still too much boilerplate code for drivers left. Plus, it is also too easy to put it too early or too late. But I haven't come up with a better idea yet. And it is time to get this somehow forward. Please comment, review, test... a branch can be found here: git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/i2c/core-pm-helpers Thanks, Wolfram Wolfram Sang (10): i2c: add 'is_suspended' flag for i2c adapters i2c: reject new transfers when adapters are suspended i2c: synquacer: remove unused is_suspended flag i2c: brcmstb: use core helper to mark adapter suspended i2c: zx2967: use core helper to mark adapter suspended i2c: sprd: don't use pdev as variable name for struct device * i2c: sprd: use core helper to mark adapter suspended i2c: exynos5: use core helper to mark adapter suspended i2c: s3c2410: use core helper to mark adapter suspended i2c: rcar: add suspend/resume support drivers/i2c/busses/i2c-brcmstb.c | 13 ++----------- drivers/i2c/busses/i2c-exynos5.c | 11 ++--------- drivers/i2c/busses/i2c-rcar.c | 25 +++++++++++++++++++++++++ drivers/i2c/busses/i2c-s3c2410.c | 8 ++------ drivers/i2c/busses/i2c-sprd.c | 34 ++++++++++++---------------------- drivers/i2c/busses/i2c-synquacer.c | 5 ----- drivers/i2c/busses/i2c-zx2967.c | 8 ++------ drivers/i2c/i2c-core-base.c | 3 +++ include/linux/i2c.h | 9 +++++++++ 9 files changed, 57 insertions(+), 59 deletions(-) Signed-off-by: Hans de Goede