int diagfwd_connect(void) { int err; printk(KERN_DEBUG "diag: USB connected\n"); #ifdef CONFIG_SH_USB_CUST err = diag_open(driver->poolsize + 3); /* 2 for A9 ; 1 for q6*/ #else /* CONFIG_SH_USB_CUST */ err = usb_diag_alloc_req(driver->legacy_ch, N_LEGACY_WRITE, N_LEGACY_READ); #endif /* CONFIG_SH_USB_CUST */ if (err) printk(KERN_ERR "diag: unable to alloc USB req on legacy ch"); driver->usb_connected = 1; driver->in_busy_1 = 0; driver->in_busy_2 = 0; driver->in_busy_qdsp_1 = 0; driver->in_busy_qdsp_2 = 0; /* Poll SMD channels to check for data*/ queue_work(driver->diag_wq, &(driver->diag_read_smd_work)); queue_work(driver->diag_wq, &(driver->diag_read_smd_qdsp_work)); /* Poll USB channel to check for data*/ queue_work(driver->diag_wq, &(driver->diag_read_work)); #ifdef CONFIG_DIAG_SDIO_PIPE if (machine_is_msm8x60_charm_surf() || machine_is_msm8x60_charm_ffa()) { if (driver->mdm_ch && !IS_ERR(driver->mdm_ch)) diagfwd_connect_sdio(); else printk(KERN_INFO "diag: No USB MDM ch"); } #endif return 0; }
int diagfwd_connect(void) { int err; printk(KERN_DEBUG "diag: USB connected\n"); err = diag_open(driver->poolsize + 3); /* 2 for A9 ; 1 for q6*/ if (err) printk(KERN_ERR "diag: USB port open failed"); driver->usb_connected = 1; driver->in_busy_1 = 0; driver->in_busy_2 = 0; driver->in_busy_qdsp_1 = 0; driver->in_busy_qdsp_2 = 0; driver->in_busy_mdm_1 = 0; driver->in_busy_mdm_2 = 0; /* Poll SMD channels to check for data*/ queue_work(driver->diag_wq, &(driver->diag_read_smd_work)); queue_work(driver->diag_wq, &(driver->diag_read_smd_qdsp_work)); /*queue_work(driver->mdm_diag_workqueue, &(driver->diag_read_smd_mdm_work));*/ driver->usb_read_ptr->buf = driver->usb_buf_out; driver->usb_read_ptr->length = USB_MAX_OUT_BUF; APPEND_DEBUG('a'); diag_read(driver->usb_read_ptr); APPEND_DEBUG('b'); return 0; }
int diagfwd_connect(void) { int err; printk(KERN_DEBUG "diag: USB connected\n"); err = diag_open(driver->poolsize + 3); if (err) printk(KERN_ERR "diag: USB port open failed"); driver->usb_connected = 1; driver->in_busy = 0; driver->in_busy_qdsp = 0; queue_work(driver->diag_wq, &(driver->diag_read_smd_work)); queue_work(driver->diag_wq, &(driver->diag_read_smd_qdsp_work)); driver->usb_read_ptr->buf = driver->usb_buf_out; driver->usb_read_ptr->length = USB_MAX_OUT_BUF; APPEND_DEBUG('a'); diag_read(driver->usb_read_ptr); APPEND_DEBUG('b'); return 0; }
FILE *diag_device_get(void) { return diag_open(&diag_desc, &mode); }