--- zzzz-none-000/linux-4.1.52/include/linux/usb.h 2018-05-28 02:26:45.000000000 +0000 +++ bcm63-7530ax-731/linux-4.1.52/include/linux/usb.h 2022-03-02 11:37:13.000000000 +0000 @@ -329,11 +329,11 @@ }; int __usb_get_extra_descriptor(char *buffer, unsigned size, - unsigned char type, void **ptr); + unsigned char type, void **ptr, size_t min); #define usb_get_extra_descriptor(ifpoint, type, ptr) \ __usb_get_extra_descriptor((ifpoint)->extra, \ (ifpoint)->extralen, \ - type, (void **)ptr) + type, (void **)ptr, sizeof(**(ptr))) /* ----------------------------------------------------------------------- */ @@ -579,6 +579,11 @@ unsigned usb2_hw_lpm_enabled:1; unsigned usb2_hw_lpm_allowed:1; unsigned usb3_lpm_enabled:1; + +#if 1 /* == 20160222 AVM/VGJ - CHANGESET: noprobe Extension for AURA == */ + unsigned noprobe:1; +#endif + int string_langid; /* static strings from the device */ @@ -597,11 +602,26 @@ #ifdef CONFIG_PM unsigned long connect_time; +#endif +#if defined (CONFIG_PM) || defined (CONFIG_AVM_USB_SUSPEND) unsigned do_remote_wakeup:1; unsigned reset_resume:1; unsigned port_is_suspended:1; #endif + +#if defined (CONFIG_AVM_USB_SUSPEND) + unsigned avm_usb_suspend_enable; + unsigned long avm_usb_suspend_delay; // Delay for autosuspend in jiffies + unsigned long avm_usb_suspend_timestamp; + unsigned long avm_usb_suspend_last_busy; + + atomic_t avm_use_count; + + struct timer_list suspend_timer; + struct work_struct avm_usb_suspend_ws; /* for suspend in atomic context */ +#endif + struct wusb_dev *wusb_dev; int slot_id; enum usb_device_removable removable;