From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0447DC07C79 for ; Mon, 22 Apr 2024 19:44:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:References: List-Owner; bh=Uwp92M2ziigNjGMd1NW6QbIV3mHj1bycnG4XMOekmN0=; b=fSSu9ugNBYH127 qATHBSlBNQ9takewI1jFrPXTVYSt+6guZ20jM89S+nksDUf49EV4ZyciCjNRw3IjXzBd0Zlc/V2oJ GuOfdVGsfWC2SkbH9QQUtFQ8nHS/LJlW48BBag9/pq8kyWPo32nMigPrSjbjP5zjG+w+YmShENtC/ 7FAnu4gObI7ToedjjxsaDqEqj7sLWNBzI3fiHOD7r1NB1GyftE+1olkhizQ1ZfO9p+A0Kh6xIEBww vlrK+6RVnGEcoz15WjpNbqhHmG9sjIeMFDAUngKX+T4h1k5wk5Q6hvSZhnL1zY5DWmbJ+ETHutRfl bAYDdm7weXM7T3q90wCQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1ryzae-0000000Eq1l-3rgG; Mon, 22 Apr 2024 19:44:37 +0000 Received: from sin.source.kernel.org ([2604:1380:40e1:4800::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1ryzaa-0000000Eq0o-2PAs for linux-arm-kernel@lists.infradead.org; Mon, 22 Apr 2024 19:44:34 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 4C996CE0B7D; Mon, 22 Apr 2024 19:44:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2CFF1C116B1; Mon, 22 Apr 2024 19:44:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1713815065; bh=K8WN8aubdBUdpq2B/uKYg69yANymGJsXmW3941zGW1s=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=GMBO7gB5pjdjM0klxQpfKSPZbshoJO0PuGP/01h9ETcM6twO2atsJALTuh+zPMT38 OtIGcuxHm2VtBWIzQNCoiOMNyr6zdoObSloYFSjblqoLnbRBLQXjyFlp/OFQ+DdYNz r6xb2t/OSk2DG5KCgZYH8sfUy7ppbw0o/lBI58Smy+QewkeKumlPSw6Ki3qLI/0N5b 26Z1hij8g8+RVqSYAYIBmo0mSuJzKVsGpo/T+n8iYgIMTk11Gw3d635aisJOwmLND7 xpQXKqIB1Q9fvJRrIL+yQyZKoPijFAg9rBtf8C8dCm213am27yKB2DXaIo5mkWT88r 8yKoVYGpWI2Ig== Date: Mon, 22 Apr 2024 14:44:23 -0500 From: Bjorn Helgaas To: Thomas Richard Cc: Andi Shyti , Linus Walleij , Bartosz Golaszewski , Tony Lindgren , Aaro Koskinen , Janusz Krzysztofik , Vignesh R , Peter Rosin , Lorenzo Pieralisi , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas , Siddharth Vadapalli , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, linux-i2c@vger.kernel.org, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, gregory.clement@bootlin.com, theo.lebrun@bootlin.com, thomas.petazzoni@bootlin.com, u-kumar1@ti.com, Wolfram Sang Subject: Re: [PATCH v5 02/11] i2c: omap: wakeup the controller during suspend() callback Message-ID: <20240422194423.GA414623@bhelgaas> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240422_124432_834886_5802DEDE X-CRM114-Status: GOOD ( 18.75 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, Apr 22, 2024 at 11:40:02AM +0200, Thomas Richard wrote: > On 4/19/24 10:47, Andi Shyti wrote: > > Hi Thomas, > > > >> +static int omap_i2c_suspend(struct device *dev) > >> +{ > >> + /* > >> + * If the controller is autosuspended, there is no way to wakeup it once > >> + * runtime pm is disabled (in suspend_late()). > >> + * But a device may need the controller up during suspend_noirq() or > >> + * resume_noirq(). > >> + * Wakeup the controller while runtime pm is enabled, so it is available > >> + * until its suspend_noirq(), and from resume_noirq(). > >> + */ > >> + return pm_runtime_resume_and_get(dev); > >> +} > >> + > >> +static int omap_i2c_resume(struct device *dev) > >> +{ > >> + pm_runtime_mark_last_busy(dev); > >> + pm_runtime_put_autosuspend(dev); > >> + > >> + return 0; > >> +} > >> + > >> static const struct dev_pm_ops omap_i2c_pm_ops = { > >> SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, > >> pm_runtime_force_resume) > >> + SET_SYSTEM_SLEEP_PM_OPS(omap_i2c_suspend, omap_i2c_resume) > > > > If you don't have CONFIG_PM_SLEEP, though, this doesn't compile. > > Hello Andi, > > Yes indeed, the __maybe_unused attribute is missing for > omap_i2c_suspend() and omap_i2c_resume(). Isn't there a way to avoid having to use the __maybe_unused attribute? E.g., use DEFINE_SIMPLE_DEV_PM_OPS() as is done by these: 82f9cefadac4 ("serial: 8250_exar: switch to DEFINE_SIMPLE_DEV_PM_OPS()") f243df0a0be0 ("media: platform: rzg2l-cru: rzg2l-csi2: Switch to RUNTIME_PM_OPS()") 6ccc22a5afcb ("net: ravb: Switch to SYSTEM_SLEEP_PM_OPS()/RUNTIME_PM_OPS() and pm_ptr()") Bjorn _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel