wl12xx: Clamp byte mode transfers for 128x chips
authorArik Nemtsov <arik@wizery.com>
Fri, 18 Mar 2011 12:49:57 +0000 (14:49 +0200)
committerLuciano Coelho <coelho@ti.com>
Tue, 19 Apr 2011 13:49:07 +0000 (16:49 +0300)
commit1d732e8cf3dcc09d7c862b6c12f876533529073d
tree96f0eaecc8d44dbab04a81ab1a931889b21db3d4
parent958b20e068be2c6267c2b5764babf15b0d4f5c69
wl12xx: Clamp byte mode transfers for 128x chips

On wl128x based devices, when TX packets are aggregated, each packet
size must be aligned to the SDIO block size, and sent using block mode
transfers.

The block size is set to 256 bytes, which is less than the maximum
possible byte transfer. Thus, if two small packets (< 256 bytes) are
aggregated, the aggregation buffer size would be 512, and will be sent
using byte mode transfers. This can have undesired side effects.

Fix this by setting the MMC_QUIRK_BLKSZ_FOR_BYTE_MODE mmc card quirk.
For 127x chips this has no effect, as the block size is set to 512
bytes.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Ido Yariv <ido@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
drivers/net/wireless/wl12xx/sdio.c
drivers/net/wireless/wl12xx/sdio_test.c