Hello adrian, Thank you for a patch, and I'm sorry for late reply. Your patch fixes the problem. ".calib_need" flag's change helps. Other changes doesn't need to fix, but they doesn't seem to make any problem.
The minimum necessary change is below. if_iwn.c : no change if_iwn_chip_cfg.h: remove IWN_FLG_NEED_PHY_CALIB_DC, add IWN_FLG_NEED_PHY_CALIB_TX_IQ_PERIODIC Index: if_iwn_chip_cfg.h =================================================================== --- if_iwn_chip_cfg.h (revision 265665) +++ if_iwn_chip_cfg.h (working copy) @@ -219,8 +219,9 @@ .regulatory_bands = iwn5000_regulatory_bands, .enhanced_TX_power = false, .calib_need = - ( IWN_FLG_NEED_PHY_CALIB_DC - | IWN_FLG_NEED_PHY_CALIB_LO + ( + IWN_FLG_NEED_PHY_CALIB_LO + | IWN_FLG_NEED_PHY_CALIB_TX_IQ_PERIODIC | IWN_FLG_NEED_PHY_CALIB_TX_IQ | IWN_FLG_NEED_PHY_CALIB_BASE_BAND ), .support_hostap = false, -- Kaho Toshikazu Adrian Chadd <adr...@freebsd.org> wrote: > Hi! > > Would you mind trying this? > > What values do you have for sc_txchainmask and sc_rxchainmask? Before > they're over-ridden? > > Thanks! > > > -a > > adrian@sabrina:~/work/freebsd/head/src/sys/dev/iwn % svn diff . > Index: if_iwn.c > =================================================================== > --- if_iwn.c (revision 265478) > +++ if_iwn.c (working copy) > @@ -744,6 +744,8 @@ > sc->limits = &iwn1000_sensitivity_limits; > sc->base_params = &iwn1000_base_params; > sc->fwname = "iwn1000fw"; > + /* XXX override chainmasks? */ > + sc->txchainmask = IWN_ANT_AB; > break; > default: > device_printf(sc->sc_dev, "adapter type id : 0x%04x sub id :" > Index: if_iwn_chip_cfg.h > =================================================================== > --- if_iwn_chip_cfg.h (revision 265478) > +++ if_iwn_chip_cfg.h (working copy) > @@ -219,14 +219,18 @@ > .regulatory_bands = iwn5000_regulatory_bands, > .enhanced_TX_power = false, > .calib_need = > - ( IWN_FLG_NEED_PHY_CALIB_DC > + ( > +// IWN_FLG_NEED_PHY_CALIB_DC > | IWN_FLG_NEED_PHY_CALIB_LO > + | IWN_FLG_NEED_PHY_CALIB_TX_IQ_PERIODIC > | IWN_FLG_NEED_PHY_CALIB_TX_IQ > - | IWN_FLG_NEED_PHY_CALIB_BASE_BAND ), > + | IWN_FLG_NEED_PHY_CALIB_BASE_BAND > + ), > .support_hostap = false, > .no_multi_vaps = true, > .additional_gp_drv_bit = IWN_GP_DRIVER_NONE, > - .bt_mode = IWN_BT_NONE, > +// .bt_mode = IWN_BT_NONE, > + .bt_mode = IWN_BT_SIMPLE, > .plcp_err_threshold = IWN_PLCP_ERR_EXT_LONG_THRESHOLD, > }; > static const struct iwn_base_params iwn_6000_base_params = { _______________________________________________ freebsd-wireless@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-wireless To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"