User Tools

Site Tools



This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
wlan:conceptronicc22c [2006/11/13 13:38]
wlan:conceptronicc22c [2006/11/13 14:48] (current)
andi old revision restored
Line 1: Line 1:
 +====== Conceptronic C22C on Linux ======
 +{{wlan:concept-front.jpg?250}} {{wlan:concept-back.jpg?200}}
 +This cards official name is //Wireless 22Mbps PC Card for Notebooks//. It's an 32Bit Cardbus card with the model name //C22C//.
 +Inserting this card immediatly froze my machine after printing these lines:
 +  cs: cb_alloc(bus 1): vendor 0x104c, device 0x8400
 +  PCI: Enabling device 01:00.0 (0000 -> 0003)
 +After disabling the cardmanager (''/etc/init.d/pcmcia-cs stop'') and I was able to insert the card without a crash and to reveal the following info with ''lspci -v'':
 +  0000:01:00.0 Network controller: Texas Instruments ACX 100 22Mbps Wireless Interface
 +        Subsystem: Texas Instruments: Unknown device 8401
 +        Flags: medium devsel, IRQ 9
 +        I/O ports at 4000 [size=32]
 +        Memory at 10800000 (32-bit, non-prefetchable) [size=4K]
 +        Memory at 10810000 (32-bit, non-prefetchable) [size=64K]
 +        Capabilities: [40] Power Management version 2
 +===== General setup =====
 +I'll use a vanilla Kernel 2.4.26 from with PCMCIA and Wireless LAN support. In userspace I use the latest ''pcmcia-cs'' (3.2.5-7), ''[[:hotplug]]'' (0.0.20040329-11) and ''wireless-tools'' (26+27pre22-1) packages from [[:Debian]]s unstable branch. Everything is done on my Fujitsu-Siemens [[:Lifebook]].
 +===== The acx100 driver =====
 +A GPL'd driver for the TI chipset is available here:
 +  $> wget
 +  $> tar -xjvf acx100-0.2.0pre8.tar.bz2
 +  $> cd acx100-0.2.0pre8
 +So far so easy. The driver needs a firmware which is, for legal reasons, not included in the download. This firmware can be extracted from the windows drivers (available at [[|]]) or you can let the Makefile fetch and extract the needed firmware from the net. I go for the latter:
 +  $> make fetch_firmware
 +Now compile and install 
 +  $> make
 +  #> make install
 +Inserting the card no longer freezes the machine even with the cardmanager running but ''dmesg'' shows still some errors:
 +cs: cb_alloc(bus 1): vendor 0x104c, device 0x8400
 +PCI: Enabling device 01:00.0 (0000 -> 0003)
 +acx100: It looks like you were coaxed into buying a wireless network card
 +acx100: that uses the mysterious ACX100 chip from Texas Instruments.
 +acx100: You should better have bought e.g. a PRISM(R) chipset based card,
 +acx100: since that would mean REAL vendor Linux support.
 +acx100: Given this info, it's evident that this driver is quite EXPERIMENTAL,
 +acx100: thus your mileage may vary. Visit for support.
 +acx100_init_module: dev_info is: TI acx_pci
 +acx100_init_module: TI acx_pci.o: Ver 0.2.0pre8 Driver initialized, waiting for cards to probe...
 +PCI: Setting latency timer of device 01:00.0 to 64
 +Found ACX100-based wireless network card at 01:00.0, irq:9, phymem1:0x10800000, phymem2:0x10810000, mem1:0xd096c000, mem1_size:4096, mem2:0xd096e000, mem2_size:65536.
 +acx100_probe_pci: using ACX100 io resource addresses (size: 54)
 +hw_unavailable = 1
 +reset hw_unavailable++
 +acx100_reset_mac: enable soft reset...
 +acx100_reset_mac: disable soft reset and go to init mode...
 +ERROR: no directory for firmware file specified, ABORTING. Make sure to set module parameter 'firmware_dir'! (specified as absolute path!)
 +acx100_reset_dev: Failed to upload firmware to the ACX100
 +acx100_probe_pci: TI acx_pci: MAC initialize failure!
 +acx100_probe_pci: TI acx_pci.o: Ver 0.2.0pre8 Loading FAILED
 +Obviously it fails to load the firmware. The location of the firmware files has to be given as module parameter. First lets copy the firmware files downloaded by ''make fetch_firmware'' to some sane place. I suggest ''/usr/local/share/acx100-firmware''.
 +  #> mkdir -p /usr/local/share/acx100-firmware
 +  #> cp firmware/*.BIN /usr/local/share/acx100-firmware/
 +Now we need to tell modprobe were we put it. For the [[Debian]] way we just create a new file called ''/etc/modutils/acx_wlan'' with the following content:
 +options acx_pci firmware_dir=/usr/local/share/acx100-firmware/
 +Then run ''update-modules'' as root.
 +Note: For 2.6.x Kernel you have to put this file in the ''/etc/modprobe.d'' directory.
 +Now inserting the card loads the driver with the right firmware and registers a ''wlan0'' device to work with:
 +  #> iwconfig wlan0 essid "MeinKleinesWLAN" key restricted 's:13chars ASCII' mode Managed
 +  #> dhclient wlan0
 +Another card with wicked hardware mastered :-)
wlan/conceptronicc22c.txt ยท Last modified: 2006/11/13 14:48 by andi