PCI: endpoint: pci-epf-vntb: Fix sparse build warning for epf_db
authorFrank Li <frank.li@nxp.com>
Wed, 2 Nov 2022 14:10:13 +0000 (10:10 -0400)
committerLorenzo Pieralisi <lpieralisi@kernel.org>
Wed, 23 Nov 2022 17:08:57 +0000 (18:08 +0100)
Use epf_db[i] dereference instead of readl() because epf_db is
in memory allocated by dma_alloc_coherent(), not I/O.

Remove useless/duplicated readl() in the process.

Link: https://lore.kernel.org/r/20221102141014.1025893-7-Frank.Li@nxp.com
Signed-off-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
drivers/pci/endpoint/functions/pci-epf-vntb.c

index 5461628..f896846 100644 (file)
@@ -136,7 +136,7 @@ struct epf_ntb {
 
        struct epf_ntb_ctrl *reg;
 
-       void __iomem *epf_db;
+       u32 *epf_db;
 
        phys_addr_t vpci_mw_phy[MAX_MW];
        void __iomem *vpci_mw_addr[MAX_MW];
@@ -257,12 +257,10 @@ static void epf_ntb_cmd_handler(struct work_struct *work)
        ntb = container_of(work, struct epf_ntb, cmd_handler.work);
 
        for (i = 1; i < ntb->db_count; i++) {
-               if (readl(ntb->epf_db + i * sizeof(u32))) {
-                       if (readl(ntb->epf_db + i * sizeof(u32)))
-                               ntb->db |= 1 << (i - 1);
-
+               if (ntb->epf_db[i]) {
+                       ntb->db |= 1 << (i - 1);
                        ntb_db_event(&ntb->ntb, i);
-                       writel(0, ntb->epf_db + i * sizeof(u32));
+                       ntb->epf_db[i] = 0;
                }
        }