# wireless with ipw2100

## siku

Hello good  people of gentoo,

I installed gentoo using the universal live cd that I had with me which is 2004.3. So my portage tree was not the latest one. I emerged ipw2100 with kernel 2.6.9 r1 (using the appropriate modifications on the kernel). The following command got my wireless at eth0 up and running:

 *Quote:*   

> modprobe ipw2100
> 
> iwlist eth0 scan
> 
> iwconfig eth0 essid "my network name"

 

Since I had my network working, I updated my portage tree. I then emerged kernel 2.6.10-r6 (the latest version that was avalable), compiled the kernel. Then I did

 *Quote:*   

>  emerge --fetchonly ipw2100 

 

Then I rebooted into the new kernel and emerged my downloaded ipw2100.

not modprobe ipw2100 works.

 *Quote:*   

> iwlist eth0 scan 

 

tells me eth0 cannot be scanned. Apparently eth0 does not exist or someting like that.

So I thought my previos kernel might stil work. So i rebooted into 2.6.9 and emerged the new ipw2100 that I had. My wirless gave me the same message when I did iwlist eth0 scan.

what seems to be the problem here? is it that there is a file that I need to modify?

thanks

----------

## pientra

Well, there are some specific requirements for getting ipw2100 up and running. First you need these packages:

```
# net-misc/dhcpcd

# net-wireless/hostap-driver

# net-wireless/ipw2100

# net-wireless/wireless-tools

# intel wlan driver for WindowsXP

# ndiswrapper
```

And then you need to add support for the Cryptographic API in your kernel, as the ipw2100 driver needs it for WEP support. It can be found here:

```
 Cryptographic options  --->

       [*] Cryptographic API

               <*>   ARC4 cipher algorithm

               <*>   CRC32c CRC algorithm
```

And then you should be able to modprobe it after a reboot.

   If it works you can add "ipw2100" in /etc/modules.autoload.d/kernel-<kernel version> to autoload the module.

----------

## siku

all those are installed except for ndiswrapper.

why would i need ndiswrapper and wlan driver for windows xp though?

Isnt ndiswrapper and ipw2100 different methods of connecting to wireless.?

----------

## pientra

Well I don't think you HAVE to use it. The first tool that was known to emulate the NDIS structure of the win-drivers for the Intel 2100 Pro was the tool 'ndiswrapper'. But you can use whatever you like afaik.

If they are installed, try:

```
/etc/init.d/net.eth0
```

Or:

```
ifconfig eth0

dhcpcd eth0
```

Do you have WEP encryption on your router? If yes, then you need to use the command iwconfig to specify it. Read more at:

http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#wireless

----------

## siku

 *Quote:*   

> iwconfig eth0
> 
> eth0   No such device
> 
> iwlist eth0 scan
> ...

 

Those are the messages I get with trying to start my wireless device.

what is the [!!] trying to say that there was an error.

is there a conflict somewhere?

----------

## pientra

Try:

```
# modprobe ipw2100

# ifconfig eth0 up

# dhcpcd eth0
```

And then use iwconfig to specify your wireless settings.

If you don't use dhcpcd then adjust the DHCP client.

----------

## siku

That didn't work.

But after trying to do modprobe ipw2100  and iwconfig eth0. I did dmesg.

it said that the firmware had failed to load. 

I went to ipw2100.sourceforge.net

and tried the manual install they had -- didn't work,

There is a lot of differences in the directories where the manual install copies things to and where portage sends things too.

is there any way to load the firmwares? or something like that.

or is there a bug in the firmware?

----------

## siku

hellooooooooooo,,

anyone going to lend a helping hand.

----------

## studguy1

Have you enabled all the kernel options properly.  CONFIG_FW_LOADER and hotplug support

Also can you post the dmesg error and lspci/lshw output.

----------

## siku

Here is the output of my lspci and dmesg . I cut out the portion of dmesg that didn't seem important here.

 *Quote:*   

> #lspci 
> 
> 0000:00:00.0 Host bridge: Intel Corp. 82855PM Processor to I/O Controller (rev 03)
> 
> 0000:00:01.0 PCI bridge: Intel Corp. 82855PM Processor to AGP Controller (rev 03)
> ...

 

----------

## studguy1

Your firmware is failing to load.

Check the following

1. Kernel Options. make sure you have these enabled in the kernel \.

(CONFIG_FW_LOADER)

```

Device Drivers ->

                Generic Driver Options ->

                        <*> Hotplug firmware loading support

```

