Add an option to enable hardware encryption (CONFIG_ATH5K_HARDWARE_ENC)
and disable it by default. This will enforce software encryption
for WEP, WPA (TKIP) and WPA2 (CCMP) until we fix hardware encryption.
Changes-licensed-under: 3-clause-BSD
Signed-off-by: Luis R. Rodriguez <[EMAIL PROTECTED]>
---
drivers/net/wireless/ath5k/Kconfig | 14 ++++++++++++++
drivers/net/wireless/ath5k/base.c | 3 +++
2 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/ath5k/Kconfig
b/drivers/net/wireless/ath5k/Kconfig
index 31d570e..5e75328 100644
--- a/drivers/net/wireless/ath5k/Kconfig
+++ b/drivers/net/wireless/ath5k/Kconfig
@@ -15,9 +15,23 @@ config ATH5K
If you choose to build a module, it'll be called ath5k. Say M if
unsure.
+config ATH5K_HARDWARE_ENC
+ bool "Atheros 5xxx hardware encryption"
+ depends on ATH5K
+ default n
+ ---help---
+ Atheros 5xxx hardware encryption.
+
+ Say N for now unless you are a developer who wants to fix
+ hardware encryption. Hardware encryption doesn't work yet.
+ Disabling this will let you use software encrption in the
+ meantime, this gives you support for WEP, WPA (TKIP) and
+ WPA2 (CCMP) through mac80211 software encryption.
+
config ATH5K_DEBUG
bool "Atheros 5xxx debugging"
depends on ATH5K
+ default n
---help---
Atheros 5xxx debugging messages.
diff --git a/drivers/net/wireless/ath5k/base.c
b/drivers/net/wireless/ath5k/base.c
index 9f2c30b..a83a548 100644
--- a/drivers/net/wireless/ath5k/base.c
+++ b/drivers/net/wireless/ath5k/base.c
@@ -2921,7 +2921,10 @@ ath5k_set_key(struct ieee80211_hw *hw, enum set_key_cmd
cmd,
switch(key->alg) {
case ALG_WEP:
+/* XXX: fix hardware encryption, its not working */
+#ifdef CONFIG_ATH5K_HARDWARE_ENC
break;
+#endif /* CONFIG_ATH5K_HARDWARE_ENC */
case ALG_TKIP:
case ALG_CCMP:
return -EOPNOTSUPP;
--
1.5.3.7
_______________________________________________
ath5k-devel mailing list
[email protected]
https://lists.ath5k.org/mailman/listinfo/ath5k-devel