diff options
author | Damien Bergamini <damien@cvs.openbsd.org> | 2010-01-23 09:14:14 +0000 |
---|---|---|
committer | Damien Bergamini <damien@cvs.openbsd.org> | 2010-01-23 09:14:14 +0000 |
commit | c0475986fd78ac3ca5e23b9cf91fa22d0c0bf9fd (patch) | |
tree | 9e607c21a4cdf9b31e6b56be7d056aa0540b787d | |
parent | f1bfe873d3d249f0ad1eefd48481b20ac7d305ed (diff) |
finally, 6250 parts need crystal calibration too.
update sensitivity settings for 5000 series to workaround a performance
bug in the DSP (1000 is not affected so we keep the old values for 5000.)
update sensitivity settings for 6000 series.
from similar changes to iwlwifi
-rw-r--r-- | sys/dev/pci/if_iwn.c | 7 | ||||
-rw-r--r-- | sys/dev/pci/if_iwnreg.h | 22 |
2 files changed, 20 insertions, 9 deletions
diff --git a/sys/dev/pci/if_iwn.c b/sys/dev/pci/if_iwn.c index d6429226134..4af38df1b88 100644 --- a/sys/dev/pci/if_iwn.c +++ b/sys/dev/pci/if_iwn.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_iwn.c,v 1.81 2010/01/16 12:48:58 damien Exp $ */ +/* $OpenBSD: if_iwn.c,v 1.82 2010/01/23 09:14:13 damien Exp $ */ /*- * Copyright (c) 2007-2009 Damien Bergamini <damien.bergamini@free.fr> @@ -605,7 +605,7 @@ iwn_hal_attach(struct iwn_softc *sc, pci_product_id_t pid) break; case IWN_HW_REV_TYPE_1000: sc->sc_hal = &iwn5000_hal; - sc->limits = &iwn5000_sensitivity_limits; + sc->limits = &iwn1000_sensitivity_limits; sc->fwname = "iwn-1000"; sc->txchainmask = IWN_ANT_A; sc->rxchainmask = IWN_ANT_AB; @@ -4919,8 +4919,7 @@ iwn5000_post_alive(struct iwn_softc *sc) sc->sc_dev.dv_xname); return error; } - if (sc->hw_type != IWN_HW_REV_TYPE_5150 && - sc->hw_type != IWN_HW_REV_TYPE_6050) { + if (sc->hw_type != IWN_HW_REV_TYPE_5150) { struct iwn5000_phy_calib_crystal cmd; /* Perform crystal calibration. */ diff --git a/sys/dev/pci/if_iwnreg.h b/sys/dev/pci/if_iwnreg.h index 84b1d1351d4..bea35a866ca 100644 --- a/sys/dev/pci/if_iwnreg.h +++ b/sys/dev/pci/if_iwnreg.h @@ -1,4 +1,4 @@ -/* $OpenBSD: if_iwnreg.h,v 1.35 2010/01/16 12:48:58 damien Exp $ */ +/* $OpenBSD: if_iwnreg.h,v 1.36 2010/01/23 09:14:13 damien Exp $ */ /*- * Copyright (c) 2007, 2008 @@ -1537,8 +1537,8 @@ static const struct iwn_sensitivity_limits iwn4965_sensitivity_limits = { }; static const struct iwn_sensitivity_limits iwn5000_sensitivity_limits = { - 120, 155, - 240, 290, + 120, 120, /* min = max for performance bug in DSP. */ + 240, 240, /* min = max for performance bug in DSP. */ 90, 120, 170, 210, 125, 200, @@ -1560,8 +1560,20 @@ static const struct iwn_sensitivity_limits iwn5150_sensitivity_limits = { 95 }; +static const struct iwn_sensitivity_limits iwn1000_sensitivity_limits = { + 120, 155, + 240, 290, + 90, 120, + 170, 210, + 125, 200, + 170, 400, + 95, + 95, + 95 +}; + static const struct iwn_sensitivity_limits iwn6000_sensitivity_limits = { - 105, 145, + 105, 110, 192, 232, 80, 145, 128, 232, @@ -1627,7 +1639,7 @@ static const char * const iwn_fw_errmsg[] = { "DEBUG_1", "DEBUG_2", "DEBUG_3", - "UNKNOWN" + "ADVANCED_SYSASSERT" }; /* Find least significant bit that is set. */ |