diff options
Diffstat (limited to 'drivers/net/iseries_veth.c')
-rw-r--r-- | drivers/net/iseries_veth.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/net/iseries_veth.c b/drivers/net/iseries_veth.c index 3d56cf5a4e23..f5ea39ff1017 100644 --- a/drivers/net/iseries_veth.c +++ b/drivers/net/iseries_veth.c | |||
@@ -70,8 +70,9 @@ | |||
70 | #include <linux/delay.h> | 70 | #include <linux/delay.h> |
71 | #include <linux/mm.h> | 71 | #include <linux/mm.h> |
72 | #include <linux/ethtool.h> | 72 | #include <linux/ethtool.h> |
73 | |||
74 | #include <asm/abs_addr.h> | ||
73 | #include <asm/iSeries/mf.h> | 75 | #include <asm/iSeries/mf.h> |
74 | #include <asm/iSeries/iSeries_pci.h> | ||
75 | #include <asm/uaccess.h> | 76 | #include <asm/uaccess.h> |
76 | 77 | ||
77 | #include <asm/iSeries/HvLpConfig.h> | 78 | #include <asm/iSeries/HvLpConfig.h> |
@@ -1397,13 +1398,13 @@ static inline void veth_build_dma_list(struct dma_chunk *list, | |||
1397 | * it just at the granularity of iSeries real->absolute | 1398 | * it just at the granularity of iSeries real->absolute |
1398 | * mapping? Indeed, given the way the allocator works, can we | 1399 | * mapping? Indeed, given the way the allocator works, can we |
1399 | * count on them being absolutely contiguous? */ | 1400 | * count on them being absolutely contiguous? */ |
1400 | list[0].addr = ISERIES_HV_ADDR(p); | 1401 | list[0].addr = iseries_hv_addr(p); |
1401 | list[0].size = min(length, | 1402 | list[0].size = min(length, |
1402 | PAGE_SIZE - ((unsigned long)p & ~PAGE_MASK)); | 1403 | PAGE_SIZE - ((unsigned long)p & ~PAGE_MASK)); |
1403 | 1404 | ||
1404 | done = list[0].size; | 1405 | done = list[0].size; |
1405 | while (done < length) { | 1406 | while (done < length) { |
1406 | list[i].addr = ISERIES_HV_ADDR(p + done); | 1407 | list[i].addr = iseries_hv_addr(p + done); |
1407 | list[i].size = min(length-done, PAGE_SIZE); | 1408 | list[i].size = min(length-done, PAGE_SIZE); |
1408 | done += list[i].size; | 1409 | done += list[i].size; |
1409 | i++; | 1410 | i++; |
@@ -1496,8 +1497,8 @@ static void veth_receive(struct veth_lpar_connection *cnx, | |||
1496 | cnx->dst_inst, | 1497 | cnx->dst_inst, |
1497 | HvLpDma_AddressType_RealAddress, | 1498 | HvLpDma_AddressType_RealAddress, |
1498 | HvLpDma_AddressType_TceIndex, | 1499 | HvLpDma_AddressType_TceIndex, |
1499 | ISERIES_HV_ADDR(&local_list), | 1500 | iseries_hv_addr(&local_list), |
1500 | ISERIES_HV_ADDR(&remote_list), | 1501 | iseries_hv_addr(&remote_list), |
1501 | length); | 1502 | length); |
1502 | if (rc != HvLpDma_Rc_Good) { | 1503 | if (rc != HvLpDma_Rc_Good) { |
1503 | dev_kfree_skb_irq(skb); | 1504 | dev_kfree_skb_irq(skb); |
@@ -1647,10 +1648,13 @@ static struct vio_device_id veth_device_table[] __devinitdata = { | |||
1647 | MODULE_DEVICE_TABLE(vio, veth_device_table); | 1648 | MODULE_DEVICE_TABLE(vio, veth_device_table); |
1648 | 1649 | ||
1649 | static struct vio_driver veth_driver = { | 1650 | static struct vio_driver veth_driver = { |
1650 | .name = DRV_NAME, | ||
1651 | .id_table = veth_device_table, | 1651 | .id_table = veth_device_table, |
1652 | .probe = veth_probe, | 1652 | .probe = veth_probe, |
1653 | .remove = veth_remove | 1653 | .remove = veth_remove, |
1654 | .driver = { | ||
1655 | .name = DRV_NAME, | ||
1656 | .owner = THIS_MODULE, | ||
1657 | } | ||
1654 | }; | 1658 | }; |
1655 | 1659 | ||
1656 | /* | 1660 | /* |