- /* If status is hot upgrading, don't send message to mgmt */
- if (hinic_get_mgmt_channel_status(hwdev))
- return -EPERM;
-
- rc = hinic_pf_to_mgmt_sync(hwdev, mod, cmd, buf_in,
- in_size, buf_out, out_size,
- timeout);
+ if (hinic_func_type(hwdev) == TYPE_VF) {
+ rc = hinic_mbox_to_pf(hwdev, mod, cmd, buf_in, in_size,
+ buf_out, out_size, timeout);
+ } else {
+ rc = hinic_pf_to_mgmt_sync(hwdev, mod, cmd, buf_in, in_size,
+ buf_out, out_size, timeout);
+ }