This page describes installation procedure of ipw2100 driver (http://ipw2100.sourceforge.net/) on Debian GNU/Linux 3.0 (woody) running Linux 2.4.26.
On my IBM ThinkPad X31, lspci
shows the following PCI devices:
00:00.0 Host bridge: Intel Corp.: Unknown device 3340 (rev 03)
00:01.0 PCI bridge: Intel Corp.: Unknown device 3341 (rev 03)
00:1d.0 USB Controller: Intel Corp.: Unknown device 24c2 (rev 01)
00:1d.1 USB Controller: Intel Corp.: Unknown device 24c4 (rev 01)
00:1d.2 USB Controller: Intel Corp.: Unknown device 24c7 (rev 01)
00:1d.7 USB Controller: Intel Corp.: Unknown device 24cd (rev 01)
00:1e.0 PCI bridge: Intel Corp. 82820 820 (Camino 2) Chipset PCI (-M) (rev 81)
00:1f.0 ISA bridge: Intel Corp.: Unknown device 24cc (rev 01)
00:1f.1 IDE interface: Intel Corp.: Unknown device 24ca (rev 01)
00:1f.3 SMBus: Intel Corp.: Unknown device 24c3 (rev 01)
00:1f.5 Multimedia audio controller: Intel Corp.: Unknown device 24c5 (rev 01)
00:1f.6 Modem: Intel Corp.: Unknown device 24c6 (rev 01)
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M6 LY
02:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev aa)
02:00.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev aa)
02:00.2 FireWire (IEEE 1394): Ricoh Co Ltd: Unknown device 0552 (rev 02)
02:01.0 Ethernet controller: Intel Corp.: Unknown device 101e (rev 03)
02:02.0 Network controller: Intel Corp.: Unknown device 1043 (rev 04)
The last line indicates a Centrio-based 802.11b wireless network interfaces (compatible with Intel PRO/Wireless 2100?).
#
# Cryptographic options
#
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ARC4=m
#
# Library routines
#
CONFIG_CRC32=m
# cd /usr/src/linux
# make oldconfig
# make dep clean bzlilo modules modules_install
# tar xzvf ipw2100-0.54.tar.gz
# cd ipw2100-0.54
# make -DCONFIG_IPW2100_LEGACY_FW_LOAD=y install
#!/bin/sh
#
# Start/stop script for ipw2100 wireless network driver.
# Copyright (c) 2003, Hiroyuki Ohsaki.
# All rights reserved.
#
# $Id: index.pod,v 1.1 2005/10/24 13:08:51 oosaki Exp $
#
start_iface()
{
echo "Starting network interface $iface..."
modprobe -s $module $module_opts
if [ -n "$key" ]; then
iwconfig $iface key "$key"
fi
iwconfig $iface essid "$ESSID"
if pump -i $iface; then
pump -i $iface --status
else
stop_iface
fi
}
stop_iface()
{
echo "Stopping network interface eth0..."
ifconfig $iface down
rmmod -s $module
}
PATH=/usr/bin:/bin:/usr/sbin:/sbin
# import ESSID/WEP setting from pcmcia-cs package
ADDRESS='0,0,0,0'
. /etc/pcmcia/wireless.opts
module=ipw2100
module_opts='firmware=/usr/local/etc/firmware/ipw2100-1.3.fw'
iface=eth0
# convert WEP key in XX:XX:XX:XX:XX format
case "$KEY" in
s:*)
key=`echo -n "$KEY" | od -t x1 | head -1 | cut -d ' ' -f 4- | tr ' ' ':'`
break
;;
[0-9a-fA-F]*)
key=`echo "$KEY" | sed -e 's/\(..\)/\1:/g' -e 's/:$//'`
break
;;
esac
# force to kill DHCP client
killall -9 pump
if ! ifconfig | grep "^$iface" >/dev/null; then
start_iface
else
stop_iface
fi
</pre>
Hey! The above document had some coding errors, which are explained below:
=over without closing =back