static const struct ieee80211_ops adm8211_ops = {
        .tx                     = adm8211_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = adm8211_start,
        .stop                   = adm8211_stop,
        .add_interface          = adm8211_add_interface,
 
        .start                  = ar5523_start,
        .stop                   = ar5523_stop,
        .tx                     = ar5523_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .set_rts_threshold      = ar5523_set_rts_threshold,
        .add_interface          = ar5523_add_interface,
        .remove_interface       = ar5523_remove_interface,
 
 
 static const struct ieee80211_ops ath11k_ops = {
        .tx                             = ath11k_mac_op_tx,
+       .wake_tx_queue                  = ieee80211_handle_wake_tx_queue,
        .start                          = ath11k_mac_op_start,
        .stop                           = ath11k_mac_op_stop,
        .reconfig_complete              = ath11k_mac_op_reconfig_complete,
 
 
 const struct ieee80211_ops ath5k_hw_ops = {
        .tx                     = ath5k_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = ath5k_start,
        .stop                   = ath5k_stop,
        .add_interface          = ath5k_add_interface,
 
 
 struct ieee80211_ops ath9k_htc_ops = {
        .tx                 = ath9k_htc_tx,
+       .wake_tx_queue      = ieee80211_handle_wake_tx_queue,
        .start              = ath9k_htc_start,
        .stop               = ath9k_htc_stop,
        .add_interface      = ath9k_htc_add_interface,
 
        .start                  = carl9170_op_start,
        .stop                   = carl9170_op_stop,
        .tx                     = carl9170_op_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .flush                  = carl9170_op_flush,
        .add_interface          = carl9170_op_add_interface,
        .remove_interface       = carl9170_op_remove_interface,
 
        .prepare_multicast      = wcn36xx_prepare_multicast,
        .configure_filter       = wcn36xx_configure_filter,
        .tx                     = wcn36xx_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .set_key                = wcn36xx_set_key,
        .hw_scan                = wcn36xx_hw_scan,
        .cancel_hw_scan         = wcn36xx_cancel_hw_scan,
 
 
 static const struct ieee80211_ops at76_ops = {
        .tx = at76_mac80211_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .add_interface = at76_add_interface,
        .remove_interface = at76_remove_interface,
        .config = at76_config,
 
 
 static const struct ieee80211_ops b43_hw_ops = {
        .tx                     = b43_op_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .conf_tx                = b43_op_conf_tx,
        .add_interface          = b43_op_add_interface,
        .remove_interface       = b43_op_remove_interface,
 
 
 static const struct ieee80211_ops b43legacy_hw_ops = {
        .tx                     = b43legacy_op_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .conf_tx                = b43legacy_op_conf_tx,
        .add_interface          = b43legacy_op_add_interface,
        .remove_interface       = b43legacy_op_remove_interface,
 
 
 static const struct ieee80211_ops brcms_ops = {
        .tx = brcms_ops_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = brcms_ops_start,
        .stop = brcms_ops_stop,
        .add_interface = brcms_ops_add_interface,
 
 
 static struct ieee80211_ops il3945_mac_ops __ro_after_init = {
        .tx = il3945_mac_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = il3945_mac_start,
        .stop = il3945_mac_stop,
        .add_interface = il_mac_add_interface,
 
 
 static const struct ieee80211_ops il4965_mac_ops = {
        .tx = il4965_mac_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = il4965_mac_start,
        .stop = il4965_mac_stop,
        .add_interface = il_mac_add_interface,
 
 
 const struct ieee80211_ops iwlagn_hw_ops = {
        .tx = iwlagn_mac_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = iwlagn_mac_start,
        .stop = iwlagn_mac_stop,
 #ifdef CONFIG_PM_SLEEP
 
 
 static const struct ieee80211_ops p54_ops = {
        .tx                     = p54_tx_80211,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = p54_start,
        .stop                   = p54_stop,
        .add_interface          = p54_add_interface,
 
 
 #define HWSIM_COMMON_OPS                                       \
        .tx = mac80211_hwsim_tx,                                \
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,        \
        .start = mac80211_hwsim_start,                          \
        .stop = mac80211_hwsim_stop,                            \
        .add_interface = mac80211_hwsim_add_interface,          \
 
 
 static const struct ieee80211_ops lbtf_ops = {
        .tx                     = lbtf_op_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = lbtf_op_start,
        .stop                   = lbtf_op_stop,
        .add_interface          = lbtf_op_add_interface,
 
 
 static const struct ieee80211_ops mwl8k_ops = {
        .tx                     = mwl8k_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = mwl8k_start,
        .stop                   = mwl8k_stop,
        .add_interface          = mwl8k_add_interface,
 
 
 const struct ieee80211_ops mt7601u_ops = {
        .tx = mt7601u_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = mt7601u_start,
        .stop = mt7601u_stop,
        .add_interface = mt7601u_add_interface,
 
 
 static const struct ieee80211_ops plfxlc_ops = {
        .tx = plfxlc_op_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = plfxlc_op_start,
        .stop = plfxlc_op_stop,
        .add_interface = plfxlc_op_add_interface,
 
 
 static const struct ieee80211_ops rt2400pci_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt2500pci_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt2500usb_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt2800pci_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt2800soc_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt2800usb_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt61pci_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rt73usb_mac80211_ops = {
        .tx                     = rt2x00mac_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rt2x00mac_start,
        .stop                   = rt2x00mac_stop,
        .add_interface          = rt2x00mac_add_interface,
 
 
 static const struct ieee80211_ops rtl8180_ops = {
        .tx                     = rtl8180_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rtl8180_start,
        .stop                   = rtl8180_stop,
        .add_interface          = rtl8180_add_interface,
 
 
 static const struct ieee80211_ops rtl8187_ops = {
        .tx                     = rtl8187_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = rtl8187_start,
        .stop                   = rtl8187_stop,
        .add_interface          = rtl8187_add_interface,
 
 
 static const struct ieee80211_ops rtl8xxxu_ops = {
        .tx = rtl8xxxu_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .add_interface = rtl8xxxu_add_interface,
        .remove_interface = rtl8xxxu_remove_interface,
        .config = rtl8xxxu_config,
 
        .start = rtl_op_start,
        .stop = rtl_op_stop,
        .tx = rtl_op_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .add_interface = rtl_op_add_interface,
        .remove_interface = rtl_op_remove_interface,
        .change_interface = rtl_op_change_interface,
 
 
 const struct ieee80211_ops rtw_ops = {
        .tx                     = rtw_ops_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .wake_tx_queue          = rtw_ops_wake_tx_queue,
        .start                  = rtw_ops_start,
        .stop                   = rtw_ops_stop,
 
 
 const struct ieee80211_ops rtw89_ops = {
        .tx                     = rtw89_ops_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .wake_tx_queue          = rtw89_ops_wake_tx_queue,
        .start                  = rtw89_ops_start,
        .stop                   = rtw89_ops_stop,
 
 
 static const struct ieee80211_ops mac80211_ops = {
        .tx = rsi_mac80211_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .start = rsi_mac80211_start,
        .stop = rsi_mac80211_stop,
        .add_interface = rsi_mac80211_add_interface,
 
        .remove_interface        = wfx_remove_interface,
        .config                  = wfx_config,
        .tx                      = wfx_tx,
+       .wake_tx_queue           = ieee80211_handle_wake_tx_queue,
        .join_ibss               = wfx_join_ibss,
        .leave_ibss              = wfx_leave_ibss,
        .conf_tx                 = wfx_conf_tx,
 
        .remove_interface       = cw1200_remove_interface,
        .change_interface       = cw1200_change_interface,
        .tx                     = cw1200_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .hw_scan                = cw1200_hw_scan,
        .set_tim                = cw1200_set_tim,
        .sta_notify             = cw1200_sta_notify,
 
        .prepare_multicast = wl1251_op_prepare_multicast,
        .configure_filter = wl1251_op_configure_filter,
        .tx = wl1251_op_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .set_key = wl1251_op_set_key,
        .hw_scan = wl1251_op_hw_scan,
        .bss_info_changed = wl1251_op_bss_info_changed,
 
        .prepare_multicast = wl1271_op_prepare_multicast,
        .configure_filter = wl1271_op_configure_filter,
        .tx = wl1271_op_tx,
+       .wake_tx_queue = ieee80211_handle_wake_tx_queue,
        .set_key = wlcore_op_set_key,
        .hw_scan = wl1271_op_hw_scan,
        .cancel_hw_scan = wl1271_op_cancel_hw_scan,
 
 
 static const struct ieee80211_ops zd_ops = {
        .tx                     = zd_op_tx,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = zd_op_start,
        .stop                   = zd_op_stop,
        .add_interface          = zd_op_add_interface,
 
 
 static const struct ieee80211_ops vnt_mac_ops = {
        .tx                     = vnt_tx_80211,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = vnt_start,
        .stop                   = vnt_stop,
        .add_interface          = vnt_add_interface,
 
 
 static const struct ieee80211_ops vnt_mac_ops = {
        .tx                     = vnt_tx_80211,
+       .wake_tx_queue          = ieee80211_handle_wake_tx_queue,
        .start                  = vnt_start,
        .stop                   = vnt_stop,
        .add_interface          = vnt_add_interface,