WiFi Compaq Armada 1510
Forum: Networking
Topic: WiFi Compaq Armada 1510
started by: mengao
Posted by mengao on Nov. 24 2006,17:41
I'm having considerable problems to install a WiFi PCMCIA card on an old laptop.
The facts: I had an old Compaq Armada "collecting dust" and decided to install DSL. More as a challenge to see how far I can get with DSL, WLAN, ... This laptop is an 160 MHz Pentium I PC, with a 1GB disk, and 16 MB of RAM. However no wireless LAN, well, ..., not even LAN, just an analog modem. The WLAN card is called "X-Micro", according to the driver a "Realtek RTL8180L 802.11b MAC" This is what dmesg tells me after booting:
Code Sample | Linux version 2.4.26 (root@Knoppix) (gcc version 2.95.4 20011002 (Debian prerelease)) #1 SMP Sa Apr 17 19:33:42 CEST 2004 BIOS-provided physical RAM map: BIOS-e801: 0000000000000000 - 000000000009f000 (usable) BIOS-e801: 0000000000100000 - 0000000001000000 (usable) 0MB HIGHMEM available. 16MB LOWMEM available. On node 0 totalpages: 4096 zone(0): 4096 pages. zone(1): 0 pages. zone(2): 0 pages. DMI not present. ACPI: Unable to locate RSDP Kernel command line: BOOT_IMAGE=Linux ro root=302 hda=scsi hdb=scsi hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi hdh=scsi apm=power-off nomce noapic ide_setup: hda=scsi ide_setup: hdb=scsi ide_setup: hdc=scsi ide_setup: hdd=scsi ide_setup: hde=scsi ide_setup: hdf=scsi ide_setup: hdg=scsi ide_setup: hdh=scsi No local APIC present or hardware disabled Initializing CPU#0 Detected 116.881 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 232.65 BogoMIPS Memory: 13260k/16384k available (1371k kernel code, 2736k reserved, 561k data, 140k init, 0k highmem) Dentry cache hash table entries: 2048 (order: 2, 16384 bytes) Inode cache hash table entries: 1024 (order: 1, 8192 bytes) Mount cache hash table entries: 512 (order: 0, 4096 bytes) Buffer cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 4096 (order: 2, 16384 bytes) Intel Pentium with F0 0F bug - workaround enabled. CPU: After generic, caps: 000001bf 00000000 00000000 00000000 CPU: Common caps: 000001bf 00000000 00000000 00000000 Checking 'hlt' instruction... OK. Checking for popad bug... OK. POSIX conformance testing by UNIFIX mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: none CPU: After generic, caps: 000001bf 00000000 00000000 00000000 CPU: Common caps: 000001bf 00000000 00000000 00000000 CPU0: Intel Pentium 75 - 200 stepping 0c per-CPU timeslice cutoff: 161.00 usecs. SMP motherboard not detected. Local APIC not detected. Using dummy APIC emulation. Waiting on wait_init_idle (map = 0x0) All processors have done init_idle ACPI: Subsystem revision 20040326 ACPI: Interpreter disabled. PCI: PCI BIOS revision 2.10 entry at 0xf73c3, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: ACPI tables contain no PCI IRQ routing entries PCI: Probing PCI hardware (bus 00) isapnp: Scanning for PnP cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket Starting kswapd VFS: Disk quotas vdquot_6.5.1 pty: 256 Unix98 ptys configured Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx OPTI621X: IDE controller at PCI slot 00:14.0 OPTI621X: chipset revision 18 OPTI621X: not 100% native mode: will probe irqs later OPTI621X: neither IDE port enabled (BIOS) hda: TOSHIBA MK1002MAV, ATA DISK drive hdb: UJDCD8700, ATAPI CD/DVD-ROM drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 hda: attached ide-disk driver. hda: task_no_data_intr: status=0x51 { DriveReady SeekComplete Error } hda: task_no_data_intr: error=0x04 { DriveStatusError } hda: 2116800 sectors (1084 MB) w/128KiB Cache, CHS=525/64/63 Partition check: hda: hda1 hda2 ide: late registration of driver. SCSI subsystem driver Revision: 1.00 kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2 kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2 Initializing Cryptographic API NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 1024 bind 1024) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. VFS: Mounted root (ext2 filesystem) readonly. Freeing unused kernel memory: 140k freed Real Time Clock Driver v1.10f Adding Swap: 124952k swap-space (priority -1) hdb: attached ide-scsi driver. scsi0 : SCSI host adapter emulation for IDE ATAPI devices Vendor: MATSHITA Model: UJDCD8700 Rev: 1.06 Type: CD-ROM ANSI SCSI revision: 02 Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0 sr0: scsi3-mmc drive: 8x/8x xa/form2 cdda tray Uniform CD-ROM driver Revision: 3.12 apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16) Linux Kernel Card Services 3.1.22 options: [pci] [cardbus] [pm] Yenta ISA IRQ mask 0x06f8, PCI irq 15 Socket status: 30000006 Yenta ISA IRQ mask 0x06f8, PCI irq 11 Socket status: 30000020 cs: cb_alloc(bus 2): vendor 0x10ec, device 0x8180 PCI: Enabling device 02:00.0 (0000 -> 0003) cs: IO port probe 0x0c00-0x0cff: clean. cs: IO port probe 0x0800-0x08ff: clean. cs: IO port probe 0x0100-0x04ff: excluding 0x220-0x22f 0x250-0x257 0x330-0x337 0x378-0x37f 0x388-0x38f 0x3f8-0x3ff 0x408-0x40f 0x480-0x48f 0x4d0-0x4d7 cs: IO port probe 0x0a00-0x0aff: clean. usb.c: registered new driver usbdevfs usb.c: registered new driver hub usb-uhci.c: $Revision: 1.275 $ time 19:48:59 Apr 17 2004 usb-uhci.c: High bandwidth mode enabled usb-uhci.c: v1.275:USB Universal Host Controller Interface driver usb.c: deregistering driver usbdevfs usb.c: deregistering driver hub usb.c: registered new driver usbdevfs usb.c: registered new driver hub usb.c: deregistering driver usbdevfs usb.c: deregistering driver hub Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A parport0: PC-style at 0x378 [PCSPP,TRISTATE,EPP] floppy0: unexpected interrupt floppy0: sensei repl[0]=80 cloop: Initializing cloop v2.01 cloop: loaded (max 128 devices) usb.c: registered new driver usbdevfs usb.c: registered new driver hub usb.c: registered new driver hiddev usb.c: registered new driver hid hid-core.c: v1.8.1 Andreas Gal, Vojtech Pavlik <vojtech@suse.cz> hid-core.c: USB HID support drivers mice: PS/2 mouse device common for all mice sr0: CDROM (ioctl) reports ILLEGAL REQUEST. cdrom: open failed. Device not ready. Make sure there is a disc in the drive.
|
What I did: Installed DSL 3.0.1 from CD. I partitioned the HD in a 128MB swap, and left the rest for DSL. After a few bootings, and checking if everything was correct, I went for the WLAN. I first installed the PCMCIA card, but it was not recognized as a valid interface. I was expecting it, and went for the "ndiswrapper" alternative. First I tried it with the original winXP drivers of the driver CD of the X-Micro card. I copied the winXP driver to:
Code Sample | /home/dsl/wlan/ |
installed the driver:
Code Sample | ndiswrapper -i /home/dsl/wlan/net8180.inf |
when I do a:
Code Sample | ndiswrapper -l |
DSL lists the net8180 and informs that the hardware is available. If I look with
I get
Code Sample | 0000:00:00.0 Host bridge: OPTi Inc. 82C701 [FireStar Plus] (rev 10) Subsystem: Unknown device 035c:0e11 Flags: bus master, medium devsel, latency 0
0000:00:01.0 ISA bridge: OPTi Inc. 82C700 [FireStar] (rev 10) Subsystem: Unknown device 035c:0e11 Flags: bus master, medium devsel, latency 0
0000:00:02.0 VGA compatible controller: Cirrus Logic GD 7548 (prog-if 00 [VGA]) Flags: fast devsel Memory at 40000000 (32-bit, non-prefetchable) [size=16M] Memory at 41000000 (32-bit, non-prefetchable) [size=16M]
0000:00:11.0 CardBus bridge: Texas Instruments PCI1131 (rev 01) Flags: bus master, medium devsel, latency 168, IRQ 15 Memory at 7fffe000 (32-bit, non-prefetchable) [size=4K] Bus: primary=00, secondary=01, subordinate=01, sec-latency=176 Memory window 0: 10000000-103ff000 (prefetchable) Memory window 1: 10400000-107ff000 I/O window 0: 00004000-000040ff I/O window 1: 00004400-000044ff 16-bit legacy interface ports at 0001
0000:00:11.1 CardBus bridge: Texas Instruments PCI1131 (rev 01) Flags: bus master, medium devsel, latency 168, IRQ 11 Memory at 7ffff000 (32-bit, non-prefetchable) [size=4K] Bus: primary=00, secondary=02, subordinate=02, sec-latency=176 Memory window 0: 10800000-10bff000 (prefetchable) Memory window 1: 10c00000-10fff000 I/O window 0: 00004800-000048ff I/O window 1: 00004c00-00004cff 16-bit legacy interface ports at 0001
0000:00:14.0 IDE interface: OPTi Inc. 82C825 [Firebridge 2] (rev 12) (prog-if 80 [Master]) Subsystem: Unknown device 035c:0e11 Flags: medium devsel I/O ports at 1000 [size=16]
0000:02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8180L 802.11b MAC (rev 20) Subsystem: Realtek Semiconductor Co., Ltd. RTL8180L 802.11b MAC Flags: bus master, medium devsel, latency 64, IRQ 11 I/O ports at 4800 [size=256] Memory at 10c00000 (32-bit, non-prefetchable) [size=512] Capabilities: <available only to root>
|
Then
tells me that there is no ndiswrapper. I went for a:
Code Sample | modprobe ndiswrapper |
and nothing happens! If I look at dmesg, I see:
Code Sample | cs: cb_free(bus 2) cs: cb_alloc(bus 2): vendor 0x10ec, device 0x8180 PCI: Enabling device 02:00.0 (0000 -> 0003) PCI: Setting latency timer of device 02:00.0 to 64 __alloc_pages: 0-order allocation failed (gfp=0x21/0) ndiswrapper (NdisMAllocateSharedMemory:926): couldn't allocate 2042 bytes of cached DMA memory ndiswrapper (NdisWriteErrorLogEntry:246): log: C0001389, count: 1, return_address: c1950a1e ndiswrapper (NdisWriteErrorLogEntry:249): code: 1026 ndiswrapper (miniport_init:273): couldn't initialize device: C000009A ndiswrapper (pnp_start_device:497): Windows driver couldn't initialize the device (C0000001)
|
My understanding: I have a problem with the driver.
I tried the same approach with a newer version (1.73) of the driver from < http://www.realtek.com.tw/downloa....TL8180L > However I see the same error code. My understanding is that I have a real problem with the WLAN card, DSL, and the old laptop as it is not able to allocate enough memory for the NDIS wrapper.
Solutions I tried: 1) I tried to install the Linux 2.4.XX drivers from Realtek. However it did not work, as both ".o" files available are for 2.4.18 and 2.4.20 and I get the gcc/lib error message about the wrong version. 2) Changing of driver version (CD version and the Realtek one) didn't help. 3) I tried to boot it with the card, tried to boot it without the card, and so on. But I always get the same error. 4) I thought about changing the Linux distribution. My guess is that changing the Linux distribution will not help, as probably all of them will come back to the "ndiswrapper" solution. 5) I discarded trying to install win98.
As the DSL is without a connection, it is quite complicated to download the source code of the driver, get the right gcc version installed, figure out where I can resize buffer sizes, compile it on another box, and load it via the 1.44" floppy of the Compaq Armada.
Does anyone has an idea of what else I could do? Any HELP would be really apreciated!
====================================== me, myself, and I
Posted by roberts on Nov. 24 2006,19:31
Often times trying to use a newer pcmcia wireless card on very old machine is very difficult. Your main issue is not enough memory. The ndiswarpper does indeed need to allocate memory and you are already at the minimum 16MB.
If updagrading memory is not an option then either obtain a natively supported pcmcia card or go the route of compiling a driver. The first option is obviously much easier.
|