{"id":50,"date":"2008-11-07T13:31:16","date_gmt":"2008-11-07T04:01:16","guid":{"rendered":"http:\/\/www.clearchain.com\/blog\/?p=50"},"modified":"2008-11-07T16:17:59","modified_gmt":"2008-11-07T06:47:59","slug":"wpi","status":"publish","type":"post","link":"https:\/\/www.clearchain.com\/blog\/posts\/wpi","title":{"rendered":"wpi"},"content":{"rendered":"<p>\u00a0<\/p>\n<div>\n<p><strong>Last Updated:<\/strong>\u00a020080408003159<\/div>\n<p>This page documents the current state of the WPI driver for\u00a0<a title=\"FreeBSD\" href=\"http:\/\/www.clearchain.com\/blog\/categories\/computers\/freebsd\">FreeBSD<\/a>, the driver supports the Intel 3945ABG Wireless driver.\u00a0<strong>Note: As of 2007\/11\/09 the wpi driver is in 8.0-Current, aka FreeBSD src CVS. AND linked to the build. As of 2007\/12\/8 wpi is also in RELENG_7.<\/strong><\/p>\n<p>Note: If you have the Intel 4965AGN card try the\u00a0<a title=\"Iwn\" href=\"http:\/\/www.clearchain.com\/blog\/posts\/iwn\">Iwn<\/a>\u00a0page.<\/p>\n<p><!--more--><\/p>\n<p>If you try this driver and find it works\/doesn&#8217;t work causes errors, hangs your system or something else. Please let me know &#8211; just email:\u00a0<a class=\"external free\" title=\"mailto:benjsc@FreeBSD.org\" rel=\"nofollow\" href=\"mailto:benjsc@FreeBSD.org\">mailto:benjsc@FreeBSD.org<\/a><\/p>\n<p>An up to date commentary on what I&#8217;m working on can often be found in my\u00a0<a title=\"Blog\" href=\"http:\/\/www.clearchain.com\/blog\/\">blog<\/a>\u00a0and this is a\u00a0<a class=\"external text\" title=\"http:\/\/www.mediawiki.org\" rel=\"nofollow\" href=\"http:\/\/www.mediawiki.org\/\">wiki<\/a>\u00a0page so you can check the page\u00a0history\u00a0for what has changed<\/p>\n<p>Details on how to help debug the driver are in README file that&#8217;s in the download package.<\/p>\n<p>For those of you wanting to try the perforce version of the driver, the script\u00a0<a class=\"internal\" title=\"P4fetch.rb\" href=\"http:\/\/www.clearchain.com\/mediawiki\/images\/b\/b8\/P4fetch.rb\">Media:P4fetch.rb<\/a>\u00a0will help you easily obtain the files. The script was provided by Tom Evans (see\u00a0Image:P4fetch.rb\u00a0for Tom&#8217;s details)<\/p>\n<table id=\"toc\" class=\"toc\" border=\"0\" summary=\"Contents\">\n<tbody>\n<tr>\n<td>\n<div id=\"toctitle\">\n<h2>Contents<\/h2>\n<p>\u00a0<span class=\"toctoggle\">[<a id=\"togglelink\" class=\"internal\" href=\"javascript:toggleToc()\">hide<\/a>]<\/span><\/div>\n<ul>\n<li class=\"toclevel-1\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">1<\/span>\u00a0<span class=\"toctext\">History<\/span><\/a><\/li>\n<li class=\"toclevel-1\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">2<\/span>\u00a0<span class=\"toctext\">Download<\/span><\/a><\/li>\n<li class=\"toclevel-1\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">3<\/span>\u00a0<span class=\"toctext\">Installation\/Testing Instructions<\/span><\/a><\/li>\n<li class=\"toclevel-1\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">4<\/span>\u00a0<span class=\"toctext\">FAQ \/ Build Issues<\/span><\/a>\n<ul>\n<li class=\"toclevel-2\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">4.1<\/span>\u00a0<span class=\"toctext\">Error ic_scan_start not found<\/span><\/a><\/li>\n<li class=\"toclevel-2\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">4.2<\/span>\u00a0<span class=\"toctext\">When will the driver be stable<\/span><\/a><\/li>\n<li class=\"toclevel-2\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">4.3<\/span>\u00a0<span class=\"toctext\">When will there be a backport to 6.x \/ When will it be available<\/span><\/a><\/li>\n<\/ul>\n<\/li>\n<li class=\"toclevel-1\"><a href=\"http:\/\/www.clearchain.com\/blog\/posts\/wpi\"><span class=\"tocnumber\">5<\/span>\u00a0<span class=\"toctext\">Outstanding issues<\/span><\/a><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><a name=\"History\"><\/a><\/p>\n<h1><span class=\"mw-headline\">History<\/span><\/h1>\n<ul>\n<li>In development on Wolf (Ben&#8217;s Laptop)\n<ul>\n<li>Bugfixing<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>Perforce Version (Not yet tarballed &#8211; available\u00a0<a class=\"external text\" title=\"http:\/\/perforce.freebsd.org\/depotTreeBrowser.cgi?FSPC=\/\/depot\/user\/benjsc\/wpi\" rel=\"nofollow\" href=\"http:\/\/perforce.freebsd.org\/depotTreeBrowser.cgi?FSPC=\/\/depot\/user\/benjsc\/wpi\">here<\/a>)\n<ul>\n<li>Locking fixes<\/li>\n<li>driver cleanups<\/li>\n<li>Supporting Firmware resets correctly<\/li>\n<li>Supporting turning on the card&#8217;s hw switch<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>FreeBSD CVS (HEAD\/RELENG_7)\n<ul>\n<li>REL 20071127<\/li>\n<li>WEP Fixes<\/li>\n<li>Missed Beacon Fixes<\/li>\n<li>Disabling<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li><a class=\"external text\" title=\"http:\/\/people.freebsd.org\/~benjsc\/downloads\/wpi\/20071102-freebsd-wpi.tar.gz\" rel=\"nofollow\" href=\"http:\/\/people.freebsd.org\/~benjsc\/downloads\/wpi\/20071102-freebsd-wpi.tar.gz\">20071102<\/a>\n<ul>\n<li><strong>NOTE: You really should use the version in FreeBSD CVS NOW<\/strong><\/li>\n<li>A few locking fixes<\/li>\n<li>A fix for rate control panics<\/li>\n<li>A few minor other changes<\/li>\n<li>Fix for crashes under heavy load (makes large transfers reliable!)<\/li>\n<li>Fix for panic in wpi_ioctl<\/li>\n<li>Various callout_fixes<\/li>\n<li>Various cleanups<\/li>\n<li>Fix for panic in wpi_detach whilst still scanning<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>20070923 (Please Note this driver is intended for 7-PRE \/ 8.0-Current)\n<ul>\n<li>Fixed\u00a0<em>could not setup MRR..<\/em>\u00a0errors, this should fix scanning<\/li>\n<li>Other scanning fixes<\/li>\n<li>Fixed rx buffer allocation issues<\/li>\n<li>Fixed a few compile issues ppl were experiencing<\/li>\n<li>Fixed a few panics due to\u00a0<em>sleeping with locked mutex<\/em>\u00a0issues<\/li>\n<li>Fixed a panic at unload<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>20070829 (Please Note this driver is intended for 7-PRE \/ 8.0-Current)\n<ul>\n<li>Fix RBuf overflow (Thanks to OpenBSD)<\/li>\n<li>Implement auto firmware reload on a firmware failure<\/li>\n<li>Watchdog timer<\/li>\n<li>Memory leak fixes<\/li>\n<li>code cleanup<\/li>\n<li>panic fixes<\/li>\n<li>printf cleanups<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>200700715 (Please Note this driver is intended for 7-PRE \/ 8.0-Current)\n<ul>\n<li>80211a\/b\/g scanning now works<\/li>\n<li>Association might work\u00a0\ud83d\ude42<\/li>\n<li>The driver has been updated to the new net80211 framework<\/li>\n<li>Association works!<\/li>\n<li>The hangs previously experienced have been solved<\/li>\n<li>Sending data now works, though don&#8217;t push it too hard\u00a0\ud83d\ude42<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>20070615 (This tarball has been removed as it wasn&#8217;t 6.x compatiable but claimed to be)\n<ul>\n<li>Various things required to easily sync the driver with -current<\/li>\n<li>LEGAL integration<\/li>\n<li>Basic Man Page<\/li>\n<li>New firmware loading code (with bugs)<\/li>\n<li>Upgrade firmware port to v2.14.1<\/li>\n<li>Fix a memory free bug which caused a panic if the firmware failed to load<\/li>\n<li>Update comments to indicate how the card works<\/li>\n<li>Add finer grain debugging<\/li>\n<li>Updates to TXPOWER command<\/li>\n<li>Updates to the MRR command<\/li>\n<li>Updates to debugging<\/li>\n<li>Lots of update due to firmware changes<\/li>\n<li>Lots of code changes to scanning and device config<\/li>\n<li>Comment updates<\/li>\n<li>Fix the size of the tx_data struct, should hopefully reduce the amount of crashed<\/li>\n<li>Modifications to ring alignment to make the hw happier \/ FreeBSD happier<\/li>\n<li>Removal of the svc ring &#8211; wasn&#8217;t used<\/li>\n<li>TX Power support from OpenBSD<\/li>\n<li>Sync based mrr support from OpenBSD<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>20070131 (This version driver should partially work under 6.x)\n<ul>\n<li>Fix firmware port compilation\/installation &#8211; this should fix firmware issues:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre>firmware_get: failed to load firmware image wpi_fw\r\nwpi0: could not load firmware image 'wpi_fw'<\/pre>\n<ul>\n<li>20070125\n<ul>\n<li>Bring the driver up to date with the code from OpenBSD(r1.38) &amp; NetBSD(r.16)<\/li>\n<li>Free up some resources correctly on unload<\/li>\n<li>Handle a few error conditions better<\/li>\n<li>You can now toggle the hardware switch with the driver crashing!<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>20070107\n<ul>\n<li>Integrate Changes from Sam &amp; Kip<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>20070106\n<ul>\n<li>Initial Port of Damien&#8217;s Driver<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><a name=\"Download\"><\/a><\/p>\n<h1><span class=\"mw-headline\">Download<\/span><\/h1>\n<p>The current public version of the driver is always available at (things are now on the FreeBSD cluster for speed reasons):\u00a0<a class=\"external free\" title=\"http:\/\/people.freebsd.org\/~benjsc\/downloads\/wpi\/\" rel=\"nofollow\" href=\"http:\/\/people.freebsd.org\/~benjsc\/downloads\/wpi\/\">http:\/\/people.freebsd.org\/~benjsc\/downloads\/wpi\/<\/a><\/p>\n<p>The current development version of the driver is always available in perforce at:<\/p>\n<p><a class=\"external free\" title=\"http:\/\/perforce.freebsd.org\/depotTreeBrowser.cgi?FSPC=\/\/depot\/user\/benjsc\/wpi\" rel=\"nofollow\" href=\"http:\/\/perforce.freebsd.org\/depotTreeBrowser.cgi?FSPC=\/\/depot\/user\/benjsc\/wpi\">http:\/\/perforce.freebsd.org\/depotTreeBrowser.cgi?FSPC=\/\/depot\/user\/benjsc\/wpi<\/a><\/p>\n<p><a name=\"Installation.2FTesting_Instructions\"><\/a><\/p>\n<h1><span class=\"mw-headline\">Installation\/Testing Instructions<\/span><\/h1>\n<p>At present installation of the driver is very much hands on.<\/p>\n<p>To install the driver:<\/p>\n<ul>\n<li>Download the latest tarball (see downloads above)<\/li>\n<li>Extract the tarball<\/li>\n<li>Read the README file<\/li>\n<\/ul>\n<p><a name=\"FAQ_.2F_Build_Issues\"><\/a><\/p>\n<h1><span class=\"mw-headline\">FAQ \/ Build Issues<\/span><\/h1>\n<p><a name=\"Error_ic_scan_start_not_found\"><\/a><\/p>\n<h2><span class=\"mw-headline\">Error ic_scan_start not found<\/span><\/h2>\n<p>If you get this error:<\/p>\n<pre>free# make\r\nWarning: Object directory not changed from original \/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\r\ncc -O2 -fno-strict-aliasing -pipe -g -DWITNESS -DINVARIANT_SUPPORT -DINVARIANTS -Werror -D_KERNEL -DKLD_MODULE -nostdinc -I-  -I\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/ -I. -I@ -I@\/contrib\/altq -I@\/..\/include -finline-limit=8000 -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99 -c \/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:104:42: net80211\/ieee80211_regdomain.h: No such file or directory\r\nIn file included from \/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:113:\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpivar.h:22:36: dev\/wpi\/ieee80211_amrr.h: No such file or directory\r\nIn file included from \/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:113:\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpivar.h:129: error: field `amn' has incomplete type\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpivar.h:154: error: field `amrr' has incomplete type\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_load_firmware':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:345: warning: assignment discards qualifiers from pointer target type\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_unload_firmware':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:488: warning: passing arg 1 of `firmware_put' discards qualifiers from pointer target type\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:539:2: #error \"Sorry, this driver is not yet ready for FreeBSD &lt; 7.0\"\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_attach':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:717: error: structure has no member named `ic_scan_start'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:718: error: structure has no member named `ic_scan_end'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:719: error: structure has no member named `ic_set_channel'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:720: error: structure has no member named `ic_scan_curchan'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:721: error: structure has no member named `ic_scan_mindwell'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_dma_contig_alloc':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:856: warning: implicit declaration of function `bus_get_dma_tag'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:856: warning: nested extern declaration of `bus_get_dma_tag'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:860: warning: passing arg 1 of `bus_dma_tag_create' makes pointer from integer without a cast\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_alloc_tx_ring':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:1180: warning: nested extern declaration of `bus_get_dma_tag'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:856: warning: redundant redeclaration of 'bus_get_dma_tag'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:856: warning: previous implicit declaration of 'bus_get_dma_tag' was here\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:1182: warning: passing arg 1 of `bus_dma_tag_create' makes pointer from integer without a cast\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_rx_intr':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:1822: error: too many arguments to function `ieee80211_input'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_scan':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2896: error: structure has no member named `ic_des_ssid'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2897: error: structure has no member named `ic_des_ssid'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2898: error: structure has no member named `ic_des_ssid'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2902: error: structure has no member named `ic_des_ssid'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2903: error: structure has no member named `ic_des_ssid'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2927: warning: passing arg 1 of `ieee80211_chan2mode' from incompatible pointer type\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2927: error: too few arguments to function `ieee80211_chan2mode'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:2961: error: structure has no member named `ic_des_ssid'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_config':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3098: error: `IEEE80211_M_WDS' undeclared (first use in this function)\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3098: error: (Each undeclared identifier is reported only once\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3098: error: for each function it appears in.)\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_iter_func':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3465: warning: implicit declaration of function `ieee80211_amrr_choose'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3465: warning: nested extern declaration of `ieee80211_amrr_choose'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_newassoc':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3476: warning: implicit declaration of function `ieee80211_amrr_node_init'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3476: warning: nested extern declaration of `ieee80211_amrr_node_init'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_read_eeprom_channels':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3571: error: structure has no member named `ic_nchans'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3579: error: structure has no member named `ic_ieee'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3584: error: structure has no member named `ic_ieee'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3600: error: structure has no member named `ic_ieee'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3611: error: structure has no member named `ic_nchans'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c: In function `wpi_ops':\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3938: warning: implicit declaration of function `ieee80211_scan_next'\r\n\/root\/20070923-freebsd-wpi\/sys\/modules\/wpi\/..\/..\/dev\/wpi\/if_wpi.c:3938: warning: nested extern declaration of `ieee80211_scan_next'\r\n*** Error code 1<\/pre>\n<p>Or something similar, it means your trying to compile the driver on FreeBSD 6.x. At present the driver is being developed for 7+ and when stable will be backported to 6.x.<\/p>\n<p><a name=\"When_will_the_driver_be_stable\"><\/a><\/p>\n<h2><span class=\"mw-headline\">When will the driver be stable<\/span><\/h2>\n<ul>\n<li><strong>Q: When will the driver be stable<\/strong><\/li>\n<li>A: It is! As of 2007\/12\/09 The driver is in RELENG_7<\/li>\n<\/ul>\n<p><a name=\"When_will_there_be_a_backport_to_6.x_.2F_When_will_it_be_available\"><\/a><\/p>\n<h2><span class=\"mw-headline\">When will there be a backport to 6.x \/ When will it be available<\/span><\/h2>\n<ul>\n<li><strong>Q: Will there be a backport of wpi to 6.x<\/strong><\/li>\n<li>A: Yes, When the driver becomes stable in -CURRENT &amp; 7.x<\/li>\n<li>A: The decision has been made not to backport this driver to 6.x &#8211; there&#8217;s just too much which has changed between 6 -&gt; 7<\/li>\n<\/ul>\n<ul>\n<li><strong>Q: When will the backport be available<\/strong><\/li>\n<li>A: As soon as I get the driver stable<\/li>\n<li>A: The backport has been cancelled.<\/li>\n<\/ul>\n<p><a name=\"Outstanding_issues\"><\/a><\/p>\n<h1><span class=\"mw-headline\">Outstanding issues<\/span><\/h1>\n<ul>\n<li><span style=\"text-decoration: line-through;\">B support missing after merging Sam&#8217;s patch<\/span>\u00a0&#8211; Missing flag<\/li>\n<li><span style=\"text-decoration: line-through;\">&#8216;bus_dmamem_alloc failed to align memory properly&#8217; occurs at driver load, seem to not affect the driver<\/span>, 4k is not 0x4000<\/li>\n<li><span style=\"text-decoration: line-through;\">Changing authmode on the interface causes a firmware error<\/span><\/li>\n<li>led method does nothing (at least on my laptop)<\/li>\n<li><span style=\"text-decoration: line-through;\">turning off the transmitter (hw switch) whilst scanning causes a timeout in the tx ring (seems not to affect the driver)<\/span>\u00a0&#8211; Fixed<\/li>\n<li>WPA authentication doesn&#8217;t seem to work:<\/li>\n<li>hostap mode not available<\/li>\n<li><span style=\"text-decoration: line-through;\">firmware error at driver startup with WPA enabled, could be a keying issue as in iwi<\/span>\u00a0&#8211; Fixed<\/li>\n<\/ul>\n<ul>\n<li>Device Detection often fails\n<ul>\n<li>This is due to bugs in the pci-pci bus not reporting the correct memory range. Work to fix this is ongoing but slow.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0 Last Updated:\u00a020080408003159 This page documents the current state of the WPI driver for\u00a0FreeBSD, the driver supports the Intel 3945ABG Wireless driver.\u00a0Note: As of 2007\/11\/09 the wpi driver is in 8.0-Current, aka FreeBSD src CVS. AND linked to the build. As of 2007\/12\/8 wpi is also in RELENG_7. Note: If you have the Intel 4965AGN<a href=\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\"> <font size=-2>[..more..]<\/font><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[32,33,30,28,29,31],"class_list":["post-50","post","type-post","status-publish","format-standard","hentry","category-freebsd","tag-3945abg","tag-4965abgn","tag-30","tag-intel","tag-wireless","tag-wpa"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>wpi - ClearChain<\/title>\n<meta name=\"description\" content=\"\u00a0 Last Updated:\u00a020080408003159 This page documents the current state of the WPI driver for\u00a0FreeBSD, the driver supports the Intel 3945ABG Wireless\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin Close\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\"},\"author\":{\"name\":\"Benjamin Close\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/aef6faa2c32188398139db9270ca1c98\"},\"headline\":\"wpi\",\"datePublished\":\"2008-11-07T04:01:16+00:00\",\"dateModified\":\"2008-11-07T06:47:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\"},\"wordCount\":1035,\"commentCount\":6,\"keywords\":[\"3945ABG\",\"4965ABGN\",\"802.11\",\"intel\",\"wireless\",\"WPA\"],\"articleSection\":[\"FreeBSD\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.clearchain.com\/blog\/posts\/wpi#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\",\"url\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\",\"name\":\"wpi - ClearChain\",\"isPartOf\":{\"@id\":\"https:\/\/www.clearchain.com\/blog\/#website\"},\"datePublished\":\"2008-11-07T04:01:16+00:00\",\"dateModified\":\"2008-11-07T06:47:59+00:00\",\"author\":{\"@id\":\"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/aef6faa2c32188398139db9270ca1c98\"},\"description\":\"\u00a0 Last Updated:\u00a020080408003159 This page documents the current state of the WPI driver for\u00a0FreeBSD, the driver supports the Intel 3945ABG Wireless\",\"breadcrumb\":{\"@id\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.clearchain.com\/blog\/posts\/wpi\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/posts\/wpi#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.clearchain.com\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"wpi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/#website\",\"url\":\"https:\/\/www.clearchain.com\/blog\/\",\"name\":\"ClearChain\",\"description\":\"-= Daily Happenings =-\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.clearchain.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/aef6faa2c32188398139db9270ca1c98\",\"name\":\"Benjamin Close\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/19dca0aa372edfa901b93c556dfda2e78ad4434558fe4d139598e086315d714a?s=96&d=mm&r=pg\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/19dca0aa372edfa901b93c556dfda2e78ad4434558fe4d139598e086315d714a?s=96&d=mm&r=pg\",\"caption\":\"Benjamin Close\"},\"sameAs\":[\"http:\/\/www.clearchain.com\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"wpi - ClearChain","description":"\u00a0 Last Updated:\u00a020080408003159 This page documents the current state of the WPI driver for\u00a0FreeBSD, the driver supports the Intel 3945ABG Wireless","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.clearchain.com\/blog\/posts\/wpi","twitter_misc":{"Written by":"Benjamin Close","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.clearchain.com\/blog\/posts\/wpi#article","isPartOf":{"@id":"https:\/\/www.clearchain.com\/blog\/posts\/wpi"},"author":{"name":"Benjamin Close","@id":"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/aef6faa2c32188398139db9270ca1c98"},"headline":"wpi","datePublished":"2008-11-07T04:01:16+00:00","dateModified":"2008-11-07T06:47:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.clearchain.com\/blog\/posts\/wpi"},"wordCount":1035,"commentCount":6,"keywords":["3945ABG","4965ABGN","802.11","intel","wireless","WPA"],"articleSection":["FreeBSD"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.clearchain.com\/blog\/posts\/wpi#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.clearchain.com\/blog\/posts\/wpi","url":"https:\/\/www.clearchain.com\/blog\/posts\/wpi","name":"wpi - ClearChain","isPartOf":{"@id":"https:\/\/www.clearchain.com\/blog\/#website"},"datePublished":"2008-11-07T04:01:16+00:00","dateModified":"2008-11-07T06:47:59+00:00","author":{"@id":"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/aef6faa2c32188398139db9270ca1c98"},"description":"\u00a0 Last Updated:\u00a020080408003159 This page documents the current state of the WPI driver for\u00a0FreeBSD, the driver supports the Intel 3945ABG Wireless","breadcrumb":{"@id":"https:\/\/www.clearchain.com\/blog\/posts\/wpi#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.clearchain.com\/blog\/posts\/wpi"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.clearchain.com\/blog\/posts\/wpi#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.clearchain.com\/blog"},{"@type":"ListItem","position":2,"name":"wpi"}]},{"@type":"WebSite","@id":"https:\/\/www.clearchain.com\/blog\/#website","url":"https:\/\/www.clearchain.com\/blog\/","name":"ClearChain","description":"-= Daily Happenings =-","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.clearchain.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/aef6faa2c32188398139db9270ca1c98","name":"Benjamin Close","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.clearchain.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/19dca0aa372edfa901b93c556dfda2e78ad4434558fe4d139598e086315d714a?s=96&d=mm&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/19dca0aa372edfa901b93c556dfda2e78ad4434558fe4d139598e086315d714a?s=96&d=mm&r=pg","caption":"Benjamin Close"},"sameAs":["http:\/\/www.clearchain.com"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/posts\/50","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/comments?post=50"}],"version-history":[{"count":3,"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/posts\/50\/revisions"}],"predecessor-version":[{"id":76,"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/posts\/50\/revisions\/76"}],"wp:attachment":[{"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/media?parent=50"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/categories?post=50"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.clearchain.com\/blog\/wp-json\/wp\/v2\/tags?post=50"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}