Ralink rt2870 wifi support?

richardpl said:
The git code doesn't have that panic check, it is KASSERT instead and should be disabled by default.

So try git code with kernel (with disabled INVARIANTS). Maybe driver can survive a bit longer.

I do not understand what I need to do. Do I need to try building new version of ndisulator from http://gitorious.org/NDISulator? I am getting error when it builds. As for 'disabled INVARIANTS', I did not enable this option in kernel.

tim-m89 said:
It seems like a lot of people are having problems with this. For me when the driver unloads it either works or crashes the whole system. Every time I shutdown I unmount all non essential drives first then run sync. I shutdown and it seems random chance on whether it will work or crash.

This is a shame and it would be great if there was a developer to take over and revive this project....

I agree with you.
 
vhapkin said:
I do not understand what I need to do. Do I need to try building new version of ndisulator from http://gitorious.org/NDISulator? I am getting error when it builds. As for 'disabled INVARIANTS', I did not enable this option in kernel.

You need stable branch of git code and FreeBSD 8 STABLE. If build fails post error output. (Please follow instructions in README file)
 
Code:
FreeBSD test64.home 8.2-PRERELEASE FreeBSD 8.2-PRERELEASE #1: Thu Jan 27 01:51:30 SAMT 2011     
[email]root@test64.home[/email]:/usr/obj/usr/src/sys/MYKERNEL  amd64

Is it STABLE?

Code:
Script started on Mon Jan 31 22:09:56 2011
root(root) has logged on ttyv1 from local
test64#	make attach

mounting NDISulator code on top of FreeBSD code
mount_nullfs src/sys/compat/ndis /usr/src/sys/compat/ndis
mount_nullfs src/sys/dev/if_ndis /usr/src/sys/dev/if_ndis
mount_nullfs src/sys/modules/ndis /usr/src/sys/modules/ndis
mount_nullfs src/sys/modules/if_ndis /usr/src/sys/modules/if_ndis
mount_nullfs src/usr.sbin/ndiscvt /usr/src/usr.sbin/ndiscvt
test64#	make clean

cd /usr/src/sys/modules/ndis && make clean
rm -f export_syms ndis.ko ndis.kld subr_pe.o subr_ndis.o subr_hal.o subr_ntoskrnl.o kern_ndis.o kern_windrv.o subr_usbd.o winx_wrap.o opt_usb.h 
pci_if.h bus_if.h device_if.h vnode_if.h vnode_if_newproto.h vnode_if_typedef.h
cd /usr/src/sys/modules/if_ndis && make clean
rm -f export_syms if_ndis.ko if_ndis.kld if_ndis.o if_ndis_pci.o if_ndis_pccard.o if_ndis_usb.o opt_usb.h opt_ndis.h opt_wlan.h card_if.h 
pci_if.h bus_if.h device_if.h
cd /usr/src/usr.sbin/ndiscvt && make clean
rm -f y.output ndiscvt ndiscvt.o subr_pe.o inf.o inf-token.o inf-parse.o ndiscvt.8.gz ndisgen.8.gz ndiscvt.8.cat.gz ndisgen.8.cat.gz inf-
token.c inf-parse.c y.tab.c y.tab.h
test64#	make build

