/* 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 {