diff options
author | Kalle Valo <kvalo@qca.qualcomm.com> | 2011-09-07 09:55:17 +0200 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2011-09-16 17:48:34 +0200 |
commit | 8a13748034e93b4134455ebf51e2fada8eb00aca (patch) | |
tree | 1058c2afee2b9e8e14780781e08878c57ef7ae9b /drivers | |
parent | ath6kl: read firmware start address from hardware (diff) | |
download | linux-8a13748034e93b4134455ebf51e2fada8eb00aca.tar.xz linux-8a13748034e93b4134455ebf51e2fada8eb00aca.zip |
ath6kl: read reserved ram size from firmware file
A new version of firmware needs different reserved ram size so read that
from the firmware image.
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/core.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/init.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/core.h b/drivers/net/wireless/ath/ath6kl/core.h index 3365dc8bab3b..abb4aaf48c08 100644 --- a/drivers/net/wireless/ath/ath6kl/core.h +++ b/drivers/net/wireless/ath/ath6kl/core.h @@ -67,6 +67,7 @@ enum ath6kl_fw_ie_type { ATH6KL_FW_IE_OTP_IMAGE = 2, ATH6KL_FW_IE_FW_IMAGE = 3, ATH6KL_FW_IE_PATCH_IMAGE = 4, + ATH6KL_FW_IE_RESERVED_RAM_SIZE = 5, }; struct ath6kl_fw_ie { diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c index 5865466e884c..e2a29b25884c 100644 --- a/drivers/net/wireless/ath/ath6kl/init.c +++ b/drivers/net/wireless/ath/ath6kl/init.c @@ -902,6 +902,7 @@ static int ath6kl_fetch_fw_api2(struct ath6kl *ar) const char *filename; const u8 *data; int ret, ie_id; + __le32 *val; switch (ar->version.target_ver) { case AR6003_REV2_VERSION: @@ -987,6 +988,10 @@ static int ath6kl_fetch_fw_api2(struct ath6kl *ar) ar->fw_patch_len = ie_len; break; + case ATH6KL_FW_IE_RESERVED_RAM_SIZE: + val = (__le32 *) data; + ar->hw.reserved_ram_size = le32_to_cpup(val); + break; default: ath6kl_dbg(ATH6KL_DBG_TRC, "Unknown fw ie: %u\n", le32_to_cpup(&hdr->id)); |