/* ******************************************************************************* * sw_ohci_hcd_shutdown * * Description: * void * * Parameters: * void * * Return value: * void * * note: * void * ******************************************************************************* */ void sw_ohci_hcd_shutdown(struct platform_device* pdev) { struct sw_hci_hcd *sw_ohci = NULL; sw_ohci = pdev->dev.platform_data; if(sw_ohci == NULL){ DMSG_PANIC("ERR: sw_ohci is null\n"); return ; } if(sw_ohci->probe == 0){ DMSG_PANIC("ERR: sw_ohci is disable, need not shutdown\n"); return ; } DMSG_INFO("[%s]: ohci shutdown start\n", sw_ohci->hci_name); usb_hcd_platform_shutdown(pdev); sw_stop_ohc(sw_ohci); DMSG_INFO("[%s]: ohci shutdown end\n", sw_ohci->hci_name); return; }
static void sunxi_ohci_hcd_shutdown(struct platform_device* pdev) { struct sunxi_hci_hcd *sunxi_ohci = NULL; sunxi_ohci = pdev->dev.platform_data; if(sunxi_ohci == NULL){ DMSG_PANIC("ERR: sunxi_ohci is null\n"); return ; } if(sunxi_ohci->probe == 0){ DMSG_PANIC("ERR: sunxi_ohci is disable, need not shutdown\n"); return ; } DMSG_INFO("[%s]: ohci shutdown start\n", sunxi_ohci->hci_name); if(sunxi_ohci->not_suspend){ scene_lock_destroy(&ohci_standby_lock[sunxi_ohci->usbc_no]); } usb_hcd_platform_shutdown(pdev); sunxi_stop_ohc(sunxi_ohci); DMSG_INFO("[%s]: ohci shutdown end\n", sunxi_ohci->hci_name); return; }
void sw_ehci_hcd_shutdown(struct platform_device *pdev) { struct sw_hci_hcd *sw_ehci = NULL; if (pdev == NULL) return; sw_ehci = pdev->dev.platform_data; if (sw_ehci == NULL) return; if (sw_ehci->probe == 0) return; pr_info("[%s]: shutdown start\n", sw_ehci->hci_name); usb_hcd_platform_shutdown(pdev); sw_stop_ehci(sw_ehci); pr_info("[%s]: shutdown end\n", sw_ehci->hci_name); return; }
static void sunxi_ohci_hcd_shutdown(struct platform_device* pdev) { struct sunxi_hci_hcd *sunxi_ohci = NULL; sunxi_ohci = pdev->dev.platform_data; if(sunxi_ohci == NULL){ DMSG_PANIC("ERR: sunxi_ohci is null\n"); return ; } if(sunxi_ohci->probe == 0){ DMSG_PANIC("ERR: sunxi_ohci is disable, need not shutdown\n"); return ; } DMSG_INFO("[%s]: ohci shutdown start\n", sunxi_ohci->hci_name); #ifdef CONFIG_USB_HCD_ENHANCE if(sunxi_ohci->usbc_no == 1){ atomic_set(&hci1_thread_scan_flag, 0); } if(sunxi_ohci->usbc_no == 3){ atomic_set(&hci3_thread_scan_flag, 0); } #endif if(sunxi_ohci->not_suspend){ scene_lock_destroy(&ohci_standby_lock[sunxi_ohci->usbc_no]); } usb_hcd_platform_shutdown(pdev); sunxi_stop_ohci(sunxi_ohci); DMSG_INFO("[%s]: ohci shutdown end\n", sunxi_ohci->hci_name); return; }
static void ohci_hcd_tilegx_drv_shutdown(struct platform_device *pdev) { usb_hcd_platform_shutdown(pdev); ohci_hcd_tilegx_drv_remove(pdev); }
static int ehci_fsl_drv_shutdown(struct platform_device *pdev) { struct fsl_usb2_platform_data *pdata = pdev->dev.platform_data; usb_hcd_platform_shutdown(pdev); }