static int bridge_suspend(struct usb_interface *intf, pm_message_t message) { int retval; struct data_bridge *dev = usb_get_intfdata(intf); retval = data_bridge_suspend(dev, message); if (!retval) { retval = ctrl_bridge_suspend(dev->id); intf->dev.power.power_state.event = message.event; } return retval; }
static int bridge_suspend(struct usb_interface *intf, pm_message_t message) { int retval; struct data_bridge *dev = usb_get_intfdata(intf); struct bridge *brdg = dev->brdg; retval = data_bridge_suspend(dev, message); if (!retval) { if (message.event & PM_EVENT_SUSPEND) { if (brdg) retval = ctrl_bridge_suspend(brdg->ch_id); intf->dev.power.power_state.event = message.event; } } else { dev_dbg(&dev->udev->dev, "%s: device is busy,cannot suspend\n", __func__); } return retval; }