Re: pull request for wireless-2.6.git

2006-01-27 Thread John W. Linville
On Fri, Jan 27, 2006 at 10:05:01AM -0500, Jeff Garzik wrote:

> So, before I pull this, two questions:
> 
> 1) You sent a subsequent pull request, with only three csets listed. 
> Does that indicate a pull will now _only_ pull 3 csets, or it will pull 
> 3 _additional_ csets?
> 
> 2) The above includes changes appropriate for -rc, and changes not 
> appropriate for -rc.  Do you wish to split up and resubmit, or pull all 
> of the above into upstream-2.6.17 branch, skipping 2.6.16-rc altogether? 
>  (thus denying 2.6.16 users the bugfixes)

Obviously, I left things unclear.  Plus, I need to segregate fixes
from new development.

Per our off-line discussion, I'll reformulate my tree...

John
-- 
John W. Linville
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: pull request for wireless-2.6.git

2006-01-27 Thread Jeff Garzik

John W. Linville wrote:

The following changes since commit 0f36b018b2e314d45af86449f1a97facb1fbe300:
  Linus Torvalds:
Merge master.kernel.org:/.../sfrench/cifs-2.6

are found in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git 
upstream-jgarzik

Denis Vlasenko:
  WEP fields are incorrectly shown to be INSIDE snap in the doc

John W. Linville:
  ieee80211: add prototypes to avoid build warning

[EMAIL PROTECTED]:
  orinoco_cs: tweak Vcc debugging messages

Zhu Yi:
  ieee80211: Fix problem with not decrypting broadcast packets
  ieee80211: Log if netif_rx() drops the packet
  ieee80211: Fix iwlist scan can only show about 20 APs
  ieee80211: Add LEAP authentication type
  ieee80211: Fix A band min and max channel definitions
  ieee80211: add flags for all geo channels
  ieee80211: Add spectrum management information
  ieee80211: kmalloc+memset -> kzalloc cleanups
  ieee80211: TIM information element parsing
  ieee80211: Add TKIP crypt->build_iv


So, before I pull this, two questions:

1) You sent a subsequent pull request, with only three csets listed. 
Does that indicate a pull will now _only_ pull 3 csets, or it will pull 
3 _additional_ csets?


2) The above includes changes appropriate for -rc, and changes not 
appropriate for -rc.  Do you wish to split up and resubmit, or pull all 
of the above into upstream-2.6.17 branch, skipping 2.6.16-rc altogether? 
 (thus denying 2.6.16 users the bugfixes)


Jeff



-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


another pull request for wireless-2.6.git

2006-01-20 Thread John W. Linville
The following changes since commit aeb042d56adfcd536bad5cd018caeb74143181a5:
  John W. Linville:
Merge git://git.kernel.org/.../torvalds/linux-2.6

are found in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git 
upstream-jgarzik

Zhu Yi:
  ieee80211: Add 802.11h data type and structures
  ieee80211: Add helpers for IBSS DFS handling
  ieee80211: Add 802.11h information element parsing

 include/net/ieee80211.h  |  163 +-
 net/ieee80211/ieee80211_module.c |   18 
 net/ieee80211/ieee80211_rx.c |  109 -
 3 files changed, 281 insertions(+), 9 deletions(-)

diff --git a/include/net/ieee80211.h b/include/net/ieee80211.h
index 5673ccf..ff6ef9e 100644
--- a/include/net/ieee80211.h
+++ b/include/net/ieee80211.h
@@ -300,6 +300,23 @@ enum ieee80211_reasoncode {
WLAN_REASON_CIPHER_SUITE_REJECTED = 24,
 };
 
+/* Action categories - 802.11h */
+enum ieee80211_actioncategories {
+   WLAN_ACTION_SPECTRUM_MGMT = 0,
+   /* Reserved 1-127  */
+   /* Error128-255 */
+};
+
+/* Action details - 802.11h */
+enum ieee80211_actiondetails {
+   WLAN_ACTION_CATEGORY_MEASURE_REQUEST = 0,
+   WLAN_ACTION_CATEGORY_MEASURE_REPORT = 1,
+   WLAN_ACTION_CATEGORY_TPC_REQUEST = 2,
+   WLAN_ACTION_CATEGORY_TPC_REPORT = 3,
+   WLAN_ACTION_CATEGORY_CHANNEL_SWITCH = 4,
+   /* 5 - 255 Reserved */
+};
+
 #define IEEE80211_STATMASK_SIGNAL (1<<0)
 #define IEEE80211_STATMASK_RSSI (1<<1)
 #define IEEE80211_STATMASK_NOISE (1<<2)
