summaryrefslogtreecommitdiff
path: root/arch/powerpc/sysdev/fsl_rmu.c
diff options
context:
space:
mode:
authorAndrew Morton <akpm@linux-foundation.org>2023-07-02 18:53:03 -0700
committerAndrew Morton <akpm@linux-foundation.org>2023-07-02 18:53:03 -0700
commit3fbff91afbf0148e937b8718ed865b073c587d9f (patch)
treef69741c34579567af3d31f68737ea322d9311892 /arch/powerpc/sysdev/fsl_rmu.c
parent44f10dbefd5e41b3385af91f855a57aa2afaf40e (diff)
parenta901a3568fd26ca9c4a82d8bc5ed5b3ed844d451 (diff)
Merge branch 'master' into mm-hotfixes-stable
Diffstat (limited to 'arch/powerpc/sysdev/fsl_rmu.c')
-rw-r--r--arch/powerpc/sysdev/fsl_rmu.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
index 7a5e2e2b9d06..c1f724973589 100644
--- a/arch/powerpc/sysdev/fsl_rmu.c
+++ b/arch/powerpc/sysdev/fsl_rmu.c
@@ -23,6 +23,7 @@
#include <linux/types.h>
#include <linux/dma-mapping.h>
#include <linux/interrupt.h>
+#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/of_platform.h>
#include <linux/slab.h>
@@ -1067,9 +1068,6 @@ int fsl_rio_setup_rmu(struct rio_mport *mport, struct device_node *node)
struct rio_priv *priv;
struct fsl_rmu *rmu;
u64 msg_start;
- const u32 *msg_addr;
- int mlen;
- int aw;
if (!mport || !mport->priv)
return -EINVAL;
@@ -1086,16 +1084,12 @@ int fsl_rio_setup_rmu(struct rio_mport *mport, struct device_node *node)
if (!rmu)
return -ENOMEM;
- aw = of_n_addr_cells(node);
- msg_addr = of_get_property(node, "reg", &mlen);
- if (!msg_addr) {
+ if (of_property_read_reg(node, 0, &msg_start, NULL)) {
pr_err("%pOF: unable to find 'reg' property of message-unit\n",
node);
kfree(rmu);
return -ENOMEM;
}
- msg_start = of_read_number(msg_addr, aw);
-
rmu->msg_regs = (struct rio_msg_regs *)
(rmu_regs_win + (u32)msg_start);