cd /usr/src/sys/modules/ndis && make
Warning: Object directory not changed from original /usr/src/sys/modules/ndis
awk -f @/tools/makeobjops.awk @/kern/device_if.m -h
awk -f @/tools/makeobjops.awk @/kern/bus_if.m -h
awk -f @/tools/makeobjops.awk @/dev/pci/pci_if.m -h
awk -f @/tools/vnode_if.awk @/kern/vnode_if.src -p
awk -f @/tools/vnode_if.awk @/kern/vnode_if.src -q
awk -f @/tools/vnode_if.awk @/kern/vnode_if.src -h
:> opt_usb.h
cc -O2 -pipe -fno-strict-aliasing -D_KERNEL -DKLD_MODULE -nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-
growth=100 --param large-function-growth=1000 -fno-common  -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-
sse2 -mno-sse3 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-
protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -
Wno-pointer-sign -fformat-extensions -c /usr/src/sys/modules/ndis/../../compat/ndis/subr_pe.c
cc -O2 -pipe -fno-strict-aliasing -D_KERNEL -DKLD_MODULE -nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-
growth=100 --param large-function-growth=1000 -fno-common  -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-
sse2 -mno-sse3 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-
protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -
Wno-pointer-sign -fformat-extensions -c /usr/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c
/usr/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c: In function 'NdisAllocateMemory':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c:391: warning: format '%llu' expects type 'long long unsigned int', but argument 5 has 
type 'uint64_t'
/usr/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c: In function 'NdisMFreeSharedMemory':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c:1253: warning: format '%llu' expects type 'long long unsigned int', but argument 7 has 
type 'uint64_t'
cc -O2 -pipe -fno-strict-aliasing -D_KERNEL -DKLD_MODULE -nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-
growth=100 --param large-function-growth=1000 -fno-common  -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-
sse2 -mno-sse3 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-
protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -
Wno-pointer-sign -fformat-extensions -c /usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'WRITE_PORT_ULONG':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:101: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:101: error: (Each undeclared identifier is reported only once
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:101: error: for each function it appears in.)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'WRITE_PORT_USHORT':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:108: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'WRITE_PORT_UCHAR':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:115: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'WRITE_PORT_BUFFER_ULONG':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:122: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'WRITE_PORT_BUFFER_USHORT':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:130: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'WRITE_PORT_BUFFER_UCHAR':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:138: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'READ_PORT_USHORT':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:146: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'READ_PORT_ULONG':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:153: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'READ_PORT_UCHAR':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:160: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'READ_PORT_BUFFER_ULONG':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:167: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'READ_PORT_BUFFER_USHORT':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:175: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c: In function 'READ_PORT_BUFFER_UCHAR':
/usr/src/sys/modules/ndis/../../compat/ndis/subr_hal.c:183: error: 'X86_BUS_SPACE_IO' undeclared (first use in this function)
*** Error code 1

Stop in /usr/src/sys/modules/ndis.
*** Error code 1

Stop in /root/ralink/ndisulator.
Exit 1
test64#	make clean

cd /usr/src/sys/modules/ndis && make clean
rm -f export_syms ndis.ko ndis.kld subr_pe.o subr_ndis.o subr_hal.o subr_ntoskrnl.o kern_ndis.o kern_windrv.o subr_usbd.o winx_wrap.o opt_usb.h 
pci_if.h bus_if.h device_if.h vnode_if.h vnode_if_newproto.h vnode_if_typedef.h
cd /usr/src/sys/modules/if_ndis && make clean
rm -f export_syms if_ndis.ko if_ndis.kld if_ndis.o if_ndis_pci.o if_ndis_pccard.o if_ndis_usb.o opt_usb.h opt_ndis.h opt_wlan.h card_if.h 
pci_if.h bus_if.h device_if.h
cd /usr/src/usr.sbin/ndiscvt && make clean
rm -f y.output ndiscvt ndiscvt.o subr_pe.o inf.o inf-token.o inf-parse.o ndiscvt.8.gz ndisgen.8.gz ndiscvt.8.cat.gz ndisgen.8.cat.gz inf-
token.c inf-parse.c y.tab.c y.tab.h
test64#	make detach

umounting NDISulator code
umount /usr/src/sys/compat/ndis
umount /usr/src/sys/dev/if_ndis
umount /usr/src/sys/modules/ndis
umount /usr/src/sys/modules/if_ndis
umount /usr/src/usr.sbin/ndiscvt
test64#	exit

exit

Script done on Mon Jan 31 22:10:20 2011

Have I done something wrong?
 
I never worked with git and was not able to find stable version at first.
Yesterday I installed stable version of ndisulator and was doing copying for an hour.
All works fine.
Thank you very much.
 
vhapkin said:
I never worked with git and was not able to find stable version at first.
Yesterday I installed stable version of ndisulator and was doing copying for an hour.
All works fine.
Thank you very much.

There isn't really a stable version of these drivers. It's all dev quality. Use nothing but the latest snapshot unless told otherwise.
 