@@ -378,6 +395,8 @@ struct ieee80211_rx_stats {
u8 mask;
u8 freq;
u16 len;
+   u64 tsf;
+   u32 beacon_time;
 };
 
 /* IEEE 802.11 requires that STA supports concurrent reception of at least
@@ -609,6 +628,28 @@ struct ieee80211_auth {
struct ieee80211_info_element info_element[0];
 } __attribute__ ((packed));
 
+struct ieee80211_channel_switch {
+   u8 id;
+   u8 len;
+   u8 mode;
+   u8 channel;
+   u8 count;
+} __attribute__ ((packed));
+
+struct ieee80211_action {
+   struct ieee80211_hdr_3addr header;
+   u8 category;
+   u8 action;
+   union {
+   struct ieee80211_action_exchange {
+   u8 token;
+   struct ieee80211_info_element info_element[0];
+   } exchange;
+   struct ieee80211_channel_switch channel_switch;
+
+   } format;
+} __attribute__ ((packed));
+
 struct ieee80211_disassoc {
struct ieee80211_hdr_3addr header;
__le16 reason;
@@ -693,7 +734,15 @@ struct ieee80211_txb {
 /* QoS structure */
 #define NETWORK_HAS_QOS_PARAMETERS  (1<<3)
 #define NETWORK_HAS_QOS_INFORMATION (1<<4)
-#define NETWORK_HAS_QOS_MASK(NETWORK_HAS_QOS_PARAMETERS | 
NETWORK_HAS_QOS_INFORMATION)
+#define NETWORK_HAS_QOS_MASK(NETWORK_HAS_QOS_PARAMETERS | \
+NETWORK_HAS_QOS_INFORMATION)
+
+/* 802.11h */
+#define NETWORK_HAS_POWER_CONSTRAINT(1<<5)
+#define NETWORK_HAS_CSA (1<<6)
+#define NETWORK_HAS_QUIET   (1<<7)
+#define NETWORK_HAS_IBSS_DFS(1<<8)
+#define NETWORK_HAS_TPC_REPORT  (1<<9)
 
 #define QOS_QUEUE_NUM   4
 #define QOS_OUI_LEN 3
