Quantcast

ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Adrian Chadd-2
Hi,

I've flipped on ATH_ENABLE_11N and the interrupt mitigation in i386
and amd64 GENERIC.

I'll flip it on on PPC when someone (chmee?) verifies that 802.11n works on PPC.

It's still delicate. I still don't know if RTS/CTS HT frame protection
is working quite right on all chips. But all the basics are there
(software TX aggregation, RX AMPDU reordering in net80211, BAR
transmission, software queue pause and unpause, frame retransmission.)

Don't be surprised if your 802.11n mobile devices perform poorly as
the power queue handling is very broken and will result in all kinds
of weird traffic stalls if things are too aggressive. I'll look into
fixing that soon.

If you have problems, please read the wiki article:
http://wiki.freebsd.org/dev/ath(4) - specifically the bits where I
tell you to compile with the debugging and diagnostic stuff in your
-HEAD kernel, including the HAL/driver diagnostic APIs and tools.

Enjoy,



Adrian
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Adrian Chadd-2
On 15 June 2012 01:17, Adrian Chadd <[hidden email]> wrote:
> Hi,
>
> I've flipped on ATH_ENABLE_11N and the interrupt mitigation in i386
> and amd64 GENERIC.

[snip]

> If you have problems, please read the wiki article:
> http://wiki.freebsd.org/dev/ath(4) - specifically the bits where I
> tell you to compile with the debugging and diagnostic stuff in your
> -HEAD kernel, including the HAL/driver diagnostic APIs and tools.

I've also just created a wiki page which provides a very basic
overview of the debugging tools for the driver:

http://wiki.freebsd.org/dev/ath(4)/Debugging

I'll write one for net80211 tomorrow. It turns out 'wlanstats' is
really damned helpful.



adrian
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Justin Hibbits-3
In reply to this post by Adrian Chadd-2
On Fri, 15 Jun 2012 01:17:31 -0700
Adrian Chadd <[hidden email]> wrote:

> Hi,
>
> I've flipped on ATH_ENABLE_11N and the interrupt mitigation in i386
> and amd64 GENERIC.
>
> I'll flip it on on PPC when someone (chmee?) verifies that 802.11n
> works on PPC.

I would, but I don't have any other 802.11n hardware but the one card,
and I have problems with that one on 802.11g, which I'll track down
when I get some time, might have some time to test this weekend.

- Justin
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Monthadar Al Jaberi
In reply to this post by Adrian Chadd-2
On Fri, Jun 15, 2012 at 11:00 AM, Adrian Chadd <[hidden email]> wrote:

> On 15 June 2012 01:17, Adrian Chadd <[hidden email]> wrote:
>> Hi,
>>
>> I've flipped on ATH_ENABLE_11N and the interrupt mitigation in i386
>> and amd64 GENERIC.
>
> [snip]
>
>> If you have problems, please read the wiki article:
>> http://wiki.freebsd.org/dev/ath(4) - specifically the bits where I
>> tell you to compile with the debugging and diagnostic stuff in your
>> -HEAD kernel, including the HAL/driver diagnostic APIs and tools.
>
> I've also just created a wiki page which provides a very basic
> overview of the debugging tools for the driver:
>
> http://wiki.freebsd.org/dev/ath(4)/Debugging
>
> I'll write one for net80211 tomorrow. It turns out 'wlanstats' is
> really damned helpful.

Thank you for the wiki! :)

But I am having a problem with athsurvey which is just reporting:

         min                   avg                   max
  tx%  rx%  bc%  ec%    tx%  rx%  bc%  ec%    tx%  rx%  bc%  ec%
(100.0 100.0 100.0 100.0) ( 0.0  0.0  0.0  0.0) ( 0.0  0.0  0.0  0.0)
(100.0 100.0 100.0 100.0) ( 0.0  0.0  0.0  0.0) ( 0.0  0.0  0.0  0.0)

athdebug is returning with:
athdebug: sysctl-get(dev.ath.0.debug): Cannot allocate memory

This is in my kernel config:
...
# Atheros wireless NICs
device ath             # Atheros interface support
device ath_pci # Atheros PCI/Cardbus bus
options ATH_DEBUG
options ATH_DIAGAPI
options ATH_ENABLE_11N
options AH_DEBUG
options AH_DEBUG_ALQ
options ALQ
device ath_hal
option AH_SUPPORT_AR5416
device ath_rate_sample
option AH_RXCFG_SDMAMW_4BYTES
option AH_AR5416_INTERRUPT_MITIGATION
# There's no DFS radar detection support yet so this won't actually
# detect radars.  It however does enable the rest of the channel change
# machinery so DFS can be debugged.
option ATH_ENABLE_DFS


