[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v1 for v4.6] etherboot: Build fix for GCC 5.1.1
Specificially we are pulling in the upstream patch (commit 1b56452121672e6408c38ac8926bdd6998a39004)): [ath9k] Remove confusing logic inversion in an ANI variable Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> --- tools/firmware/etherboot/patches/build_fix_4.patch | 225 +++++++++++++++++++++ tools/firmware/etherboot/patches/series | 1 + 2 files changed, 226 insertions(+) create mode 100644 tools/firmware/etherboot/patches/build_fix_4.patch diff --git a/tools/firmware/etherboot/patches/build_fix_4.patch b/tools/firmware/etherboot/patches/build_fix_4.patch new file mode 100644 index 0000000..9271c8c --- /dev/null +++ b/tools/firmware/etherboot/patches/build_fix_4.patch @@ -0,0 +1,225 @@ +From 1b56452121672e6408c38ac8926bdd6998a39004 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <mail@xxxxxxxx> +Date: Thu, 23 Apr 2015 13:33:26 +0200 +Subject: [PATCH] [ath9k] Remove confusing logic inversion in an ANI variable + +This changed in Linux kernel the same way in commit 7067e701 +("ath9k_hw: remove confusing logic inversion in an ANI variable") by +Felix Fietkau. + +Additionally this fixes "error: logical not is only applied to the +left hand side of comparison" with GCC 5.1.0. + +Signed-off-by: Christian Hesse <mail@xxxxxxxx> +Signed-off-by: Michael Brown <mcb30@xxxxxxxx> +--- + src/drivers/net/ath/ath9k/ani.h | 2 +- + src/drivers/net/ath/ath9k/ath9k_ani.c | 16 ++++++++-------- + src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c | 18 +++++++++--------- + src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c | 12 ++++++------ + 4 files changed, 24 insertions(+), 24 deletions(-) + +diff --git a/src/drivers/net/ath/ath9k/ani.h b/src/drivers/net/ath/ath9k/ani.h +index dbd4d4d..ba87ba0 100644 +--- a/src/drivers/net/ath/ath9k/ani.h ++++ b/src/drivers/net/ath/ath9k/ani.h +@@ -125,7 +125,7 @@ struct ar5416AniState { + u8 mrcCCKOff; + u8 spurImmunityLevel; + u8 firstepLevel; +- u8 ofdmWeakSigDetectOff; ++ u8 ofdmWeakSigDetect; + u8 cckWeakSigThreshold; + u32 listenTime; + int32_t rssiThrLow; +diff --git a/src/drivers/net/ath/ath9k/ath9k_ani.c b/src/drivers/net/ath/ath9k/ath9k_ani.c +index ff7df49..76ca79c 100644 +--- a/src/drivers/net/ath/ath9k/ath9k_ani.c ++++ b/src/drivers/net/ath/ath9k/ath9k_ani.c +@@ -177,7 +177,7 @@ static void ath9k_hw_ani_ofdm_err_trigger_old(struct ath_hw *ah) + + rssi = BEACON_RSSI(ah); + if (rssi > aniState->rssiThrHigh) { +- if (!aniState->ofdmWeakSigDetectOff) { ++ if (aniState->ofdmWeakSigDetect) { + if (ath9k_hw_ani_control(ah, + ATH9K_ANI_OFDM_WEAK_SIGNAL_DETECTION, + 0)) { +@@ -192,7 +192,7 @@ static void ath9k_hw_ani_ofdm_err_trigger_old(struct ath_hw *ah) + return; + } + } else if (rssi > aniState->rssiThrLow) { +- if (aniState->ofdmWeakSigDetectOff) ++ if (!aniState->ofdmWeakSigDetect) + ath9k_hw_ani_control(ah, + ATH9K_ANI_OFDM_WEAK_SIGNAL_DETECTION, + 1); +@@ -202,7 +202,7 @@ static void ath9k_hw_ani_ofdm_err_trigger_old(struct ath_hw *ah) + return; + } else { + if ((ah->dev->channels + ah->dev->channel)->band == NET80211_BAND_2GHZ) { +- if (!aniState->ofdmWeakSigDetectOff) ++ if (aniState->ofdmWeakSigDetect) + ath9k_hw_ani_control(ah, + ATH9K_ANI_OFDM_WEAK_SIGNAL_DETECTION, + 0); +@@ -360,7 +360,7 @@ static void ath9k_hw_ani_lower_immunity_old(struct ath_hw *ah) + if (rssi > aniState->rssiThrHigh) { + /* XXX: Handle me */ + } else if (rssi > aniState->rssiThrLow) { +- if (aniState->ofdmWeakSigDetectOff) { ++ if (!aniState->ofdmWeakSigDetect) { + if (ath9k_hw_ani_control(ah, + ATH9K_ANI_OFDM_WEAK_SIGNAL_DETECTION, + 1) == 1) +@@ -436,9 +436,9 @@ static void ath9k_ani_reset_old(struct ath_hw *ah) + if (aniState->spurImmunityLevel != 0) + ath9k_hw_ani_control(ah, ATH9K_ANI_SPUR_IMMUNITY_LEVEL, + aniState->spurImmunityLevel); +- if (aniState->ofdmWeakSigDetectOff) ++ if (!aniState->ofdmWeakSigDetect) + ath9k_hw_ani_control(ah, ATH9K_ANI_OFDM_WEAK_SIGNAL_DETECTION, +- !aniState->ofdmWeakSigDetectOff); ++ aniState->ofdmWeakSigDetect); + if (aniState->cckWeakSigThreshold) + ath9k_hw_ani_control(ah, ATH9K_ANI_CCK_WEAK_SIGNAL_THR, + aniState->cckWeakSigThreshold); +@@ -709,8 +709,8 @@ void ath9k_hw_ani_init(struct ath_hw *ah) + + ani->rssiThrHigh = ATH9K_ANI_RSSI_THR_HIGH; + ani->rssiThrLow = ATH9K_ANI_RSSI_THR_LOW; +- ani->ofdmWeakSigDetectOff = +- !ATH9K_ANI_USE_OFDM_WEAK_SIG; ++ ani->ofdmWeakSigDetect = ++ ATH9K_ANI_USE_OFDM_WEAK_SIG; + ani->cckNoiseImmunityLevel = ATH9K_ANI_CCK_DEF_LEVEL; + } + +diff --git a/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c b/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c +index 60e87e9..2b6c133 100644 +--- a/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c ++++ b/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c +@@ -1141,12 +1141,12 @@ static int ar5008_hw_ani_control_old(struct ath_hw *ah, + REG_CLR_BIT(ah, AR_PHY_SFCORR_LOW, + AR_PHY_SFCORR_LOW_USE_SELF_CORR_LOW); + +- if (!on != aniState->ofdmWeakSigDetectOff) { ++ if (on != aniState->ofdmWeakSigDetect) { + if (on) + ah->stats.ast_ani_ofdmon++; + else + ah->stats.ast_ani_ofdmoff++; +- aniState->ofdmWeakSigDetectOff = !on; ++ aniState->ofdmWeakSigDetect = on; + } + break; + } +@@ -1215,10 +1215,10 @@ static int ar5008_hw_ani_control_old(struct ath_hw *ah, + + DBG2("ath9k: ANI parameters:\n"); + DBG2( +- "noiseImmunityLevel=%d, spurImmunityLevel=%d, ofdmWeakSigDetectOff=%d\n", ++ "noiseImmunityLevel=%d, spurImmunityLevel=%d, ofdmWeakSigDetect=%d\n", + aniState->noiseImmunityLevel, + aniState->spurImmunityLevel, +- !aniState->ofdmWeakSigDetectOff); ++ aniState->ofdmWeakSigDetect); + DBG2( + "cckWeakSigThreshold=%d, firstepLevel=%d, listenTime=%d\n", + aniState->cckWeakSigThreshold, +@@ -1307,18 +1307,18 @@ static int ar5008_hw_ani_control_new(struct ath_hw *ah, + REG_CLR_BIT(ah, AR_PHY_SFCORR_LOW, + AR_PHY_SFCORR_LOW_USE_SELF_CORR_LOW); + +- if (!on != aniState->ofdmWeakSigDetectOff) { ++ if (on != aniState->ofdmWeakSigDetect) { + DBG2("ath9k: " + "** ch %d: ofdm weak signal: %s=>%s\n", + chan->channel, +- !aniState->ofdmWeakSigDetectOff ? ++ aniState->ofdmWeakSigDetect ? + "on" : "off", + on ? "on" : "off"); + if (on) + ah->stats.ast_ani_ofdmon++; + else + ah->stats.ast_ani_ofdmoff++; +- aniState->ofdmWeakSigDetectOff = !on; ++ aniState->ofdmWeakSigDetect = on; + } + break; + } +@@ -1467,7 +1467,7 @@ static int ar5008_hw_ani_control_new(struct ath_hw *ah, + DBG2("ath9k: " + "ANI parameters: SI=%d, ofdmWS=%s FS=%d MRCcck=%s listenTime=%d ofdmErrs=%d cckErrs=%d\n", + aniState->spurImmunityLevel, +- !aniState->ofdmWeakSigDetectOff ? "on" : "off", ++ aniState->ofdmWeakSigDetect ? "on" : "off", + aniState->firstepLevel, + !aniState->mrcCCKOff ? "on" : "off", + aniState->listenTime, +@@ -1554,7 +1554,7 @@ static void ar5008_hw_ani_cache_ini_regs(struct ath_hw *ah) + /* these levels just got reset to defaults by the INI */ + aniState->spurImmunityLevel = ATH9K_ANI_SPUR_IMMUNE_LVL_NEW; + aniState->firstepLevel = ATH9K_ANI_FIRSTEP_LVL_NEW; +- aniState->ofdmWeakSigDetectOff = !ATH9K_ANI_USE_OFDM_WEAK_SIG; ++ aniState->ofdmWeakSigDetect = ATH9K_ANI_USE_OFDM_WEAK_SIG; + aniState->mrcCCKOff = 1; /* not available on pre AR9003 */ + } + +diff --git a/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c b/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c +index 6103040..2244b77 100644 +--- a/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c ++++ b/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c +@@ -859,18 +859,18 @@ static int ar9003_hw_ani_control(struct ath_hw *ah, + REG_CLR_BIT(ah, AR_PHY_SFCORR_LOW, + AR_PHY_SFCORR_LOW_USE_SELF_CORR_LOW); + +- if (!on != aniState->ofdmWeakSigDetectOff) { ++ if (on != aniState->ofdmWeakSigDetect) { + DBG2("ath9k: " + "** ch %d: ofdm weak signal: %s=>%s\n", + chan->channel, +- !aniState->ofdmWeakSigDetectOff ? ++ aniState->ofdmWeakSigDetect ? + "on" : "off", + on ? "on" : "off"); + if (on) + ah->stats.ast_ani_ofdmon++; + else + ah->stats.ast_ani_ofdmoff++; +- aniState->ofdmWeakSigDetectOff = !on; ++ aniState->ofdmWeakSigDetect = on; + } + break; + } +@@ -1013,7 +1013,7 @@ static int ar9003_hw_ani_control(struct ath_hw *ah, + AR_PHY_MRC_CCK_ENABLE, is_on); + REG_RMW_FIELD(ah, AR_PHY_MRC_CCK_CTRL, + AR_PHY_MRC_CCK_MUX_REG, is_on); +- if (!is_on != aniState->mrcCCKOff) { ++ if (!(is_on != aniState->mrcCCKOff)) { + DBG2("ath9k: " + "** ch %d: MRC CCK: %s=>%s\n", + chan->channel, +@@ -1037,7 +1037,7 @@ static int ar9003_hw_ani_control(struct ath_hw *ah, + DBG2("ath9k: " + "ANI parameters: SI=%d, ofdmWS=%s FS=%d MRCcck=%s listenTime=%d ofdmErrs=%d cckErrs=%d\n", + aniState->spurImmunityLevel, +- !aniState->ofdmWeakSigDetectOff ? "on" : "off", ++ aniState->ofdmWeakSigDetect ? "on" : "off", + aniState->firstepLevel, + !aniState->mrcCCKOff ? "on" : "off", + aniState->listenTime, +@@ -1137,7 +1137,7 @@ static void ar9003_hw_ani_cache_ini_regs(struct ath_hw *ah) + /* these levels just got reset to defaults by the INI */ + aniState->spurImmunityLevel = ATH9K_ANI_SPUR_IMMUNE_LVL_NEW; + aniState->firstepLevel = ATH9K_ANI_FIRSTEP_LVL_NEW; +- aniState->ofdmWeakSigDetectOff = !ATH9K_ANI_USE_OFDM_WEAK_SIG; ++ aniState->ofdmWeakSigDetect = ATH9K_ANI_USE_OFDM_WEAK_SIG; + aniState->mrcCCKOff = !ATH9K_ANI_ENABLE_MRC_CCK; + } + +-- +2.4.3 + diff --git a/tools/firmware/etherboot/patches/series b/tools/firmware/etherboot/patches/series index 7512c14..2c39853 100644 --- a/tools/firmware/etherboot/patches/series +++ b/tools/firmware/etherboot/patches/series @@ -3,3 +3,4 @@ build_fix_1.patch build_fix_2.patch build_fix_3.patch build-compare.patch +build_fix_4.patch -- 2.1.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |