[CUWiN-Dev] Re: ath0: hardware error

David Young dyoung at pobox.com
Tue Aug 30 18:49:17 CDT 2005


On Tue, Aug 30, 2005 at 06:17:29PM -0500, David Young wrote:
> I was able to semi-reliably reproduce the lossage you report with
> 'ifconfig ath0 ssid cntwireless.net'.  I have attached a patch I applied
> that may have fixed the problem.
> 
> I see a lot of these messages scrolling up the console when I set ssid
> cntwireless.net.  No doubt it's because the SSIDs don't agree.  I remember
> you mentioned that before.  I will send a second patch that quiets things.
> 
> ieee80211_ibss_merge: merge failed, capabilities mismatch
> ieee80211_ibss_merge: merge failed, capabilities mismatch
> ieee80211_ibss_merge: merge failed, capabilities mismatch
> ieee80211_ibss_merge: merge failed, capabilities mismatch
> ieee80211_ibss_merge: merge failed, capabilities mismatch
> ieee80211_ibss_merge: merge failed, capabilities mismatch
> ieee80211_ibss_merge: merge failed, capabilities mismatch

Here are both patches.

Dave

-- 
David Young             OJC Technologies
dyoung at ojctech.com      Urbana, IL * (217) 278-3933
-------------- next part --------------
Index: dev/pci/if_ath_pci.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/if_ath_pci.c,v
retrieving revision 1.10
diff -u -u -r1.10 if_ath_pci.c
--- dev/pci/if_ath_pci.c	22 Jun 2005 22:07:48 -0000	1.10
+++ dev/pci/if_ath_pci.c	30 Aug 2005 22:44:37 -0000
@@ -152,6 +152,16 @@
 	    pci_conf_read(pc, pa->pa_tag, PCIR_RETRY_TIMEOUT_REG) &
 	    ~PCIR_RETRY_TIMEOUT_MASK);
 
+	/*
+	 * Make sure the latency timer is set to some reasonable
+	 * value.
+	 */
+	res = pci_conf_read(pc, pa->pa_tag, PCI_BHLC_REG);
+	if (PCI_LATTIMER(res) < 0xa8) {
+		res &= ~(PCI_LATTIMER_MASK << PCI_LATTIMER_SHIFT);
+		res |= (0xa8 << PCI_LATTIMER_SHIFT);
+		pci_conf_write(pc, pa->pa_tag, PCI_BHLC_REG, res);
+	}
 	return 1;
 }
 
-------------- next part --------------
Index: ieee80211_node.c
===================================================================
RCS file: /cvsroot/src/sys/net80211/ieee80211_node.c,v
retrieving revision 1.43
diff -u -u -r1.43 ieee80211_node.c
--- ieee80211_node.c	26 Jul 2005 23:07:53 -0000	1.43
+++ ieee80211_node.c	30 Aug 2005 23:48:58 -0000
@@ -769,7 +769,7 @@
 		return 0;
 	}
 	if (ieee80211_match_bss(ic, ni) != 0) {	/* capabilities mismatch */
-		IEEE80211_DPRINTF(ic, IEEE80211_MSG_ASSOC,
+		IEEE80211_DPRINTF(ic, IEEE80211_MSG_ASSOC | IEEE80211_MSG_DEBUG,
 		    "%s: merge failed, capabilities mismatch\n", __func__);
 		ic->ic_stats.is_ibss_capmismatch++;
 		return 0;


More information about the CU-Wireless-Dev mailing list