Merge from vendor branch LIBARCHIVE:
[dragonfly.git] / sys / dev / netif / ndis / README
1 $DragonFly: src/sys/dev/netif/ndis/README,v 1.1 2004/07/29 21:51:55 dillon Exp $
2                         USING IF_NDIS WITH WINDOWS DEVICE DRIVERS
3
4 (1) Locate the .INF and .SYS file for the windows driver.  I have no idea
5     where the official location for these things are but I found the one
6     for the Centrino 2200 chipset (for my Sony TR3A) here:
7
8     http://news.gw.com/freebsd.hardware/4894
9     http://www.powernotebooks.com/Support/intel_2200_wlan.zip
10
11     My MD5 (intel_2200_wlan.zip) = 281812933642f3f2fd54710ee7bba2d4
12     This is unofficial.
13
14 (2) Unpack the files into a temporary directory, then copy the appropriate
15     .INF and .SYS file to /usr/local/modules/if_ndis.
16
17     mkdir -p /usr/local/modules/if_ndis
18     cp .... 
19
20 (3) Generate a driver module header file using ndiscvt then build and
21     install the module.  The object directory in which you store the
22     header file should match what make obj creates.  If your DFly sources
23     are in /usr/src then the example below will work.
24
25     # cd /usr/src/sys/dev/netif/ndis
26     # make obj
27     # make clean
28     # ndiscvt -i /usr/local/modules/if_ndis/w22n51.INF -s /usr/local/modules/if_ndis/w22n51.sys -o /usr/obj/usr/src/sys/dev/netif/ndis/ndis_driver_data.h
29     # make
30     # make install
31
32 (4) Load all required modules into the running kernel:
33
34     # kldload /modules/wlan.ko
35     # kldload /modules/ndis.ko
36     # kldload /modules/if_ndis.ko
37
38     You should get something similar to the following system console
39     messages:
40
41     ndis0: NDIS API version: 5.1
42     ndis0: MAC address: 00:0e:35:15:ee:72
43     ndis0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 5.5Mbps 11Mbps
44     ndis0: 11g rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
45
46 (5) Bring the interface up and associate the SSID.  If you aren't sure
47     what your basestation id is you can use 'wicontrol -i ndis0 -l' to
48     list available ssid's.
49
50     # ifconfig ndis0 up
51     # wicontrol -i ndis0 -l
52     # ifconfig ssid "your_basestation_id"
53
54 (6) Ifconfig should show the interface up and associated.  Run dhclient
55     or ifconfig your IP address. 
56
57     # ifconfig ndis0
58     [should show the interface up and associated]
59     # dhclient ndis0
60