|
@@ -308,6 +308,17 @@ mt7601u_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
|
|
|
int idx = key->keyidx;
|
|
|
int ret;
|
|
|
|
|
|
+ /* fall back to sw encryption for unsupported ciphers */
|
|
|
+ switch (key->cipher) {
|
|
|
+ case WLAN_CIPHER_SUITE_WEP40:
|
|
|
+ case WLAN_CIPHER_SUITE_WEP104:
|
|
|
+ case WLAN_CIPHER_SUITE_TKIP:
|
|
|
+ case WLAN_CIPHER_SUITE_CCMP:
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ return -EOPNOTSUPP;
|
|
|
+ }
|
|
|
+
|
|
|
if (cmd == SET_KEY) {
|
|
|
key->hw_key_idx = wcid->idx;
|
|
|
wcid->hw_key_idx = idx;
|