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>
Mon, 6 Nov 2017 15:44:05 +0000 (16:44 +0100)
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")
Cc: stable@vger.kernel.org
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;
                                }