The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
@ 2026-08-21  2:42 Triet Hoang
  2026-08-23 11:45 ` kernel test robot
  2026-08-23 12:18 ` kernel test robot
  0 siblings, 2 replies; 3+ messages in thread
From: Triet Hoang @ 2026-08-21  2:42 UTC (permalink / raw)
  To: dmitry.torokhov; +Cc: linux-input, linux-kernel, Triet Hoang

Convert deprecated SIMPLE_DEV_PM_OPS
to DEFINE_SIMPLE_DEV_PM_OPS and pm_sleep_ptr().

This lets us drop the __maybe_unused annotations
from the resume callbacks and reduces kernel size
when CONFIG_PM or CONFIG_PM_SLEEP is disabled.

Signed-off-by: Triet Hoang <triet.hoang.dev@gmail.com>
---
 drivers/input/misc/88pm80x_onkey.c    | 4 ++--
 drivers/input/misc/nxp-bbnsm-pwrkey.c | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/input/misc/88pm80x_onkey.c b/drivers/input/misc/88pm80x_onkey.c
index fee28e537898..d4f344e2bf5c 100644
--- a/drivers/input/misc/88pm80x_onkey.c
+++ b/drivers/input/misc/88pm80x_onkey.c
@@ -47,7 +47,7 @@ static irqreturn_t pm80x_onkey_handler(int irq, void *data)
 	return IRQ_HANDLED;
 }
 
-static SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
+static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
 			 pm80x_dev_resume);
 
 static int pm80x_onkey_probe(struct platform_device *pdev)
@@ -138,7 +138,7 @@ static void pm80x_onkey_remove(struct platform_device *pdev)
 static struct platform_driver pm80x_onkey_driver = {
 	.driver = {
 		   .name = "88pm80x-onkey",
-		   .pm = &pm80x_onkey_pm_ops,
+		   .pm = pm_sleep_ptr(&pm80x_onkey_pm_ops),
 		   },
 	.probe = pm80x_onkey_probe,
 	.remove = pm80x_onkey_remove,
diff --git a/drivers/input/misc/nxp-bbnsm-pwrkey.c b/drivers/input/misc/nxp-bbnsm-pwrkey.c
index 0c7b8f8ef4a5..6af6e0f6395f 100644
--- a/drivers/input/misc/nxp-bbnsm-pwrkey.c
+++ b/drivers/input/misc/nxp-bbnsm-pwrkey.c
@@ -193,7 +193,7 @@ static void bbnsm_pwrkey_remove(struct platform_device *pdev)
 	device_init_wakeup(&pdev->dev, false);
 }
 
-static int __maybe_unused bbnsm_pwrkey_suspend(struct device *dev)
+static int bbnsm_pwrkey_suspend(struct device *dev)
 {
 	struct platform_device *pdev = to_platform_device(dev);
 	struct bbnsm_pwrkey *bbnsm = platform_get_drvdata(pdev);
@@ -203,7 +203,7 @@ static int __maybe_unused bbnsm_pwrkey_suspend(struct device *dev)
 	return 0;
 }
 
-static int __maybe_unused bbnsm_pwrkey_resume(struct device *dev)
+static int bbnsm_pwrkey_resume(struct device *dev)
 {
 	struct platform_device *pdev = to_platform_device(dev);
 	struct bbnsm_pwrkey *bbnsm = platform_get_drvdata(pdev);
@@ -213,7 +213,7 @@ static int __maybe_unused bbnsm_pwrkey_resume(struct device *dev)
 	return 0;
 }
 
