Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
HOWTO: ACX100/ACX111/ACX1XX WPC54Gv2 [SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
Phylum
n00b
n00b


Joined: 03 Mar 2006
Posts: 11
Location: Washington D.C.

PostPosted: Mon Mar 06, 2006 6:53 pm    Post subject: HOWTO: ACX100/ACX111/ACX1XX WPC54Gv2 [SOLVED] Reply with quote

-----------------------------
Brief Non-requied Introduction
-----------------------------
This should be the END ALL BE ALL document for loading ACX100/ACX111 drivers onto your Gentoo System for your Texas Instruments ACX CardBus/PCI chipset based cards. This may work on other distro's (RedHat, Fedora, Mandrake, OpenBSD, NetBSD, FreeBSD, ...?) but I have not tested it...yet[?] If anyone can confirm whether these instructions are accurate on other distro's, would greatly appreciate it. Please include any hoops you had to jump through, special instructions or modifications.

Note - This document may not be of any use to you. This may not work! I welcome all corrections/updates etc.

I'm fairly new to Gentoo/Linux in general but I have a lot of history using FreeBSD. I'm trying to diversify more and further my *n?x knowledge. I installed Gentoo on an old Dell Inspiron 8100 (PIII, 256MB RAM, 20GB drive) following the instructions on:
http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml?full=1
for a networkless based installation. The installation went swell! To be sure I covered my bases, I used the `genkernel all` approach however I highly recommend you take the 'make menuconfig' path to manually fine tune the kernel to your needs! If you are not comfortable with messing with the kernel, please choose the former versus the latter.

I spent a lot of time searching on Google for assistance in getting my Linksys WPC54Gv2 WiFi card to work in Linux without the aid of Ndiswrapper. I found countless sites all of which used different drivers and loaded them in many different ways. I tried a few different methods, mixed and matched with no results.

AGAIN - THIS SHOULD BE THE END ALL BE ALL DOCUMENT FOR THIS!
An extra special 'Thank You' goes to Pat Erley - this would NOT have been possible without him.

-----------------------------
Step Zero: Undoing What You Might've Already Tried to Do
-----------------------------
***IF you tried a or a few other methods of loading the acx drivers, and did not succeed, you may have acx & acx_pci, loaded. First, you have to unload them:
Code:
modprobe -r acx; modprobe -r acx_pci

uninstall them
Code:
cd /path/to/old/acx-drivers; `make uninstall` and/or `make deinstall` then `make clean`

OR simply undo what you did by following the accompanying README from the bottom up.
After that: Reboot! When unloading the modules you MIGHT see an error like:
Code:
FATAL: Error Removing Acx (/lib/modules/2.6.12-gentoo-r6/extra/acx.ko): Device or resource busy.

This is because you had 2 modules loaded trying to access the same hardware. If you get that, just make sure its not in /etc/modules.autoload.d/kernel-2.6 and reboot the system then go from here.

-----------------------------
First off confirm the following:
-----------------------------
Confirm you have a running Gentoo machine :)
Make sure you are running a kernel greater than 2.6.11; I'm running 2.6.12-gentoo-r6
Confirm you have configured our kernel for CardBus:
Code:
Code Listing 11: Activating PCMCIA support
Bus options (PCI, PCMCIA, EISA, MCA, ISA)  --->
  PCCARD (PCMCIA/CardBus) support  --->
    <*> PCCard (PCMCIA/CardBus) support
    (select 16 bit if you need support for older PCMCIA cards. Most people want this.)
    <*>   16-bit PCMCIA support
    [*]   32-bit CardBus support
    (select the relevant bridges below)
    --- PC-card bridges
    <*> CardBus yenta-compatible bridge support (NEW)
    <*> Cirrus PD6729 compatible bridge support (NEW)
    <*> i82092 compatible bridge support (NEW)
    <*> i82365 compatible bridge support (NEW)
    <*> Databook TCIC host bridge support (NEW)


