Message ID | 20221122141434.30498-1-lukas.bulwahn@gmail.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp2223878wrr; Tue, 22 Nov 2022 06:17:32 -0800 (PST) X-Google-Smtp-Source: AA0mqf5JGF4I1bbufcngC8jsQGsSm2pSlqAygpTqLhdsdinV4MD27cT7wNvwGrxND1EvVgH1A/PI X-Received: by 2002:a05:6402:757:b0:469:f262:f79e with SMTP id p23-20020a056402075700b00469f262f79emr1991130edy.363.1669126652780; Tue, 22 Nov 2022 06:17:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669126652; cv=none; d=google.com; s=arc-20160816; b=e4FgYRqtE2AhUXoz2mMyUflV7Pt2dKzVsN6dRWxLc7h6Jtp6XgH8WsRpSLoxxgDVZl N/GD3WRgW1XMBaI19r1+/kW7PFikc6c8wmdj5DPkmpTKzhrQPc6yyFhvhcdXOvp+RYyR +0uOlCyxh5d01omNIgomjBhhiPkulcfIx4QzpRSlSFZ/Do0FtNrKq+3yclLzrMKptPn+ j7AYEVbRy4KQBFtzwbOC0J6RV+LaVhSZhWDoRicQCQ5V3jM6gNG1ZK6pLsZm8tdyst7z NYeBJlcfUZt4SOhLMe5zlg9vLH2RW4dlC+UnngzvAKcgoJCmzSfgtL0ZkBmprg5ZbKvP llVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from :dkim-signature; bh=a14RPlR4WzocN7pcji6vCght7gucx4JNI1zx9s6eY8g=; b=EY+Wq4yPC7cnknL7ueYO2UXF4rtIhxY4A0sBeUeR5QF36itPtSY4cXHWw2jQ38h0R4 lRuvHOyS9HakrEz96fU3hETTpm5AK6AyoPEQ8kZLAiDUADxDXMk86osg4im3udnWz/Go o3Y8Q89RnwCljbDCcIDzLRDLVQRQ0UVeuWTdWmC1hsZE6n/PIeaE4drFQR0S/0gvALbg R7HaOmgRkvcB4JM2SeIhyXVgxY+84Sv1VMW6H6yj+7HuZPequ11ElyK+h88q4ViKznDp 0T11994i1Ka9zJNoTQE4Okg+dWS06siGz+GvzQQNROhV6YyZWMdA172+9XhcO4Pji09T II3A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=mOunQdWT; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q19-20020a056402519300b00461eb5cdcdcsi12586453edd.23.2022.11.22.06.17.05; Tue, 22 Nov 2022 06:17:32 -0800 (PST) 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=@gmail.com header.s=20210112 header.b=mOunQdWT; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231993AbiKVOO7 (ORCPT <rfc822;cjcooper78@gmail.com> + 99 others); Tue, 22 Nov 2022 09:14:59 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36764 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233702AbiKVOOv (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Tue, 22 Nov 2022 09:14:51 -0500 Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CB8B72CE39; Tue, 22 Nov 2022 06:14:50 -0800 (PST) Received: by mail-wm1-x333.google.com with SMTP id o30so10825752wms.2; Tue, 22 Nov 2022 06:14:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=a14RPlR4WzocN7pcji6vCght7gucx4JNI1zx9s6eY8g=; b=mOunQdWTUfcQkGDwPyUiTOqAiUBclPnjfakRR18S9Rp/73LXJHhpbEob7dG3AT71I7 /ZWCgT+ev7rTqlwaPmCPgzpv1Y2TXBSmc54H029ZdTYbxHq4CB/7gFDBxSi27qVKMRL9 85Uh/y3y26Dz24ahDSFtIFlX8jMUSRx7vzZnJ0M209gJOPoo3mpqwb0F48PKE0rnNfTL efpRb7+nUbirk0pyQ5JEdky8GFv1fJBd2uUyse4ydzqfDmAWgSulrHM4I+O2rQBzkteO hMOduwfTdJPAO8rj3nNnZhsrhsxwxq2nvFbOppT5itzio2+jgmEBmTtliTbKKJlucdTY Podw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=a14RPlR4WzocN7pcji6vCght7gucx4JNI1zx9s6eY8g=; b=OOrAOcB8jLMMoaQr1zz5QvPRM7Te/5vZh/5rtxspN3Zs+GhrPISHIpVFXYsTUVnj+X Fpv0l5BHLp6A58QIBN2sVpLLsOXwlkOSAnMK77Ip026wdQerblnzM+wnbGzRNIUXlXYq Lu8YBjtVKywH9kDLCS0RhEnFcYabEvr4qWzStcPNM71m3rwCYE56bwOXOWZqoVw4B3Qb +767qwAbjNoH4mZekPuYo4qSBEvdZ7g/6MaEvsFj44GpA41lbNuYTF/1wQQ0TwS+Cz6L VpGi+fwMHEeg1ENNVSKFL2HWl4YBaFJRq+jjMFfRWKQUM14QKdQpjFAZe/2ePmYrlDwd ssOw== X-Gm-Message-State: ANoB5plc6KbmalDvwdHr23wcWXmEoVrG4g9y3Vt9IEkgm+dhdTrgNSL1 baqEXQJe3fqPF7eFOKUruMs= X-Received: by 2002:a1c:7208:0:b0:3cf:6198:dd2f with SMTP id n8-20020a1c7208000000b003cf6198dd2fmr7382274wmc.119.1669126489116; Tue, 22 Nov 2022 06:14:49 -0800 (PST) Received: from felia.fritz.box (200116b8267b3700c41d4e99e424db57.dip.versatel-1u1.de. [2001:16b8:267b:3700:c41d:4e99:e424:db57]) by smtp.gmail.com with ESMTPSA id l24-20020a05600c1d1800b003cf878c4468sm24774664wms.5.2022.11.22.06.14.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Nov 2022 06:14:48 -0800 (PST) From: Lukas Bulwahn <lukas.bulwahn@gmail.com> To: Daniel Lezcano <daniel.lezcano@linaro.org>, Thomas Gleixner <tglx@linutronix.de>, Paul Cercueil <paul@crapouillou.net>, Maarten ter Huurne <maarten@treewalker.org> Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org, Lukas Bulwahn <lukas.bulwahn@gmail.com> Subject: [PATCH] clocksource: ingenic-ost: define pm functions properly in platform_driver struct Date: Tue, 22 Nov 2022 15:14:34 +0100 Message-Id: <20221122141434.30498-1-lukas.bulwahn@gmail.com> X-Mailer: git-send-email 2.17.1 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750206148866997936?= X-GMAIL-MSGID: =?utf-8?q?1750206148866997936?= |
Series |
clocksource: ingenic-ost: define pm functions properly in platform_driver struct
|
|
Commit Message
Lukas Bulwahn
Nov. 22, 2022, 2:14 p.m. UTC
Commit ca7b72b5a5f2 ("clocksource: Add driver for the Ingenic JZ47xx OST")
adds the struct platform_driver ingenic_ost_driver, with the definition of
pm functions under the non-existing config PM_SUSPEND, which means the
intended pm functions were never actually included in any build.
Since commit 7a82e97a11b9 ("PM: core: introduce pm_ptr() macro"), the
default pattern for platform_driver definitions is to use pm_ptr().
Assuming CONFIG_PM_SUSPEND really intended to mean CONFIG_PM (and not
CONFIG_PM_SLEEP), use pm_ptr() just as most other drivers do.
Fixes: ca7b72b5a5f2 ("clocksource: Add driver for the Ingenic JZ47xx OST")
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
---
drivers/clocksource/ingenic-ost.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
Comments
Hi Lukas, Le mar. 22 nov. 2022 à 15:14:34 +0100, Lukas Bulwahn <lukas.bulwahn@gmail.com> a écrit : > Commit ca7b72b5a5f2 ("clocksource: Add driver for the Ingenic JZ47xx > OST") > adds the struct platform_driver ingenic_ost_driver, with the > definition of > pm functions under the non-existing config PM_SUSPEND, which means the > intended pm functions were never actually included in any build. > > Since commit 7a82e97a11b9 ("PM: core: introduce pm_ptr() macro"), the > default pattern for platform_driver definitions is to use pm_ptr(). > Assuming CONFIG_PM_SUSPEND really intended to mean CONFIG_PM (and not > CONFIG_PM_SLEEP), use pm_ptr() just as most other drivers do. It actually was supposed to be CONFIG_PM_SLEEP, yes. You can see that because the only callbacks are .suspend_noirq and .resume_noirq. Therefore you can use pm_sleep_ptr() instead of pm_ptr(). By the way, once you use this macro then the __maybe_unused tags on the dev_pm_ops structure and its callbacks are not needed anymore, so you can remove these as well. > Fixes: ca7b72b5a5f2 ("clocksource: Add driver for the Ingenic JZ47xx > OST") That Fixes: tag won't work since the pm_ptr() macro did not exist back then (besides, you didn't Cc linux-stable). I'd advocate to remove the Fixes: tag, since it is not really a bug fix, more like an improvement. Cheers, -Paul > Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com> > --- > drivers/clocksource/ingenic-ost.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/clocksource/ingenic-ost.c > b/drivers/clocksource/ingenic-ost.c > index 06d25754e606..6b64731df15c 100644 > --- a/drivers/clocksource/ingenic-ost.c > +++ b/drivers/clocksource/ingenic-ost.c > @@ -181,9 +181,7 @@ static const struct of_device_id > ingenic_ost_of_match[] = { > static struct platform_driver ingenic_ost_driver = { > .driver = { > .name = "ingenic-ost", > -#ifdef CONFIG_PM_SUSPEND > - .pm = &ingenic_ost_pm_ops, > -#endif > + .pm = pm_ptr(&ingenic_ost_pm_ops), > .of_match_table = ingenic_ost_of_match, > }, > }; > -- > 2.17.1 >
On Tue, Nov 22, 2022 at 3:24 PM Paul Cercueil <paul@crapouillou.net> wrote: > > Hi Lukas, > > Le mar. 22 nov. 2022 à 15:14:34 +0100, Lukas Bulwahn > <lukas.bulwahn@gmail.com> a écrit : > > Commit ca7b72b5a5f2 ("clocksource: Add driver for the Ingenic JZ47xx > > OST") > > adds the struct platform_driver ingenic_ost_driver, with the > > definition of > > pm functions under the non-existing config PM_SUSPEND, which means the > > intended pm functions were never actually included in any build. > > > > Since commit 7a82e97a11b9 ("PM: core: introduce pm_ptr() macro"), the > > default pattern for platform_driver definitions is to use pm_ptr(). > > Assuming CONFIG_PM_SUSPEND really intended to mean CONFIG_PM (and not > > CONFIG_PM_SLEEP), use pm_ptr() just as most other drivers do. > > It actually was supposed to be CONFIG_PM_SLEEP, yes. You can see that > because the only callbacks are .suspend_noirq and .resume_noirq. > Therefore you can use pm_sleep_ptr() instead of pm_ptr(). > > By the way, once you use this macro then the __maybe_unused tags on the > dev_pm_ops structure and its callbacks are not needed anymore, so you > can remove these as well. > > > Fixes: ca7b72b5a5f2 ("clocksource: Add driver for the Ingenic JZ47xx > > OST") > > That Fixes: tag won't work since the pm_ptr() macro did not exist back > then (besides, you didn't Cc linux-stable). > > I'd advocate to remove the Fixes: tag, since it is not really a bug > fix, more like an improvement. > Thanks for the quick feedback. I will send a patch v2 incorporating that. Lukas > Cheers, > -Paul > > > Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com> > > --- > > drivers/clocksource/ingenic-ost.c | 4 +--- > > 1 file changed, 1 insertion(+), 3 deletions(-) > > > > diff --git a/drivers/clocksource/ingenic-ost.c > > b/drivers/clocksource/ingenic-ost.c > > index 06d25754e606..6b64731df15c 100644 > > --- a/drivers/clocksource/ingenic-ost.c > > +++ b/drivers/clocksource/ingenic-ost.c > > @@ -181,9 +181,7 @@ static const struct of_device_id > > ingenic_ost_of_match[] = { > > static struct platform_driver ingenic_ost_driver = { > > .driver = { > > .name = "ingenic-ost", > > -#ifdef CONFIG_PM_SUSPEND > > - .pm = &ingenic_ost_pm_ops, > > -#endif > > + .pm = pm_ptr(&ingenic_ost_pm_ops), > > .of_match_table = ingenic_ost_of_match, > > }, > > }; > > -- > > 2.17.1 > > > >
diff --git a/drivers/clocksource/ingenic-ost.c b/drivers/clocksource/ingenic-ost.c index 06d25754e606..6b64731df15c 100644 --- a/drivers/clocksource/ingenic-ost.c +++ b/drivers/clocksource/ingenic-ost.c @@ -181,9 +181,7 @@ static const struct of_device_id ingenic_ost_of_match[] = { static struct platform_driver ingenic_ost_driver = { .driver = { .name = "ingenic-ost", -#ifdef CONFIG_PM_SUSPEND - .pm = &ingenic_ost_pm_ops, -#endif + .pm = pm_ptr(&ingenic_ost_pm_ops), .of_match_table = ingenic_ost_of_match, }, };