Herton Ronaldo Krzesinski | 1 Nov 2010 05:39
Picon
Favicon

Re: [PATCH] rtl8187b: do not do per packet TX AGC

On 29-10-2010 20:31, seno wrote:
> Thadeu Lima de Souza Cascardo<cascardo <at> ...>  writes:
>
>> Perhaps, the problem is related to using compat-wireless. Have you tried
>> using the module without the patch, using this same compat-wireless
>> version in the same linux version you are using?
>
> Cascardo, you were right :-) Your patch did not cause the problem.
> I get those errors also with an unpatched compat-wireless-2010-10-25 driver.
>
> With a patched compat-wireless-2.6.33.6 there occur no errors.
>
> The router reports a better signal quality compared to the unpatched module, but
> I can not really recognize a better throughput - usually still max 1 mbit  <at>  10
> meters.
>
> I noticed that the connection is fast for a short time after booting (10 mbit  <at> 
> 10 meters), but a few seconds after the download on speedtest.net started
> (meaning the network gets under load), speed drops to 1 mbit and never recovers
> to faster speed again; somehow like an "unrecoverable fallback mechanism"...?

I have seen the throughput issue, but on my tests it wasn't so bad. 
Usually max I got on testing was 24M while close to the AP, and it goes 
into lower speeds when going more far away, but takes a good number of 
meters to go down to 1M.

Anyway of course something isn't right. I started reviewing realtek GPL 
code (their ieee80211 drivers) and code in rtl8187 in the kernel, doing 
many tests and verifying things, trying to understand and check some 
register writes etc. (hard with missing doc or other info).
(Continue reading)

Pavel Machek | 1 Nov 2010 10:31
Favicon

Re: carl9170 disconnects under load

Hi!

> I'm testing driver from -wireless testing, cca 2.6.26-rc7.
> 
> It seems to work (up to 802.11n speeds -- I've seen iwconfig claiming
> 121 MB/sec), but disconnects rather quickly when under load:
> 
> telnet 192.168.1.3 chargen > /dev/null
> 
> The machine is powerpc mpc5200b board, with OHCI driver -- it is not
> capable of USB2.0 speeds.

So I tried with different AP, one not capable of 802.11n speeds. It
fails in different way :-(. But this one is with my backport to
2.6.34...
								Pavel

wlan0: associate with 00:11:95:05:30:d7 (try 1)
wlan0: RX AssocResp from 00:11:95:05:30:d7 (capab=0x421 status=0
aid=1)
wlan0: associated
phy0: Allocated STA 00:11:95:05:30:d7
phy0: Inserted STA 00:11:95:05:30:d7
phy0: Removed STA 00:11:95:05:30:d7
phy0: Destroyed STA 00:11:95:05:30:d7
wlan0: deauthenticating from 00:11:95:05:30:d7 by local choice
(reason=3)
phy0: device now idle
cfg80211: Calling CRDA to update world regulatory domain
phy0: device no longer idle - scanning
(Continue reading)

Pavel Machek | 1 Nov 2010 10:46
Favicon

Re: carl9170 disconnects under load

Hi!

> > I'm testing driver from -wireless testing, cca 2.6.26-rc7.
> > 
> > It seems to work (up to 802.11n speeds -- I've seen iwconfig claiming
> > 121 MB/sec), but disconnects rather quickly when under load:
> > 
> > telnet 192.168.1.3 chargen > /dev/null
> > 
> > The machine is powerpc mpc5200b board, with OHCI driver -- it is not
> > capable of USB2.0 speeds.
> 
> So I tried with different AP, one not capable of 802.11n speeds. It
> fails in different way :-(. But this one is with my backport to
> 2.6.34...

But it fails with wireless-testing tree, too :-(.

Linux mpc5200b 2.6.36-rc8-wl-pma-48197-gdcae733-dirty #43 Tue Oct 26
 12:06:21 CEST 2010 ppc

								Pavel

PHY: f0003000:00 - Link is Up - 100/Full
warning: `named' uses 32-bit capabilities (legacy support in use)
process `named' is using obsolete setsockopt SO_BSDCOMPAT
ieee80211 phy0: device now idle
ieee80211 phy0: device no longer idle - scanning
wlan0: authenticate with 00:11:95:05:30:d7 (try 1)
wlan0: authenticated
(Continue reading)

Wojciech Dubowik | 1 Nov 2010 11:18
Favicon

DFS implementation in mac80211

Hello,
  Our company has started implementation of Dynamic Frequency Selection in current linux wireless
drivers. We have got basic radar detection part working. It has been tested with software based pulse simulator.

The question is on how to integrate it with mac80211. Pulse detection has to be done deep in specific driver
but decision making can be shifted to either mac80211 or higher into user space. Current ETSI
specification allows up to 1 second time for changing channel so it doesn't need to be real time.
Has anyone put already some thoughts on where to implement available channel list management, radar table
handling, etc. and what would be the interface?

Br,
Wojciech Dubowik

--

-- 
Wojciech Dubowik
Senior Software Engineer
Neratec Solutions AG
Rosswiesstr. 29, CH-8608 Bubikon, Switzerland
Tel: +41 55 253 2096 (office)
Fax: +41 55 253 2070
wojciech.dubowik@...
http://www.neratec.com
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@...
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Pavel Machek | 1 Nov 2010 13:11
Favicon

Re: carl9170 disconnects under load

Hi!

> > > > I'm testing driver from -wireless testing, cca 2.6.26-rc7.
> > > > 
> > > > It seems to work (up to 802.11n speeds -- I've seen iwconfig claiming
> > > > 121 MB/sec), but disconnects rather quickly when under load:
> > > > 
> > > > telnet 192.168.1.3 chargen > /dev/null
> > > > 
> > > > The machine is powerpc mpc5200b board, with OHCI driver -- it is not
> > > > capable of USB2.0 speeds.
> > > 
> > > So I tried with different AP, one not capable of 802.11n speeds. It
> > > fails in different way :-(. But this one is with my backport to
> > > 2.6.34...
> > 
> > But it fails with wireless-testing tree, too :-(.
> > 
> > Linux mpc5200b 2.6.36-rc8-wl-pma-48197-gdcae733-dirty #43 Tue Oct 26
> >  12:06:21 CEST 2010 ppc
> 
> It works "better" if I force AP to 1Mbps.... (Note that I have USB1.1
> host only).

Ok, so I tried on powerpc machine with usb2.0... it worked a bit
better, but after a reboot, I got this one:

usb 1-3: Atheros AR9170 is registered as 'phy0'
kjournald starting.  Commit interval 5 seconds
EXT3-fs (sda3): warning: maximal mount count reached, running e2fsck
(Continue reading)

Luciano Coelho | 1 Nov 2010 12:52
Picon

[RFC 02/15] cfg80211: add periodic scan request structure

Tihs patch adds the periodic scan request structure to cfg80211.

Signed-off-by: Luciano Coelho <luciano.coelho@...>
---
 include/net/cfg80211.h |   12 ++++++++++++
 net/wireless/core.h    |    1 +
 2 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 2a7936d..84518cc 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
 <at>  <at>  -719,6 +719,18  <at>  <at>  struct cfg80211_scan_request {
 };

 /**
+ * struct cfg80211_periodic_request - periodic scan request description
+ *
+ *  <at> wiphy: the wiphy this was for
+ *  <at> dev: the interface
+ */
+struct cfg80211_periodic_request {
+	/* internal */
+	struct wiphy *wiphy;
+	struct net_device *dev;
+};
+
+/**
  * enum cfg80211_signal_type - signal type
  *
(Continue reading)

Luciano Coelho | 1 Nov 2010 12:52
Picon

[RFC 05/15] nl80211: call periodic_start and periodic_stop

Now that cfg80211 has support for periodic scan, we call those ops in the
nl80211 code.

Signed-off-by: Luciano Coelho <luciano.coelho@...>
---
 net/wireless/nl80211.c |   30 ++++++++++++++++++++----------
 1 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index 0884464..fd50186 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
 <at>  <at>  -3014,6 +3014,11  <at>  <at>  static int nl80211_start_periodic(struct sk_buff *skb,
 	if (err)
 		goto out_rtnl;

+	if (!rdev->ops->periodic_start) {
+		err = -EOPNOTSUPP;
+		goto out;
+	}
+
 	if (!netif_running(dev)) {
 		err = -ENETDOWN;
 		goto out;
 <at>  <at>  -3035,14 +3040,15  <at>  <at>  static int nl80211_start_periodic(struct sk_buff *skb,

 	rdev->periodic_req = request;

-	/* add actual calls here */
-
(Continue reading)

Luciano Coelho | 1 Nov 2010 12:52
Picon

[RFC 12/15] cfg80211: add ssid support to periodic scan

Just add ssids in the periodic_request structure.  This is needed in order to
pass the desired ssids to filter down to the mac.

Signed-off-by: Luciano Coelho <luciano.coelho@...>
---
 include/net/cfg80211.h |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 218e59f..3ac6fc9 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
 <at>  <at>  -721,12 +721,16  <at>  <at>  struct cfg80211_scan_request {
 /**
  * struct cfg80211_periodic_request - periodic scan request description
  *
+ *  <at> ssids: SSIDs to report (other SSIDs will be filtered out)
+ *  <at> n_ssids: number of SSIDs
  *  <at> n_channels: total number of channels to scan
  *  <at> wiphy: the wiphy this was for
  *  <at> dev: the interface
  *  <at> channels: channels to scan
  */
 struct cfg80211_periodic_request {
+	struct cfg80211_ssid *ssids;
+	int n_ssids;
 	u32 n_channels;

 	/* internal */
 <at>  <at>  -1436,6 +1440,8  <at>  <at>  struct ieee80211_txrx_stypes {
(Continue reading)

Luciano Coelho | 1 Nov 2010 12:52
Picon

[RFC 04/15] cfg80211: add periodic scan start and stop ops

Add periodic_start and periodic_stop operations to the wireless configuration
API.

Signed-off-by: Luciano Coelho <luciano.coelho@...>
---
 include/net/cfg80211.h |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 84518cc..ac7b934 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
 <at>  <at>  -1158,6 +1158,8  <at>  <at>  struct cfg80211_pmksa {
  *  <at> set_power_mgmt: Configure WLAN power management. A timeout value of -1
  *	allows the driver to adjust the dynamic ps timeout value.
  *  <at> set_cqm_rssi_config: Configure connection quality monitor RSSI threshold.
+ *  <at> periodic_start: Tell the driver to start a periodic scan.
+ *  <at> periodic_stop: Tell the driver to stop an ongoing periodic scan.
  *
  *  <at> mgmt_frame_register: Notify driver that a management frame type was
  *	registered. Note that this callback may not sleep, and cannot run
 <at>  <at>  -1316,6 +1318,12  <at>  <at>  struct cfg80211_ops {
 	void	(*mgmt_frame_register)(struct wiphy *wiphy,
 				       struct net_device *dev,
 				       u16 frame_type, bool reg);
+	int	(*periodic_start)(struct wiphy *wiphy,
+				  struct net_device *dev,
+				  struct cfg80211_periodic_request *request);
+	int	(*periodic_stop)(struct wiphy *wiphy,
+				 struct net_device *dev,
(Continue reading)

Luciano Coelho | 1 Nov 2010 12:52
Picon

[RFC 13/15] nl80211: add ssid filtering support to the periodic scan

Parse and add ssids information to the periodic scan request.

Signed-off-by: Luciano Coelho <luciano.coelho@...>
---
 net/wireless/nl80211.c |   38 +++++++++++++++++++++++++++++++++-----
 1 files changed, 33 insertions(+), 5 deletions(-)

diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index d5b9047..5ae5935 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
 <at>  <at>  -3004,10 +3004,11  <at>  <at>  static int nl80211_start_periodic(struct sk_buff *skb,
 	struct cfg80211_periodic_request *request;
 	struct cfg80211_registered_device *rdev;
 	struct net_device *dev;
+	struct cfg80211_ssid *ssid;
 	struct ieee80211_channel *channel;
 	struct nlattr *attr;
 	struct wiphy *wiphy;
-	int err, tmp, n_channels, i;
+	int err, tmp, n_ssids = 0, n_channels, i;
 	enum ieee80211_band band;

 	printk("nl80211_start_periodic\n");
 <at>  <at>  -3048,7 +3049,17  <at>  <at>  static int nl80211_start_periodic(struct sk_buff *skb,
 				n_channels += wiphy->bands[band]->n_channels;
 	}

+	if (info->attrs[NL80211_ATTR_SCAN_SSIDS])
+		nla_for_each_nested(attr, info->attrs[NL80211_ATTR_SCAN_SSIDS], tmp)
(Continue reading)


Gmane