From: David Gibson <hermes@gibson.dropbear.id.au>
To: Jeff Garzik <jgarzik@pobox.com>, Pavel Roskin <proski@gnu.org>,
Orinoco Development List <orinoco-devel@lists.sourceforge.net>,
netdev@oss.sgi.com, linux-kernel@vger.kernel.org
Subject: [10/14] Orinoco driver updates - prohibit IBSS with no ESSID
Date: Thu, 24 Feb 2005 15:02:28 +1100 [thread overview]
Message-ID: <20050224040228.GL32001@localhost.localdomain> (raw)
In-Reply-To: <20050224040153.GK32001@localhost.localdomain>
Remove has_ibss_any flag and never set the CREATEIBSS RID when the
ESSID is empty. Too many firmware break if we do.
Signed-off-by: David Gibson <hermes@gibson.dropbear.id.au>
Index: working-2.6/drivers/net/wireless/orinoco.c
===================================================================
--- working-2.6.orig/drivers/net/wireless/orinoco.c 2005-02-24 14:50:50.125529816 +1100
+++ working-2.6/drivers/net/wireless/orinoco.c 2005-02-24 14:50:53.166067584 +1100
@@ -1580,21 +1580,26 @@
}
if (priv->has_ibss) {
- err = hermes_write_wordrec(hw, USER_BAP,
- HERMES_RID_CNFCREATEIBSS,
- priv->createibss);
- if (err) {
- printk(KERN_ERR "%s: Error %d setting CREATEIBSS\n", dev->name, err);
- return err;
- }
+ u16 createibss;
- if ((strlen(priv->desired_essid) == 0) && (priv->createibss)
- && (!priv->has_ibss_any)) {
+ if ((strlen(priv->desired_essid) == 0) && (priv->createibss)) {
printk(KERN_WARNING "%s: This firmware requires an "
"ESSID in IBSS-Ad-Hoc mode.\n", dev->name);
/* With wvlan_cs, in this case, we would crash.
* hopefully, this driver will behave better...
* Jean II */
+ createibss = 0;
+ } else {
+ createibss = priv->createibss;
+ }
+
+ err = hermes_write_wordrec(hw, USER_BAP,
+ HERMES_RID_CNFCREATEIBSS,
+ createibss);
+ if (err) {
+ printk(KERN_ERR "%s: Error %d setting CREATEIBSS\n",
+ dev->name, err);
+ return err;
}
}
@@ -2073,7 +2078,6 @@
priv->has_preamble = 0;
priv->has_port3 = 1;
priv->has_ibss = 1;
- priv->has_ibss_any = 0;
priv->has_wep = 0;
priv->has_big_wep = 0;
@@ -2089,7 +2093,6 @@
firmver = ((unsigned long)sta_id.major << 16) | sta_id.minor;
priv->has_ibss = (firmver >= 0x60006);
- priv->has_ibss_any = (firmver >= 0x60010);
priv->has_wep = (firmver >= 0x40020);
priv->has_big_wep = 1; /* FIXME: this is wrong - how do we tell
Gold cards from the others? */
Index: working-2.6/drivers/net/wireless/orinoco.h
===================================================================
--- working-2.6.orig/drivers/net/wireless/orinoco.h 2005-02-24 14:50:46.549073520 +1100
+++ working-2.6/drivers/net/wireless/orinoco.h 2005-02-24 14:50:53.167067432 +1100
@@ -57,7 +57,7 @@
#define FIRMWARE_TYPE_AGERE 1
#define FIRMWARE_TYPE_INTERSIL 2
#define FIRMWARE_TYPE_SYMBOL 3
- int has_ibss, has_port3, has_ibss_any, ibss_port;
+ int has_ibss, has_port3, ibss_port;
int has_wep, has_big_wep;
int has_mwo;
int has_pm;
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist. NOT _the_ _other_ _way_
| _around_!
http://www.ozlabs.org/people/dgibson
next prev parent reply other threads:[~2005-02-24 4:20 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-24 3:53 [0/14] Orinoco driver updates David Gibson
2005-02-24 3:54 ` [1/14] Orinoco driver updates - use netif_carrier_*() David Gibson
2005-02-24 3:55 ` [2/14] Orinoco driver updates - update printk()s David Gibson
2005-02-24 3:56 ` [3/14] Orinoco driver updates - use mdelay()/ssleep() more David Gibson
2005-02-24 3:57 ` [4/14] Orinoco driver updates - add free_orinocodev() David Gibson
2005-02-24 3:58 ` [5/14] Orinoco driver updates - cleanup low-level code David Gibson
2005-02-24 3:59 ` [6/14] Orinoco driver updates - cleanup PCI initialization David Gibson
2005-02-24 4:00 ` [7/14] Orinoco driver updates - use modern module_parm() David Gibson
2005-02-24 4:00 ` [8/14] Orinoco driver updates - PCMCIA initialization cleanups David Gibson
2005-02-24 4:01 ` [9/14] Orinoco driver updates - update is_ethersnap() David Gibson
2005-02-24 4:02 ` David Gibson [this message]
2005-02-24 4:02 ` [11/14] Orinoco driver updates - delay Tx wake David Gibson
2005-02-24 4:03 ` [12/14] Orinoco driver updates - WEP updates David Gibson
2005-02-24 4:04 ` [13/14] Orinoco driver updates - update firmware detection David Gibson
2005-02-24 4:05 ` [14/14] Orinoco driver updates - update version and changelog David Gibson
2005-02-24 4:44 ` Jeff Garzik
2005-02-24 6:55 ` [8/14] Orinoco driver updates - PCMCIA initialization cleanups Dominik Brodowski
2005-02-24 7:29 ` Jeff Garzik
2005-02-25 5:03 ` [Orinoco-devel] " David Gibson
2005-02-25 7:02 ` Dominik Brodowski
2005-02-24 4:35 ` [7/14] Orinoco driver updates - use modern module_parm() Jeff Garzik
2005-02-24 4:35 ` [6/14] Orinoco driver updates - cleanup PCI initialization Jeff Garzik
2005-02-25 4:58 ` [Orinoco-devel] " David Gibson
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=20050224040228.GL32001@localhost.localdomain \
--to=hermes@gibson.dropbear.id.au \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@oss.sgi.com \
--cc=orinoco-devel@lists.sourceforge.net \
--cc=proski@gnu.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox