Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp29589593rwd; Wed, 5 Jul 2023 14:21:14 -0700 (PDT) X-Google-Smtp-Source: APBJJlHXkx0g1UE5Y1/e+bC4YB2QMUKOdEkEKC8RdVArqdCTIZx1DwQ9VjCnfW2bRXyTOnl1ABmN X-Received: by 2002:a05:6a20:9494:b0:12e:b362:a3fa with SMTP id hs20-20020a056a20949400b0012eb362a3famr51495pzb.21.1688592073868; Wed, 05 Jul 2023 14:21:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1688592073; cv=none; d=google.com; s=arc-20160816; b=hVK5Er5Q55LIWqwzSh+tMb3fKrliPPoSlxvFxPOY3aG1cnl5aCV8a/re0fBRhjneVN WPYpxCK2ut3NOeHKXvTf0MyQDnU0zU9A3uz53E7cobBbWlbVdk+fFmVaUrojprvbqSWI HrN1h61rjfT1AkVZdQu8r9E2YgGh8hpIYYKFGQMzT78PTW49XTXq6KO4VVo6ezdk6+8k 4q5vSdGJbQu7x3iwNtFWN4AwH3ijv7h/rMR4590BhLRD/ZB/t1x/SEJ0sbValxLGm2Ee Nj54MLMouh2RK14XBgIkMMz9QtOx04vW7xU1aNrpcRVT15AioS0H8HLr+uNq6Hl0Ww86 S/tQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=O6riZ7HAoo2pfRWqdmOzvB12VXTYW5f5TYo3Pt2LWIk=; fh=Ql3asCgDBNZ62cyXgU9/R7FqPqrQQQb0Q4z2YsyS3us=; b=WsOkk0jvUDOt86qLl2WldoK6TwqB6eCQ72fBgN27BniQC/TFkRrGfJq1dfwjsTywNR udxmSS4GRDEXSwo1hnOYnyU6sxB2wDmfxRFSWDlfv67ID2KZ6prBOcabsgsDUunrfkYJ OS58w1Y4PQFUsX8HvvAV9uF/9frSH+2oRgPgllj74OUxyr3EZeOosz/RdvP526kx0omv lYgCnJMNjiSgK6IGHOowQmvsmiOLLrA2mM9k85/cpeAwWwMe+s3n8yhxTAW+I8LUeMvk ByPMm44Yg62woOPtzi2iav3e8BOT8nUwZ7zAbY76Za+BFxVTZmsFb0MmsiFAEyukxKnl syuA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@crapouillou.net header.s=mail header.b=dqJL0juF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id fd34-20020a056a002ea200b00668724d0816si20559pfb.38.2023.07.05.14.20.58; Wed, 05 Jul 2023 14:21:13 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@crapouillou.net header.s=mail header.b=dqJL0juF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233978AbjGEUqq (ORCPT + 99 others); Wed, 5 Jul 2023 16:46:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50436 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233918AbjGEUqp (ORCPT ); Wed, 5 Jul 2023 16:46:45 -0400 Received: from aposti.net (aposti.net [89.234.176.197]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 52BD51FC6; Wed, 5 Jul 2023 13:46:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=crapouillou.net; s=mail; t=1688589825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=O6riZ7HAoo2pfRWqdmOzvB12VXTYW5f5TYo3Pt2LWIk=; b=dqJL0juFB6n6IaMEyVkmC5kCzdZ+82vdOx52STzkhs+yMRkdcf/jPHayDbfCyfQL/GIEZp ZkOOG+F9Z2P4nnQVHZOGAyI0VbRXDgtNVvgX0LothzRswXpl31NCDV9N5H3+v2x5kPEkyN IXMYQRCxoTsJx+xzUeyVnEyvnX56Xj0= From: Paul Cercueil To: Wolfram Sang Cc: linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, Paul Cercueil , Vladimir Zapolskiy , linux-arm-kernel@lists.infradead.org Subject: [PATCH 12/23] i2c: lpc2k: Remove #ifdef guards for PM related functions Date: Wed, 5 Jul 2023 22:43:03 +0200 Message-Id: <20230705204314.89800-13-paul@crapouillou.net> In-Reply-To: <20230705204314.89800-1-paul@crapouillou.net> References: <20230705204314.89800-1-paul@crapouillou.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Use the new PM macros for the suspend and resume functions to be automatically dropped by the compiler when CONFIG_PM or CONFIG_PM_SLEEP are disabled, without having to use #ifdef guards. This has the advantage of always compiling these functions in, independently of any Kconfig option. Thanks to that, bugs and other regressions are subsequently easier to catch. Note that the behaviour is slightly different than before; the original code wrapped the suspend/resume with #ifdef CONFIG_PM guards, which resulted in these functions being compiled in but never used when CONFIG_PM_SLEEP was disabled. Now, those functions are only compiled in when CONFIG_PM_SLEEP is enabled. Also note that pm_sleep_ptr() has not been applied to each callback in the dev_pm_ops structure because the pm_sleep_ptr() at the usage site is sufficient. Signed-off-by: Paul Cercueil --- Cc: Vladimir Zapolskiy Cc: linux-arm-kernel@lists.infradead.org --- drivers/i2c/busses/i2c-lpc2k.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/i2c/busses/i2c-lpc2k.c b/drivers/i2c/busses/i2c-lpc2k.c index 5c6d96554753..c61157f1409b 100644 --- a/drivers/i2c/busses/i2c-lpc2k.c +++ b/drivers/i2c/busses/i2c-lpc2k.c @@ -431,7 +431,6 @@ static void i2c_lpc2k_remove(struct platform_device *dev) i2c_del_adapter(&i2c->adap); } -#ifdef CONFIG_PM static int i2c_lpc2k_suspend(struct device *dev) { struct lpc2k_i2c *i2c = dev_get_drvdata(dev); @@ -456,11 +455,6 @@ static const struct dev_pm_ops i2c_lpc2k_dev_pm_ops = { .resume_noirq = i2c_lpc2k_resume, }; -#define I2C_LPC2K_DEV_PM_OPS (&i2c_lpc2k_dev_pm_ops) -#else -#define I2C_LPC2K_DEV_PM_OPS NULL -#endif - static const struct of_device_id lpc2k_i2c_match[] = { { .compatible = "nxp,lpc1788-i2c" }, {}, @@ -472,7 +466,7 @@ static struct platform_driver i2c_lpc2k_driver = { .remove_new = i2c_lpc2k_remove, .driver = { .name = "lpc2k-i2c", - .pm = I2C_LPC2K_DEV_PM_OPS, + .pm = pm_sleep_ptr(&i2c_lpc2k_dev_pm_ops), .of_match_table = lpc2k_i2c_match, }, }; -- 2.40.1