@@ -749,6 +798,91 @@ struct ieee80211_tim_parameters {
 
 /***/
 
+enum { /* ieee80211_basic_report.map */
+   IEEE80211_BASIC_MAP_BSS = (1 << 0),
+   IEEE80211_BASIC_MAP_OFDM = (1 << 1),
+   IEEE80211_BASIC_MAP_UNIDENTIFIED = (1 << 2),
+   IEEE80211_BASIC_MAP_RADAR = (1 << 3),
+   IEEE80211_BASIC_MAP_UNMEASURED = (1 << 4),
+   /* Bits 5-7 are reserved */
+
+};
+struct ieee80211_basic_report {
+   u8 channel;
+   __le64 start_time;
+   __le16 duration;
+   u8 map;
+} __attribute__ ((packed));
+
+enum { /* ieee80211_measurement_request.mode */
+   /* Bit 0 is reserved */
+   IEEE80211_MEASUREMENT_ENABLE = (1 << 1),
+   IEEE80211_MEASUREMENT_REQUEST = (1 << 2),
+   IEEE80211_MEASUREMENT_REPORT = (1 << 3),
+   /* Bits 4-7 are reserved */
+};
+
+enum {
+   IEEE80211_REPORT_BASIC = 0, /* required */
+   IEEE80211_REPORT_CCA = 1,   /* optional */
+   IEEE80211_REPORT_RPI = 2,   /* optional */
+   /* 3-255 reserved */
+};
+
+struct ieee80211_measurement_params {
+   u8 channel;
+   __le64 start_time;
+   __le16 duration;
+} __attribute__ ((packed));
+
+struct ieee80211_measurement_request {
+   struct ieee80211_info_element ie;
+   u8 token;
+   u8 mode;
+   u8 type;
+   struct ieee80211_measurement_params params[0];
+} __attribute__ ((packed));
+
+struct ieee80211_measurement_report {
+   struct ieee80211_info_element ie;
+   u8 token;
+   u8 mode;
+   u8 type;
+   uni

pull request for wireless-2.6.git

2006-01-19 Thread John W. Linville
The following changes since commit 0f36b018b2e314d45af86449f1a97facb1fbe300:
  Linus Torvalds:
Merge master.kernel.org:/.../sfrench/cifs-2.6

are found in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git 
upstream-jgarzik

Denis Vlasenko:
  WEP fields are incorrectly shown to be INSIDE snap in the doc

John W. Linville:
  ieee80211: add prototypes to avoid build warning

[EMAIL PROTECTED]:
  orinoco_cs: tweak Vcc debugging messages

Zhu Yi:
  ieee80211: Fix problem with not decrypting broadcast packets
  ieee80211: Log if netif_rx() drops the packet
  ieee80211: Fix iwlist scan can only show about 20 APs
  ieee80211: Add LEAP authentication type
  ieee80211: Fix A band min and max channel definitions
  ieee80211: add flags for all geo channels
  ieee80211: Add spectrum management information
  ieee80211: kmalloc+memset -> kzalloc cleanups
  ieee80211: TIM information element parsing
  ieee80211: Add TKIP crypt->build_iv

 drivers/net/wireless/orinoco_cs.c|4 +-
 include/net/ieee80211.h  |   10 +-
 include/net/ieee80211_crypt.h|3 +-
 net/ieee80211/ieee80211_crypt.c  |   11 +++
 net/ieee80211/ieee80211_crypt_ccmp.c |8 -
 net/ieee80211/ieee80211_crypt_tkip.c |   56 +-
 net/ieee80211/ieee80211_crypt_wep.c  |5 ++-
 net/ieee80211/ieee80211_geo.c|   39 +++-
 net/ieee80211/ieee80211_rx.c |   36 ++
 net/ieee80211/ieee80211_tx.c |   30 ++
 net/ieee80211/ieee80211_wx.c |   43 --
 11 files changed, 176 insertions(+), 69 deletions(-)

diff --git a/drivers/net/wireless/orinoco_cs.c 
b/drivers/net/wireless/orinoco_cs.c
index b664708..3c128b6 100644
--- a/drivers/net/wireless/orinoco_cs.c
+++ b/drivers/net/wireless/orinoco_cs.c
@@ -261,13 +261,13 @@ orinoco_cs_config(dev_link_t *link)
/* Note that the CIS values need to be rescaled */
if (cfg->vcc.present & (1 << CISTPL_POWER_VNOM)) {
if (conf.Vcc != cfg->vcc.param[CISTPL_POWER_VNOM] / 
1) {
-   DEBUG(2, "orinoco_cs_config: Vcc mismatch 
(conf.Vcc = %d, CIS = %d)\n",  conf.Vcc, cfg->vcc.param[CISTPL_POWER_VNOM] / 
1);
+   DEBUG(2, "orinoco_cs_config: Vcc mismatch 
(conf.Vcc = %d, cfg CIS = %d)\n",  conf.Vcc, cfg->vcc.param[CISTPL_POWER_VNOM] 
/ 1);
if (!ignore_cis_vcc)
goto next_entry;
}
} else if (dflt.vcc.present & (1 << CISTPL_POWER_VNOM)) {
if (conf.Vcc != dflt.vcc.param[CISTPL_POWER_VNOM] / 
1) {
-   DEBUG(2, "orinoco_cs_config: Vcc mismatch 
(conf.Vcc = %d, CIS = %d)\n",  conf.Vcc, dflt.vcc.param[CISTPL_POWER_VNOM] / 
1);
+   DEBUG(2, "orinoco_cs_config: Vcc mismatch 
(conf.Vcc = %d, dflt CIS = %d)\n",  conf.Vcc, dflt.vcc.param[CISTPL_POWER_VNOM] 
/ 1);
if(!ignore_cis_vcc)
goto next_entry;
}
diff --git a/include/net/ieee80211.h b/include/net/ieee80211.h
index df05f46..5673ccf 100644
--- a/include/net/ieee80211.h
+++ b/include/net/ieee80211.h
@@ -220,6 +220,7 @@ struct ieee80211_snap_hdr {
 /* Authentication algorithms */
 #define WLAN_AUTH_OPEN 0
 #define WLAN_AUTH_SHARED_KEY 1
+#define WLAN_AUTH_LEAP 2
 
 #define WLAN_AUTH_CHALLENGE_LEN 128
 
@@ -803,9 +804,9 @@ enum ieee80211_state {
 #define IEEE80211_24GHZ_MAX_CHANNEL 14
 #define IEEE80211_24GHZ_CHANNELS14
 
-#define IEEE80211_52GHZ_MIN_CHANNEL 36
+#define IEEE80211_52GHZ_MIN_CHANNEL 34
 #define IEEE80211_52GHZ_MAX_CHANNEL 165
-#define IEEE80211_52GHZ_CHANNELS32
+#define IEEE80211_52GHZ_CHANNELS131
 
 enum {
IEEE80211_CH_PASSIVE_ONLY = (1 << 0),
@@ -1105,6 +1106,11 @@ extern int ieee80211_is_valid_channel(st
 extern int ieee80211_channel_to_index(struct ieee80211_device *ieee,
  u8 channel);
 extern u8 ieee80211_freq_to_channel(struct ieee80211_device *ieee, u32 freq);
+extern u8 ieee80211_get_channel_flags(struct ieee80211_device *ieee,
+ u8 channel);
+extern const struct ieee80211_channel *ieee80211_get_channel(struct
+ieee80211_device
+*ieee, u8 channel);
 
 /* ieee80211_wx.c */
 extern int ieee80211_wx_get_scan(struct ieee80211_device *ieee,
diff --git a/include/net/ieee80211_crypt.h b/include/net/ieee80211_crypt.h
index cd82c3e..eb47641 100644
--- a/include/net/ieee80211_crypt.h
+++ b/include/net/ieee80211_crypt.h
@@ -47,7 +47,8 @@ struct ieee80211_crypto_ops {
/* deinitial

Re: Pull request for wireless-2.6

2006-01-17 Thread Jeff Garzik

pulled, thanks
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Pull request for wireless-2.6

2006-01-16 Thread John W. Linville
On Mon, Jan 16, 2006 at 08:41:36PM -0500, Jeff Garzik wrote:
> John W. Linville wrote:
> >The following changes since commit 
> >4a8e4a270b89030bdeb09d2f8cef7cfe9a50e54d:
> >  Linus Torvalds:
> >Merge git://oss.sgi.com:8090/oss/git/xfs-2.6
> >
> >are found in the git repository at:
> >
> >  git://git.tuxdriver.com/git/wireless-2.6.git
> 
> Is it on a branch?
> 
> [EMAIL PROTECTED] netdev-2.6]$ git pull 
> git://git.tuxdriver.com/git/wireless-2.6.git
> Already up-to-date.

> >  git://git.tuxdriver.com/git/wireless-2.6.git

Yeah, sorry...I was in a hurry to watch Jack Bauer... :-)

git://git.tuxdriver.com/git/wireless-2.6.git upstream-jgarzik

Thanks,

John
-- 
John W. Linville
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Pull request for wireless-2.6

2006-01-16 Thread Jeff Garzik

John W. Linville wrote:

The following changes since commit 4a8e4a270b89030bdeb09d2f8cef7cfe9a50e54d:
  Linus Torvalds:
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6

are found in the git repository at:

  git://git.tuxdriver.com/git/wireless-2.6.git


Is it on a branch?

[EMAIL PROTECTED] netdev-2.6]$ git pull 
git://git.tuxdriver.com/git/wireless-2.6.git

Already up-to-date.

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Pull request for wireless-2.6

2006-01-16 Thread John W. Linville
The following changes since commit 4a8e4a270b89030bdeb09d2f8cef7cfe9a50e54d:
  Linus Torvalds:
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6

are found in the git repository at:

  git://git.tuxdriver.com/git/wireless-2.6.git

Adrian Bunk:
  ipw2100: remove code for WIRELESS_EXT < 18
  hostap: don't #include C files in hostap_main.c

Dan Williams:
  drivers/net/wireless: correct reported ssid lengths

Graham Gower:
  prism54/islpci_eth.c: dev_kfree_skb used with interrupts disabled

Olaf Kirch:
  ipw2200: do not sleep in ipw_request_direct_scan

Pavel Roskin:
  hostap: allow flashing firmware

Pete Zaitcev:
  iw_handler.h: SIOCSIWNAME -> SIOCSIWCOMMIT in comment

 drivers/net/wireless/airo.c   |2 
 drivers/net/wireless/atmel.c  |4 
 drivers/net/wireless/hostap/Kconfig   |   22 +
 drivers/net/wireless/hostap/Makefile  |3 
 drivers/net/wireless/hostap/hostap.h  |   37 ++
 drivers/net/wireless/hostap/hostap_80211.h|3 
 drivers/net/wireless/hostap/hostap_80211_rx.c |   11 +
 drivers/net/wireless/hostap/hostap_80211_tx.c |   15 +
 drivers/net/wireless/hostap/hostap_ap.c   |   36 +-
 drivers/net/wireless/hostap/hostap_ap.h   |2 
 drivers/net/wireless/hostap/hostap_common.h   |3 
 drivers/net/wireless/hostap/hostap_config.h   |   13 -
 drivers/net/wireless/hostap/hostap_info.c |3 
 drivers/net/wireless/hostap/hostap_ioctl.c|   12 -
 drivers/net/wireless/hostap/hostap_main.c |   60 ---
 drivers/net/wireless/hostap/hostap_proc.c |7 
 drivers/net/wireless/hostap/hostap_wlan.h |4 
 drivers/net/wireless/ipw2100.c|  434 -
 drivers/net/wireless/ipw2200.c|   14 -
 drivers/net/wireless/prism54/isl_ioctl.c  |2 
 drivers/net/wireless/prism54/islpci_eth.c |2 
 drivers/net/wireless/ray_cs.c |2 
 drivers/net/wireless/wavelan_cs.c |2 
 include/net/ieee80211_crypt.h |1 
 include/net/iw_handler.h  |2 
 25 files changed, 156 insertions(+), 540 deletions(-)

diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c
index ee866fd..6505734 100644
--- a/drivers/net/wireless/airo.c
+++ b/drivers/net/wireless/airo.c
@@ -5783,7 +5783,7 @@ static int airo_get_essid(struct net_dev
/* If none, we may want to get the one that was set */
 
/* Push it out ! */
-   dwrq->length = status_rid.SSIDlen + 1;
+   dwrq->length = status_rid.SSIDlen;
dwrq->flags = 1; /* active */
 
return 0;
diff --git a/drivers/net/wireless/atmel.c b/drivers/net/wireless/atmel.c
index f0ccfef..98a76f1 100644
--- a/drivers/net/wireless/atmel.c
+++ b/drivers/net/wireless/atmel.c
@@ -1718,11 +1718,11 @@ static int atmel_get_essid(struct net_de
if (priv->new_SSID_size != 0) {
memcpy(extra, priv->new_SSID, priv->new_SSID_size);
extra[priv->new_SSID_size] = '\0';
-   dwrq->length = priv->new_SSID_size + 1;
+   dwrq->length = priv->new_SSID_size;
} else {
memcpy(extra, priv->SSID, priv->SSID_size);
extra[priv->SSID_size] = '\0';
-   dwrq->length = priv->SSID_size + 1;
+   dwrq->length = priv->SSID_size;
}
 
dwrq->flags = !priv->connect_to_any_BSS; /* active */
diff --git a/drivers/net/wireless/hostap/Kconfig 
b/drivers/net/wireless/hostap/Kconfig
index 56f41c7..c8f6286 100644
--- a/drivers/net/wireless/hostap/Kconfig
+++ b/drivers/net/wireless/hostap/Kconfig
@@ -26,11 +26,25 @@ config HOSTAP_FIRMWARE
depends on HOSTAP
---help---
Configure Host AP driver to include support for firmware image
-   download. Current version supports only downloading to volatile, i.e.,
-   RAM memory. Flash upgrade is not yet supported.
+   download. This option by itself only enables downloading to the
+   volatile memory, i.e. the card RAM. This option is required to
+   support cards that don't have firmware in flash, such as D-Link
+   DWL-520 rev E and D-Link DWL-650 rev P.
+
+   Firmware image downloading needs a user space tool, prism2_srec.
+   It is available from http://hostap.epitest.fi/.
+
+config HOSTAP_FIRMWARE_NVRAM
+   bool "Support for non-volatile firmware download"
+   depends on HOSTAP_FIRMWARE
+   ---help---
+   Allow Host AP driver to write firmware images to the non-volatile
+   card memory, i.e. flash memory that survives power cycling.
+   Enable this option if you want to be able to change card firmware
+   permanently.
 
-   Firmware image downloading needs user space tool, prism2_srec. It is
-   available from http://hostap.epitest.fi/.
+   Firmware image downloading needs a user space tool, prism2_srec.
+   It is available from http://hostap.epitest.fi/.
 
 config HOSTAP_P