Message ID | 20220422143643.727871-4-Frank.Li@nxp.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Enable designware PCI EP EDMA locally | expand |
On Fri, Apr 22, 2022 at 09:36:37AM -0500, Frank Li wrote: > struct dw_edma_region rg_region included virtual address, physical > address and size informaiton. But only virtual address is used by EDMA information > driver. Change it to void __iomem *reg_base to clean up code. > > Signed-off-by: Frank Li <Frank.Li@nxp.com> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Thanks, Mani > Reviewed-by: Serge Semin <fancer.lancer@gmail.com> > --- > Change from v6 to v9: > - none > Change from v5 to v6: > -s/change/Change at subject > New patch at v4 > > > drivers/dma/dw-edma/dw-edma-pcie.c | 6 +++--- > drivers/dma/dw-edma/dw-edma-v0-core.c | 2 +- > drivers/dma/dw-edma/dw-edma-v0-debugfs.c | 2 +- > include/linux/dma/edma.h | 3 ++- > 4 files changed, 7 insertions(+), 6 deletions(-) > > diff --git a/drivers/dma/dw-edma/dw-edma-pcie.c b/drivers/dma/dw-edma/dw-edma-pcie.c > index 2c1c5fa4e9f28..ae42bad24dd5a 100644 > --- a/drivers/dma/dw-edma/dw-edma-pcie.c > +++ b/drivers/dma/dw-edma/dw-edma-pcie.c > @@ -233,8 +233,8 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev, > chip->wr_ch_cnt = vsec_data.wr_ch_cnt; > chip->rd_ch_cnt = vsec_data.rd_ch_cnt; > > - chip->rg_region.vaddr = pcim_iomap_table(pdev)[vsec_data.rg.bar]; > - if (!chip->rg_region.vaddr) > + chip->reg_base = pcim_iomap_table(pdev)[vsec_data.rg.bar]; > + if (!chip->reg_base) > return -ENOMEM; > > for (i = 0; i < chip->wr_ch_cnt; i++) { > @@ -299,7 +299,7 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev, > > pci_dbg(pdev, "Registers:\tBAR=%u, off=0x%.8lx, sz=0x%zx bytes, addr(v=%p)\n", > vsec_data.rg.bar, vsec_data.rg.off, vsec_data.rg.sz, > - chip->rg_region.vaddr); > + chip->reg_base); > > > for (i = 0; i < chip->wr_ch_cnt; i++) { > diff --git a/drivers/dma/dw-edma/dw-edma-v0-core.c b/drivers/dma/dw-edma/dw-edma-v0-core.c > index 6cf6c28ce0cc9..c59e23b9f9fdb 100644 > --- a/drivers/dma/dw-edma/dw-edma-v0-core.c > +++ b/drivers/dma/dw-edma/dw-edma-v0-core.c > @@ -25,7 +25,7 @@ enum dw_edma_control { > > static inline struct dw_edma_v0_regs __iomem *__dw_regs(struct dw_edma *dw) > { > - return dw->chip->rg_region.vaddr; > + return dw->chip->reg_base; > } > > #define SET_32(dw, name, value) \ > diff --git a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c > index da88958399a95..f59e7c37feac3 100644 > --- a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c > +++ b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c > @@ -287,7 +287,7 @@ void dw_edma_v0_debugfs_on(struct dw_edma *dw) > if (!dw) > return; > > - regs = dw->chip->rg_region.vaddr; > + regs = dw->chip->reg_base; > if (!regs) > return; > > diff --git a/include/linux/dma/edma.h b/include/linux/dma/edma.h > index 6fd374cc72c8e..e9ce652b88233 100644 > --- a/include/linux/dma/edma.h > +++ b/include/linux/dma/edma.h > @@ -39,6 +39,7 @@ enum dw_edma_map_format { > * @id: instance ID > * @nr_irqs: total dma irq number > * @ops DMA channel to IRQ number mapping > + * @reg_base DMA register base address > * @wr_ch_cnt DMA write channel number > * @rd_ch_cnt DMA read channel number > * @rg_region DMA register region > @@ -53,7 +54,7 @@ struct dw_edma_chip { > int nr_irqs; > const struct dw_edma_core_ops *ops; > > - struct dw_edma_region rg_region; > + void __iomem *reg_base; > > u16 wr_ch_cnt; > u16 rd_ch_cnt; > -- > 2.35.1 >
diff --git a/drivers/dma/dw-edma/dw-edma-pcie.c b/drivers/dma/dw-edma/dw-edma-pcie.c index 2c1c5fa4e9f28..ae42bad24dd5a 100644 --- a/drivers/dma/dw-edma/dw-edma-pcie.c +++ b/drivers/dma/dw-edma/dw-edma-pcie.c @@ -233,8 +233,8 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev, chip->wr_ch_cnt = vsec_data.wr_ch_cnt; chip->rd_ch_cnt = vsec_data.rd_ch_cnt; - chip->rg_region.vaddr = pcim_iomap_table(pdev)[vsec_data.rg.bar]; - if (!chip->rg_region.vaddr) + chip->reg_base = pcim_iomap_table(pdev)[vsec_data.rg.bar]; + if (!chip->reg_base) return -ENOMEM; for (i = 0; i < chip->wr_ch_cnt; i++) { @@ -299,7 +299,7 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev, pci_dbg(pdev, "Registers:\tBAR=%u, off=0x%.8lx, sz=0x%zx bytes, addr(v=%p)\n", vsec_data.rg.bar, vsec_data.rg.off, vsec_data.rg.sz, - chip->rg_region.vaddr); + chip->reg_base); for (i = 0; i < chip->wr_ch_cnt; i++) { diff --git a/drivers/dma/dw-edma/dw-edma-v0-core.c b/drivers/dma/dw-edma/dw-edma-v0-core.c index 6cf6c28ce0cc9..c59e23b9f9fdb 100644 --- a/drivers/dma/dw-edma/dw-edma-v0-core.c +++ b/drivers/dma/dw-edma/dw-edma-v0-core.c @@ -25,7 +25,7 @@ enum dw_edma_control { static inline struct dw_edma_v0_regs __iomem *__dw_regs(struct dw_edma *dw) { - return dw->chip->rg_region.vaddr; + return dw->chip->reg_base; } #define SET_32(dw, name, value) \ diff --git a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c index da88958399a95..f59e7c37feac3 100644 --- a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c +++ b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c @@ -287,7 +287,7 @@ void dw_edma_v0_debugfs_on(struct dw_edma *dw) if (!dw) return; - regs = dw->chip->rg_region.vaddr; + regs = dw->chip->reg_base; if (!regs) return; diff --git a/include/linux/dma/edma.h b/include/linux/dma/edma.h index 6fd374cc72c8e..e9ce652b88233 100644 --- a/include/linux/dma/edma.h +++ b/include/linux/dma/edma.h @@ -39,6 +39,7 @@ enum dw_edma_map_format { * @id: instance ID * @nr_irqs: total dma irq number * @ops DMA channel to IRQ number mapping + * @reg_base DMA register base address * @wr_ch_cnt DMA write channel number * @rd_ch_cnt DMA read channel number * @rg_region DMA register region @@ -53,7 +54,7 @@ struct dw_edma_chip { int nr_irqs; const struct dw_edma_core_ops *ops; - struct dw_edma_region rg_region; + void __iomem *reg_base; u16 wr_ch_cnt; u16 rd_ch_cnt;