EMP-8602 400mw 802.11a/g/b wireless mini-pci - driver
-
Accoring to this product info website for EMP-8602 it works with freeBSD 6.1 …
http://www.netgate.com/product_info.php?products_id=279
( Note: I did NOT purchase these units from the above site!- My units were obtained from aztekcomputers.com
- I am currently investigating whether Aztek sold me pre-production parts. )
They direct you to either look in the kernel tree {see wi,ath,ath(4)} or download the kernel driver from:
http://www.freebsd.org/cgi/man.cgi?query=ath&apropos=0&sektion=0&manpath=FreeBSD+5.1-current&format=html
I assume this means the ath driver that exists in the latest pfSense beta should support this card.
Is there any way to force pfSense to use the ath driver; or, even better, modify pfSense to autodetect EMP-8602 as an ath.
Thanks, -Pete -
It might be a detection issue, do you know what chip this card is based on ?
The freebsd ath driver might support the card, it might just be a detection issue as you say, i'll look into it and see if i can find out what this card is based on. Can you do me a favour and show me the output of pciconf -lv and dmesg ?
You might want to take a look at: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/contrib/dev/ath/ah_devid.h
#define ATHEROS_VENDOR_ID 0x168c /* Atheros PCI vendor ID /
/- NB: all Atheros-based devices should have a PCI vendor ID
* of 0x168c, but some vendors, in their infinite wisdom
* do not follow this so we must handle them specially.
*/
- NB: all Atheros-based devices should have a PCI vendor ID
-
do you know what chip this card is based on ?
Atheros AR5006.
I will try those commands tomorrow and post the output.
Thanks,-pc -
below
-
Hardware: WRAP 2C
Software: pfSense-Embedded-1.0BETA2.img.gz
Wireless: Mfg: EnGenius, Model: EMP-8602 Chipset: Atheros AR5006 6th generation chipset http://www.atheros.com/pt/AR5006Bulletins.htmHere is the Output from those commands…
pciconf -lv
hostb0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x00011078 rev=0x00 hdr=0x00
class = bridge
subclass = HOST-PCI
none0@pci0:13:0: class=0x020000 card=0x00000000 chip=0xff16168c rev=0x01 hdr=0x00
class = network
subclass = ethernet
none1@pci0:13:1: class=0x070002 card=0xee96168c chip=0xff96168c rev=0x01 hdr=0x00
class = simple comms
subclass = UART
none2@pci0:13:2: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none3@pci0:13:3: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none4@pci0:13:4: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none5@pci0:13:5: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none6@pci0:13:6: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none7@pci0:13:7: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
sis0@pci0:14:0: class=0x020000 card=0x0020100b chip=0x0020100b rev=0x00 hdr=0x00
class = network
subclass = ethernet
none8@pci0:17:0: class=0x020000 card=0x00000000 chip=0xff16168c rev=0x01 hdr=0x00
class = network
subclass = ethernet
none9@pci0:17:1: class=0x070002 card=0xee96168c chip=0xff96168c rev=0x01 hdr=0x00
class = simple comms
subclass = UART
none10@pci0:17:2: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none11@pci0:17:3: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none12@pci0:17:4: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none13@pci0:17:5: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none14@pci0:17:6: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
none15@pci0:17:7: class=0x000000 card=0x00000000 chip=0x00000000 rev=0x00 hdr=0x00
class = old
subclass = non-VGA display device
isab0@pci0:18:0: class=0x060100 card=0x0500100b chip=0x0510100b rev=0x00 hdr=0x00
class = bridge
subclass = PCI-ISA
none16@pci0:18:1: class=0x068000 card=0x0501100b chip=0x0511100b rev=0x00 hdr=0x00
class = bridge
atapci0@pci0:18:2: class=0x010180 card=0x0502100b chip=0x0502100b rev=0x01 hdr=0x00
class = mass storage
subclass = ATA
none17@pci0:18:3: class=0x040100 card=0x0503100b chip=0x0503100b rev=0x00 hdr=0x00
class = multimedia
subclass = audio
none18@pci0:18:5: class=0x068000 card=0x0505100b chip=0x0515100b rev=0x00 hdr=0x00
class = bridgedmesg
Copyright (c) 1992-2006 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 6.1-PRERELEASE #0: Thu Mar 2 22:07:36 UTC 2006
sullrich@builder.livebsd.com:/usr/obj.pfSense/usr/src/sys/pfSense_wrap.6
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Geode(TM) Integrated Processor by National Semi (266.66-MHz 586-class CPU)
Origin = "Geode by NSC" Id = 0x540 Stepping = 0
Features=0x808131 <fpu,tsc,msr,cx8,cmov,mmx>real memory = 134217728 (128 MB)
avail memory = 121913344 (116 MB)
wlan: mac acl policy registered
ath_hal: 0.9.16.16 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
npx0: [FAST]
npx0: <math processor="">on motherboard</math>
npx0: INT 16 interface
cpu0 on motherboard
pcib0: <host to="" pci="" bridge="">pcibus 0 on motherboard
pci0: <pci bus="">on pcib0
pci0: <network, ethernet="">at device 13.0 (no driver attached)
pci0: <simple comms,="" uart="">at device 13.1 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 13.2 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 13.3 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 13.4 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 13.5 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 13.6 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 13.7 (no driver attached)
sis0: <natsemi 10="" dp8381[56]="" 100basetx="">port 0x1400-0x14ff mem 0x80080000-0x80080fff irq 10 at device 14.0 on pci0
sis0: Silicon Revision: DP83816A
miibus0: <mii bus="">on sis0
ukphy0: <generic ieee="" 802.3u="" media="" interface="">on miibus0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
sis0: Ethernet address: 00:0d:b9:03:13:30
pci0: <network, ethernet="">at device 17.0 (no driver attached)
pci0: <simple comms,="" uart="">at device 17.1 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 17.2 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 17.3 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 17.4 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 17.5 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 17.6 (no driver attached)
pci0: <old, non-vga="" display="" device="">at device 17.7 (no driver attached)
Geode GPIO@ = f400
Geode PC Engines WRAP.2B/2C v1.09 tinyBIOS V1.4a (C)1997-2005
isab0: <pci-isa bridge="">port 0xf400-0xf43f,0xf600-0xf63f at device 18.0 on pci0
isa0: <isa bus="">on isab0
pci0: <bridge>at device 18.1 (no driver attached)
atapci0: <national geode="" sc1100="" ata33="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xfc00-0xfc0f at device 18.2 on pci0
ata0: <ata 0="" channel="">on atapci0
ata1: <ata 1="" channel="">on atapci0
pci0: <multimedia, audio="">at device 18.3 (no driver attached)
Geode CBA@ 0x9000
Geode rev: 06 03
Timecounter "Geode" frequency 27000000 Hz quality 1000
pci0: <bridge>at device 18.5 (no driver attached)
pmtimer0 on isa0
orm0: <isa option="" rom="">at iomem 0xe0000-0xe7fff on isa0
ppc0: parallel port not found.
sio0 at port 0x3f8-0x3ff irq 4 flags 0x30 on isa0
sio0: type 16550A, console
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
RTC BIOS diagnostic error 80 <clock_battery>Timecounters tick every 10.000 msec
Fast IPsec: Initialized Security Association Processing.
ad0: 122MB <sandisk sdcfj-128="" hdx="" 2.33="">at ata0-master PIO4
GEOM_LABEL: Label for provider ad0a is ufs/pfSense.
GEOM_LABEL: Label for provider ad0d is ufs/pfSenseCfg.
Trying to mount root from ufs:/dev/ufs/pfSense
sis0: link state changed to UP
pflog0: promiscuous mode enabled
#</sandisk></clock_battery></isa></bridge></multimedia,></ata></ata></national></bridge></isa></pci-isa></old,></old,></old,></old,></old,></old,></simple></network,></generic></mii></natsemi></old,></old,></old,></old,></old,></old,></simple></network,></pci></host></fpu,tsc,msr,cx8,cmov,mmx> -
The chipid is not detected. it's not in the list. http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/contrib/dev/ath/ah_devid.h
Post your pciconf -lv info on the freebsdmobile mailing list and let Sam add the deviceID.
Also give the relevant info on the card I have a feeling that the AR5413 might not be supported by the 0.9.16.16 HAL.I'll try to write a patch for this to be detected, but I'm not sure it will work. So you should ask Sam Leffler on the freebsdmobile list.
-
I have spent some time researching this now. And as far as i can tell this has to be added by Sam Leffler.
Neither the madwifi drivers or the freebsd driver seem to have this deviceID.Mail the freebsdmobile mailing list, that is the best advice i can give you.
-
Thank you for the help and suggestions.
So far I have been unable to find where to join and submit to the "freebsdmobile" mailing list. -
http://lists.freebsd.org/mailman/listinfo/freebsd-mobile
-
I submitted the information to the mailing list…
http://lists.freebsd.org/pipermail/freebsd-mobile/2006-March/008099.html
Thank you lsf, -pc
-
Sam wrote:
Did you ask the vendor if the eeprom were misprogrammed? As far as I
can tell the pci device id is chip=0xff16168c which has the correct
vendor id (168c) but nonsense for a device id (ff16). In general
Atheros uses device id's with 0's in the upper nibble and f's only for
pre-production parts that are never used in retail products.Is there any way for me to alter my Device Id"?
Could the driver be altered to recognize my Device Id?
If not, I may need to send one of these to Sam…I've ordered another EMP-8602 from a different vendor for comparison testing.
-pc -
Sam wrote:
Did you ask the vendor if the eeprom were misprogrammed? As far as I
can tell the pci device id is chip=0xff16168c which has the correct
vendor id (168c) but nonsense for a device id (ff16). In general
Atheros uses device id's with 0's in the upper nibble and f's only for
pre-production parts that are never used in retail products.Sounds like hardware issues. Call the manufacturer is about all we can say at this point.
-
I have a feeling the vendor wouldn't care since they don't officially support freebsd.
I'll try and find a flash bios upgrade for this card (EnGenius Senao EMP-8602)…
Thank you,-Pete -
There's an utility called ar5k, people use it to change the regdomain and countrycode, but I have seen som sites where people use it to change the deviceid.
So do a search on google for ar5k.c and be aware that you might ruin your card. -
I received another suggestion…
[this is also suggested by above by lsf, but I must have missed it;
I usually skip quoted/reply text because it's usually repeat info
from an earlier post in the same thread.]"Its possible that the PCI reset timing is causing this issue.
…
Be aware that PC Engines recently released an update to the BIOS for
its WRAP boards. From the release notes:
- WRAP BIOS revision history:
- ; v1.11
- ; pd 051108 extend insufficient PCI reset pulse width - caused
- ; problems with Atheros single chip cards.
The 8602 cards are (indeed) based on a single-chip Atheros part. "Will try flashing the WRAP BIOS monday and report...
Thanks,-pc -
Heh, I already mentioned the wrap firmware issue in the 5th post in this thread.
http://forum.pfsense.org/index.php?topic=676.msg5200#msg5200I hope you already did upgrade to the newest bios rev.
-
Any news ? was the wrap firmware the issue ?
-
I haven't yet been able to allocate a few free hours to discover how to flash the WRAP.
It may have to wait until next week. I ordered two new WRAP.2C units, hopefully with
the latest bios, and two new EMP-8602. They should be arriving soon; will post results.
Thank you,-pc -
from http://pcengines.ch/wrap1c.pdf :
(9) 9600 baud 3 38400 baud
(C) CHS mode L LBA mode
(X) Xmodem upload (Q) Quit[…]
- XMODEM upload of new firmware (X). Start transmission when prompted. 128 byte and 1024
byte packet sizes can be accepted, CRC mode only. Checksum mode is not supported as it is
considered too risky for firmware upgrade.
The actual flash update algorithm is included in the uploaded file. Flash programming takes
about two seconds. If power fails during this time, the BIOS chip will need to be
reprogrammed through other means.
- XMODEM upload of new firmware (X). Start transmission when prompted. 128 byte and 1024
-
I upgraded to wrap bios 1.11: "PC Engines WRAP.2B/2C v1.11".
I purchased two additional EMP-8602 mini-pci cards that do Not have "ff" in the device id.Using the latest pfSense versions 04-02-2006 and 04-03-2006, both
old and new cards are NOT detected.
However, after "downgrading" to pfSense 03-27-2006 they both ARE detected!Here is the output from "pciconf -lv" and "dmesg" when using pfSense 04-02-2006:
pciconf -lv
hostb0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x00011078 rev=0x00 hdr=0x00
class = bridge
subclass = HOST-PCI
none0@pci0:13:0: class=0x020000 card=0x2063168c chip=0x001b168c rev=0x01 hdr=0x00
class = network
subclass = ethernet
sis0@pci0:14:0: class=0x020000 card=0x0020100b chip=0x0020100b rev=0x00 hdr=0x00
class = network
subclass = ethernet
none1@pci0:17:0: class=0x020000 card=0x2063168c chip=0x001b168c rev=0x01 hdr=0x00
class = network
subclass = ethernet
isab0@pci0:18:0: class=0x060100 card=0x0500100b chip=0x0510100b rev=0x00 hdr=0x00
class = bridge
subclass = PCI-ISA
none2@pci0:18:1: class=0x068000 card=0x0501100b chip=0x0511100b rev=0x00 hdr=0x00
class = bridge
atapci0@pci0:18:2: class=0x010180 card=0x0502100b chip=0x0502100b rev=0x01 hdr=0x00
class = mass storage
subclass = ATA
none3@pci0:18:3: class=0x040100 card=0x0503100b chip=0x0503100b rev=0x00 hdr=0x00
class = multimedia
subclass = audio
none4@pci0:18:5: class=0x068000 card=0x0505100b chip=0x0515100b rev=0x00 hdr=0x00
class = bridgedmesg
Copyright 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 6.0-RELEASE-p6 #0: Sun Apr 2 22:26:42 UTC 2006
sullrich@builder.livebsd.com:/usr/obj.pfSense/usr/src/sys/pfSense_wrap.6
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Geode(TM) Integrated Processor by National Semi (266.69-MHz 586-class CPU)
Origin = "Geode by NSC" Id = 0x540 Stepping = 0
Features=0x808131 <fpu,tsc,msr,cx8,cmov,mmx>real memory = 134217728 (128 MB)
avail memory = 121917440 (116 MB)
wlan: mac acl policy registered
ath_hal: 0.9.14.9 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413)
npx0: [FAST]
npx0: <math processor="">on motherboard</math>
npx0: INT 16 interface
cpu0 on motherboard
pcib0: <host to="" pci="" bridge="">pcibus 0 on motherboard
pci0: <pci bus="">on pcib0
pci0: <network, ethernet="">at device 13.0 (no driver attached)
sis0: <natsemi 10="" dp8381[56]="" 100basetx="">port 0x1000-0x10ff mem 0x80040000-0x80040fff irq 10 at device 14.0 on pci0
sis0: Silicon Revision: DP83816A
miibus0: <mii bus="">on sis0
ukphy0: <generic ieee="" 802.3u="" media="" interface="">on miibus0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
sis0: Ethernet address: 00:0d:b9:03:8c:c4
pci0: <network, ethernet="">at device 17.0 (no driver attached)
Geode GPIO@ = f400
Geode PC Engines WRAP.2B/2C v1.11 tinyBIOS V1.4a (C)1997-2005
isab0: <pci-isa bridge="">port 0xf400-0xf43f,0xf600-0xf63f at device 18.0 on pci0
isa0: <isa bus="">on isab0
pci0: <bridge>at device 18.1 (no driver attached)
atapci0: <national geode="" sc1100="" ata33="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xfc00-0xfc0f at device 18.2 on pci0
ata0: <ata 0="" channel="">on atapci0
ata1: <ata 1="" channel="">on atapci0
pci0: <multimedia, audio="">at device 18.3 (no driver attached)
Geode CBA@ 0x9000
Geode rev: 06 03
Timecounter "Geode" frequency 27000000 Hz quality 1000
pci0: <bridge>at device 18.5 (no driver attached)
pmtimer0 on isa0
orm0: <isa option="" rom="">at iomem 0xe0000-0xe7fff on isa0
ppc0: parallel port not found.
sio0 at port 0x3f8-0x3ff irq 4 flags 0x30 on isa0
sio0: type 16550A, console
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
Timecounters tick every 10.000 msec
Fast IPsec: Initialized Security Association Processing.
ad0: FAILURE - SETFEATURES SET TRANSFER MODE status=51 <ready,dsc,error>error=4 <aborted>ad0: 122MB <hitachi xx.v.3.7.0.0="" rev="" 0.00="">at ata0-master BIOSPIO
GEOM_LABEL: Label for provider ad0a is ufs/pfSense.
GEOM_LABEL: Label for provider ad0d is ufs/pfSenseCfg.
Trying to mount root from ufs:/dev/ufs/pfSense
sis0: link state changed to DOWN
pflog0: promiscuous mode enabledThank you,
-Pete</hitachi></aborted></ready,dsc,error></isa></bridge></multimedia,></ata></ata></national></bridge></isa></pci-isa></network,></generic></mii></natsemi></network,></pci></host></fpu,tsc,msr,cx8,cmov,mmx>