# Anyone have ipw2200 and suspend2 working together? [SOLVED]

## certocivitas

I have had no luck getting ipw2200 and suspend2 working together. Here are a list of the kernels i've tried:

gentoo-sources-2.6.12-r6

gentoo-sources-2.6.12-r9

suspend2-sources-2.6.12-r6

nitro-sources-2.6.12-r5 (tried with ipw2200 compiled in kernel and with the package)

Before posting specific error messages I thought I'd see if anyone has even got a system working with both ipw2200 and suspend2.Last edited by certocivitas on Tue Sep 06, 2005 7:34 pm; edited 1 time in total

----------

## ribx

jep i have both running w/o any problems since i use swsusp2. currently i'm running

```
notebook ~ # uname -a

Linux notebook 2.6.12-suspend2-r1 #8 Thu Jul 7 17:44:59 CEST 2005 i686 Intel(R) Pentium(R) M processor 1.60GHz GenuineIntel GNU/Linux

```

with

```
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.0.6

ipw2200: Copyright(c) 2003-2004 Intel Corporation

```

----------

## certocivitas

Ok, I'll give rev. 1 a try later today.

----------

## certocivitas

Well I got it working with 2.6.12-suspend2-r6. I had to un-emerge ieee80211 and ipw2200 and delete /lib/modules/2.6.12-suspend2-r6/net/wireless/ipw2200.ko before recompiling the kernel and emerging the packages. Thanks for the help ribx.

----------

## kortec

certocivitas, i'm having the same problem (same kernel, etc.) but your solution didn't work for me. The .ko files don't exist for me where you said they were, and while the 80211 package compiles cleanly (1.0.3-r1), the ipw2200 drivers (1.0.6-r2) break. The error starts at "create_workqueue undeclared", i think, though this might just be something to be ignored. did you do anything else to get this working, or have this problem and figure a work around? please let me know.

----------

## certocivitas

If you have never successfully emerged ipw2200 with the suspend2 kernel the file will not exist. It was there because I had emerged ipw2200 with the 2.6.12-suspend2-r6 kernel previously. In my case that was because I was testing things to find out what part of the kernel was conflicting with the ipw2200 module and I verified that it was suspend2.

Here is a more specific list of steps I went through to get ipw2200 working with suspend2. They may not all be needed but I'll list everything I did just to be clear. This is a trimmed down list of everything  :Laughing:  Lots of time was wasted repeating stuff.

1. Compiled the kernel without suspend2.

2. Rebooted with the new kernel.

3. Emerged ieee80211 ipw2200.

3. Modprobed ipw2200 and got wireless networking up.

4. Unemerged ieee8011 and ipw2200

5. Recompiled the kernel with suspend2 

6. Rebooted with the new kernel.

