1
0
Fork 0

net: ll_temac: Improve error message on error IRQ

The channel status register value can be very helpful when debugging
SDMA problems.

Signed-off-by: Esben Haabendal <esben@geanix.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
hifive-unleashed-5.2
Esben Haabendal 2019-05-07 08:42:57 +02:00 committed by David S. Miller
parent d6787147e1
commit 5db9c74042
1 changed files with 8 additions and 2 deletions

View File

@ -886,8 +886,10 @@ static irqreturn_t ll_temac_tx_irq(int irq, void *_ndev)
if (status & (IRQ_COAL | IRQ_DLY))
temac_start_xmit_done(lp->ndev);
if (status & 0x080)
dev_err(&ndev->dev, "DMA error 0x%x\n", status);
if (status & (IRQ_ERR | IRQ_DMAERR))
dev_err_ratelimited(&ndev->dev,
"TX error 0x%x TX_CHNL_STS=0x%08x\n",
status, lp->dma_in(lp, TX_CHNL_STS));
return IRQ_HANDLED;
}
@ -904,6 +906,10 @@ static irqreturn_t ll_temac_rx_irq(int irq, void *_ndev)
if (status & (IRQ_COAL | IRQ_DLY))
ll_temac_recv(lp->ndev);
if (status & (IRQ_ERR | IRQ_DMAERR))
dev_err_ratelimited(&ndev->dev,
"RX error 0x%x RX_CHNL_STS=0x%08x\n",
status, lp->dma_in(lp, RX_CHNL_STS));
return IRQ_HANDLED;
}