```

Device Drivers ->

                Networking support ->

                        Wireless LAN (non-hamradio) ->

                               [*] Wireless LAN drivers (non-hamradio) & Wireless Extensions

```

```

Cryptographic options  ->

  <M> ARC4 cipher algorithm

  <M> Michael MIC keyed digest algorithm

  <M> CRC32c CRC algorithm
```

If any of the above is not enabled recompile the kernel (preferably start with a clean one) and reboot into the new kernel.

2. firmware file

/usr/lib/hotplug/firmware/ipw2100-1.3.fw exists and is world readable. 

3.  You dont need ndiswrapper. Make sure that ndiswrapper is not set to autoload (comment it out in /etc/modules.autoload.d/kernel-2.6), run modules-update and reboot if it is loading automatically at boot.

4. If nothing above works remove the ipw2100 from /etc/modules.autoload.d/kernel-2.6 and try loading it manually after the bootup.

----------

## siku

one quick one -- how to load a module?

 :Exclamation: 

----------

## studguy1

Load a Module 

```
 modprobe ipw2100 
```

Unload a Module 

```
 modprobe -r ipw2100 
```

Obviously you must be root to run the commands

the file

```
 /etc/modules.autoload.d/kernel-2.6
```

  has the list of modules loaded at boot

----------

## siku

I am using gentoo-dev-sources

kernel 2.6.11-r4 and the hotplug option is not there.

 *Quote:*   

> 
> 
> [*] Select only drivers that dont need compile time external firmware
> 
> [*] Prevent firmware from being built
> ...

 

Do I have to deselect the first two options to get a [ ] for the Hotplug option?

Also  in terms of  /usr/lib/hotplug/firmware/ipw2100-1.3.fw

I do not seem to have the /usr/lib/hotplug directory.

And this is my modules.autoload.d/kernel-2.6 file.

 *Quote:*   

> 
> 
> # /etc/modules.autoload.d/kernel-2.6:  kernel modules to load when system boots.
> 
> # $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/modules.autoload.d/kernel-2.6,v 1.1 2003/07/16 18:13:45 azarah Exp $
> ...

 

so what do I do

----------

## studguy1

 *Quote:*   

> I am using gentoo-dev-sources kernel 2.6.11-r4 and the hotplug option is not there. 

 

It is enabled by a dependency. which means that you have selected some component which requires hotplug support. So you cannot disable hotplug unless you remove the dependent application. Just to be sure

```
cat /usr/src/liux/.config|grep FW_LOADER 
```

should give 

```
CONFIG_FW_LOADER=y
```

 *Quote:*   

> I do not seem to have the /usr/lib/hotplug directory. 

 

you have not installed hotplug. 

```
emerge hotplug
```

Download firmware image from here  http://ipw2100.sourceforge.net/firmware.php?i_agree_to_the_license=yes&f=ipw2100-fw-1.3.tgz and extract all the files in the /usr/lib/hotplug/firmware/ directory

Once you have recompiled the kernel do 

```
emerge ipw2100
```

```
env-update
```

```
modules-update
```

and then load the module

```
modprobe ipw2100
```

if it loads properly add 

```
ipw2100
```

 on a separate line in /etc/modules.autoload.d/kernel-2.6 

you also need to create a new network connection eth1

```
cd /etc/init.d

ln -s net.eth0 net.eth1

rc-update add net.eth1 default

```

and also update 

```
 /etc/conf.d/net 
```

----------

## siku

i did all that,

I booted into kernel 2.6.9 r4 kernel and did all that.

Untarred my firmware file into the specified directory. but it didnt work. Did a dmesg and found that it was looking for the 1.2 version of the firmware and it looked like even though I had updated ipw2100 it was still using an older version of it.

So I untarred 1.2 version of the firmware in that directory and rebooted into my new kernel as a last resort , and suddenly 

IT WORKED.

I don' t quite know which step made it work but it did work. so thats all good

thanks everyone

----------

## studguy1

when you emerge ipw2100 it installs for the kernel which is pointed to by /usr/src/linux. If you boot into another kernel the new drivers wont be there.

----------

## g3n

I've the same problem, when i do a iwconfig my eth1 doesnt appear...

I have an eth0 interface (wired lan) and i'm running a 2.6.10 kernel.

I've emerged everything you said in the posts and i'm running the modules automatically.

My dmesg only said 

ipw2100: Intel(R) PRO/Wireless 2100 Network Driver, 1.0.5

ipw2100: Copyright(c) 2003-2004 Intel Corporation

