/* rdma netdev type - specifies protocol type */
enum rdma_netdev_t {
- RDMA_NETDEV_OPA_VNIC
+ RDMA_NETDEV_OPA_VNIC,
+ RDMA_NETDEV_IPOIB,
};
/**
/* control functions */
void (*set_id)(struct net_device *netdev, int id);
+ /* send packet */
+ int (*send)(struct net_device *dev, struct sk_buff *skb,
+ struct ib_ah *address, u32 dqpn);
+ /* multicast */
+ int (*attach_mcast)(struct net_device *dev, struct ib_device *hca,
+ union ib_gid *gid, u16 mlid,
+ int set_qkey, u32 qkey);
+ int (*detach_mcast)(struct net_device *dev, struct ib_device *hca,
+ union ib_gid *gid, u16 mlid);
};
struct ib_device {