Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Jul 2007 06:48:18 +1200
From:      Andrew Thompson <thompsa@FreeBSD.org>
To:        Matteo Riondato <matteo@freebsd.org>
Cc:        FreeBSD Current <current@freebsd.org>
Subject:   Re: cvs commit: src/sys/dev/if_ndis if_ndis.c if_ndisvar.h
Message-ID:  <20070715184818.GB10968@heff.fud.org.nz>
In-Reply-To: <20070715131140.GA1413@krapfengeist.dei.unipd.it>
References:  <200707120254.l6C2s5Yg041022@repoman.freebsd.org> <20070713230833.GA2642@krapfengeist.dei.unipd.it> <20070715111346.GJ95956@heff.fud.org.nz> <20070715131140.GA1413@krapfengeist.dei.unipd.it>

next in thread | previous in thread | raw e-mail | index | archive | help

--0F1p//8PRICkK4MW
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Sun, Jul 15, 2007 at 03:11:40PM +0200, Matteo Riondato wrote:
> On Sun, Jul 15, 2007 at 11:13:46PM +1200, Andrew Thompson wrote:
> > On Sat, Jul 14, 2007 at 01:08:33AM +0200, Matteo Riondato wrote:
> > > On Thu, Jul 12, 2007 at 02:54:05AM +0000, Andrew Thompson wrote:
> > > > thompsa     2007-07-12 02:54:05 UTC
> > > > 
> > > >   FreeBSD src repository
> > > > 
> > > >   Modified files:
> > > >     sys/dev/if_ndis      if_ndis.c if_ndisvar.h 
> > > >   Log:
> > > >   Improve the net80211 handling within ndis
> > > >    - use net80211 for scanning and pass the results back to the scan cache
> > > >    - use ieee80211_init_channels to fill our channel list
> > > >    - fix up state transitions
> > > >    - depreciate the old wicontrol ioctls
> > > >    - add some debugging lines (#define NDIS_DEBUG)
> > > 
> > > I wonder whether this commit can be guilty of my wireless connection
> > > (which uses ndis) no longer working. I rebuild my system today and when
> > > I rebooted my machine can no longer connect to the network. "ifconfig
> > > ndis0 scan" seems not to work any more. 
> > > I will be pleased to give more debug information, if you tell me what
> > > you need. 
> > 
> > You can turn on net80211 debugging my setting sysctl
> > net.wlan.0.debug=0xffffffff (or use wlandebug). Kick off a scan and see
> > if anything is returned.
> 
> kaiser# sysctl net.wlan.0.debug=0xffffffff
> net.wlan.0.debug: 0 -> 2147483647
> kaise# ifconfig ndis0 scan
> ndis0: ieee80211_start_scan: acrive scan 2147483647, desired mode auto,
> append, nopick, once
> ndis0 scan set  dwell min 20 max 200
> ndis0: scan_restart: no channels to scan
 

Can you please test the attached patch, it also turns on debugging
printfs which I would be interested in.



Andrew

--0F1p//8PRICkK4MW
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="ndis_channels.diff"

Index: if_ndis.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/if_ndis/if_ndis.c,v
retrieving revision 1.123
diff -u -p -r1.123 if_ndis.c
--- if_ndis.c	12 Jul 2007 02:54:05 -0000	1.123
+++ if_ndis.c	15 Jul 2007 18:46:29 -0000
@@ -89,6 +89,7 @@ __FBSDID("$FreeBSD: src/sys/dev/if_ndis/
 #include <compat/ndis/ndis_var.h>
 #include <dev/if_ndis/if_ndisvar.h>
 
+#define NDIS_DEBUG
 #ifdef NDIS_DEBUG
 #define DPRINTF(x)	printf x
 #else
@@ -752,11 +753,16 @@ ndis_attach(dev)
 				setbit(&bands, IEEE80211_MODE_11G);
 				break;
 			default:
+				DPRINTF(("Unknown nettype %d\n",
+					    ntl->ntl_type[i]));
 				break;
 			}
 		}
 		free(ntl, M_DEVBUF);
 nonettypes:
+		/* Default to 11b channel set if the card did not supply any */
+		if (bands == 0)
+			setbit(ic->ic_modecaps, IEEE80211_MODE_11B);
 		len = sizeof(rates);
 		bzero((char *)&rates, len);
 		r = ndis_get_info(sc, OID_802_11_SUPPORTED_RATES,

--0F1p//8PRICkK4MW--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070715184818.GB10968>