staging: wilc1000: Fix bssid buffer offset in Txq
authorAditya Shankar <aditya.shankar@microchip.com>
Fri, 3 Nov 2017 08:56:27 +0000 (14:26 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 21 Nov 2017 08:49:23 +0000 (09:49 +0100)
commit 1bbf6a6d4091affb27ec0a19d7aa7887ce72f610 upstream.

Commit 46949b48568b ("staging: wilc1000: New cfg packet
format in handle_set_wfi_drv_handler") updated the frame
format sent from host to the firmware. The code to update
the bssid offset in the new frame was part of a second
patch in the series which did not make it in and thus
causes connection problems after associating to an AP.

This fix adds the proper offset of the bssid value in the
Tx queue buffer to fix the connection issues.

Fixes: 46949b48568b ("staging: wilc1000: New cfg packet format in handle_set_wfi_drv_handler")
Signed-off-by: Aditya Shankar <Aditya.Shankar@microchip.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wilc1000/wilc_wlan.c

index 9addef1..f49dfa8 100644 (file)
@@ -714,7 +714,7 @@ int wilc_wlan_handle_txq(struct net_device *dev, u32 *txq_count)
                                        char *bssid = ((struct tx_complete_data *)(tqe->priv))->bssid;
 
                                        buffer_offset = ETH_ETHERNET_HDR_OFFSET;
-                                       memcpy(&txb[offset + 4], bssid, 6);
+                                       memcpy(&txb[offset + 8], bssid, 6);
                                } else {
                                        buffer_offset = HOST_HDR_OFFSET;
                                }