rtl_dbg(rtlpriv, COMP_SCAN, DBG_LOUD,
                                "Just Read IQK Matrix reg for channel:%d....\n",
                                channel);
-                       _rtl92d_phy_patha_fill_iqk_matrix(hw, true,
-                                       rtlphy->iqk_matrix[
-                                       indexforchannel].value, 0,
-                                       (rtlphy->iqk_matrix[
-                                       indexforchannel].value[0][2] == 0));
+                       if (rtlphy->iqk_matrix[indexforchannel].value[0][0] != 0)
+                               _rtl92d_phy_patha_fill_iqk_matrix(hw, true,
+                                       rtlphy->iqk_matrix[indexforchannel].value, 0,
+                                       rtlphy->iqk_matrix[indexforchannel].value[0][2] == 0);
                        if (IS_92D_SINGLEPHY(rtlhal->version)) {
                                if ((rtlphy->iqk_matrix[
                                        indexforchannel].value[0][4] != 0)