[Solved] Ralink rt2870 wifi support?

I am trying to install and configure a WiFi card that utilizes the RaLink rt2860 chipset. I did a new installation of FreeBSD 8.1 and then upgraded to 8.2 PreRelease.

tim-m89 said:
Original question:

Does FreeBSD support RaLink rt2870. My exact wifi is this if that makes any difference?

Update:

Summary of this thread:
egorenar has been developing an rt2860 and a rt2870 driver for both FreeBSD 7.2 and 8.0.
He is hosting them here.
Download the latest tarball that is correct for both your chipset and your FreeBSD version. Then:
Code:
tar xvzf driver.tar.gz
cd driver
make
As root or prepending with sudo the usual commands for driver loading kldstat, kldload, kldunload can be used or, if you prefer, you may want them to load automatically at boot time:
Code:
cp rt2870.ko /boot/kernel/
cp rt2870.ko.symbols /boot/kernel/
And add a line to /boot/loader.conf:
Code:
rt2870_load="YES"
Loading rt2860.ko/rt2870.ko will create the hardware interface rt28600/rt28700 respectively but since version 8 of FreeBSD, these are not controlled directly for the usual settings but with a virtual interface that must created either manually like:
Code:
ifconfig wlan0 create wlandev rt28700

Then, I followed the above instructions and downloaded the the rt2860 driver for 8.0 ran the make, copied the appropriate files to /boot/kernel, and ran the ifconfig manually to test.

Everything went properly until the ifconfig command. Then I received the following response:
Code:
ifconfig: SIOCIFCREATE2: Device not configured

Is there something else I need to do to make the configure work properly? Or, did something change in 8.1 / 8.2 that requires a different process?

TIA
 
Day_JJ said:
Yes, the module was loaded manually and it is displayed in the module list by kldstat.

(Missed the second part - sorry.)
No interface is shown by ifconfig. However, I thought nothing would be shown until after the "ifconfig create..." step. Did I misunderstand what tim-m89 meant?
Loading rt2860.ko/rt2870.ko will create the hardware interface rt28600/rt28700 respectively but since version 8 of FreeBSD, these are not controlled directly for the usual settings but with a virtual interface
In GENERIC, Ralink RT2500 wireless cards have device names of ral*. Is that what I should see in the ifconfig display?
 
Day_JJ said:
I am trying to install and configure a WiFi card that utilizes the RaLink rt2860 chipset.

It looks like I had bad information.

My WiFi card is a PCI card from B-Link - a BL-LW04-A2. The documentation I have found indicates that the card utilizes the RaLink RT2760 rather than the RT2860 chip. However, earlier in the thread (January 9th 2010), in a response to a post by Halt, egorenar indicated that the RT2860 driver should support the RT2760 chipset for this card (quote shortened):
Halt said:
Hi, I have wifi chipset RT2760, for this chipset uses ralink driver rt2860. But your driver does not find this chipset.
Code:
<snip>
[gw] /home/wtf# pciconf -lvcb
...
none2@pci0:4:0:0:       class=0x028000 card=0x27601814 chip=0x07011814 rev=0x00 hdr=0x00
    vendor     = 'Ralink Technology, Corp'
    class      = network
    bar   [10] = type Memory, range 32, base 0xd0400000, size 65536, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
...
Thank you!

My system reports indicate the card is present but reports it to have the RT3062 chipset.
Code:
# pciconf -lvcb
<snip>
none1@pci0:1:2:0:	class=0x028000 card=0x30621814 chip=0x30621814 rev=0x00 hdr=0x00
    vendor     = 'Ralink Technology, Corp.'
    class      = network
    bar   [10] = type Memory, range 32, base 0xf9000000, size 65536, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
<snip>

A post in Linux wireless networking development reports "a diff of firmware.h shows no difference in ralink pci drivers (RT3562_RT3062, RT2860, RT3090)" and a download of the RT3062 Linux driver from the RaLink web site uses the same code as for the RT2860.

Does something else need to be done to the driver to find this card? Or is it something I can do by a patch or parameter?
 
Hi! Egornar. Good job!

Is your driver set can work with rt3572 chip (LinkSys WUSB600n v.2) ?
Can say, that my ASUS WL-130N (pci) work fine with your RT2860 under FreeBSD 8.1-RELEASE.

One more question: Do you have any HCL for your driver set?

Thanx for you answers!
 
Rt3062

Hi egorenar,

It looks like you have spent a lot of time and work on RT2860/RT2870 support. If you are still enhancing the driver, can it be extended for the RT3062 chipset also?
 
Still get issues with RT2860

Hi all,

I have an Asus EEE 901 running i386 FreeBSD 8.2-RELEASE. I upgraded from 8.0-RELEASE a couple of weeks ago because I was getting intermittent failures of the rt2860 driver (the "rt28600: Tx watchdog timeout: resetting" messaged others have noticed), and I saw the new release was out. I recompiled egorenar's driver and loaded it. It works, but I'm still seeing the Tx watchdog timeouts after a while and like others, ifconfig still shows associated but no packets make it through.

I also tried the ndisgen tool using the latest Windows 32-bit drivers from their website, but every time I try bringing up the interface I get a kernel panic with a double fault, as again others have noticed.

My questions are:
1. Has anybody found a solution to the Tx Watchdog timeout issue?
2. If not, I saw that richardpl mentioned a solution to the NDIS issue, which involves patching ndis modules and recompiling. I'm not against that, but all the patches are against 8-STABLE, and I'd rather stick with 8-RELEASE. I searched Google and these forums but couldn't find mcuh about the NDIS problem other than richardpl's comments and the links to the patches against 8-STABLE. Does anybody have NDIS patches against 8.2-RELEASE?

Thanks much for your help!
 
The stable branch of my code should compile and work on 8.2 RELEASE. If it does not work for any reason (panic, compile, performance ...), post error output here or directly to me.
 
Hey richardpl,

I got a chance to try your ndis code today. I checked out the lastest version from the stable branch and compiled according to your directions (make attach && make build etc). Again, I'm on FreeBSD 8.2-RELEASE i386 build. The code comiled fine and replaced my if_ndis.ko and ndis.ko files in /boot/kernel/, as expected. I then used ndisgen with the latest win32 drivers from Ralink to generate a .ko file for my rt2860 card.

When I load rt2860_sys.ko (which in turn loads if_ndis.ko and ndis.ko), I get the following output:
Code:
NDIS: no match for ExEventObjectType
ndis0: <802.11n Wireless LAN Card> mem 0xf7ff0000-0xf7ffffff irq 19 at device 0.0 on pci1
ndis0: [ITHREAD]
wlan0: Ethernet address: [MY_MAC_ADDRESS]

Fatal double fault:
eip = 0xc61978b9
esp = 0xe7dd4d08
ebp = 0xe7dd5a38
cpuid = 0; apic id = 00
panic: double fault
cpuid = 0
KDB: stack backtrace:
#0 0xc05f008d at kdb_backtrace+0x48
#1 0xc05c06bc at panic+0x108
#2 0xc08acd76 at trap_fatal+0
Uptime: 1m18s
Cannot dump. Device not defined or unavailable.
Automatic reboot in 15 seconds - press a key on the console to abort

I can't dump because it's an Asus EEE 901 PC, so I don't have any swap space. The double fault was the same problem I saw with the 8.2-RELEASE ndis code, and I think it was the same problem a year ago when I tried ndis on 8.0-RELEASE. Like I said before, I'd use the rt2860 driver from earlier in this thread, but I keep getting Tx watchdog timeout errors that are also unresolved. Any other ideas?

Thanks for the suggestion though, and I'd be happy to try something else if you have an idea.
 
double fault may be caused by very small kernel STACK on i386. And ndis drivers like to use bigger STACK.

Recompile custom kernel with KSTACK_PAGES set to 12.
 
KSTACK_PAGES=12 seems to work

Hey richardpl,

