[PATCH 1/1] Enable different bd_rates for different packet types
Eugene Krasnikov
k.eugene.e at gmail.com
Tue Jun 4 05:34:51 EDT 2013
All patches looks good to me. Thanx Olof.
2013/6/4 Olof Johansson <dev at skyshaper.net>:
> After some feedback from Pontus and Eugene I changed hte code a little
> bit for txrx.c. It should be a bit more clear now what happens..
> hopefully:
>
> diff --git a/txrx.c b/txrx.c
> index c52cc22..637d61d 100644
> --- a/txrx.c
> +++ b/txrx.c
> @@ -84,7 +84,7 @@ void wcn36xx_prepare_tx_bd(struct wcn36xx_tx_bd *bd,
> u32 len, u32 header_len)
> bd->pdu.mpdu_len = len;
> }
> void wcn36xx_fill_tx_bd(struct wcn36xx *wcn, struct wcn36xx_tx_bd *bd,
> - u8 broadcast, u8 encrypt)
> + u8 broadcast, u8 encrypt, struct ieee80211_hdr *hdr)
> {
> bd->dpu_rf = WCN36XX_BMU_WQ_TX;
> bd->pdu.tid = WCN36XX_TID;
> @@ -103,8 +103,15 @@ void wcn36xx_fill_tx_bd(struct wcn36xx *wcn,
> struct wcn36xx_tx_bd *bd,
> } else {
> bd->queue_id = WCN36XX_TX_U_WQ_ID;
> /* default rate for unicast */
> - bd->bd_rate = 2;
> bd->ack_policy = 0;
> + if (ieee80211_is_data(hdr->frame_control))
> + bd->bd_rate = WCN36XX_BD_RATE_DATA;
> + else if (ieee80211_is_mgmt(hdr->frame_control))
> + bd->bd_rate = WCN36XX_BD_RATE_MGMT;
> + else if (ieee80211_is_ctl(hdr->frame_control))
> + bd->bd_rate = WCN36XX_BD_RATE_CTRL;
> + else
> + wcn36xx_warn("frame control type unknown");
> }
>
> bd->sta_index = wcn->current_vif->sta_index;
>
>
>
> On Tue, Jun 4, 2013 at 11:06 AM, Eugene Krasnikov <k.eugene.e at gmail.com> wrote:
>>> + if (!ieee80211_is_data(hdr->frame_control)) {
>>
>> Let's also check ieee80211_is_data_qos.
>>
>>> +#define WCN36XX_BD_RATE_DATA 0
>>
>> Since this define is not used anywhere what about having it as a comment?
>>
>> --
>> Best regards,
>> Eugene
--
Best regards,
Eugene
More information about the wcn36xx
mailing list