powerpc/rtasd: use correct OF API for event scan rate
authorNathan Lynch <nathanl@linux.ibm.com>
Fri, 18 Nov 2022 15:07:40 +0000 (09:07 -0600)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 7 Dec 2022 11:20:33 +0000 (22:20 +1100)
rtas_token() should be used only for properties that are RTAS function
tokens. "rtas-event-scan-rate" does not contain a function token, but it
has the same size/format as token properties so reading it with
rtas_token() happens to work.

Convert to of_property_read_u32().

Signed-off-by: Nathan Lynch <nathanl@linux.ibm.com>
Reviewed-by: Andrew Donnellan <ajd@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221118150751.469393-3-nathanl@linux.ibm.com
arch/powerpc/kernel/rtasd.c

index 5270b45..cc56ac6 100644 (file)
@@ -9,6 +9,7 @@
 #include <linux/errno.h>
 #include <linux/sched.h>
 #include <linux/kernel.h>
+#include <linux/of.h>
 #include <linux/poll.h>
 #include <linux/proc_fs.h>
 #include <linux/init.h>
@@ -499,6 +500,8 @@ EXPORT_SYMBOL_GPL(rtas_cancel_event_scan);
 
 static int __init rtas_event_scan_init(void)
 {
+       int err;
+
        if (!machine_is(pseries) && !machine_is(chrp))
                return 0;
 
@@ -509,8 +512,8 @@ static int __init rtas_event_scan_init(void)
                return -ENODEV;
        }
 
-       rtas_event_scan_rate = rtas_token("rtas-event-scan-rate");
-       if (rtas_event_scan_rate == RTAS_UNKNOWN_SERVICE) {
+       err = of_property_read_u32(rtas.dev, "rtas-event-scan-rate", &rtas_event_scan_rate);
+       if (err) {
                printk(KERN_ERR "rtasd: no rtas-event-scan-rate on system\n");
                return -ENODEV;
        }