pciconf -lbvc gives:
ath0@pci0:0:17:0:       class=0x020000 card=0x30020777 chip=0x001b168c
rev=0x01 hdr=0x00
    vendor     = 'Atheros Communications Inc.'
    device     = 'AR5413 802.11abg NIC'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0x10000000, size 65536, enabled
    cap 01[44] = powerspec 2  supports D0 D3  current D0


I am running head@235822



>
>
>
> adrian
> _______________________________________________
> [hidden email] mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
> To unsubscribe, send any mail to "[hidden email]"



--
Monthadar Al Jaberi
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Adrian Chadd-2
On 15 June 2012 05:23, Monthadar Al Jaberi <[hidden email]> wrote:

> But I am having a problem with athsurvey which is just reporting:
>
>         min                   avg                   max
>  tx%  rx%  bc%  ec%    tx%  rx%  bc%  ec%    tx%  rx%  bc%  ec%
> (100.0 100.0 100.0 100.0) ( 0.0  0.0  0.0  0.0) ( 0.0  0.0  0.0  0.0)
> (100.0 100.0 100.0 100.0) ( 0.0  0.0  0.0  0.0) ( 0.0  0.0  0.0  0.0)

Ah. AR5416 and later only. :)

> athdebug is returning with:
> athdebug: sysctl-get(dev.ath.0.debug): Cannot allocate memory

No ATH_DEBUG? Are you building a module?


adrian
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Adrian Chadd-2
In reply to this post by Adrian Chadd-2
On 15 June 2012 05:51, Nenhum_de_Nos <[hidden email]> wrote:

> Adrian,
>
> this is for HEAD only ?

Yup, only for -HEAD. I don't have any plans to backport anything to -9
at the moment, it's a big task.



Adrian
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Monthadar Al Jaberi
In reply to this post by Adrian Chadd-2
On Fri, Jun 15, 2012 at 4:57 PM, Adrian Chadd <[hidden email]> wrote:

> On 15 June 2012 05:23, Monthadar Al Jaberi <[hidden email]> wrote:
>
>> But I am having a problem with athsurvey which is just reporting:
>>
>>         min                   avg                   max
>>  tx%  rx%  bc%  ec%    tx%  rx%  bc%  ec%    tx%  rx%  bc%  ec%
>> (100.0 100.0 100.0 100.0) ( 0.0  0.0  0.0  0.0) ( 0.0  0.0  0.0  0.0)
>> (100.0 100.0 100.0 100.0) ( 0.0  0.0  0.0  0.0) ( 0.0  0.0  0.0  0.0)
>
> Ah. AR5416 and later only. :)

