[MLX4] added MSI-X support to MLX4 driver.
authorleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sun, 25 Jan 2009 09:32:03 +0000 (09:32 +0000)
committerleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sun, 25 Jan 2009 09:32:03 +0000 (09:32 +0000)
commitd74796d124e77793b17f33c7fb959ae566260c1c
treefb269d73461bfd34074e5fdd357f039fbaa97896
parent72b4ce9de5ae4c6384452e13f0d185a8f9c17fb1
[MLX4] added MSI-X support to MLX4 driver.

This patch adds MSI-X support to MLX4 driver.
To remind, current driver creates 2 EQs (for commands/events and completions), which both use 1 legacy interrupt.
With this patch MLX4 requests (in inf file) 18 MSI-X interrupt vectors, spreaded across processors in round-robin way.
If the platform doesn't support MSI-X vectors, the driver uses legacy interrupts.

MSI-X support required some changes in the card reset mechanism, which are also found in the patch.

git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@1881 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
25 files changed:
hw/mlx4/kernel/bus/core/l2w.c
hw/mlx4/kernel/bus/drv/drv.c
hw/mlx4/kernel/bus/drv/drv.h
hw/mlx4/kernel/bus/drv/mlx4_bus.inx
hw/mlx4/kernel/bus/drv/pci.c
hw/mlx4/kernel/bus/ib/main.c
hw/mlx4/kernel/bus/inc/bus_intf.h
hw/mlx4/kernel/bus/inc/cmd.h
hw/mlx4/kernel/bus/inc/device.h
hw/mlx4/kernel/bus/inc/eq.h
hw/mlx4/kernel/bus/net/catas.c
hw/mlx4/kernel/bus/net/cmd.c
hw/mlx4/kernel/bus/net/eq.c
hw/mlx4/kernel/bus/net/icm.c
hw/mlx4/kernel/bus/net/main.c
hw/mlx4/kernel/bus/net/mlx4.h
hw/mlx4/kernel/bus/net/profile.c
hw/mlx4/kernel/bus/net/reset.c
hw/mlx4/kernel/inc/l2w.h
hw/mlx4/kernel/inc/l2w_sync.h
hw/mlx4/kernel/inc/vc.h
hw/mlx4/kernel/inc/vip_dev.h
hw/mthca/kernel/hca_pnp.c
inc/mthca/mthca_vc.h
tools/vstat/user/vstat_main.c