Hi! I've been using Ubuntu for the past year so I've gotten used to the idea of command line installing, but I seem to have problems when I try to install the IPW2200 drivers from sourceforge. I was going to dedicate a detailed breakdown of what I have done so far, but I realise that somebody in the future may have this problem, so what I am asking is simple... Can someone provide me with a detailed walkthrough to getting the IPW2200 card up and running in BT3?

When I first installed BT, I got the driver link from the wiki as well as the patch to enable injecting. I then realised that the patch is incompatable with the version of the ipw driver I had, so I reverted to the version in question. I patched it successfully but when I tried to make it, I got an error message telling me that I need to download and install the ipw firmware headers (ipw2200-fw-3.0.tgz).... which I did successfully.

When I tried to make the ipw driver this time around (making sure to link up the IEEE80211_INC.. I got a dump of error messages like this.

Code:
make -C /lib/modules/2.6.21.5/build M=/root/Desktop/ipw2200-1.1.4 MODVERDIR=/root/Desktop/ipw2200-1.1.4/tmp/.tmp_versions modules
make[1]: Entering directory `/usr/src/linux-2.6.21.5'
  CC [M]  /root/Desktop/ipw2200-1.1.4/ipw2200.o
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_led_link_on':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:866: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_led_link_off':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:909: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function '__ipw_led_activity_on':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:947: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:949: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:952: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:954: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_led_shutdown':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:1143: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:1144: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:1145: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_radio_kill_sw':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:1827: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:1835: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:1837: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_irq_tasklet':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:2106: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:2108: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_gather_stats':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:4363: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_rx_notification':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:4490: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:4754: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:4793: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_adhoc_check':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:6104: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_request_scan_helper':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:6452: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_associate':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:7641: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_rf_kill':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10706: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_link_up':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10749: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10758: warning: passing argument 2 of 'queue_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_link_down':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10777: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10778: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10779: warning: passing argument 1 of 'cancel_delayed_work' from incompatible pointer type
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10809:56: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_setup_deferred_work':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10809: error: 'INIT_WORK' undeclared (first use in this function)
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10809: error: (Each undeclared identifier is reported only once
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10809: error: for each function it appears in.)
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10810:52: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10811:58: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10812:57: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10813:64: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10814:64: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10815:48: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10816:56: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10817:60: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10819:45: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10821:53: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10823:48: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10824:72: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10825:42: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10826:54: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10827:66: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10828:70: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10830:9: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10832:9: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10834:9: error: macro "INIT_WORK" passed 3 arguments, but takes just 2
/root/Desktop/ipw2200-1.1.4/ipw2200.c:10836:52: error: macro "INIT_WORK" passed 3 arguments, but takes just 2

/root/Desktop/ipw2200-1.1.4/ipw2200.c: In function 'ipw_pci_resume':
/root/Desktop/ipw2200-1.1.4/ipw2200.c:11941: warning: ignoring return value of 'pci_enable_device', declared with attribute warn_unused_result
make[2]: *** [/root/Desktop/ipw2200-1.1.4/ipw2200.o] Error 1
make[1]: *** [_module_/root/Desktop/ipw2200-1.1.4] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.21.5'
make: *** [modules] Error 2
I'm willing to reinstall the OS and try again, but I'd just like to know where I went wrong, and also have somebody create a walkthrough for anyone else. (I'm even willing to do this once I'm up and running!)

Thanking you all an advance

Richey