--- /dev/null
+@@
+identifier backport_driver;
+@@
+struct usb_driver backport_driver = {
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
+ .disable_hub_initiated_lpm = 1,
++#endif
+...
+};
+++ /dev/null
---- a/drivers/bluetooth/ath3k.c
-+++ b/drivers/bluetooth/ath3k.c
-@@ -507,7 +507,9 @@ static struct usb_driver ath3k_driver =
- .probe = ath3k_probe,
- .disconnect = ath3k_disconnect,
- .id_table = ath3k_table,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(ath3k_driver);
+++ /dev/null
---- a/drivers/bluetooth/bcm203x.c
-+++ b/drivers/bluetooth/bcm203x.c
-@@ -273,7 +273,9 @@ static struct usb_driver bcm203x_driver
- .probe = bcm203x_probe,
- .disconnect = bcm203x_disconnect,
- .id_table = bcm203x_table,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(bcm203x_driver);
+++ /dev/null
---- a/drivers/bluetooth/bfusb.c
-+++ b/drivers/bluetooth/bfusb.c
-@@ -730,7 +730,9 @@ static struct usb_driver bfusb_driver =
- .probe = bfusb_probe,
- .disconnect = bfusb_disconnect,
- .id_table = bfusb_table,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(bfusb_driver);
+++ /dev/null
---- a/drivers/bluetooth/bpa10x.c
-+++ b/drivers/bluetooth/bpa10x.c
-@@ -503,7 +503,9 @@ static struct usb_driver bpa10x_driver =
- .probe = bpa10x_probe,
- .disconnect = bpa10x_disconnect,
- .id_table = bpa10x_table,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(bpa10x_driver);
+++ /dev/null
---- a/drivers/bluetooth/btusb.c
-+++ b/drivers/bluetooth/btusb.c
-@@ -1637,7 +1637,9 @@ static struct usb_driver btusb_driver =
- #endif
- .id_table = btusb_table,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(btusb_driver);
+++ /dev/null
---- a/drivers/net/usb/cdc_ether.c
-+++ b/drivers/net/usb/cdc_ether.c
-@@ -726,7 +726,9 @@ static struct usb_driver cdc_driver = {
- .resume = usbnet_resume,
- .reset_resume = usbnet_resume,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(cdc_driver);
+++ /dev/null
---- a/drivers/net/usb/cdc_mbim.c
-+++ b/drivers/net/usb/cdc_mbim.c
-@@ -481,7 +481,9 @@ static struct usb_driver cdc_mbim_driver
- .resume = cdc_mbim_resume,
- .reset_resume = cdc_mbim_resume,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
- module_usb_driver(cdc_mbim_driver);
-
+++ /dev/null
---- a/drivers/net/usb/cdc_ncm.c
-+++ b/drivers/net/usb/cdc_ncm.c
-@@ -1212,7 +1212,9 @@ static struct usb_driver cdc_ncm_driver
- .resume = usbnet_resume,
- .reset_resume = usbnet_resume,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(cdc_ncm_driver);
+++ /dev/null
---- a/drivers/net/usb/qmi_wwan.c
-+++ b/drivers/net/usb/qmi_wwan.c
-@@ -818,7 +818,9 @@ static struct usb_driver qmi_wwan_driver
- .resume = qmi_wwan_resume,
- .reset_resume = qmi_wwan_resume,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(qmi_wwan_driver);
+++ /dev/null
---- a/drivers/net/usb/rndis_host.c
-+++ b/drivers/net/usb/rndis_host.c
-@@ -637,7 +637,9 @@ static struct usb_driver rndis_driver =
- .disconnect = usbnet_disconnect,
- .suspend = usbnet_suspend,
- .resume = usbnet_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rndis_driver);
+++ /dev/null
---- a/drivers/net/usb/sierra_net.c
-+++ b/drivers/net/usb/sierra_net.c
-@@ -959,7 +959,9 @@ static struct usb_driver sierra_net_driv
- .suspend = usbnet_suspend,
- .resume = usbnet_resume,
- .no_dynamic_id = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(sierra_net_driver);
+++ /dev/null
---- a/drivers/net/wireless/at76c50x-usb.c
-+++ b/drivers/net/wireless/at76c50x-usb.c
-@@ -2451,7 +2451,9 @@ static struct usb_driver at76_driver = {
- .probe = at76_probe,
- .disconnect = at76_disconnect,
- .id_table = dev_table,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- static int __init at76_mod_init(void)
+++ /dev/null
---- a/drivers/net/wireless/ath/ath6kl/usb.c
-+++ b/drivers/net/wireless/ath/ath6kl/usb.c
-@@ -1225,7 +1225,9 @@ static struct usb_driver ath6kl_usb_driv
- .disconnect = ath6kl_usb_remove,
- .id_table = ath6kl_usb_ids,
- .supports_autosuspend = true,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- static int ath6kl_usb_init(void)
+++ /dev/null
---- a/drivers/net/wireless/ath/ath9k/hif_usb.c
-+++ b/drivers/net/wireless/ath/ath9k/hif_usb.c
-@@ -1368,7 +1368,9 @@ static struct usb_driver ath9k_hif_usb_d
- #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
- .soft_unbind = 1,
- #endif
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- int ath9k_hif_usb_init(void)
+++ /dev/null
---- a/drivers/net/wireless/ath/carl9170/usb.c
-+++ b/drivers/net/wireless/ath/carl9170/usb.c
-@@ -1166,7 +1166,9 @@ static struct usb_driver carl9170_driver
- .resume = carl9170_usb_resume,
- .reset_resume = carl9170_usb_resume,
- #endif /* CONFIG_PM */
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(carl9170_driver);
+++ /dev/null
---- a/drivers/net/wireless/brcm80211/brcmfmac/usb.c
-+++ b/drivers/net/wireless/brcm80211/brcmfmac/usb.c
-@@ -1502,7 +1502,9 @@ static struct usb_driver brcmf_usbdrvr =
- .resume = brcmf_usb_resume,
- .reset_resume = brcmf_usb_reset_resume,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- static void brcmf_release_fw(struct list_head *q)
+++ /dev/null
---- a/drivers/net/wireless/libertas/if_usb.c
-+++ b/drivers/net/wireless/libertas/if_usb.c
-@@ -1010,7 +1010,9 @@ static struct usb_driver if_usb_driver =
- .suspend = if_usb_suspend,
- .resume = if_usb_resume,
- .reset_resume = if_usb_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(if_usb_driver);
+++ /dev/null
---- a/drivers/net/wireless/libertas_tf/if_usb.c
-+++ b/drivers/net/wireless/libertas_tf/if_usb.c
-@@ -920,7 +920,9 @@ static struct usb_driver if_usb_driver =
- .id_table = if_usb_table,
- .suspend = if_usb_suspend,
- .resume = if_usb_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(if_usb_driver);
+++ /dev/null
---- a/drivers/net/wireless/orinoco/orinoco_usb.c
-+++ b/drivers/net/wireless/orinoco/orinoco_usb.c
-@@ -1759,7 +1759,9 @@ static struct usb_driver orinoco_driver
- .probe = ezusb_probe,
- .disconnect = ezusb_disconnect,
- .id_table = ezusb_table,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(orinoco_driver);
+++ /dev/null
---- a/drivers/net/wireless/p54/p54usb.c
-+++ b/drivers/net/wireless/p54/p54usb.c
-@@ -1142,7 +1142,9 @@ static struct usb_driver p54u_driver = {
- #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
- .soft_unbind = 1,
- #endif
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(p54u_driver);
+++ /dev/null
---- a/drivers/net/wireless/rndis_wlan.c
-+++ b/drivers/net/wireless/rndis_wlan.c
-@@ -3753,7 +3753,9 @@ static struct usb_driver rndis_wlan_driv
- .disconnect = usbnet_disconnect,
- .suspend = usbnet_suspend,
- .resume = usbnet_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rndis_wlan_driver);
+++ /dev/null
---- a/drivers/net/wireless/rt2x00/rt2500usb.c
-+++ b/drivers/net/wireless/rt2x00/rt2500usb.c
-@@ -1998,7 +1998,9 @@ static struct usb_driver rt2500usb_drive
- .suspend = rt2x00usb_suspend,
- .resume = rt2x00usb_resume,
- .reset_resume = rt2x00usb_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rt2500usb_driver);
+++ /dev/null
---- a/drivers/net/wireless/rt2x00/rt2800usb.c
-+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
-@@ -1398,7 +1398,9 @@ static struct usb_driver rt2800usb_drive
- .suspend = rt2x00usb_suspend,
- .resume = rt2x00usb_resume,
- .reset_resume = rt2x00usb_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rt2800usb_driver);
+++ /dev/null
---- a/drivers/net/wireless/rt2x00/rt73usb.c
-+++ b/drivers/net/wireless/rt2x00/rt73usb.c
-@@ -2548,7 +2548,9 @@ static struct usb_driver rt73usb_driver
- .suspend = rt2x00usb_suspend,
- .resume = rt2x00usb_resume,
- .reset_resume = rt2x00usb_resume,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rt73usb_driver);
+++ /dev/null
---- a/drivers/net/wireless/rtl818x/rtl8187/dev.c
-+++ b/drivers/net/wireless/rtl818x/rtl8187/dev.c
-@@ -1678,7 +1678,9 @@ static struct usb_driver rtl8187_driver
- .id_table = rtl8187_table,
- .probe = rtl8187_probe,
- .disconnect = rtl8187_disconnect,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rtl8187_driver);
+++ /dev/null
---- a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
-+++ b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
-@@ -397,7 +397,9 @@ static struct usb_driver rtl8192cu_drive
- #ifdef CONFIG_AUTOSUSPEND
- .supports_autosuspend = 1,
- #endif
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(rtl8192cu_driver);
+++ /dev/null
---- a/drivers/net/wireless/zd1211rw/zd_usb.c
-+++ b/drivers/net/wireless/zd1211rw/zd_usb.c
-@@ -1540,7 +1540,9 @@ static struct usb_driver driver = {
- .disconnect = disconnect,
- .pre_reset = pre_reset,
- .post_reset = post_reset,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- struct workqueue_struct *zd_workqueue;
+++ /dev/null
---- a/drivers/usb/class/cdc-wdm.c
-+++ b/drivers/usb/class/cdc-wdm.c
-@@ -1099,7 +1099,9 @@ static struct usb_driver wdm_driver = {
- .post_reset = wdm_post_reset,
- .id_table = wdm_ids,
- .supports_autosuspend = 1,
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
- .disable_hub_initiated_lpm = 1,
-+#endif
- };
-
- module_usb_driver(wdm_driver);