This trival one-liner changes the QoS initialization values to match IEEE 802.11e defaults. Signed-off-by: Christian Lamparter <chunkeey@xxxxxx> --- Johannes: Which tree do you want? I made two versions. 1. ...-2.6.24.2.diff will be fine for the mainline and the everything branch. 2. ...-txoppatch.diff is made for "[PATCH v2] mac80211: give burst time in txop rather than 0.1msec units" (with some offset?!)
--- linux-2.6.24.2/drivers/net/wireless/p54common.c.orig 2008-02-12 13:22:26.803058257 +0100 +++ linux-2.6.24.2/drivers/net/wireless/p54common.c 2008-02-12 13:24:21.096297635 +0100 @@ -742,7 +742,7 @@ static void p54_init_vdcf(struct ieee802 P54_SET_QUEUE(vdcf->queue[0], 0x0002, 0x0003, 0x0007, 0x000f); P54_SET_QUEUE(vdcf->queue[1], 0x0002, 0x0007, 0x000f, 0x001e); - P54_SET_QUEUE(vdcf->queue[2], 0x0002, 0x000f, 0x03ff, 0x0014); + P54_SET_QUEUE(vdcf->queue[2], 0x0003, 0x000f, 0x03ff, 0x0000); P54_SET_QUEUE(vdcf->queue[3], 0x0007, 0x000f, 0x03ff, 0x0000); }
--- everything/drivers/net/wireless/p54common.c.orig 2008-02-12 13:37:48.723005027 +0100 +++ everythinh/drivers/net/wireless/p54common.c 2008-02-12 13:38:09.200480691 +0100 @@ -740,15 +740,9 @@ static void p54_init_vdcf(struct ieee802 vdcf = (struct p54_tx_control_vdcf *) hdr->data; - /* - * FIXME: The default values in the spec (IEEE 802.11 - * 7.3.2.19 Table 37) are 47, 94, 0, 0, why use - * 47, 94, 63, 0 here? Also, the default AIFS - * values (second parameter) are 2, 2, 3, 7... - */ P54_SET_QUEUE(vdcf->queue[0], 0x0002, 0x0003, 0x0007, 47); P54_SET_QUEUE(vdcf->queue[1], 0x0002, 0x0007, 0x000f, 94); - P54_SET_QUEUE(vdcf->queue[2], 0x0002, 0x000f, 0x03ff, 63); + P54_SET_QUEUE(vdcf->queue[2], 0x0003, 0x000f, 0x03ff, 0); P54_SET_QUEUE(vdcf->queue[3], 0x0007, 0x000f, 0x03ff, 0); }