net: ipa: pass a platform device to ipa_reg_init()
authorAlex Elder <elder@linaro.org>
Fri, 1 Mar 2024 17:02:38 +0000 (11:02 -0600)
committerDavid S. Miller <davem@davemloft.net>
Mon, 4 Mar 2024 11:44:40 +0000 (11:44 +0000)
Rather than using the platform device pointer field in the IPA
pointer, pass a platform device pointer to ipa_reg_init().  Use
that pointer throughout that function.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ipa/ipa_main.c
drivers/net/ipa/ipa_reg.c
drivers/net/ipa/ipa_reg.h

index 6cf5c1280aa4e39647bf752df730a81e85bb447c..5c9c1b0ef8de5cbafcbdda2a62aba880d0824f2c 100644 (file)
@@ -866,7 +866,7 @@ static int ipa_probe(struct platform_device *pdev)
        ipa->modem_route_count = data->modem_route_count;
        init_completion(&ipa->completion);
 
-       ret = ipa_reg_init(ipa);
+       ret = ipa_reg_init(ipa, pdev);
        if (ret)
                goto err_kfree_ipa;
 
index 6a3203ae6f1ef6c7740ae09eb37608ee65127046..98625956e0bb4f5efec4e7fdb45515174920915b 100644 (file)
@@ -4,6 +4,7 @@
  * Copyright (C) 2019-2023 Linaro Ltd.
  */
 
+#include <linux/platform_device.h>
 #include <linux/io.h>
 
 #include "ipa.h"
@@ -132,9 +133,9 @@ static const struct regs *ipa_regs(enum ipa_version version)
        }
 }
 
-int ipa_reg_init(struct ipa *ipa)
+int ipa_reg_init(struct ipa *ipa, struct platform_device *pdev)
 {
-       struct device *dev = &ipa->pdev->dev;
+       struct device *dev = &pdev->dev;
        const struct regs *regs;
        struct resource *res;
 
@@ -146,8 +147,7 @@ int ipa_reg_init(struct ipa *ipa)
                return -EINVAL;
 
        /* Setup IPA register memory  */
-       res = platform_get_resource_byname(ipa->pdev, IORESOURCE_MEM,
-                                          "ipa-reg");
+       res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ipa-reg");
        if (!res) {
                dev_err(dev, "DT error getting \"ipa-reg\" memory property\n");
                return -ENODEV;
index 2998f115f12c7a6f8b4f7f7a6f4ab769deb97cdc..62c62495b7968d27de727addcc87d529dda37f7d 100644 (file)
@@ -12,6 +12,8 @@
 #include "ipa_version.h"
 #include "reg.h"
 
+struct platform_device;
+
 struct ipa;
 
 /**
@@ -643,7 +645,7 @@ extern const struct regs ipa_regs_v5_5;
 
 const struct reg *ipa_reg(struct ipa *ipa, enum ipa_reg_id reg_id);
 
-int ipa_reg_init(struct ipa *ipa);
+int ipa_reg_init(struct ipa *ipa, struct platform_device *pdev);
 void ipa_reg_exit(struct ipa *ipa);
 
 #endif /* _IPA_REG_H_ */