mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 22:44:27 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			95 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From: Felix Fietkau <nbd@nbd.name>
 | 
						|
Date: Mon, 11 Jul 2016 11:35:20 +0200
 | 
						|
Subject: [PATCH] ath9k_hw: get rid of some duplicate code in calibration
 | 
						|
 init
 | 
						|
 | 
						|
Remove a misleading debug message as well
 | 
						|
 | 
						|
Signed-off-by: Felix Fietkau <nbd@nbd.name>
 | 
						|
---
 | 
						|
 | 
						|
--- a/drivers/net/wireless/ath/ath9k/ar9003_calib.c
 | 
						|
+++ b/drivers/net/wireless/ath/ath9k/ar9003_calib.c
 | 
						|
@@ -1373,6 +1373,26 @@ static void ar9003_hw_cl_cal_post_proc(s
 | 
						|
 	}
 | 
						|
 }
 | 
						|
 
 | 
						|
+static void ar9003_hw_init_cal_common(struct ath_hw *ah)
 | 
						|
+{
 | 
						|
+	struct ath9k_hw_cal_data *caldata = ah->caldata;
 | 
						|
+
 | 
						|
+	/* Initialize list pointers */
 | 
						|
+	ah->cal_list = ah->cal_list_last = ah->cal_list_curr = NULL;
 | 
						|
+
 | 
						|
+	INIT_CAL(&ah->iq_caldata);
 | 
						|
+	INSERT_CAL(ah, &ah->iq_caldata);
 | 
						|
+
 | 
						|
+	/* Initialize current pointer to first element in list */
 | 
						|
+	ah->cal_list_curr = ah->cal_list;
 | 
						|
+
 | 
						|
+	if (ah->cal_list_curr)
 | 
						|
+		ath9k_hw_reset_calibration(ah, ah->cal_list_curr);
 | 
						|
+
 | 
						|
+	if (caldata)
 | 
						|
+		caldata->CalValid = 0;
 | 
						|
+}
 | 
						|
+
 | 
						|
 static bool ar9003_hw_init_cal_pcoem(struct ath_hw *ah,
 | 
						|
 				     struct ath9k_channel *chan)
 | 
						|
 {
 | 
						|
@@ -1532,21 +1552,7 @@ skip_tx_iqcal:
 | 
						|
 	/* Revert chainmask to runtime parameters */
 | 
						|
 	ar9003_hw_set_chain_masks(ah, ah->rxchainmask, ah->txchainmask);
 | 
						|
 
 | 
						|
-	/* Initialize list pointers */
 | 
						|
-	ah->cal_list = ah->cal_list_last = ah->cal_list_curr = NULL;
 | 
						|
-
 | 
						|
-	INIT_CAL(&ah->iq_caldata);
 | 
						|
-	INSERT_CAL(ah, &ah->iq_caldata);
 | 
						|
-	ath_dbg(common, CALIBRATE, "enabling IQ Calibration\n");
 | 
						|
-
 | 
						|
-	/* Initialize current pointer to first element in list */
 | 
						|
-	ah->cal_list_curr = ah->cal_list;
 | 
						|
-
 | 
						|
-	if (ah->cal_list_curr)
 | 
						|
-		ath9k_hw_reset_calibration(ah, ah->cal_list_curr);
 | 
						|
-
 | 
						|
-	if (caldata)
 | 
						|
-		caldata->CalValid = 0;
 | 
						|
+	ar9003_hw_init_cal_common(ah);
 | 
						|
 
 | 
						|
 	return true;
 | 
						|
 }
 | 
						|
@@ -1577,8 +1583,6 @@ static bool do_ar9003_agc_cal(struct ath
 | 
						|
 static bool ar9003_hw_init_cal_soc(struct ath_hw *ah,
 | 
						|
 				   struct ath9k_channel *chan)
 | 
						|
 {
 | 
						|
-	struct ath_common *common = ath9k_hw_common(ah);
 | 
						|
-	struct ath9k_hw_cal_data *caldata = ah->caldata;
 | 
						|
 	bool txiqcal_done = false;
 | 
						|
 	bool status = true;
 | 
						|
 	bool run_agc_cal = false, sep_iq_cal = false;
 | 
						|
@@ -1676,21 +1680,7 @@ skip_tx_iqcal:
 | 
						|
 	/* Revert chainmask to runtime parameters */
 | 
						|
 	ar9003_hw_set_chain_masks(ah, ah->rxchainmask, ah->txchainmask);
 | 
						|
 
 | 
						|
-	/* Initialize list pointers */
 | 
						|
-	ah->cal_list = ah->cal_list_last = ah->cal_list_curr = NULL;
 | 
						|
-
 | 
						|
-	INIT_CAL(&ah->iq_caldata);
 | 
						|
-	INSERT_CAL(ah, &ah->iq_caldata);
 | 
						|
-	ath_dbg(common, CALIBRATE, "enabling IQ Calibration\n");
 | 
						|
-
 | 
						|
-	/* Initialize current pointer to first element in list */
 | 
						|
-	ah->cal_list_curr = ah->cal_list;
 | 
						|
-
 | 
						|
-	if (ah->cal_list_curr)
 | 
						|
-		ath9k_hw_reset_calibration(ah, ah->cal_list_curr);
 | 
						|
-
 | 
						|
-	if (caldata)
 | 
						|
-		caldata->CalValid = 0;
 | 
						|
+	ar9003_hw_init_cal_common(ah);
 | 
						|
 
 | 
						|
 	return true;
 | 
						|
 }
 |