Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8f778c72 authored by Felix Fietkau's avatar Felix Fietkau Committed by Kalle Valo
Browse files

ath9k_hw: simplify ar9003_hw_per_calibration



Reduce indentation, use a variable to save a few pointer dereferences

Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
Signed-off-by: default avatarKalle Valo <kvalo@qca.qualcomm.com>
parent 3ff25093
Loading
Loading
Loading
Loading
+26 −27
Original line number Diff line number Diff line
@@ -75,21 +75,21 @@ static bool ar9003_hw_per_calibration(struct ath_hw *ah,
				      struct ath9k_cal_list *currCal)
{
	struct ath9k_hw_cal_data *caldata = ah->caldata;
	/* Cal is assumed not done until explicitly set below */
	bool iscaldone = false;
	const struct ath9k_percal_data *cur_caldata = currCal->calData;

	/* Calibration in progress. */
	if (currCal->calState == CAL_RUNNING) {
		/* Check to see if it has finished. */
		if (!(REG_READ(ah, AR_PHY_TIMING4) & AR_PHY_TIMING4_DO_CAL)) {
		if (REG_READ(ah, AR_PHY_TIMING4) & AR_PHY_TIMING4_DO_CAL)
			return false;

		/*
		* Accumulate cal measures for active chains
		*/
			currCal->calData->calCollect(ah);
		cur_caldata->calCollect(ah);
		ah->cal_samples++;

			if (ah->cal_samples >=
			    currCal->calData->calNumSamples) {
		if (ah->cal_samples >= cur_caldata->calNumSamples) {
			unsigned int i, numChains = 0;
			for (i = 0; i < AR9300_MAX_CHAINS; i++) {
				if (rxchainmask & (1 << i))
@@ -99,12 +99,12 @@ static bool ar9003_hw_per_calibration(struct ath_hw *ah,
			/*
			* Process accumulated data
			*/
				currCal->calData->calPostProc(ah, numChains);
			cur_caldata->calPostProc(ah, numChains);

			/* Calibration has finished. */
				caldata->CalValid |= currCal->calData->calType;
			caldata->CalValid |= cur_caldata->calType;
			currCal->calState = CAL_DONE;
				iscaldone = true;
			return true;
		} else {
			/*
			 * Set-up collection of another sub-sample until we
@@ -112,13 +112,12 @@ static bool ar9003_hw_per_calibration(struct ath_hw *ah,
			 */
			ar9003_hw_setup_calibration(ah, currCal);
		}
		}
	} else if (!(caldata->CalValid & currCal->calData->calType)) {
	} else if (!(caldata->CalValid & cur_caldata->calType)) {
		/* If current cal is marked invalid in channel, kick it off */
		ath9k_hw_reset_calibration(ah, currCal);
	}

	return iscaldone;
	return false;
}

static int ar9003_hw_calibrate(struct ath_hw *ah, struct ath9k_channel *chan,