[PATCH] wcn36xx: Add chained transfer support for AMSDU

Kalle Valo kvalo at codeaurora.org
Mon Oct 25 06:22:08 PDT 2021


Loic Poulain <loic.poulain at linaro.org> wrote:

> WCNSS RX DMA transfer support is limited to 3872 bytes, which is
> enough for simple MPDUs (single MSDU), but not enough for cases
> with A-MSDU (depending on max AMSDU size or max MPDU size).
> 
> In that case the MPDU is spread over multiple transfers, with the
> first transfer containing the MPDU header and (at least) the first
> A-MSDU subframe and additional transfer(s) containing the following
> A-MSDUs. This can be handled with a series of flags to tagging the
> first and last A-MSDU transfers.
> 
> In that case we have to bufferize and re-linearize the A-MSDU buffers
> into a proper MPDU skb before forwarding to mac80211 (in the same way
> as it is done in ath10k).
> 
> This change also includes sanity check of the buffer descriptor to
> prevent skb overflow.
> 
> Signed-off-by: Loic Poulain <loic.poulain at linaro.org>
> Signed-off-by: Kalle Valo <kvalo at codeaurora.org>

Loic, what should I do with this patch? Bryan is hesitant but I
would be fine to take this. You have to decide :)

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/1634557705-11120-1-git-send-email-loic.poulain@linaro.org/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches




More information about the wcn36xx mailing list