If we restart hw we should keep existing IV (initialization vector)
otherwise HW encryption will be broken after restart.

Also fix some coding style issues on the way.

Signed-off-by: Stanislaw Gruszka <[email protected]>
---
 drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c 
b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index c3409578bf97..44c1057542a2 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -1650,14 +1650,15 @@ static void rt2800_config_wcid_attr_cipher(struct 
rt2x00_dev *rt2x00dev,
 
        offset = MAC_IVEIV_ENTRY(key->hw_key_idx);
 
-       memset(&iveiv_entry, 0, sizeof(iveiv_entry));
+       rt2800_register_multiread(rt2x00dev, offset,
+                                 &iveiv_entry, sizeof(iveiv_entry));
        if ((crypto->cipher == CIPHER_TKIP) ||
            (crypto->cipher == CIPHER_TKIP_NO_MIC) ||
            (crypto->cipher == CIPHER_AES))
                iveiv_entry.iv[3] |= 0x20;
        iveiv_entry.iv[3] |= key->keyidx << 6;
        rt2800_register_multiwrite(rt2x00dev, offset,
-                                     &iveiv_entry, sizeof(iveiv_entry));
+                                  &iveiv_entry, sizeof(iveiv_entry));
 }
 
 int rt2800_config_shared_key(struct rt2x00_dev *rt2x00dev,
@@ -6082,13 +6083,11 @@ static int rt2800_init_registers(struct rt2x00_dev 
*rt2x00dev)
         * ASIC will keep garbage value after boot, clear encryption keys.
         */
        for (i = 0; i < 4; i++)
-               rt2800_register_write(rt2x00dev,
-                                        SHARED_KEY_MODE_ENTRY(i), 0);
+               rt2800_register_write(rt2x00dev, SHARED_KEY_MODE_ENTRY(i), 0);
 
        for (i = 0; i < 256; i++) {
                rt2800_config_wcid(rt2x00dev, NULL, i);
                rt2800_delete_wcid_attr(rt2x00dev, i);
-               rt2800_register_write(rt2x00dev, MAC_IVEIV_ENTRY(i), 0);
        }
 
        /*
-- 
2.7.5

Reply via email to