• Gavin Li's avatar
    brcmfmac: fix incorrect event channel deduction · 8e290cec
    Gavin Li authored
    brcmf_sdio_fromevntchan() was being called on the the data frame
    rather than the software header, causing some frames to be
    mischaracterized as on the event channel rather than the data channel.
    
    This fixes a major performance regression (due to dropped packets). With
    this patch the download speed jumped from 1Mbit/s back up to 40MBit/s due
    to the sheer amount of packets being incorrectly processed.
    
    Fixes: c56caa9d ("brcmfmac: screening firmware event packet")
    Signed-off-by: default avatarGavin Li <git@thegavinli.com>
    Cc: <stable@vger.kernel.org> # 4.7+
    Acked-by: default avatarArend van Spriel <arend.vanspriel@broadcom.com>
    [kvalo@codeaurora.org: improve commit logs based on email discussion]
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    8e290cec
sdio.c 116 KB