hostap_crypt: registered algorith 'NULL'

ieee80211_crypt: registered algorith 'NULL'

(with other algorithms for hostap and ieee80211 that i'm autoloading)

The main problem is that in iwconfig the eth1 device doesn't appear, not even a wlan0 device. Whatother info can i provide?

Do i need the baselayout-1.11? my system is setted to only accept x86 packages.

When trying to load /etc/init.d/net.eth1 i get:

SIOCSIFADDR: No such device.

eth1: unknown interfafce: No such device.

I'm not using ndiswrapper because i don't how how to configure it or what to do with it.

BTW, i don't see my card in lspci, and it's working in windows.

----------

## studguy1

 *Quote:*   

> BTW, i don't see my card in lspci, and it's working in windows

  Can you post the output of lspci /lshw . 

 *Quote:*   

> eth1: unknown interfafce: No such device. 

  Are you able to load/unload ipw2100 module. Does lsmod show ipw2100 ?

 *Quote:*   

> (with other algorithms for hostap and ieee80211 that i'm autoloading) 

  The new versions of ipw2100 do not require hostap.

 *Quote:*   

> I'm not using ndiswrapper because i don't how how to configure it or what to do with it. 

  You dont need ndiswrapper. Just forget such a thing exists.

----------

## g3n

lspci /lshw isn't a  recognized parameter.

output of lspci and lsmod

```
0000:00:00.0 Host bridge: Intel Corporation 82855PM Processor to I/O Controller (rev 21)

0000:00:01.0 PCI bridge: Intel Corporation 82855PM Processor to AGP Controller (rev 21)

0000:00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03)

0000:00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03)

0000:00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03)

0000:00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03)

0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83)

0000:00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 03)

0000:00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)

0000:00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03)

0000:00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)

0000:00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03)

0000:01:00.0 VGA compatible controller: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]

0000:02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5788 Gigabit Ethernet (rev 03)

0000:02:01.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)

0000:02:01.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)

0000:02:01.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 04)

0000:02:02.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)

Module                  Size  Used by

usbmouse                2816  0

yenta_socket           14208  0

pcmcia_core            32268  1 yenta_socket

tg3                    73476  0

radeonfb               44904  0

i2c_algo_bit            7112  1 radeonfb

i2c_core               11984  2 radeonfb,i2c_algo_bit

snd_intel8x0           20224  0

snd_ac97_codec         60344  1 snd_intel8x0

snd_pcm                70344  2 snd_intel8x0,snd_ac97_codec

snd_timer              16388  1 snd_pcm

snd                    37828  4 snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer

soundcore               4192  1 snd

snd_page_alloc          4868  2 snd_intel8x0,snd_pcm

intel_agp              13852  1

agpgart                19048  1 intel_agp

evdev                   5248  0

rtc                     7416  0

ieee80211_crypt_wep     2372  0

ieee80211_crypt_ccmp     4868  0

ieee80211_crypt_tkip     7556  0

hostap_crypt_tkip       9088  0

hostap_crypt_ccmp      13248  0

hostap_crypt_wep        3712  0

hostap_plx             47704  0

hostap_pci             45712  0

hostap                 98632  5 hostap_crypt_tkip,hostap_crypt_ccmp,hostap_crypt_wep,hostap_plx,hostap_pci

ipw2100               130756  0

ieee80211              33252  1 ipw2100

ieee80211_crypt         2312  5 ieee80211_crypt_wep,ieee80211_crypt_ccmp,ieee80211_crypt_tkip,ipw2100,ieee80211

ide_cd                 32836  0

sr_mod                 11876  0

cdrom                  32988  2 ide_cd,sr_mod

ohci_hcd               15752  0

uhci_hcd               25232  0

usb_storage            88976  0

scsi_mod               52576  2 sr_mod,usb_storage

usbhid                 25728  0

ehci_hcd               23044  0

usbcore                

80632  7 usbmouse,ohci_hcd,uhci_hcd,usb_storage,usbhid,ehci_hcd

```

I'm uninstalling hostap right now

----------

## studguy1

lshw is another software like lspci but gives a more detailed output. 

You dont have ipw2100 wireless card. You have ipw2200 which has different drivers. remove the ipw2100 drivers (atleast remove them from autloading and reboot) and do

```
emerge ipw2200

emerge ipw2200-firmware

```

----------

## g3n

tnx, my mistake, i was watching the online specification instead of the outputs, i think it's now running  :Smile: 

----------

