Hi John, > Both type and pkt_len variables are in host endian and these should be in > Little Endian in the payload. > > Signed-off-by: Tomasz Moń <desowin@xxxxxxxxx> > Acked-by: Bing Zhao <bzhao@xxxxxxxxxxx> Cc: <stable@xxxxxxxxxxxxxxx> Could you please apply this patch to wireless.git for 3.11? Thanks, Bing > --- > drivers/net/wireless/mwifiex/sdio.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/wireless/mwifiex/sdio.c b/drivers/net/wireless/mwifiex/sdio.c > index 5ee5ed0..c9f3ecf 100644 > --- a/drivers/net/wireless/mwifiex/sdio.c > +++ b/drivers/net/wireless/mwifiex/sdio.c > @@ -1625,8 +1625,8 @@ static int mwifiex_sdio_host_to_card(struct mwifiex_adapter *adapter, > /* Allocate buffer and copy payload */ > blk_size = MWIFIEX_SDIO_BLOCK_SIZE; > buf_block_len = (pkt_len + blk_size - 1) / blk_size; > - *(u16 *) &payload[0] = (u16) pkt_len; > - *(u16 *) &payload[2] = type; > + *(__le16 *)&payload[0] = cpu_to_le16((u16)pkt_len); > + *(__le16 *)&payload[2] = cpu_to_le16(type); > > /* > * This is SDIO specific header > -- > 1.8.3.msysgit.0 ��.n��������+%������w��{.n�����{���zW����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f