Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> wrote: > These contain mostly the calibration and channel switching routines > for RTL8192DU. > > Signed-off-by: Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> [...] > +void rtl92du_phy_iq_calibrate(struct ieee80211_hw *hw) > +{ > + long rege94, rege9c, regea4, regeac, regeb4; > + bool is12simular, is13simular, is23simular; > + struct rtl_priv *rtlpriv = rtl_priv(hw); > + struct rtl_hal *rtlhal = &rtlpriv->rtlhal; > + long regebc, regec4, regecc, regtmp = 0; > + struct rtl_phy *rtlphy = &rtlpriv->phy; > + u8 i, final_candidate, indexforchannel; > + bool patha_ok, pathb_ok; > + long result[4][8]; > + > + RTPRINT(rtlpriv, FINIT, INIT_IQK, > + "IQK:Start!!!channel %d\n", rtlphy->current_channel); > + for (i = 0; i < 8; i++) { > + result[0][i] = 0; > + result[1][i] = 0; > + result[2][i] = 0; > + result[3][i] = 0; > + } nit: Declare result[][] as long result[4][8] = {}; Then, no need of this loop.