aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mlx4/device.h
diff options
context:
space:
mode:
authorYevgeny Petrilin <yevgenyp@mellanox.co.il>2008-10-22 14:44:46 -0400
committerRoland Dreier <rolandd@cisco.com>2008-10-22 14:44:46 -0400
commit2a2336f8228292b8197f4187e54b0748903e6645 (patch)
tree8c54c6d594a055bb5e0a83b2c9c8c2f6fcc03d22 /include/linux/mlx4/device.h
parentb79acb49de6c2ab9ff0245f0f2b573d48b9a2d93 (diff)
mlx4_core: Ethernet MAC/VLAN management
Add support for managing MAC and VLAN filters for each port. Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Signed-off-by: Oren Duer <oren@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'include/linux/mlx4/device.h')
-rw-r--r--include/linux/mlx4/device.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index f9e73cfc540b..1951fe70a251 100644
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -153,6 +153,12 @@ enum mlx4_qp_region {
153 MLX4_NUM_QP_REGION 153 MLX4_NUM_QP_REGION
154}; 154};
155 155
156enum mlx4_special_vlan_idx {
157 MLX4_NO_VLAN_IDX = 0,
158 MLX4_VLAN_MISS_IDX,
159 MLX4_VLAN_REGULAR
160};
161
156enum { 162enum {
157 MLX4_NUM_FEXCH = 64 * 1024, 163 MLX4_NUM_FEXCH = 64 * 1024,
158}; 164};
@@ -438,6 +444,12 @@ int mlx4_multicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16],
438 int block_mcast_loopback); 444 int block_mcast_loopback);
439int mlx4_multicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16]); 445int mlx4_multicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16]);
440 446
447int mlx4_register_mac(struct mlx4_dev *dev, u8 port, u64 mac, int *index);
448void mlx4_unregister_mac(struct mlx4_dev *dev, u8 port, int index);
449
450int mlx4_register_vlan(struct mlx4_dev *dev, u8 port, u16 vlan, int *index);
451void mlx4_unregister_vlan(struct mlx4_dev *dev, u8 port, int index);
452
441int mlx4_map_phys_fmr(struct mlx4_dev *dev, struct mlx4_fmr *fmr, u64 *page_list, 453int mlx4_map_phys_fmr(struct mlx4_dev *dev, struct mlx4_fmr *fmr, u64 *page_list,
442 int npages, u64 iova, u32 *lkey, u32 *rkey); 454 int npages, u64 iova, u32 *lkey, u32 *rkey);
443int mlx4_fmr_alloc(struct mlx4_dev *dev, u32 pd, u32 access, int max_pages, 455int mlx4_fmr_alloc(struct mlx4_dev *dev, u32 pd, u32 access, int max_pages,