static void diagfwd_hsic_notifier(void *priv, unsigned event, struct diag_request *d_req) { switch (event) { case USB_DIAG_CONNECT: diagfwd_connect_hsic(); break; case USB_DIAG_DISCONNECT: diagfwd_disconnect_hsic(); break; case USB_DIAG_READ_DONE: diagfwd_read_complete_hsic(d_req); break; case USB_DIAG_WRITE_DONE: diagfwd_write_complete_hsic(); break; default: pr_err("DIAG in %s: Unknown event from USB diag:%u\n", __func__, event); break; } }
static void diag_usb_read_complete_fn(struct work_struct *w) { diagfwd_read_complete_hsic(driver->usb_read_mdm_ptr); }