aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/mlx4/en_main.c
diff options
context:
space:
mode:
authorRoland Dreier <rolandd@cisco.com>2011-01-12 09:50:36 -0800
committerRoland Dreier <rolandd@cisco.com>2011-01-12 09:50:36 -0800
commit4979d18fe105297f8f065743f31f8f735da8df2d (patch)
tree36776f85b2bee47c5a671db498939305589d23aa /drivers/net/mlx4/en_main.c
parent4162cf64973df51fc885825bc9ca4d055891c49f (diff)
mlx4_{core, ib, en}: Fix driver when sizeof (phys_addr_t) > sizeof (long)
Some systems have PCI addresses that don't fit in unsigned long (eg some 32-bit PowerPC 440 systems have 36-bit bus addresses). Fix up mlx4 drivers by using phys_addr_t where appropriate, so we don't truncate any PCI resource addresses before ioremapping them. Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/net/mlx4/en_main.c')
-rw-r--r--drivers/net/mlx4/en_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/mlx4/en_main.c b/drivers/net/mlx4/en_main.c
index f6e0d40cd87..1ff6ca6466e 100644
--- a/drivers/net/mlx4/en_main.c
+++ b/drivers/net/mlx4/en_main.c
@@ -202,7 +202,8 @@ static void *mlx4_en_add(struct mlx4_dev *dev)
if (mlx4_uar_alloc(dev, &mdev->priv_uar))
goto err_pd;
- mdev->uar_map = ioremap(mdev->priv_uar.pfn << PAGE_SHIFT, PAGE_SIZE);
+ mdev->uar_map = ioremap((phys_addr_t) mdev->priv_uar.pfn << PAGE_SHIFT,
+ PAGE_SIZE);
if (!mdev->uar_map)
goto err_uar;
spin_lock_init(&mdev->uar_lock);