-static SIMPLE_DEV_PM_OPS(bbnsm_pwrkey_pm_ops, bbnsm_pwrkey_suspend,
+static DEFINE_SIMPLE_DEV_PM_OPS(bbnsm_pwrkey_pm_ops, bbnsm_pwrkey_suspend,
 		bbnsm_pwrkey_resume);
 
 static const struct of_device_id bbnsm_pwrkey_ids[] = {
@@ -225,7 +225,7 @@ MODULE_DEVICE_TABLE(of, bbnsm_pwrkey_ids);
 static struct platform_driver bbnsm_pwrkey_driver = {
 	.driver = {
 		.name = "bbnsm_pwrkey",
-		.pm = &bbnsm_pwrkey_pm_ops,
+		.pm = pm_sleep_ptr(&bbnsm_pwrkey_pm_ops),
 		.of_match_table = bbnsm_pwrkey_ids,
 	},
 	.probe = bbnsm_pwrkey_probe,
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
  2026-08-21  2:42 [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS() Triet Hoang
@ 2026-08-23 11:45 ` kernel test robot
  2026-08-23 12:18 ` kernel test robot
  1 sibling, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-08-23 11:45 UTC (permalink / raw)
  To: Triet Hoang, dmitry.torokhov
  Cc: oe-kbuild-all, linux-input, linux-kernel, Triet Hoang

Hi Triet,

kernel test robot noticed the following build errors:

[auto build test ERROR on dtor-input/next]
[also build test ERROR on dtor-input/for-linus hid/for-next linus/master v7.2 next-20260821]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Triet-Hoang/input-misc-Convert-to-DEFINE_SIMPLE_DEV_PM_OPS/20260821-094215
base:   https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
patch link:    https://lore.kernel.org/r/20260821024215.55188-1-triet.hoang.dev%40gmail.com
patch subject: [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
config: parisc-allmodconfig (https://download.01.org/0day-ci/archive/20260823/202608231557.WwzKko7b-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 16.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260823/202608231557.WwzKko7b-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608231557.WwzKko7b-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from include/linux/kernel.h:35,
                    from drivers/input/misc/88pm80x_onkey.c:10:
>> drivers/input/misc/88pm80x_onkey.c:50:53: error: 'pm80x_dev_suspend' undeclared here (not in a function)
      50 | static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
         |                                                     ^~~~~~~~~~~~~~~~~
   include/linux/util_macros.h:136:44: note: in definition of macro 'PTR_IF'
     136 | #define PTR_IF(cond, ptr)       ((cond) ? (ptr) : NULL)
         |                                            ^~~
   include/linux/pm.h:315:20: note: in expansion of macro 'pm_sleep_ptr'
     315 |         .suspend = pm_sleep_ptr(suspend_fn), \
         |                    ^~~~~~~~~~~~
   include/linux/pm.h:375:9: note: in expansion of macro 'SYSTEM_SLEEP_PM_OPS'
     375 |         SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn) \
         |         ^~~~~~~~~~~~~~~~~~~
   include/linux/pm.h:417:9: note: in expansion of macro '_DEFINE_DEV_PM_OPS'
     417 |         _DEFINE_DEV_PM_OPS(name, suspend_fn, resume_fn, NULL, NULL, NULL)
         |         ^~~~~~~~~~~~~~~~~~
   drivers/input/misc/88pm80x_onkey.c:50:8: note: in expansion of macro 'DEFINE_SIMPLE_DEV_PM_OPS'
      50 | static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
         |        ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/input/misc/88pm80x_onkey.c:51:26: error: 'pm80x_dev_resume' undeclared here (not in a function)
      51 |                          pm80x_dev_resume);
         |                          ^~~~~~~~~~~~~~~~
   include/linux/util_macros.h:136:44: note: in definition of macro 'PTR_IF'
     136 | #define PTR_IF(cond, ptr)       ((cond) ? (ptr) : NULL)
         |                                            ^~~
   include/linux/pm.h:316:19: note: in expansion of macro 'pm_sleep_ptr'
     316 |         .resume = pm_sleep_ptr(resume_fn), \
         |                   ^~~~~~~~~~~~
   include/linux/pm.h:375:9: note: in expansion of macro 'SYSTEM_SLEEP_PM_OPS'
     375 |         SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn) \
         |         ^~~~~~~~~~~~~~~~~~~
   include/linux/pm.h:417:9: note: in expansion of macro '_DEFINE_DEV_PM_OPS'
     417 |         _DEFINE_DEV_PM_OPS(name, suspend_fn, resume_fn, NULL, NULL, NULL)
         |         ^~~~~~~~~~~~~~~~~~
   drivers/input/misc/88pm80x_onkey.c:50:8: note: in expansion of macro 'DEFINE_SIMPLE_DEV_PM_OPS'
      50 | static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
         |        ^~~~~~~~~~~~~~~~~~~~~~~~


vim +/pm80x_dev_suspend +50 drivers/input/misc/88pm80x_onkey.c

    49	
  > 50	static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
  > 51				 pm80x_dev_resume);
    52	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
  2026-08-21  2:42 [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS() Triet Hoang
  2026-08-23 11:45 ` kernel test robot
@ 2026-08-23 12:18 ` kernel test robot
  1 sibling, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-08-23 12:18 UTC (permalink / raw)
  To: Triet Hoang, dmitry.torokhov
  Cc: llvm, oe-kbuild-all, linux-input, linux-kernel, Triet Hoang

Hi Triet,

kernel test robot noticed the following build errors:

[auto build test ERROR on dtor-input/next]
[also build test ERROR on dtor-input/for-linus hid/for-next linus/master v7.2 next-20260821]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Triet-Hoang/input-misc-Convert-to-DEFINE_SIMPLE_DEV_PM_OPS/20260821-094215
base:   https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
patch link:    https://lore.kernel.org/r/20260821024215.55188-1-triet.hoang.dev%40gmail.com
patch subject: [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
config: i386-randconfig-013-20260823 (https://download.01.org/0day-ci/archive/20260823/202608232022.yWBqVfG0-lkp@intel.com/config)
compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260823/202608232022.yWBqVfG0-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608232022.yWBqVfG0-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/input/misc/88pm80x_onkey.c:50:53: error: use of undeclared identifier 'pm80x_dev_suspend'
      50 | static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
         |                                                     ^~~~~~~~~~~~~~~~~
>> drivers/input/misc/88pm80x_onkey.c:51:5: error: use of undeclared identifier 'pm80x_dev_resume'
      51 |                          pm80x_dev_resume);
         |                          ^~~~~~~~~~~~~~~~
>> drivers/input/misc/88pm80x_onkey.c:50:53: error: use of undeclared identifier 'pm80x_dev_suspend'
      50 | static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
         |                                                     ^~~~~~~~~~~~~~~~~
>> drivers/input/misc/88pm80x_onkey.c:51:5: error: use of undeclared identifier 'pm80x_dev_resume'
      51 |                          pm80x_dev_resume);
         |                          ^~~~~~~~~~~~~~~~
>> drivers/input/misc/88pm80x_onkey.c:50:53: error: use of undeclared identifier 'pm80x_dev_suspend'
      50 | static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
         |                                                     ^~~~~~~~~~~~~~~~~
>> drivers/input/misc/88pm80x_onkey.c:51:5: error: use of undeclared identifier 'pm80x_dev_resume'
      51 |                          pm80x_dev_resume);
         |                          ^~~~~~~~~~~~~~~~
   6 errors generated.


vim +/pm80x_dev_suspend +50 drivers/input/misc/88pm80x_onkey.c

    49	
  > 50	static DEFINE_SIMPLE_DEV_PM_OPS(pm80x_onkey_pm_ops, pm80x_dev_suspend,
  > 51				 pm80x_dev_resume);
    52	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-08-23 12:19 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-21  2:42 [PATCH] input: misc: Convert to DEFINE_SIMPLE_DEV_PM_OPS() Triet Hoang
2026-08-23 11:45 ` kernel test robot
2026-08-23 12:18 ` kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox