Finished: CALL FOR TESTERS Ralink wireless run(4) usb driver for FreeBSD

gnoma said:
Code:
# ifconfig rt28600 up scan
SSID            BSSID              CHAN RATE   S:N     INT CAPS
D-link          00:19:5b:54:cc:c2    6   54M -88:-95  119 EP   WPA
CHVHOME         00:1a:70:9d:62:0e    9   54M -89:-95  100 EP   WPA
belkin54g       00:17:3f:44:32:30   11   54M -89:-95  100 EP   WPA
BTC-ADSL        00:1e:73:59:5d:bf    3   54M -88:-95  100 E

It works great :)
Thank you :p
YOU ARE THE MAN!!!
I guess I can not connect any network with this driver or make an AP.(AP is the target idea)
So I can't wait for the fill driver :) I am sure it will be something great.

Thank you egorenar :p
YOU ARE THE MAN!!!

Thanks, but please be patient with me, i have not much time now for this driver but i promise to continue my work.
:)
 
OK dude :) sorry I don't meen to rush you.
And... about that driver I don't know is it normal and do I have to make more settings about that, but when I restart my PC and type ifconfig that wi-fi card was not in the list.
Is it a driver bug or I just didn't make some settings I should do?? I don't know I just install the driver and didn't touch nothing else.
 
Hello everyone,

A fix have been released for the driver for 8.0 RELEASE and CURRENT. There were some packet loss/drop and mem leak. (The fix improves some performance too.)

Also, 40 more vender/device IDs have been added.

Get it here


gnoma said:
OK dude :) sorry I don't meen to rush you.
And... about that driver I don't know is it normal and do I have to make more settings about that, but when I restart my PC and type ifconfig that wi-fi card was not in the list.
Is it a driver bug or I just didn't make some settings I should do?? I don't know I just install the driver and didn't touch nothing else.
@gnoma

Since I'm here.
Yes, you need to make more settings. If you want the driver to be loaded automatically at boot time, add
Code:
[I]module_name[/I]_load="YES"
to /boot/loader.conf
you have to install the driver (make install), though.
and if you add
Code:
ifconfig_[I]interface_name[/I]="WPA DHCP"
to /etc/rc.conf you should be on the network automatically.

You can find complete detail at http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-wireless.html
 
OK Thank you.... then I just need to know then ame of the module that I have to add in loader.conf :)
May be it is something like
Code:
module_rt28600_load="YES"
or something?
About that fix
A fix have been released for the driver for 8.0 RELEASE and CURRENT. There were some packet loss/drop and mem leak. (The fix improves some performance too.)
Rekease 8.0 and CURRENT? That current meens 7.2?
 
Hi!

I'm not an expert in these things and dont understand english very well, so please, could someone just help me with this?

I have the Linksys WUSB54GC, which appears in the list, but I dont have any idea how to install these drivers. Is the "run.tar" the driver? SO what do I have to do with it.

So, great thanks in advance,

Reygok
 
7.2, ad hoc mode?

Is the run.tar.bz2 file from the first post still the correct version for FreeBSD 7,2? And is ad hoc mode supported, or do I have to have an access point somewhere?
 
@gnoma
No, based on your post it should be
Code:
rt2860_load="YES"

@Reygok
First, you have to check the version of your device. Look at the back of the device. If the model No says "WUSB54GC" use if_rum. (It is written in very very small font. You have to look hard.) The driver comes with FreeBSD. If it says "WUSB54GC ver. 3" use if_run. Please see the first post for latest update.

@GeorgeMitchell
It is for 7.2, but ad hoc mode isn't supported. Probably the same reason the original author excluded the support.
 
Sorry, but what do you mean by: "The driver comes with FreeBSD"?
My device says WUSB54GC, nothing else.

Thanks, Reygok
 
Sorry, I should have said "The driver is included in FreeBSD." I live in Canada, but I'm not a Canadian. I feel I'm more fluent in C than English, these days.

Anyway, rum(4) should work fine with your device. If you are using GENERIC kernel, it even compiled into the kernel. Just plug in the device and run
% ifconfig
You should see "rum0" in the output. If not you need to load the driver manually. It depends which version of FreeBSD you are using. But when you run
% man rum
you will see appropriate manual for your version. And the manual tells you how to use the driver as well.
 
Okay, so I need to insall this FreeBSD? I did not know that^^
So, now, before I continue, I want to know if I can go into Wifi with my Nintendo DS when using this driver?, If not, i dont even have to install this BDS thing
 
Reygok, what are you doing on a FreeBSD forum if you a) don't run it and b) have never heard of it? Everything posted here applies to the FreeBSD operating system, not your game console.
 
gnoma said:
OK dude :) sorry I don't meen to rush you.
And... about that driver I don't know is it normal and do I have to make more settings about that, but when I restart my PC and type ifconfig that wi-fi card was not in the list.
Is it a driver bug or I just didn't make some settings I should do?? I don't know I just install the driver and didn't touch nothing else.

I have good news for guys who are impatient to test rt2860 :)
I have finally implemented sending for rt2860. It's not very stable yet. Please test it and provide feedback. It's the first version of the driver with Tx support.
AP mode doesn't work yet.
And Tx watchdog happens to often for my liking.
The driver supports 802.11abg, QoS, encryption in hardware, WEP, TKIP and AES.

Installation:

Extract archive, run make and load the driver with kldload.
The driver is compiled with debug information on by default, so
i would be grateful if you could provide crash dumps with backtrace to me
should the driver crash :) (kgdb backtraces would be nice)

I will try to fix bugs in the next days.
You will not believe me how many crashes i had while testing this driver
before i got more or less stable version :)

Writing this post with rt2860 :)

Thanks.

2.12.2009 Update, Tx DMA scatter added => more efficient sending of frames, avoids mbuf copying

4.12.2009
The driver is now stable. But
you should disable bgscan with "ifconfig rt28600 -bgscan" else
the link goes down after some time, don't know why.
The problem with interrupts is not solved yet.
Added statistic output, try "sysctl dev.rt2860.0.stats=1" and then "dmesg".

:e :e :e
 

Attachments

  • rt2860_fbsd72.tar.bz2
    32.7 KB · Views: 376
I was unable to copy the code becos I don't see it on SSH and on the FreeBSD machine it was for short time and then it reboots.
It was something like...
Code:
interupt storm detected on "irq10"; trottiling interupt source
interupt storm detected on "irq10"; trottiling interupt source
interupt storm detected on "irq10"; trottiling interupt source
rt28600: Tx watchdog: tx_timer=0
rt28600: Tx watchdog: tx_timer=0
rt28600: Tx watchdog: tx_timer=0
interupt storm detected on "irq10"; trottiling interupt source
rt28600: Tx watchdog: tx_timer=0
And so on...
And also I want to ask if the driver is able to support an AP mode? Becos this morning I saw somehere that not every wi-fi driver in freebsd support this mode. Well I am sure at this time it doesn't but when it is complete?
 
gnoma said:
I was unable to copy the code becos I don't see it on SSH and on the FreeBSD machine it was for short time and then it reboots.
It was something like...
Code:
interupt storm detected on "irq10"; trottiling interupt source
interupt storm detected on "irq10"; trottiling interupt source
interupt storm detected on "irq10"; trottiling interupt source
rt28600: Tx watchdog: tx_timer=0
rt28600: Tx watchdog: tx_timer=0
rt28600: Tx watchdog: tx_timer=0
interupt storm detected on "irq10"; trottiling interupt source
rt28600: Tx watchdog: tx_timer=0
And so on...
And also I want to ask if the driver is able to support an AP mode? Becos this morning I saw somehere that not every wi-fi driver in freebsd support this mode. Well I am sure at this time it doesn't but when it is complete?

Thanks for feedback,

yes the interface supports AP mode but driver not yet.
But i intend to implement it :)
 
