summaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-08-08 21:51:04 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-08-08 21:51:04 +0000
commit403b1f1906bb7459917cfbebf7f1606b342c0a1f (patch)
treee447ab95c79736ca992d47a20e1b661685f1ab4c /target/linux
parentd1e20e7b57b386e6fd0e6a0b0c0493377c0cdca4 (diff)
[mcs814x] nuport-mac: check dma_map_single address return values
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33067 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c b/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c
index 794987f73..38dbe1ee7 100644
--- a/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c
+++ b/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c
@@ -256,6 +256,8 @@ static int nuport_mac_start_tx_dma(struct nuport_mac_priv *priv,
priv->tx_addr = dma_map_single(&priv->pdev->dev, skb->data,
skb->len, DMA_TO_DEVICE);
+ if (!priv->tx_addr)
+ return -ENOMEM;
/* enable enhanced mode */
nuport_mac_writel(TX_DMA_ENH_ENABLE, TX_DMA_ENH);
@@ -297,6 +299,8 @@ static int nuport_mac_start_rx_dma(struct nuport_mac_priv *priv,
priv->rx_addr = dma_map_single(&priv->pdev->dev, skb->data,
RX_ALLOC_SIZE, DMA_FROM_DEVICE);
+ if (!priv->rx_addr)
+ return -ENOMEM;
nuport_mac_writel(priv->rx_addr, RX_BUFFER_ADDR);
wmb();