rtw88: fill zeros to words 0x06 and 0x07 of security cam entry
authorPing-Ke Shih <pkshih@realtek.com>
Tue, 12 May 2020 10:26:20 +0000 (18:26 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 13 May 2020 15:48:52 +0000 (18:48 +0300)
8723D adds some experimental features to word 0x06 of cam entry, so fill
zeros to initialize them to off state. For existing chips, these two words
are reserved and always zeros, so this change is harmless for them.

Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20200512102621.5148-9-yhchuang@realtek.com
drivers/net/wireless/realtek/rtw88/sec.c

index d0d7fbb..ce46e5b 100644 (file)
@@ -44,7 +44,7 @@ void rtw_sec_write_cam(struct rtw_dev *rtwdev,
 
        write_cmd = RTW_SEC_CMD_WRITE_ENABLE | RTW_SEC_CMD_POLLING;
        addr = hw_key_idx << RTW_SEC_CAM_ENTRY_SHIFT;
-       for (i = 5; i >= 0; i--) {
+       for (i = 7; i >= 0; i--) {
                switch (i) {
                case 0:
                        content = ((key->keyidx & 0x3))         |
@@ -60,6 +60,10 @@ void rtw_sec_write_cam(struct rtw_dev *rtwdev,
                                  (cam->addr[4]         << 16)  |
                                  (cam->addr[5]         << 24);
                        break;
+               case 6:
+               case 7:
+                       content = 0;
+                       break;
                default:
                        j = (i - 2) << 2;
                        content = (key->key[j])                 |