mailbox: bcm-pdc: Don't use iowrite32 to write DMA descriptors

In PDC driver, it is not necessary to use iowrite32()
when writing DMA descriptors to the transmit and receive rings.
The ring memory is in host memory. So convert to normal
assignment statements.

Signed-off-by: Rob Rice <rob.rice@broadcom.com>
Reviewed-by: Andy Gospodarek <gospo@broadcom.com>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
This commit is contained in:
Rob Rice 2016-11-14 13:26:02 -05:00 committed by Jassi Brar
parent 8aef00f090
commit 38ed49ed4a
1 changed files with 11 additions and 12 deletions

View File

@ -528,17 +528,17 @@ pdc_build_rxd(struct pdc_state *pdcs, dma_addr_t dma_addr,
u32 buf_len, u32 flags)
{
struct device *dev = &pdcs->pdev->dev;
struct dma64dd *rxd = &pdcs->rxd_64[pdcs->rxout];
dev_dbg(dev,
"Writing rx descriptor for PDC %u at index %u with length %u. flags %#x\n",
pdcs->pdc_idx, pdcs->rxout, buf_len, flags);
iowrite32(lower_32_bits(dma_addr),
(void *)&pdcs->rxd_64[pdcs->rxout].addrlow);
iowrite32(upper_32_bits(dma_addr),
(void *)&pdcs->rxd_64[pdcs->rxout].addrhigh);
iowrite32(flags, (void *)&pdcs->rxd_64[pdcs->rxout].ctrl1);
iowrite32(buf_len, (void *)&pdcs->rxd_64[pdcs->rxout].ctrl2);
rxd->addrlow = cpu_to_le32(lower_32_bits(dma_addr));
rxd->addrhigh = cpu_to_le32(upper_32_bits(dma_addr));
rxd->ctrl1 = cpu_to_le32(flags);
rxd->ctrl2 = cpu_to_le32(buf_len);
/* bump ring index and return */
pdcs->rxout = NEXTRXD(pdcs->rxout, pdcs->nrxpost);
}
@ -556,17 +556,16 @@ pdc_build_txd(struct pdc_state *pdcs, dma_addr_t dma_addr, u32 buf_len,
u32 flags)
{
struct device *dev = &pdcs->pdev->dev;
struct dma64dd *txd = &pdcs->txd_64[pdcs->txout];
dev_dbg(dev,
"Writing tx descriptor for PDC %u at index %u with length %u, flags %#x\n",
pdcs->pdc_idx, pdcs->txout, buf_len, flags);
iowrite32(lower_32_bits(dma_addr),
(void *)&pdcs->txd_64[pdcs->txout].addrlow);
iowrite32(upper_32_bits(dma_addr),
(void *)&pdcs->txd_64[pdcs->txout].addrhigh);
iowrite32(flags, (void *)&pdcs->txd_64[pdcs->txout].ctrl1);
iowrite32(buf_len, (void *)&pdcs->txd_64[pdcs->txout].ctrl2);
txd->addrlow = cpu_to_le32(lower_32_bits(dma_addr));
txd->addrhigh = cpu_to_le32(upper_32_bits(dma_addr));
txd->ctrl1 = cpu_to_le32(flags);
txd->ctrl2 = cpu_to_le32(buf_len);
/* bump ring index and return */
pdcs->txout = NEXTTXD(pdcs->txout, pdcs->ntxpost);