gnoma said:
I was unable to copy the code becos I don't see it on SSH and on the FreeBSD machine it was for short time and then it reboots.
It was something like...
Code:
interupt storm detected on "irq10"; trottiling interupt source
interupt storm detected on "irq10"; trottiling interupt source
interupt storm detected on "irq10"; trottiling interupt source
rt28600: Tx watchdog: tx_timer=0
rt28600: Tx watchdog: tx_timer=0
rt28600: Tx watchdog: tx_timer=0
interupt storm detected on "irq10"; trottiling interupt source
rt28600: Tx watchdog: tx_timer=0
And so on...
And also I want to ask if the driver is able to support an AP mode? Becos this morning I saw somehere that not every wi-fi driver in freebsd support this mode. Well I am sure at this time it doesn't but when it is complete?

The problem is that the NIC generates an interrupt for every received or sent packet !!! I could count the interrupts with "vmstat -i" and rt2860 generates as many interrupts as system timer interrupt !!! I guess i need to do interrupt mitigation. How do i do it on FreeBSD, has somebody any ideas ???

The hardware of rt2860 chip is able to do interrupt mitigation in hardware but this feature is not documented. I tried to experiment with it, but the transfer rate becomes too low x(

3.12.2009
I have found a solution to my problem. The e1000 driver implements this.
It uses Fast IRQs and task queues to defer work which my driver does in
interrupt (similar to Linux tasklets). I will implement it soon, test
and report back :)

3.12.2009
Implemented interrupt mitigation with task queues.
It didn't solve the problem x(
 
I just learned that FreeBSD 8 was released. Cool :e
It is time to start porting my drivers for rt2870 and rt2860 chips to FreeBSD 8.

:e:e:e
 
I installed FreeBSD 8.0 today and started to port rt2860 device driver. Monitor mode is already working :e
I will try to make STA mode work on this weekend.
 
I have good news, guys.
rt2860 STA mode with hardware encryption is working on FreeBSD 8.
:e :e :e
I ported the first version and writing this post with rt2860 driver on FreeBSD 8.
I will improve it in the next days and then you can test it
by yourself.
 
Here is the first version of rt2860 device driver for FreeBSD 8.
It is stable and works fine on my very old PC with P4 2.5GHz.
Please test it and provide feedback.
You should deactivate bgscan with "ifconfig wlan0 -bgscan"
because it causes some problems.

Installation instruction:

1. Add following lines to rc.conf

Code:
wlans_rt28600="wlan0"
ifconfig_wlan0="WPA DHCP"

2. Restart networking

Code:
# /etc/rc.d/netif restart

3. Compile rt2860.ko KLM

Code:
$ make

4. Load rt2860.ko

Code:
# kldload ./rt2860.ko

AP mode is still work in progress.

6.12.2009
Added PCI IDs for Ralink RT2790 PCIe card.

Disabled BGSCAN because it causes problems.
So you don't have to disable it every time manually
with ifconfig.

:e :e :e
 

Attachments

  • rt2860_fbsd8.tar.bz2
    33.8 KB · Views: 412
I have done # kldload ./rt2860.ko
Code:
# kldstat
Id Refs Address    Size     Name
 1    9 0xc0400000 760d70   kernel
 2    1 0xc0b61000 52dc     ums.ko
 5    1 0xcb27f000 12000    rt2860.ko
but nothing happened
rt28600 has not been found

What else should I do ?
 
kvchung said:
I have done # kldload ./rt2860.ko
Code:
# kldstat
Id Refs Address    Size     Name
 1    9 0xc0400000 760d70   kernel
 2    1 0xc0b61000 52dc     ums.ko
 5    1 0xcb27f000 12000    rt2860.ko
but nothing happened
rt28600 has not been found

What else should I do ?

My driver currently works only for Linksys WMP600N.
I need PCI vendor and product ID of your card so
my driver could identify it and automatically load.

Try lspci -v and provide me with PCI IDs.
And in 5 minutes you can test it again.

:e
 
# lspci -v not work
I try pciconf
Code:
pciconf -lv
...
none0@pci0:1:0:0:       class=0x028000 card=0x27901814 chip=0x07811814 rev=0x00 hdr=0x00
    vendor     = 'Ralink Technology, Corp'
    device     = 'Wireless (RT2860/RT2890)'
    class      = network
 
Back
Top