HID: rmi: remove #ifdef CONFIG_PM
authorThomas Weißschuh <linux@weissschuh.net>
Thu, 12 Oct 2023 10:23:41 +0000 (12:23 +0200)
committerBenjamin Tissoires <bentiss@kernel.org>
Wed, 25 Oct 2023 16:33:42 +0000 (18:33 +0200)
Through the usage of pm_ptr() the CONFIG_PM-dependent code will always be
compiled, protecting against bitrot.
The linker will then garbage-collect the unused function avoiding any overhead.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Link: https://lore.kernel.org/r/20231012-hid-pm_ptr-v1-4-0a71531ca93b@weissschuh.net
Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
drivers/hid/hid-rmi.c

index 84e7ba5314d3f8d6c6c5578597bc4a42c72e8379..d4af17fdba4670ae9f26db1fb8609a180472dc20 100644 (file)
@@ -436,7 +436,6 @@ static void rmi_report(struct hid_device *hid, struct hid_report *report)
                input_sync(field->hidinput->input);
 }
 
-#ifdef CONFIG_PM
 static int rmi_suspend(struct hid_device *hdev, pm_message_t message)
 {
        struct rmi_data *data = hid_get_drvdata(hdev);
@@ -483,7 +482,6 @@ out:
        hid_hw_close(hdev);
        return ret;
 }
-#endif /* CONFIG_PM */
 
 static int rmi_hid_reset(struct rmi_transport_dev *xport, u16 reset_addr)
 {
@@ -774,11 +772,9 @@ static struct hid_driver rmi_driver = {
        .report                 = rmi_report,
        .input_mapping          = rmi_input_mapping,
        .input_configured       = rmi_input_configured,
-#ifdef CONFIG_PM
-       .suspend                = rmi_suspend,
-       .resume                 = rmi_post_resume,
-       .reset_resume           = rmi_post_resume,
-#endif
+       .suspend                = pm_ptr(rmi_suspend),
+       .resume                 = pm_ptr(rmi_post_resume),
+       .reset_resume           = pm_ptr(rmi_post_resume),
 };
 
 module_hid_driver(rmi_driver);