ath_rc_priv->neg_ht_rates.rs_nrates = j;
        }
 
-       is_cw40 = sta->ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40;
+       is_cw40 = !!(sta->ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40);
 
        if (is_cw40)
-               is_sgi = sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40;
+               is_sgi = !!(sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40);
        else if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_SGI_20)
-               is_sgi = sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20;
+               is_sgi = !!(sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20);
 
        /* Choose rate table first */
 
        struct ath_rate_priv *ath_rc_priv = priv_sta;
        const struct ath_rate_table *rate_table = NULL;
        bool oper_cw40 = false, oper_sgi;
-       bool local_cw40 = (ath_rc_priv->ht_cap & WLAN_RC_40_FLAG) ?
-               true : false;
-       bool local_sgi = (ath_rc_priv->ht_cap & WLAN_RC_SGI_FLAG) ?
-               true : false;
+       bool local_cw40 = !!(ath_rc_priv->ht_cap & WLAN_RC_40_FLAG);
+       bool local_sgi = !!(ath_rc_priv->ht_cap & WLAN_RC_SGI_FLAG);
 
        /* FIXME: Handle AP mode later when we support CWM */