static int rt2870_suspend( struct usb_interface *intf, pm_message_t state) { struct net_device *net_dev; VOID *pAd = usb_get_intfdata(intf); #ifdef USB_SUPPORT_SELECTIVE_SUSPEND UCHAR Flag; DBGPRINT(RT_DEBUG_ERROR, ("autosuspend===> rt2870_suspend()\n")); /* if(!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_IDLE_RADIO_OFF)) */ RTMP_DRIVER_ADAPTER_IDLE_RADIO_OFF_TEST(pAd, &Flag); if(!Flag) { /*RT28xxUsbAsicRadioOff(pAd); */ RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_CPU_SUSPEND); */ RTMP_DRIVER_ADAPTER_CPU_SUSPEND_SET(pAd); } /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_SUSPEND); */ RTMP_DRIVER_ADAPTER_SUSPEND_SET(pAd); return 0; #endif /* USB_SUPPORT_SELECTIVE_SUSPEND */ DBGPRINT(RT_DEBUG_TRACE, ("===> rt2870_suspend()\n")); /* net_dev = pAd->net_dev; */ RTMP_DRIVER_NET_DEV_GET(pAd, &net_dev); netif_device_detach(net_dev); RTMP_DRIVER_USB_SUSPEND(pAd, netif_running(net_dev)); DBGPRINT(RT_DEBUG_TRACE, ("<=== rt2870_suspend()\n")); return 0; }
static int rt2870_suspend( struct usb_interface *intf, pm_message_t state) { struct net_device *net_dev; VOID *pAd = usb_get_intfdata(intf); #if (defined(WOW_SUPPORT) && defined(RTMP_MAC_USB)) || defined(NEW_WOW_SUPPORT) UCHAR Flag; RTMP_DRIVER_ADAPTER_RT28XX_WOW_STATUS(pAd, &Flag); #endif /* (defined(WOW_SUPPORT) && defined(RTMP_MAC_USB)) || defined(NEW_WOW_SUPPORT) */ DBGPRINT(RT_DEBUG_TRACE, ("===> rt2870_suspend()\n")); #ifdef USB_SUPPORT_SELECTIVE_SUSPEND UCHAR Flag; DBGPRINT(RT_DEBUG_ERROR, ("autosuspend===> rt2870_suspend()\n")); #if (defined(WOW_SUPPORT) && defined(RTMP_MAC_USB)) || defined(NEW_WOW_SUPPORT) if (Flag == FALSE) #endif /* (defined(WOW_SUPPORT) && defined(RTMP_MAC_USB)) || defined(NEW_WOW_SUPPORT) */ { /* if(!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_IDLE_RADIO_OFF)) */ RTMP_DRIVER_ADAPTER_END_DISSASSOCIATE(pAd); RTMP_DRIVER_ADAPTER_IDLE_RADIO_OFF_TEST(pAd, &Flag); if(!Flag) { /*RT28xxUsbAsicRadioOff(pAd); */ RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); } } /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_SUSPEND); */ RTMP_DRIVER_ADAPTER_SUSPEND_SET(pAd); return 0; #endif /* USB_SUPPORT_SELECTIVE_SUSPEND */ #ifdef CONFIG_STA_SUPPORT //RTMP_DRIVER_ADAPTER_END_DISSASSOCIATE(pAd); #endif #if (defined(WOW_SUPPORT) && defined(RTMP_MAC_USB)) || defined(NEW_WOW_SUPPORT) if (Flag == TRUE) RTMP_DRIVER_ADAPTER_RT28XX_WOW_ENABLE(pAd); else #endif /* (defined(WOW_SUPPORT) && defined(RTMP_MAC_USB)) || defined(NEW_WOW_SUPPORT) */ { RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); RTMP_DRIVER_ADAPTER_SUSPEND_SET(pAd); } DBGPRINT(RT_DEBUG_TRACE, ("<=== rt2870_suspend()\n")); return 0; }
static int rt2870_suspend( struct usb_interface *intf, pm_message_t state) { struct net_device *net_dev; VOID *pAd = usb_get_intfdata(intf); late_resume_flag = TRUE; #ifdef USB_SUPPORT_SELECTIVE_SUSPEND UCHAR Flag; #endif #if defined(CONFIG_HAS_EARLYSUSPEND) || defined(CONFIG_ANDROID_POWER) if ((RT_IS_EARLYSUSPEND_REGISTERED((PRTMP_ADAPTER)pAd)) && (late_resume_flag == TRUE)){ VIRTUAL_IF_DOWN((VOID *)pAd); DBGPRINT(RT_DEBUG_OFF, ("%s, We has already register earlysuspend, make VIRTUAL_IF_DOWN\n", __func__)); return 0; } #endif #ifdef USB_SUPPORT_SELECTIVE_SUSPEND // UCHAR Flag; DBGPRINT(RT_DEBUG_ERROR, ("autosuspend===> rt2870_suspend()\n")); /* RtmpOSWrielessEventSend(pAd->net_dev, RT_WLAN_EVENT_CGIWAP, -1, NULL, NULL, 0);*/ RTMP_DRIVER_ADAPTER_END_DISSASSOCIATE(pAd); /* if(!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_IDLE_RADIO_OFF)) */ RTMP_DRIVER_ADAPTER_IDLE_RADIO_OFF_TEST(pAd, &Flag); if(!Flag) { /*RT28xxUsbAsicRadioOff(pAd); */ RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_CPU_SUSPEND); */ RTMP_DRIVER_ADAPTER_CPU_SUSPEND_SET(pAd); } /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_SUSPEND); */ RTMP_DRIVER_ADAPTER_SUSPEND_SET(pAd); DBGPRINT(RT_DEBUG_ERROR, ("autosuspend <=== rt2870_suspend()\n")); return 0; #endif /* USB_SUPPORT_SELECTIVE_SUSPEND */ DBGPRINT(RT_DEBUG_TRACE, ("===> rt2870_suspend()\n")); // RtmpOSWrielessEventSend(pAd->net_dev, RT_WLAN_EVENT_CGIWAP, -1, NULL, NULL, 0); // RTMP_DRIVER_ADAPTER_END_DISSASSOCIATE(pAd); // RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); /* net_dev = pAd->net_dev; */ RTMP_DRIVER_NET_DEV_GET(pAd, &net_dev); netif_device_detach(net_dev); RTMP_DRIVER_USB_SUSPEND(pAd, netif_running(net_dev)); DBGPRINT(RT_DEBUG_TRACE, ("<=== rt2870_suspend()\n")); return 0; }
static int rt2870_suspend( struct usb_interface *intf, pm_message_t state) { struct net_device *net_dev; VOID *pAd = usb_get_intfdata(intf); #ifdef CONFIG_HAS_EARLYSUSPEND UCHAR check_early_suspend_flag; RTMP_DRIVER_ADAPTER_CHECK_EARLYSUSPEND(pAd, &check_early_suspend_flag); if (check_early_suspend_flag == TRUE){ VIRTUAL_IF_DOWN(pAd); DBGPRINT(RT_DEBUG_OFF, ("%s, We has already register earlysuspend, make VIRTUAL_IF_DOWN\n", __func__)); return 0; } #endif #ifdef USB_SUPPORT_SELECTIVE_SUSPEND UCHAR Flag; DBGPRINT(RT_DEBUG_ERROR, ("autosuspend===> rt2870_suspend()\n")); { /* if(!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_IDLE_RADIO_OFF)) */ RTMP_DRIVER_ADAPTER_END_DISSASSOCIATE(pAd); RTMP_DRIVER_ADAPTER_IDLE_RADIO_OFF_TEST(pAd, &Flag); if(!Flag) { /*RT28xxUsbAsicRadioOff(pAd); */ RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); } } /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_SUSPEND); */ RTMP_DRIVER_ADAPTER_SUSPEND_SET(pAd); return 0; #endif /* USB_SUPPORT_SELECTIVE_SUSPEND */ DBGPRINT(RT_DEBUG_TRACE, ("===> rt2870_suspend()\n")); /* net_dev = pAd->net_dev; */ RTMP_DRIVER_NET_DEV_GET(pAd, &net_dev); netif_device_detach(net_dev); RTMP_DRIVER_USB_SUSPEND(pAd, netif_running(net_dev)); DBGPRINT(RT_DEBUG_TRACE, ("<=== rt2870_suspend()\n")); return 0; }
static int rtusb_suspend(struct usb_interface *intf, pm_message_t state) { struct net_device *net_dev; VOID *pAd = usb_get_intfdata(intf); #ifdef USB_SUPPORT_SELECTIVE_SUSPEND UCHAR Flag; DBGPRINT(RT_DEBUG_ERROR, ("%s():=>autosuspend\n", __FUNCTION__)); #ifdef WOW_SUPPORT RTMP_DRIVER_ADAPTER_RT28XX_USB_WOW_STATUS(pAd, &Flag); if (Flag == TRUE) RTMP_DRIVER_ADAPTER_RT28XX_USB_WOW_ENABLE(pAd); else #endif /* WOW_SUPPORT */ { /* if(!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_IDLE_RADIO_OFF)) */ RTMP_DRIVER_ADAPTER_END_DISSASSOCIATE(pAd); RTMP_DRIVER_ADAPTER_IDLE_RADIO_OFF_TEST(pAd, &Flag); if(!Flag) { /*RT28xxUsbAsicRadioOff(pAd); */ RTMP_DRIVER_ADAPTER_RT28XX_USB_ASICRADIO_OFF(pAd); } } /*RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_SUSPEND); */ RTMP_DRIVER_ADAPTER_SUSPEND_SET(pAd); return 0; #endif /* USB_SUPPORT_SELECTIVE_SUSPEND */ DBGPRINT(RT_DEBUG_TRACE, ("%s()=>\n", __FUNCTION__)); /* net_dev = pAd->net_dev; */ RTMP_DRIVER_NET_DEV_GET(pAd, &net_dev); netif_device_detach(net_dev); RTMP_DRIVER_USB_SUSPEND(pAd, netif_running(net_dev)); DBGPRINT(RT_DEBUG_TRACE, ("<=%s()\n", __FUNCTION__)); return 0; }