ixp4xx_eth: fix dma_mapping_error() compile errors
The arm ixp4xx_eth driver doesn't compile in 2.6.27-rc1: CC [M] drivers/net/arm/ixp4xx_eth.o drivers/net/arm/ixp4xx_eth.c: In function 'eth_poll': drivers/net/arm/ixp4xx_eth.c:554: warning: passing argument 1 of 'dma_mapping_error' makes pointer from integer without a cast drivers/net/arm/ixp4xx_eth.c:554: error: too few arguments to function 'dma_mapping_error' drivers/net/arm/ixp4xx_eth.c: In function 'eth_xmit': drivers/net/arm/ixp4xx_eth.c:701: warning: passing argument 1 of 'dma_mapping_error' makes pointer from integer without a cast drivers/net/arm/ixp4xx_eth.c:701: error: too few arguments to function 'dma_mapping_error' drivers/net/arm/ixp4xx_eth.c: In function 'init_queues': drivers/net/arm/ixp4xx_eth.c:886: warning: passing argument 1 of 'dma_mapping_error' makes pointer from integer without a cast drivers/net/arm/ixp4xx_eth.c:886: error: too few arguments to function 'dma_mapping_error' make[3]: *** [drivers/net/arm/ixp4xx_eth.o] Error 1 make[2]: *** [drivers/net/arm] Error 2 make[1]: *** [drivers/net] Error 2 make: *** [drivers] Error 2 dma_mapping_error() changed in 2.6.27-rc1 to also take a device parameter, but nobody bothered updating ixp4xx_eth.c. Fixed by passing the appropriate device value in the dma_mapping_error() calls. Tested on an ixp425 box. Signed-off-by: Mikael Pettersson <mikpe@it.uu.se> Acked-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
Родитель
2a54adc3ad
Коммит
7144decb0f
|
@ -551,7 +551,7 @@ static int eth_poll(struct napi_struct *napi, int budget)
|
|||
if ((skb = netdev_alloc_skb(dev, RX_BUFF_SIZE))) {
|
||||
phys = dma_map_single(&dev->dev, skb->data,
|
||||
RX_BUFF_SIZE, DMA_FROM_DEVICE);
|
||||
if (dma_mapping_error(phys)) {
|
||||
if (dma_mapping_error(&dev->dev, phys)) {
|
||||
dev_kfree_skb(skb);
|
||||
skb = NULL;
|
||||
}
|
||||
|
@ -698,7 +698,7 @@ static int eth_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
#endif
|
||||
|
||||
phys = dma_map_single(&dev->dev, mem, bytes, DMA_TO_DEVICE);
|
||||
if (dma_mapping_error(phys)) {
|
||||
if (dma_mapping_error(&dev->dev, phys)) {
|
||||
#ifdef __ARMEB__
|
||||
dev_kfree_skb(skb);
|
||||
#else
|
||||
|
@ -883,7 +883,7 @@ static int init_queues(struct port *port)
|
|||
desc->buf_len = MAX_MRU;
|
||||
desc->data = dma_map_single(&port->netdev->dev, data,
|
||||
RX_BUFF_SIZE, DMA_FROM_DEVICE);
|
||||
if (dma_mapping_error(desc->data)) {
|
||||
if (dma_mapping_error(&port->netdev->dev, desc->data)) {
|
||||
free_buffer(buff);
|
||||
return -EIO;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче