|
@@ -487,11 +487,17 @@ int vnic_dev_close(struct vnic_dev *vdev)
|
|
return vnic_dev_cmd(vdev, CMD_CLOSE, &a0, &a1, wait);
|
|
return vnic_dev_cmd(vdev, CMD_CLOSE, &a0, &a1, wait);
|
|
}
|
|
}
|
|
|
|
|
|
-int vnic_dev_enable(struct vnic_dev *vdev)
|
|
|
|
|
|
+int vnic_dev_enable_wait(struct vnic_dev *vdev)
|
|
{
|
|
{
|
|
u64 a0 = 0, a1 = 0;
|
|
u64 a0 = 0, a1 = 0;
|
|
int wait = 1000;
|
|
int wait = 1000;
|
|
- return vnic_dev_cmd(vdev, CMD_ENABLE, &a0, &a1, wait);
|
|
|
|
|
|
+ int err;
|
|
|
|
+
|
|
|
|
+ err = vnic_dev_cmd(vdev, CMD_ENABLE_WAIT, &a0, &a1, wait);
|
|
|
|
+ if (err == ERR_ECMDUNKNOWN)
|
|
|
|
+ return vnic_dev_cmd(vdev, CMD_ENABLE, &a0, &a1, wait);
|
|
|
|
+
|
|
|
|
+ return err;
|
|
}
|
|
}
|
|
|
|
|
|
int vnic_dev_disable(struct vnic_dev *vdev)
|
|
int vnic_dev_disable(struct vnic_dev *vdev)
|