]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
net: ipa: pass a platform device to ipa_mem_init()
authorAlex Elder <elder@linaro.org>
Fri, 1 Mar 2024 17:02:39 +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_mem_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_mem.c
drivers/net/ipa/ipa_mem.h

index 5c9c1b0ef8de5cbafcbdda2a62aba880d0824f2c..17ee075370ce60baab8812f69e7a714ec414ed52 100644 (file)
@@ -870,7 +870,7 @@ static int ipa_probe(struct platform_device *pdev)
        if (ret)
                goto err_kfree_ipa;
 
-       ret = ipa_mem_init(ipa, data->mem_data);
+       ret = ipa_mem_init(ipa, pdev, data->mem_data);
        if (ret)
                goto err_reg_exit;
 
index 694960537ecda8f97843479251e0d6c5d8f0bec2..d7df7d340221da24bed58991e30ceabf1a5b4fe8 100644 (file)
@@ -9,6 +9,7 @@
 #include <linux/bug.h>
 #include <linux/dma-mapping.h>
 #include <linux/iommu.h>
+#include <linux/platform_device.h>
 #include <linux/io.h>
 #include <linux/soc/qcom/smem.h>
 
@@ -75,9 +76,9 @@ ipa_mem_zero_region_add(struct gsi_trans *trans, enum ipa_mem_id mem_id)
 int ipa_mem_setup(struct ipa *ipa)
 {
        dma_addr_t addr = ipa->zero_addr;
-       const struct reg *reg;
        const struct ipa_mem *mem;
        struct gsi_trans *trans;
+       const struct reg *reg;
        u32 offset;
        u16 size;
        u32 val;
@@ -615,9 +616,10 @@ static void ipa_smem_exit(struct ipa *ipa)
 }
 
 /* Perform memory region-related initialization */
-int ipa_mem_init(struct ipa *ipa, const struct ipa_mem_data *mem_data)
+int ipa_mem_init(struct ipa *ipa, struct platform_device *pdev,
+                const struct ipa_mem_data *mem_data)
 {
-       struct device *dev = &ipa->pdev->dev;
+       struct device *dev = &pdev->dev;
        struct resource *res;
        int ret;
 
@@ -634,14 +636,13 @@ int ipa_mem_init(struct ipa *ipa, const struct ipa_mem_data *mem_data)
        if (!ipa_table_mem_valid(ipa, true))
                return -EINVAL;
 
-       ret = dma_set_mask_and_coherent(&ipa->pdev->dev, DMA_BIT_MASK(64));
+       ret = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64));
        if (ret) {
                dev_err(dev, "error %d setting DMA mask\n", ret);
                return ret;
        }
 
-       res = platform_get_resource_byname(ipa->pdev, IORESOURCE_MEM,
-                                          "ipa-shared");
+       res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ipa-shared");
        if (!res) {
                dev_err(dev,
                        "DT error getting \"ipa-shared\" memory property\n");
index 868e9c20e8c41746728d055fe6b56c228729064b..28aad00a151da33f576d29c04697c86d8e728487 100644 (file)
@@ -6,6 +6,8 @@
 #ifndef _IPA_MEM_H_
 #define _IPA_MEM_H_
 
+struct platform_device;
+
 struct ipa;
 struct ipa_mem_data;
 
@@ -100,7 +102,8 @@ int ipa_mem_setup(struct ipa *ipa); /* No ipa_mem_teardown() needed */
 
 int ipa_mem_zero_modem(struct ipa *ipa);
 
-int ipa_mem_init(struct ipa *ipa, const struct ipa_mem_data *mem_data);
+int ipa_mem_init(struct ipa *ipa, struct platform_device *pdev,
+                const struct ipa_mem_data *mem_data);
 void ipa_mem_exit(struct ipa *ipa);
 
 #endif /* _IPA_MEM_H_ */