(Taken from http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml?full=1#book_part1_chap7)

Confirm you have Hotplug installed:
Code:
emerge hotplug

Confirm you have the necessary tools:
Code:
emerge pcmcia-cs wireless-tools pciutils

If this is also a networkless installation, all of the above should already be in /usr/portage/distfiles. See
http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml?full=1#installing_portage
for information on how to do that.

If you used the `genkernel all` approach or you already did his, type `lsmod` to confirm that pcmcia/yenta-socket modules have been loaded:
Code:
$ lsmod
Module                  Size    Used by
ipv6                  250784    10
...                   149928    0
pcmcia                 27440    4
yenta_socket           22120    3
rsrc_nonstatic         12800    1 yenta_socket
pcmcia_core            50404    3 pcmcia,yenta_socket,rsrc_nonstatic


Rule of thumb (i think...): If you run `lspci` and it shows your network device then your pcmcia slots are functioning - So if you run that then I guess you can skip the above, no? I just wanted to document it for completeness.

-----------------------------
Identifying and verifying your cards identity.
-----------------------------
Confirm your pcmcia slots are functioning and that it can communicate with the card:
Code:
$ /sbin/lspci
0000:00:00.0 Host bridge: Intel Corp. 82815 815 Chipset Host Bridge and Memory Controller Hub (rev 04)
0000:00:01.0 PCI bridge: Intel Corp. 82815 815 Chipset AGP Bridge (rev 04)
...
...
0000:02:0f.0 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller
0000:02:0f.1 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller
0000:09:00.0 Network controller: Texas Instruments ACX 111 54Mbps Wireless Interface


That last line is my network wifi card in question. Now we need to verify the chipset by running `lspci -n`:
Code:
$ /sbin/lspci -n
0000:00:00.0 Class 0600: 8086:1130 (rev 04)
0000:00:01.0 Class 0604: 8086:1131 (rev 04)
...
...
0000:08:04.0 Class 0200: 8086:1229 (rev 08)
0000:08:08.0 Class 0780: 11c1:0448 (rev 01)
0000:09:00.0 Class 0280: 104c:9066


Once again, the last one there is my WiFi card. Note the 104c:9066 in that line, that is the chipset (right[?]) As far as I know, these are the three possible choices of chipsets for these kinds of cards:
Code:
104c:8400 (acx100 CardBus)
104c:8401 (acx100 PCI)
104c:9066 (acx111 Cardbus/PCI)


I have the last one: acx111 Cardbus/PCI

-----------------------------
Actual Driver & Firmware Installation
-----------------------------

Go this site and follow the instructions
http://acx100.erley.org/howto.txt
*Note - You will notice that the documentation tells you to download the fw.tar.bz2 file from that same site. If you try, it will fail. I highly recommend you go here, http://acx100.sourceforge.net/download.html and maybe check out the mirror (*hint*hint*).
I also read the accompanying README file in the acx-20060215.tar.bz2 file and performed the following steps:
Code:
make -C /lib/modules/`uname -r`/build M=`pwd`
make -C /lib/modules/`uname -r`/build M=`pwd` modules_install
depmod -ae

*NOTE - those are back ticks (` `) not to be confused with single quotes (' '). Back ticks are the lower-case version of the tilde (~) key which is to the left of the number 1 key on your desktop keyboard. Laptop users: Your tilde/back tick (~/`) key may be located elsewhere on the keyboard so pay close attention! Those back ticks allow you include the results of a command within a command. So basically, the above lines are the equivalent to:
Code:
make -C /lib/modules/2.6.12-gentoo-r6/build M=/usr/src/acx-20050916
make -C /lib/modules/2.6.12-gentoo-r6/build M=/usr/src/acx-20050916 modules_install



-----------------------------
Load the modules
-----------------------------
To load the modules...
Code:
modprobe firmware_class
modprobe acx

Check for kernel traces in `dmesg` (Lines that look like Oops: 0000 [#1])
We're looking for lines like:
Code:
acx: this driver is still EXPERIMENTAL
acx: reading README file and/or Craig's HOWTO is recommended, visit http://acx100.sf.net in case of further questions/discussion
acx: compiled to use 32bit I/O access. I/O timing issues might occur, such as non-working firmware upload. Report them
running on a little-endian CPU
PCI module v0.3.35 initialized, waiting for cards to probe...
PCI: Enabling device 0000:09:00.0 (0000 -> 0002)
ACPI: PCI Interrupt 0000:09:00.0[A] -> Link [LNKD] -> GSI 10 (level, low) -> IRQ 10
PCI: Setting latency timer of device 0000:09:00.0 to 64
acx: found ACX111-based wireless network card at 0000:09:00.0, irq:10, phymem1:0x10820000, phymem2:0x10800000, mem1:0xd0bbc000, mem1_size:8192, mem2:0xd0c80000, mem2_size:131072
initial debug setting is 0x000A
using IRQ 10
requesting firmware image 'tiacx111c16'
acx_write_fw (main/combined):0
acx_validate_fw (main/combined):0
initializing max packet templates
dump queue head (from card):
len: 24
tx_memory_block_address: 19E40
rx_memory_block_address: 15240
tx1_queue address: 14774
rx1_queue address: 14434
NVS_vendor_offs:0221 probe_delay:200 eof_memory:1114112
CCAModes:04 Diversity:01 ShortPreOpt:01 PBCC:01 ChanAgil:00 PHY:05 Temp:01
AntennaID:00 Len:02 Data:01 02
PowerLevelID:01 Len:02 Data:001E 000A
DataRatesID:02 Len:05 Data:02 04 11 22 44
DomainID:03 Len:06 Data:10 20 30 31 32 40
ProductID:04 Len:09 Data:TI ACX100
ManufacturerID:05 Len:07 Data:TI Test
get_mask 0x00004182, set_mask 0x00000000
don't know how to get sensitivity for radio type 0x16
got sensitivity value 0
got antenna value 0x4A
got regulatory domain 0x10
get_mask 0x00000000, set_mask 0x00000000 - after update
new ratevector: 82 84 0B 0C 12 16 18 24 2C 30 48 60 6C
setting RXconfig to 2010:0FDD
acx: form factor 0x01 ((mini-)PCI / CardBus), radio type 0x16 (Radia), EEPROM version 0x05, uploaded firmware 'Rev 2.3.1.31' (0x03010101)
creating /proc entry driver/acx_wlan0
creating /proc entry driver/acx_wlan0_diag
creating /proc entry driver/acx_wlan0_eeprom
creating /proc entry driver/acx_wlan0_phy


At this point, the light on your WiFi card should be on and you can now setup your wireless network, which goes a little something like this:
Code:
iwconfig wlan0 essid 'FooBaredNetwork' mode Managed nickname 'FooNet' rate auto


Thank you
I want to once again give thanks to s0be for responding to my post (https://forums.gentoo.org/viewtopic-t-439512-highlight-confirm+pcmcia.html) and for helping me get this thing online.
A special thank you goes to:
As they did an excellent job documenting their steps and doing quite a bit of leg work.

By writing this document, am I saying their documentation is bad, faulty or anything like that: No. It was a very good read & appeared to be thorough but it just didn't work for me. I must add: My document may not work for you!
I will [try to] edit/update this as necessary.
Please post and pm or aim me with any changes/suggestions.

-----------------------------
To Do List...
-----------------------------
Confirm these instructions work on WPC54Gv1, 3 and 4 cards
Confirm these instructions work with any/all acx1xx cards
Confirm the instructions on http://acx100.sourceforge.net/wiki/ACX will work (I'm sure they do...)
Add instructions for connecting to WEP encrypted networks
Investigate ability to connect to WPA-TPIK based encryption networks

-----------------------------
Change Log
-----------------------------
03/08 - Added: emerge pcmcia-cs, pciutils, wireless-tools, 'To Do' section & correction on firmware link.
03/12 - Added: dmesg information once you `modprobe acx`, confirmed instructions are accurate from a fresh install.
04/06 - Added: updated 'To Do' section (encryption instructions needed - any help would be appreciated for WPA-TPIK)


Last edited by Phylum on Thu Apr 06, 2006 5:32 pm; edited 2 times in total
Back to top
View user's profile Send private message
Quincy
Apprentice
Apprentice


Joined: 02 Jun 2005
Posts: 193
Location: Germany

PostPosted: Sat Mar 25, 2006 7:11 am    Post subject: Reply with quote

Why don't you do a simple "emerge -av acx"?

It uses the same packages you installed manually....
Back to top
View user's profile Send private message
timdaslayer
n00b
n00b


Joined: 17 Jun 2004
Posts: 39

PostPosted: Tue Apr 04, 2006 11:09 pm    Post subject: Reply with quote

quincy is right.... and also i would like to see instructions on how to set up encryption please
Back to top
View user's profile Send private message
Quincy
Apprentice
Apprentice


Joined: 02 Jun 2005
Posts: 193
Location: Germany

PostPosted: Wed Apr 05, 2006 8:49 pm    Post subject: Reply with quote

WEP Encryption is no Problem, but working with wpa_supplicant and WPA had no success....
Back to top
View user's profile Send private message
timdaslayer
n00b
n00b


Joined: 17 Jun 2004
Posts: 39

PostPosted: Wed Apr 05, 2006 9:29 pm    Post subject: Reply with quote

Quincy wrote:
WEP Encryption is no Problem, but working with wpa_supplicant and WPA had no success....


bummer, i'm trying to figure out how to connect to my WPA-TPIK network before i go through yet another gentoo install...
Back to top
View user's profile Send private message
Phylum
n00b
n00b


Joined: 03 Mar 2006
Posts: 11
Location: Washington D.C.

PostPosted: Thu Apr 06, 2006 6:11 pm    Post subject: Reply with quote

Hey Tim and Quincy: I'll do some research this week/weekend to see how to get WPA-TPIK setup. I my router is too old for WPA I think but I'll double check for an updated firmware and see if it supports it. I don't use WEP at the house but I'll get it going and get it all confirmed. I can tell you for a fact that you can do something like...
Code:
iwconfig wlan0 essid "ESSID NAME" rate auto mode Managed key aaaa-bbbb-cccc-dddd-1111-2222-33


Check this out from `man iwconfig`:
Quote:

key/enc[ryption]
Used to manipulate encryption or scrambling keys and security mode.
To set the current encryption key, just enter the key in hex digits as XXXX-
XXXX-XXXX-XXXX or XXXXXXXX. To set a key other than the current key,
prepend or append [index] to the key itself (this won't change which is the
active key). You can also enter the key as an ASCII string by using the s:
prefix. Passphrase is currently not supported.
To change which key is the currently active key, just enter [index] (without
entering any key value).
off and on disable and reenable encryption.
The security mode may be open or restricted, and its meaning depends on the
card used. With most cards, in open mode no authentication is used and the
card may also accept non-encrypted sessions, whereas in restricted mode only
encrypted sessions are accepted and the card will use authentication if
available.
If you need to set multiple keys, or set a key and change the active key,
you need to use multiple key directives. Arguments can be put in any order,
the last one will take precedence.
Examples :
iwconfig eth0 key 0123-4567-89
iwconfig eth0 key [3] 0123-4567-89
iwconfig eth0 key s:password [2]
iwconfig eth0 key [2]
iwconfig eth0 key open
iwconfig eth0 key off
iwconfig eth0 key restricted [3] 0123456789
iwconfig eth0 key 01-23 key 45-67 [4] key [4]


I hope this helps (assuming you didn't know how to do it to begin with)
_________________
------
A network is only as secure as the admin makes it.
Back to top
View user's profile Send private message
timdaslayer
n00b
n00b


Joined: 17 Jun 2004
Posts: 39

PostPosted: Thu Apr 06, 2006 6:24 pm    Post subject: Reply with quote

yea, i know how to get WEP going... but thanks
Back to top
View user's profile Send private message
mbar
Veteran
Veteran


Joined: 19 Jan 2005
Posts: 1953
Location: Poland

PostPosted: Mon Apr 17, 2006 8:47 am    Post subject: Reply with quote

But is it now possible to use acx111 as a access point? (mode=master or sth)
Back to top
View user's profile Send private message
DAharon
Apprentice
Apprentice


Joined: 17 Jun 2004
Posts: 155

PostPosted: Tue May 02, 2006 8:23 pm    Post subject: Reply with quote

I'm having a problem getting my PCI acx111 card going. I used to have it working with this driver but that was a long time ago.
My dmesg says its looking for tiacx111cFF. Which seems to be different from everyone elses. It then procedes to load tiacx111 and try to load that.
Code:
acx: FATAL: firmware upload: data parts at offset 4 don't match (0xEA000633 vs. 0xFFFFFFFF)! I/O timing issues or defective memory, with DWL-xx0+? ACX_IO_WIDTH=16 may help. Please report
acx_validate_fw (main/combined):1
Is the result.
Then at the end it spits out
Code:
acx_pci: probe of 0000:00:0b.0 failed with error -5
USB module v0.3.35 initialized, probing for devices...
usbcore: registered new driver acx_usb
Back to top
View user's profile Send private message
luckyman
n00b
n00b


Joined: 19 Jan 2005
Posts: 15
Location: Nitra

PostPosted: Fri May 05, 2006 11:00 am    Post subject: Reply with quote

Hi everybody

the following issue was solved for me on this thread:
https://forums.gentoo.org/viewtopic-t-428848-highlight-acx.html

@ my case (pcmciautils) udev's conf /etc/udev/rules.d/50-udev.rules needed to add this line:
Code:
ACTION=="add", SUBSYSTEM=="firmware", RUN+="/sbin/firmware_helper"

thanks Thraex


i just got this card, when I insert it, in dmesg i get:
Code:
pccard: CardBus card inserted into slot 0
PCI: Enabling device 0000:03:00.0 (0000 -> 0002)
ACPI: PCI Interrupt 0000:03:00.0[A] -> Link [LNKB] -> GSI 18 (level, low) -> IRQ 177
PCI: Setting latency timer of device 0000:03:00.0 to 64
acx: found ACX111-based wireless network card at 0000:03:00.0, irq:177, phymem1:0xFC620000, phymem2:0xFC600000, mem1:0xffffc2000019c000, mem1_size:8192, mem2:0xffffc200001c0000, mem2_size:131072
initial debug setting is 0x000A
using IRQ 177
requesting firmware image 'tiacx111c16'
acx: firmware image 'tiacx111c16' was not provided. Check your hotplug scripts
requesting firmware image 'tiacx111'
acx: firmware image 'tiacx111' was not provided. Check your hotplug scripts
acx: reset_dev() FAILED
ACPI: PCI interrupt for device 0000:03:00.0 disabled
acx_pci: probe of 0000:03:00.0 failed with error -5

however, the firmware images are in the correct place /lib/firmware
I use
Code:
[ebuild   R   ] sys-apps/pcmciautils-012  -debug -static -staticsocket +udev 0 kB
, instead of pcmcia-cs, it seems to be too old...
anyone knows hot to get around this?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum