All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: Felix Fietkau <nbd@openwrt.org>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Subject: Re: Issue with ath9k and tx/rx chainmask:  3x3 doesn't work with mask of 0x1.
Date: Wed, 22 Aug 2012 17:48:11 -0700	[thread overview]
Message-ID: <50357DCB.1000908@candelatech.com> (raw)
In-Reply-To: <503573C6.4000103@candelatech.com>

On 08/22/2012 05:05 PM, Ben Greear wrote:
> On 08/22/2012 03:24 PM, Ben Greear wrote:
>> On 08/22/2012 01:30 PM, Felix Fietkau wrote:
>>> On 2012-08-20 10:24 PM, Ben Greear wrote:
>>>> I am trying to test out an attenuator.  For now, I have only a single attenuator,
>>>> so I set tx and rx chainmask to 0x1 on both AP and Station machine.
>>>>
>>>> I then connected channel 0 on the two machines together through the
>>>> attenuator.
>>>>
>>>> I have two station interfaces on the station machine.  They both
>>>> seem to associate OK, but they cannot receive dhcp responses.
>>>>
>>>> It *seems* that broadcast packets may go through fine.
>>>>
>>>> If I force the rate down to 1x1 or 2x2 MIMO (or force disable /n
>>>> and just use /a), then it appears to work fine.
>>>>
>>>> Nics are WPEA-127n (AR9380).  Kernel is 3.5.1+ on AP, 3.5.2+ on station
>>>> machine.
>>>>
>>>> I can see why forcing it down to 1x1 might work around some issue,
>>>> but I find it funny that 2x2 works while 3x3 does not.
>>> Did you set the chainmask manually via debugfs? If so, don't do that!
>>> Use the nl80211 antenna control API (e.g. via iw)
>>
>> [root@lec2010-ath9k-1 lanforge]# ./local/sbin/iw phy wiphy0 set antenna 1 1
>> command failed: Operation not supported (-95)
>> [root@lec2010-ath9k-1 lanforge]# ./local/sbin/iw phy wiphy0 set antenna 1
>> command failed: Operation not supported (-95)
>> [root@lec2010-ath9k-1 lanforge]# ./local/sbin/iw phy wiphy0 set antenna 3
>> command failed: Operation not supported (-95)
>> [root@lec2010-ath9k-1 lanforge]# ./local/sbin/iw phy wiphy0 set antenna 7
>> command failed: Operation not supported (-95)
>> [root@lec2010-ath9k-1 lanforge]# uname -a
>> Linux lec2010-ath9k-1 3.5.1+ #15 SMP PREEMPT Thu Aug 9 09:31:45 PDT 2012 i686 i686 i386 GNU/Linux
>
> I'm guessing it is because of this:
>
> static int ieee80211_set_antenna(struct wiphy *wiphy, u32 tx_ant, u32 rx_ant)
> {
>      struct ieee80211_local *local = wiphy_priv(wiphy);
>
>      if (local->started)
>          return -EOPNOTSUPP;
>
>      return drv_set_antenna(local, tx_ant, rx_ant);
> }

Even when I manually admin down everything, I can still freeze the NIC
(WPEA-127n, AR9380).

To reproduce:
stop all VAP/STA interfaces on wiphy0
set tx and rx chainmask to 2 using 'iw'
start vap0

# Boom, fails to reset, and for whatever reason, local->started never
# goes false, so you can't even set the chainmask back using 'iw'.


Aug 22 17:41:34 localhost dhcpd: DHCPDISCOVER from 00:00:08:76:52:14 via rddVR17: network 99.88.77.0/24: no free leases
Aug 22 17:41:37 localhost kernel: [ 5575.474706] ath: wiphy0: Unable to reset hardware; reset status -5 (freq 5785 MHz)
Aug 22 17:41:38 localhost kernel: [ 5576.116434] ath: wiphy0: Unable to reset hardware; reset status -5 (freq 5785 MHz)
Aug 22 17:41:38 localhost kernel: [ 5576.476336] ath: wiphy0: Unable to reset hardware; reset status -5 (freq 5785 MHz)
Aug 22 17:41:45 localhost kernel: [ 5582.653715] ath: wiphy0: Unable to reset hardware; reset status -5 (freq 5785 MHz)
Aug 22 17:41:46 localhost dhclient[18218]: DHCPDISCOVER on rddVR18 to 255.255.255.255 port 67 interval 11
Aug 22 17:41:46 localhost dhcpd: DHCPDISCOVER from 26:0c:f3:49:95:16 via rddVR17: network 99.88.77.0/24: no free leases
Aug 22 17:41:47 localhost dhclient[18706]: DHCPDISCOVER on rddVR18#4 to 255.255.255.255 port 67 interval 14
Aug 22 17:41:47 localhost dhcpd: DHCPDISCOVER from 00:00:08:76:52:14 via rddVR17: network 99.88.77.0/24: no free leases
Aug 22 17:41:57 localhost dhclient[18218]: DHCPDISCOVER on rddVR18 to 255.255.255.255 port 67 interval 7
Aug 22 17:41:57 localhost dhcpd: DHCPDISCOVER from 26:0c:f3:49:95:16 via rddVR17: network 99.88.77.0/24: no free leases
Aug 22 17:41:59 localhost kernel: [ 5597.279989] in set_wiphy
Aug 22 17:41:59 localhost kernel: [ 5597.296604] in set_wiphy
Aug 22 17:41:59 localhost kernel: [ 5597.314646] in set_wiphy
Aug 22 17:41:59 localhost kernel: [ 5597.319479] set antenna failed, local->started
Aug 22 17:41:59 localhost kernel: [ 5597.326555] ops->set_antenna rv: -95



Thanks,
Ben


-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


  reply	other threads:[~2012-08-23  0:48 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-20 20:24 Issue with ath9k and tx/rx chainmask: 3x3 doesn't work with mask of 0x1 Ben Greear
2012-08-22 20:30 ` Felix Fietkau
2012-08-22 21:22   ` Ben Greear
2012-08-22 22:24   ` Ben Greear
2012-08-23  0:05     ` Ben Greear
2012-08-23  0:48       ` Ben Greear [this message]
2012-08-23  5:29         ` Felix Fietkau
2012-08-23  5:40           ` Ben Greear

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50357DCB.1000908@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=nbd@openwrt.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.