• Avinash Patil's avatar
    mwifiex: add multi-queue support · 47411a06
    Avinash Patil authored
    This patch adds support for multiple TX queues inside mwifiex
    driver. Four different queues according to WMM access categories
    are defined for each virtual interface. When a packet is
    received from netdev for transmission, tx pending count for
    particular queue is incremented and if tx pending count has
    reached upper water-mark, this queue is stopped instead of
    stopping all queues. Similarly when a packet is successfully
    transmitted from device, tx pending count is decremented per
    queue and if pending count falls below lower water-mark, queue
    operations are again resumed. This ensures that not all
    tranmission is blocked if traffic with particular TOS value
    suddenly increases.
    
    Also wake all queues after association/IBSS_join/uAP_BSS_start
    to enable traffic on all queues.
    Signed-off-by: default avatarAvinash Patil <patila@marvell.com>
    Signed-off-by: default avatarBing Zhao <bzhao@marvell.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    47411a06
usb.c 27.6 KB