+ Serge (who authored EDMA support) Thanks, Mani On Mon, Nov 21, 2022 at 09:43:56PM +0900, Yoshihiro Shimoda wrote: > Since reading value of PCIE_DMA_VIEWPORT_BASE + PCIE_DMA_CTRL was > 0x00000000 on one of SoCs (R-Car S4-8), it cannot find the eDMA. > So, directly read the eDMA register if edma.reg_base is not zero. > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> > --- > drivers/pci/controller/dwc/pcie-designware.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/pci/controller/dwc/pcie-designware.c b/drivers/pci/controller/dwc/pcie-designware.c > index 637d01807c67..2cc8584da6f4 100644 > --- a/drivers/pci/controller/dwc/pcie-designware.c > +++ b/drivers/pci/controller/dwc/pcie-designware.c > @@ -836,8 +836,7 @@ static int dw_pcie_edma_find_chip(struct dw_pcie *pci) > { > u32 val; > > - val = dw_pcie_readl_dbi(pci, PCIE_DMA_VIEWPORT_BASE + PCIE_DMA_CTRL); > - if (val == 0xFFFFFFFF && pci->edma.reg_base) { > + if (pci->edma.reg_base) { > pci->edma.mf = EDMA_MF_EDMA_UNROLL; > > val = dw_pcie_readl_dma(pci, PCIE_DMA_CTRL); > @@ -845,6 +844,7 @@ static int dw_pcie_edma_find_chip(struct dw_pcie *pci) > pci->edma.mf = EDMA_MF_EDMA_LEGACY; > > pci->edma.reg_base = pci->dbi_base + PCIE_DMA_VIEWPORT_BASE; > + val = dw_pcie_readl_dbi(pci, PCIE_DMA_VIEWPORT_BASE + PCIE_DMA_CTRL); > } else { > return -ENODEV; > } > -- > 2.25.1 > -- மணிவண்ணன் சதாசிவம்