[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