qtnfmac: send EAPOL frames via control path
Use control path to send EAPOL frames to make sure they are sent with higher priority with aggregation disabled. Signed-off-by: Igor Mitsyanko <igor.mitsyanko.os@quantenna.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:

committed by
Kalle Valo

parent
72b3270e01
commit
bc70732f9b
@@ -144,6 +144,7 @@ int qtnf_del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev)
|
||||
{
|
||||
struct net_device *netdev = wdev->netdev;
|
||||
struct qtnf_vif *vif;
|
||||
struct sk_buff *skb;
|
||||
|
||||
if (WARN_ON(!netdev))
|
||||
return -EFAULT;
|
||||
@@ -157,6 +158,11 @@ int qtnf_del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev)
|
||||
if (netif_carrier_ok(netdev))
|
||||
netif_carrier_off(netdev);
|
||||
|
||||
while ((skb = skb_dequeue(&vif->high_pri_tx_queue)))
|
||||
dev_kfree_skb_any(skb);
|
||||
|
||||
cancel_work_sync(&vif->high_pri_tx_work);
|
||||
|
||||
if (netdev->reg_state == NETREG_REGISTERED)
|
||||
unregister_netdevice(netdev);
|
||||
|
||||
@@ -424,13 +430,13 @@ qtnf_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
|
||||
*cookie = short_cookie;
|
||||
|
||||
if (params->offchan)
|
||||
flags |= QLINK_MGMT_FRAME_TX_FLAG_OFFCHAN;
|
||||
flags |= QLINK_FRAME_TX_FLAG_OFFCHAN;
|
||||
|
||||
if (params->no_cck)
|
||||
flags |= QLINK_MGMT_FRAME_TX_FLAG_NO_CCK;
|
||||
flags |= QLINK_FRAME_TX_FLAG_NO_CCK;
|
||||
|
||||
if (params->dont_wait_for_ack)
|
||||
flags |= QLINK_MGMT_FRAME_TX_FLAG_ACK_NOWAIT;
|
||||
flags |= QLINK_FRAME_TX_FLAG_ACK_NOWAIT;
|
||||
|
||||
/* If channel is not specified, pass "freq = 0" to tell device
|
||||
* firmware to use current channel.
|
||||
@@ -445,9 +451,8 @@ qtnf_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
|
||||
le16_to_cpu(mgmt_frame->frame_control), mgmt_frame->da,
|
||||
params->len, short_cookie, flags);
|
||||
|
||||
return qtnf_cmd_send_mgmt_frame(vif, short_cookie, flags,
|
||||
freq,
|
||||
params->buf, params->len);
|
||||
return qtnf_cmd_send_frame(vif, short_cookie, flags,
|
||||
freq, params->buf, params->len);
|
||||
}
|
||||
|
||||
static int
|
||||
|
Reference in New Issue
Block a user