linux/drivers/net/mlx4
Roland Dreier 0e6e741621 IB/mlx4: Handle new FW requirement for send request prefetching
New ConnectX firmware introduces FW command interface revision 2,
which requires that for each QP, a chunk of send queue entries (the
"headroom") is kept marked as invalid, so that the HCA doesn't get
confused if it prefetches entries that haven't been posted yet.  Add
code to the driver to do this, and also update the user ABI so that
userspace can request that the prefetcher be turned off for userspace
QPs (we just leave the prefetcher on for all kernel QPs).

Unfortunately, marking send queue entries this way is confuses older
firmware, so we change the driver to allow only FW command interface
revisions 2.  This means that users will have to update their firmware
to work with the new driver, but the firmware is changing quickly and
the old firmware has lots of other bugs anyway, so this shouldn't be too
big a deal.

Based on a patch from Jack Morgenstein <jackm@dev.mellanox.co.il>.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
2007-06-18 08:13:48 -07:00
..
Makefile IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
alloc.c IB/mlx4: Fix last allocated object tracking in bitmap allocator 2007-05-29 16:07:09 -07:00
catas.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
cmd.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
cq.c mlx4_core: Fix CQ context layout 2007-06-07 11:51:57 -07:00
eq.c mlx4_core: Free catastrophic error MSI-X interrupt with correct dev_id 2007-06-07 11:51:58 -07:00
fw.c IB/mlx4: Handle new FW requirement for send request prefetching 2007-06-18 08:13:48 -07:00
fw.h IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
icm.c missing includes in mlx4 2007-05-15 18:56:37 -07:00
icm.h IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
intf.c mlx4_core: Initialize ctx_list and ctx_lock earlier 2007-06-07 11:51:58 -07:00
main.c mlx4_core: Initialize ctx_list and ctx_lock earlier 2007-06-07 11:51:58 -07:00
mcg.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
mlx4.h mlx4_core: Remove unused doorbell_lock 2007-05-13 08:54:18 -07:00
mr.c mlx4_core: Don't set MTT address in dMPT entries with PA set 2007-06-07 23:24:38 -07:00
pd.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
profile.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
qp.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00
reset.c missing includes in mlx4 2007-05-15 18:56:37 -07:00
srq.c IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters 2007-05-08 18:00:38 -07:00