[PATCH] Move fw version check into a function
Eugene Krasnikov
k.eugene.e at gmail.com
Tue Aug 6 06:47:08 EDT 2013
This will make code more readable.
Signed-off-by: Eugene Krasnikov <k.eugene.e at gmail.com>
---
main.c | 5 +----
smd.c | 10 ++--------
wcn36xx.h | 13 +++++++++++++
3 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/main.c b/main.c
index 51bfb72..d8a08d8 100644
--- a/main.c
+++ b/main.c
@@ -260,10 +260,7 @@ static int wcn36xx_start(struct ieee80211_hw *hw)
wcn36xx_pmc_init(wcn);
wcn36xx_debugfs_init(wcn);
- if (!(wcn->fw_major == 1 &&
- wcn->fw_minor == 2 &&
- wcn->fw_version == 2 &&
- wcn->fw_revision == 24)) {
+ if (!wcn36xx_is_fw_version(wcn, 1, 2, 2, 24)) {
ret = wcn36xx_smd_feature_caps_exchange(wcn);
if (ret)
wcn36xx_warn("Exchange feature caps failed");
diff --git a/smd.c b/smd.c
index 5fd6c08..035a7d7 100644
--- a/smd.c
+++ b/smd.c
@@ -655,10 +655,7 @@ int wcn36xx_smd_config_sta(struct wcn36xx *wcn, struct ieee80211_vif *vif,
wcn36xx_smd_set_sta_params(wcn, vif, sta, sta_params);
- if (!(wcn->fw_major == 1 &&
- wcn->fw_minor == 2 &&
- wcn->fw_version == 2 &&
- wcn->fw_revision == 24))
+ if (!wcn36xx_is_fw_version(wcn, 1, 2, 2, 24))
return wcn36xx_smd_config_sta_v1(wcn, &msg);
PREPARE_HAL_BUF(wcn->smd_buf, msg);
@@ -920,10 +917,7 @@ int wcn36xx_smd_config_bss(struct wcn36xx *wcn, struct ieee80211_vif *vif,
bss->action = update;
- if (!(wcn->fw_major == 1 &&
- wcn->fw_minor == 2 &&
- wcn->fw_version == 2 &&
- wcn->fw_revision == 24))
+ if (!wcn36xx_is_fw_version(wcn, 1, 2, 2, 24))
return wcn36xx_smd_config_bss_v1(wcn, &msg);
PREPARE_HAL_BUF(wcn->smd_buf, msg);
diff --git a/wcn36xx.h b/wcn36xx.h
index 86b6ce5..895788d 100644
--- a/wcn36xx.h
+++ b/wcn36xx.h
@@ -94,6 +94,7 @@ static inline void buff_to_be(u32 *buf, size_t len)
for (i = 0; i < len; i++)
buf[i] = cpu_to_be32(buf[i]);
}
+
struct nv_data {
int is_valid;
void *table;
@@ -221,4 +222,16 @@ struct wcn36xx {
};
+static inline bool wcn36xx_is_fw_version(struct wcn36xx *wcn,
+ u8 major,
+ u8 minor,
+ u8 version,
+ u8 revision)
+{
+ return (wcn->fw_major == major &&
+ wcn->fw_minor == minor &&
+ wcn->fw_version == version &&
+ wcn->fw_revision == revision);
+}
+
#endif /* _WCN36XX_H_ */
--
1.8.2.2
More information about the wcn36xx
mailing list