View previous topic :: View next topic |
Author |
Message |
Phylum n00b
Joined: 03 Mar 2006 Posts: 11 Location: Washington D.C.
|
Posted: Mon Mar 06, 2006 6:53 pm Post subject: HOWTO: ACX100/ACX111/ACX1XX WPC54Gv2 [SOLVED] |
|
|
-----------------------------
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:
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 |
|
|
Quincy Apprentice
Joined: 02 Jun 2005 Posts: 201 Location: Germany
|
Posted: Sat Mar 25, 2006 7:11 am Post subject: |
|
|
Why don't you do a simple "emerge -av acx"?
It uses the same packages you installed manually.... |
|
Back to top |
|
|
timdaslayer n00b
Joined: 17 Jun 2004 Posts: 39
|
Posted: Tue Apr 04, 2006 11:09 pm Post subject: |
|
|
quincy is right.... and also i would like to see instructions on how to set up encryption please |
|
Back to top |
|
|
Quincy Apprentice
Joined: 02 Jun 2005 Posts: 201 Location: Germany
|
Posted: Wed Apr 05, 2006 8:49 pm Post subject: |
|
|
WEP Encryption is no Problem, but working with wpa_supplicant and WPA had no success.... |
|
Back to top |
|
|
timdaslayer n00b
Joined: 17 Jun 2004 Posts: 39
|
Posted: Wed Apr 05, 2006 9:29 pm Post subject: |
|
|
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 |
|
|
Phylum n00b
Joined: 03 Mar 2006 Posts: 11 Location: Washington D.C.
|
Posted: Thu Apr 06, 2006 6:11 pm Post subject: |
|
|
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 |
|
|
timdaslayer n00b
Joined: 17 Jun 2004 Posts: 39
|
Posted: Thu Apr 06, 2006 6:24 pm Post subject: |
|
|
yea, i know how to get WEP going... but thanks |
|
Back to top |
|
|
mbar Veteran
Joined: 19 Jan 2005 Posts: 1990 Location: Poland
|
Posted: Mon Apr 17, 2006 8:47 am Post subject: |
|
|
But is it now possible to use acx111 as a access point? (mode=master or sth) |
|
Back to top |
|
|
DAharon Apprentice
Joined: 17 Jun 2004 Posts: 155
|
Posted: Tue May 02, 2006 8:23 pm Post subject: |
|
|
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 |
|
|
luckyman n00b
Joined: 19 Jan 2005 Posts: 15 Location: Nitra
|
Posted: Fri May 05, 2006 11:00 am Post subject: |
|
|
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 |
|
|
|
|
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
|
|