Thanks for the tip - I recompiled my kernel with KSTACK_PAGES=12 and it did not crash. Since rebuilding the kernel overwrote the new if_ndis.ko and ndis.ko files I made yesterday, I decided to see if it would work with the original ndis driver I build using the 8.2-RELEASE code. The kernel booted fine and ifconfig said I was associated with the router, but I wasn't getting any actual network traffic (my router is configured to use WPA/WPA2 Personal with TKIP using Tomato custom firmware). I restarted the network and got a kernel panic, but I didn't hit a key in time to stop it from rebooting.

So I tried again using the if_ndis.ko and ndis.ko files I made with your NDISulator code, as well as the rt2860 driver I build with your code. When booting with your code, I also no longer get a panic. However, here's an oddity: even though my ndis driver (rt2860_sys.ko) is loaded on start in /boot/loader.conf, the ndis0 and wlan0 interfaces do not show on ifconfig. kldstat shows rt2860_sys.ko, if_ndis/ko, and ndis.ko all loaded. If I unload rt2860_sys.ko and reload it, then it is recognized and wireless works! Does your code fix something with authenticating on WPA/WPA2 networks?

So thanks for the fix (haven't noticed an Tx watchdog timeouts yet), but do you have any idea why my card doesn't attach the first time my driver is loaded?

Thanks again!
 
You even have message (in CAPS) in dmesg that loading minimport driver (created with ndisgen) from loader.conf is not allowed.

This is because some drivers use a routine which depends on another system thread, but while booting there is only one thread running. Before this you would get panic while booting with those drivers, I fixed panic but such drivers will remain broken after boot until you reload driver - so I just disallowed loading drivers while booting.
 
PCI card with rt2870 chipset not working

Hi!

I've followed egorenar instructions to compile and load rt2870 driver in my FreeBSD 8.2 release installation. The driver is loaded, but my card is not detected:

Code:
[predicador@kaitain] /usr/home/predicador# ifconfig wlan0 create wlandev rt28700
ifconfig: SIOCIFCREATE2: Device not configured

Here is some relevant info:

Code:
[predicador@kaitain] /usr/home/predicador# kldstat
Id Refs Address            Size     Name
 1  127 0xffffffff80100000 df7168   kernel
 2    2 0xffffffff80ef8000 ed10     ntfs.ko
 3    1 0xffffffff80f07000 fd8      ntfs_iconv.ko
 4    5 0xffffffff80f08000 6b68     libiconv.ko
 5    1 0xffffffff80f0f000 1ad510   zfs.ko
 6    2 0xffffffff810bd000 3990     opensolaris.ko
 7    1 0xffffffff810c1000 1cbd0    geom_eli.ko
 8    2 0xffffffff810de000 2ab80    crypto.ko
 9    3 0xffffffff81109000 dc40     zlib.ko
10    1 0xffffffff81117000 1e5f8    geom_journal.ko
11    1 0xffffffff81136000 20fe0    geom_mirror.ko
12    1 0xffffffff81157000 3158     geom_uzip.ko
13    1 0xffffffff8115b000 10468    sbp.ko
14    1 0xffffffff8116c000 413b0    if_bwn.ko
15    2 0xffffffff811ae000 c9e8     siba_bwn.ko
16    1 0xffffffff811bb000 e730     if_ipw.ko
17    1 0xffffffff811ca000 13578    if_iwi.ko
18    1 0xffffffff811de000 1ebf0    if_iwn.ko
19    1 0xffffffff811fd000 12498    if_wpi.ko
20    4 0xffffffff81210000 75118    sound.ko
21    1 0xffffffff81286000 13bd8    snd_uaudio.ko
22    1 0xffffffff8129a000 1d930    rt2870.ko

Code:
[predicador@kaitain] /usr/home/predicador# pciconf -lvcb                          
none1@pci0:4:0:0:       class=0x028000 card=0x30621814 chip=0x30621814 rev=0x00 hdr=0x00
    vendor     = 'Ralink Technology, Corp.'
    class      = network
    bar   [10] = type Memory, range 32, base 0xfebf0000, size 65536, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0

Maybe my card ids should be added to the driver, as I've seen in other posts...
Any help on this?

Thanks in advance!
 
predicador said:
Hi!

I've followed egorenar instructions to compile and load rt2870 driver in my FreeBSD 8.2 release installation. The driver is loaded, but my card is not detected:

Code:
[predicador@kaitain] /usr/home/predicador# ifconfig wlan0 create wlandev rt28700
ifconfig: SIOCIFCREATE2: Device not configured

Here is some relevant info:

Code:
[predicador@kaitain] /usr/home/predicador# kldstat
Id Refs Address            Size     Name
 1  127 0xffffffff80100000 df7168   kernel
 2    2 0xffffffff80ef8000 ed10     ntfs.ko
 3    1 0xffffffff80f07000 fd8      ntfs_iconv.ko
 4    5 0xffffffff80f08000 6b68     libiconv.ko
 5    1 0xffffffff80f0f000 1ad510   zfs.ko
 6    2 0xffffffff810bd000 3990     opensolaris.ko
 7    1 0xffffffff810c1000 1cbd0    geom_eli.ko
 8    2 0xffffffff810de000 2ab80    crypto.ko
 9    3 0xffffffff81109000 dc40     zlib.ko
10    1 0xffffffff81117000 1e5f8    geom_journal.ko
11    1 0xffffffff81136000 20fe0    geom_mirror.ko
12    1 0xffffffff81157000 3158     geom_uzip.ko
13    1 0xffffffff8115b000 10468    sbp.ko
14    1 0xffffffff8116c000 413b0    if_bwn.ko
15    2 0xffffffff811ae000 c9e8     siba_bwn.ko
16    1 0xffffffff811bb000 e730     if_ipw.ko
17    1 0xffffffff811ca000 13578    if_iwi.ko
18    1 0xffffffff811de000 1ebf0    if_iwn.ko
19    1 0xffffffff811fd000 12498    if_wpi.ko
20    4 0xffffffff81210000 75118    sound.ko
21    1 0xffffffff81286000 13bd8    snd_uaudio.ko
22    1 0xffffffff8129a000 1d930    rt2870.ko

Code:
[predicador@kaitain] /usr/home/predicador# pciconf -lvcb                          
none1@pci0:4:0:0:       class=0x028000 card=0x30621814 chip=0x30621814 rev=0x00 hdr=0x00
    vendor     = 'Ralink Technology, Corp.'
    class      = network
    bar   [10] = type Memory, range 32, base 0xfebf0000, size 65536, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0

Maybe my card ids should be added to the driver, as I've seen in other posts...
Any help on this?

Thanks in advance!

Correct me if I'm wrong but I believe the 2870 is usb where as the 2860 is pci. If it is a usb device then what is the output of this command when run as root:
Code:
usbconfig dump_device_desc
 
Well, my card is PCI; I thought I was using the right driver. However, I've tried with 2860 and same result...

This is a very important issue for me, since I can't throw a cable along my living room. Perhaps the fastest solution for me is moving to debian...

thanks a lot for your input
 
This driver may be doomed to go unsupported. run driver may support it or maybe rum. I have attached an updated rt2860 that should recognize your chip but it may be very dangerous to use it. It could be a very different product.

Attachment moved to later post->
 
Luckily this driver still works with -CURRENT, successfully using this with my RT2700E card which run(4) in the tree doesn't support as there is only support for USB devices & not PCIe

Code:
rt28600@pci0:3:0:0:	class=0x028000 card=0x27901814 chip=0x07811814 rev=0x00 hdr=0x00
    vendor     = 'Ralink Technology, Corp.'
    device     = 'Wireless (RT2860/RT2890)'
    class      = network

Code:
rt28600: <Ralink RT2790 PCIe> mem 0xf7f00000-0xf7f0ffff irq 17 at device 0.0 on pci3
rt28600: invalid EEPROM LNA gain #2: 0x00
rt28600: invalid EEPROM LNA gain #3: 0x00
rt28600: invalid EEPROM powersave level
rt28600: MAC/BBP RT2860 (rev 0x28720200), RF RT2720
rt28600: skip channel 10, could not find extension channel
rt28600: skip channel 11, could not find extension channel
rt28600: skip channel 12, could not find extension channel
rt28600: skip channel 13, could not find extension channel
rt28600: skip channel 14, could not find extension channel
 
Back
Top