7. Deleted "/lib/modules/2.6.12-suspend2-r6/net/wireless/ipw2200.ko". (it's just the module file from the first emerge)

8. Emerged ieee80211 ipw2200.

9. Modprobed ipw2200 and got wireless networking up again.

The emerging and unemerging of ieee80211 may not be needed. The rebooting should not be needed either but it made me feel better.

Could you post a copy of the error section of your ipw2200 emerge? Also, have you gotten ipw2200 working without suspend2?

----------

## certocivitas

Oh, and I'm using these versions of ipw2200 and ieee80211:

 *Quote:*   

> net-wireless/ieee80211-1.0.3
> 
> net-wireless/ipw2200-1.0.6

 

Don't think the fact that your using the revisions should be a problem but they are soft masked. As for the ieee80211 errors; I get those even with a successful emerge so you can ignore that part. Its the errors after that we are concerned with I think.

----------

## kortec

Not to ask too obvious a question, but are you using the gentoo-sources with manually patched with suspend2, or the suspend2 kernel that's on portage? What I was doing was just compiling the suspend2 kernel, and then trying to emerge ipw2200 against it, without compiling them under the non-suspend2 sources, which is kind of what it looks like you're doing. (Thank you for replying to this, by the way. Laptops with out WiFi are sort of lame.   :Smile:  )

----------

## certocivitas

I'm using the suspend2 kernel.

----------

## kortec

Sorry, didn't see you asking for my emerge output. So, when I compile ieee80211 against the suspend2 kernel, everyone's happy, but I get this from ipw2200:

```

Calculating dependencies ...done!

>>> emerge (1 of 1) net-wireless/ipw2200-1.0.6-r2 to /

>>> md5 files   ;-) ipw2200-1.0.4.ebuild

>>> md5 files   ;-) ipw2200-1.0.3.ebuild

>>> md5 files   ;-) ipw2200-1.0.6-r1.ebuild

>>> md5 files   ;-) ipw2200-1.0.1.ebuild

>>> md5 files   ;-) ipw2200-1.0.5.ebuild

>>> md5 files   ;-) ipw2200-1.0.6.ebuild

>>> md5 files   ;-) ipw2200-1.0.6-r2.ebuild

>>> md5 files   ;-) files/ipw2200-1.0.3-suspend2.patch

>>> md5 files   ;-) files/digest-ipw2200-1.0.3

>>> md5 files   ;-) files/digest-ipw2200-1.0.4

>>> md5 files   ;-) files/ipw2200-1.0.1-suspend2.patch

>>> md5 files   ;-) files/digest-ipw2200-1.0.1

>>> md5 files   ;-) files/ipw2200-1.0.1-is_multicast_ether_addr.patch

>>> md5 files   ;-) files/ipw2200-1.0.3-is_multicast_ether_addr.patch

>>> md5 files   ;-) files/ipw2200-1.0.4-is_multicast_ether_addr.patch

>>> md5 files   ;-) files/digest-ipw2200-1.0.5

>>> md5 files   ;-) files/digest-ipw2200-1.0.6

>>> md5 files   ;-) files/digest-ipw2200-1.0.6-r1

>>> md5 files   ;-) files/ipw2200-1.0.6-hwcrypt-wpa-fix4.patch

>>> md5 files   ;-) files/ipw2200-1.0.6-suspend2.patch

>>> md5 files   ;-) files/digest-ipw2200-1.0.6-r2

>>> md5 files   ;-) files/ipw2200-1.0.6-broadcast.patch

>>> md5 src_uri ;-) ipw2200-1.0.6.tgz

 * Determining the location of the kernel source code

 * Found kernel source directory:

 *     /usr/src/linux

 * Found sources for kernel version:

 *     2.6.12-suspend2-r6

 * Checking for suitable kernel configuration options

>>> Unpacking source...

>>> Unpacking ipw2200-1.0.6.tgz to /var/tmp/portage/ipw2200-1.0.6-r2/work

 * Applying ipw2200-1.0.6-hwcrypt-wpa-fix4.patch ...                                                                                                                     [ ok ] * Applying ipw2200-1.0.6-suspend2.patch ...                                                                                                                             [ ok ] * Applying ipw2200-1.0.6-broadcast.patch ...                                                                                                                            [ ok ]>>> Source unpacked.

 *

 * You may safely ignore any errors from compilation that contain

 * warnings about undefined references to the ieee80211 subsystem.

 *

 * Preparing ipw2200 module

mkdir -p /var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/tmp/.tmp_versions

cp /usr/include/*.mod /var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/tmp/.tmp_versions

cp: cannot stat `/usr/include/*.mod': No such file or directory

make: [modules] Error 1 (ignored)

make -C /usr/src/linux M=/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6 MODVERDIR=/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/tmp/.tmp_versions modules

make[1]: Entering directory `/usr/src/linux-2.6.12-suspend2-r6'

  CC [M]  /var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.o

/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.c:10260:52: macro "create_workqueue" requires 2 arguments, but only 1 given

/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.c: In function `ipw_setup_deferred_work':

/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.c:10260: error: `create_workqueue' undeclared (first use in this function)

/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.c:10260: error: (Each undeclared identifier is reported only once

/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.c:10260: error: for each function it appears in.)

make[2]: *** [/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.o] Error 1

make[1]: *** [_module_/var/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.12-suspend2-r6'

make: *** [modules] Error 2

!!! ERROR: net-wireless/ipw2200-1.0.6-r2 failed.

!!! Function linux-mod_src_compile, Line 460, Exitcode 2

!!! Unable to make                                  KSRC=/usr/src/linux KSRC_OUTPUT=/usr/src/linux IEEE80211_INC=/usr/include all.

!!! If you need support, post the topmost build error, NOT this status message.

galileo kortec #

```

Hope that opens a door or two.

----------

## ribx

i think i had the same error.

try:

```
emerge -C ipw2200 ieee80211 && emerge ipw2200
```

that solved my problem (i'm still not sure, if i had the same!)

----------

## kortec

Gave it a shot, still no joy. Thanks very much, though, for putting in.

----------

## kortec

w00t! ran make clean as you sugguested on IRC and works like a dream. Thanks!

(for anyone reading this post who was having the same problem, I booted in to the non-suspend2/working kernel, went to the source dir for the suspend2 kernel, ran

```

make clean

make && make modules_install

```

and then booted in to the recompiled suspend2 kernel. I didn't change anything in the kernel at all, but remerging ipw2200 against the new kernel worked fine.)

----------

## certocivitas

Hey, glad to hear that worked. It was more or less that last idea I had so its a good thing it panned out   :Laughing: 

----------

