|
@@ -177,24 +177,24 @@ int enic_vnic_dev_deinit(struct enic *enic)
|
|
|
return err;
|
|
|
}
|
|
|
|
|
|
-int enic_dev_init_prov(struct enic *enic, struct vic_provinfo *vp)
|
|
|
+int enic_dev_init_prov2(struct enic *enic, struct vic_provinfo *vp)
|
|
|
{
|
|
|
int err;
|
|
|
|
|
|
spin_lock(&enic->devcmd_lock);
|
|
|
- err = vnic_dev_init_prov(enic->vdev,
|
|
|
+ err = vnic_dev_init_prov2(enic->vdev,
|
|
|
(u8 *)vp, vic_provinfo_size(vp));
|
|
|
spin_unlock(&enic->devcmd_lock);
|
|
|
|
|
|
return err;
|
|
|
}
|
|
|
|
|
|
-int enic_dev_init_done(struct enic *enic, int *done, int *error)
|
|
|
+int enic_dev_deinit_done(struct enic *enic, int *status)
|
|
|
{
|
|
|
int err;
|
|
|
|
|
|
spin_lock(&enic->devcmd_lock);
|
|
|
- err = vnic_dev_init_done(enic->vdev, done, error);
|
|
|
+ err = vnic_dev_deinit_done(enic->vdev, status);
|
|
|
spin_unlock(&enic->devcmd_lock);
|
|
|
|
|
|
return err;
|
|
@@ -219,3 +219,57 @@ void enic_vlan_rx_kill_vid(struct net_device *netdev, u16 vid)
|
|
|
enic_del_vlan(enic, vid);
|
|
|
spin_unlock(&enic->devcmd_lock);
|
|
|
}
|
|
|
+
|
|
|
+int enic_dev_enable2(struct enic *enic, int active)
|
|
|
+{
|
|
|
+ int err;
|
|
|
+
|
|
|
+ spin_lock(&enic->devcmd_lock);
|
|
|
+ err = vnic_dev_enable2(enic->vdev, active);
|
|
|
+ spin_unlock(&enic->devcmd_lock);
|
|
|
+
|
|
|
+ return err;
|
|
|
+}
|
|
|
+
|
|
|
+int enic_dev_enable2_done(struct enic *enic, int *status)
|
|
|
+{
|
|
|
+ int err;
|
|
|
+
|
|
|
+ spin_lock(&enic->devcmd_lock);
|
|
|
+ err = vnic_dev_enable2_done(enic->vdev, status);
|
|
|
+ spin_unlock(&enic->devcmd_lock);
|
|
|
+
|
|
|
+ return err;
|
|
|
+}
|
|
|
+
|
|
|
+int enic_dev_status_to_errno(int devcmd_status)
|
|
|
+{
|
|
|
+ switch (devcmd_status) {
|
|
|
+ case ERR_SUCCESS:
|
|
|
+ return 0;
|
|
|
+ case ERR_EINVAL:
|
|
|
+ return -EINVAL;
|
|
|
+ case ERR_EFAULT:
|
|
|
+ return -EFAULT;
|
|
|
+ case ERR_EPERM:
|
|
|
+ return -EPERM;
|
|
|
+ case ERR_EBUSY:
|
|
|
+ return -EBUSY;
|
|
|
+ case ERR_ECMDUNKNOWN:
|
|
|
+ case ERR_ENOTSUPPORTED:
|
|
|
+ return -EOPNOTSUPP;
|
|
|
+ case ERR_EBADSTATE:
|
|
|
+ return -EINVAL;
|
|
|
+ case ERR_ENOMEM:
|
|
|
+ return -ENOMEM;
|
|
|
+ case ERR_ETIMEDOUT:
|
|
|
+ return -ETIMEDOUT;
|
|
|
+ case ERR_ELINKDOWN:
|
|
|
+ return -ENETDOWN;
|
|
|
+ case ERR_EINPROGRESS:
|
|
|
+ return -EINPROGRESS;
|
|
|
+ case ERR_EMAXRES:
|
|
|
+ default:
|
|
|
+ return (devcmd_status < 0) ? devcmd_status : -1;
|
|
|
+ }
|
|
|
+}
|