so sad :(

is it a limitation of 5414? (Yes FreeBSD thinks its 5413, but on the
chip it says 5414A-001 :P)

>
>> athdebug is returning with:
>> athdebug: sysctl-get(dev.ath.0.debug): Cannot allocate memory
>
> No ATH_DEBUG? Are you building a module?

No its built in in the kernel, This is my kernel:

#
# AR71XX -- Kernel configuration file for FreeBSD/MIPS for Atheros 71xx systems
#
# This includes all the common drivers for the AR71XX boards along with
# the usb, net80211 and atheros driver code.
#
# $FreeBSD$
#

machine mips mips
ident AR71XX_BASE
cpu CPU_MIPS4KC
makeoptions KERNLOADADDR=0x80050000
options HZ=1000
options HWPMC_HOOKS

files "../atheros/files.ar71xx"

# For now, hints are per-board.

hints "AR71XX_BASE.hints"

makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols

# Build these as modules so small platform builds will have the
# modules already built.
makeoptions MODULES_OVERRIDE="random gpio ar71xx if_gif if_gre
if_bridge bridgestp usb wlan wlan_xauth wlan_acl wlan_wep wlan_tkip
wlan_ccmp wlan_rssadapt wlan_amrr ath ath_pci"

options DDB
options KDB

options SCHED_4BSD #4BSD scheduler
options INET #InterNETworking
options INET6 # IPv6

# options NFS_CL #Network Filesystem Client

options PSEUDOFS #Pseudo-filesystem framework
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions

# options NFS_LEGACYRPC
# Debugging for use in -current
options INVARIANTS
options INVARIANT_SUPPORT
options WITNESS
options WITNESS_SKIPSPIN
options DEBUG_REDZONE
options DEBUG_MEMGUARD

options         FFS                     #Berkeley Fast Filesystem
# options         SOFTUPDATES             #Enable FFS soft updates support
# options         UFS_ACL                 #Support for access control lists
# options         UFS_DIRHASH             #Improve performance on big
directories
# options MSDOSFS # Read MSDOS filesystems; useful for USB/CF

device pci
device ar71xx_pci

# 802.11 framework
options IEEE80211_DEBUG
options IEEE80211_ALQ
options IEEE80211_SUPPORT_MESH
# This option is currently broken for if_ath_tx.
options IEEE80211_SUPPORT_TDMA
options IEEE80211_AMPDU_AGE
device wlan            # 802.11 support
device wlan_wep        # 802.11 WEP support
device wlan_ccmp       # 802.11 CCMP support
device wlan_tkip       # 802.11 TKIP support
device wlan_xauth # 802.11 hostap support

# Atheros wireless NICs
device ath             # Atheros interface support
device ath_pci # Atheros PCI/Cardbus bus
options ATH_DEBUG
options ATH_DIAGAPI
options ATH_ENABLE_11N
options AH_DEBUG
options AH_DEBUG_ALQ
options ALQ
device ath_hal
option AH_SUPPORT_AR5416
device ath_rate_sample
option AH_RXCFG_SDMAMW_4BYTES
option AH_AR5416_INTERRUPT_MITIGATION
# There's no DFS radar detection support yet so this won't actually
# detect radars.  It however does enable the rest of the channel change
# machinery so DFS can be debugged.
option ATH_ENABLE_DFS

device mii
device arge

device usb
options USB_EHCI_BIG_ENDIAN_DESC        # handle big-endian byte order
options USB_DEBUG
options USB_HOST_ALIGN=32 # AR71XX (MIPS in general?) requires this
device ehci

device scbus
device umass
device da

# On-board SPI flash
device spibus
device ar71xx_spi
device mx25l
device ar71xx_wdog

device uart

device loop
device ether
device md
device bpf
device random
device if_bridge
device gif # ip[46] in ip[46] tunneling protocol
device gre # generic encapsulation - only for IPv4 in IPv4 though atm

options ARGE_DEBUG # Enable if_arge debugging for now

# Enable GPIO
device gpio
device gpioled


>
>
> adrian



--
Monthadar Al Jaberi
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Adrian Chadd-2
Hi,

The AR5414 should support it. I just havent implemented the same
changes in the ar5212 HAL.


Look at ar5416_ani.c and ar5212_ani.c.



adrian
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: ath(4) now defaults to 802.11n on GENERIC/i386 and GENERIC/amd64

Justin Hibbits-3
In reply to this post by Adrian Chadd-2
Hi,

On Fri, 15 Jun 2012 01:17:31 -0700
Adrian Chadd <[hidden email]> wrote:

> Hi,
>
> I've flipped on ATH_ENABLE_11N and the interrupt mitigation in i386
> and amd64 GENERIC.
>
> I'll flip it on on PPC when someone (chmee?) verifies that 802.11n
> works on PPC.

I did my duty as PPC guinea pig, and can happily say that unlike other
cards *cough*bw{i,n},wi*cough* I can actually use ath on my PowerBook.
AR5416, about as stable as I've seen so far.  I think you can flip it
on PPC now.

>
> It's still delicate. I still don't know if RTS/CTS HT frame protection
> is working quite right on all chips. But all the basics are there
> (software TX aggregation, RX AMPDU reordering in net80211, BAR
> transmission, software queue pause and unpause, frame retransmission.)
>
> Don't be surprised if your 802.11n mobile devices perform poorly as
> the power queue handling is very broken and will result in all kinds
> of weird traffic stalls if things are too aggressive. I'll look into
> fixing that soon.
>
> If you have problems, please read the wiki article:
> http://wiki.freebsd.org/dev/ath(4) - specifically the bits where I
> tell you to compile with the debugging and diagnostic stuff in your
> -HEAD kernel, including the HAL/driver diagnostic APIs and tools.
>
> Enjoy,
>
>
>
> Adrian

If I can reproduce that crash I mentioned on IRC, I'll post what I can
about it.

- Justin
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-wireless
To unsubscribe, send any mail to "[hidden email]"
Loading...