All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Happe <andreashappe@snikt.net>
To: Adrian Bunk <bunk@stusta.de>
Cc: Andrew Morton <akpm@osdl.org>,
	linux-kernel@vger.kernel.org, linville@tuxdriver.com,
	jgarzik@pobox.com, netdev@vger.kernel.org
Subject: Re: 2.6.16-rc5-mm2: IPW_QOS: two remarks
Date: Sun, 5 Mar 2006 01:46:26 +0100	[thread overview]
Message-ID: <200603050146.27529.andreashappe@snikt.net> (raw)
In-Reply-To: <20060303152641.GR9295@stusta.de>

On Friday 03 March 2006 16:26, Adrian Bunk wrote:
> Two remarks regarding the new IPW_QOS option:
> - it should be named IPW2200_QOS (similar to the other IPW2200_*
>   options)

done.

> - please add a help text

i could add some stuff about WMM to its help text, but I think someone more 
involved with the ipw2200-project should do that.

andy

Add the following config entries for the ipw2200 driver to 
drivers/net/wireless/Kconfig
 * IPW2200_MONITOR
	enables Monitor mode, as this seems to generate lots of firmware errors
	it depends upon BROKEN
 * IPW2200_QOS
	enables QoS feature - this is under development right now, so it depends 
	upon EXPERIMENTAL.

Changes:
 * Renamed IPW_QOS to IPW2200_QOS as requested by Adrian Bunk.
 * Made IPW2200_MONITOR depend upon BROKEN
 * QoS option is named IPW_QOS not IPW2200_MONITOR.
   Spotted by Daniel Paschka, thanks.

Signed-off-by: Andreas Happe <andreashappe@snikt.net>
diff -uprN linux-2.6.15-base/drivers/net/wireless/ipw2200.c 
linux-2.6.15/drivers/net/wireless/ipw2200.c
--- linux-2.6.15-base/drivers/net/wireless/ipw2200.c	2006-03-05 
01:17:52.000000000 +0100
+++ linux-2.6.15/drivers/net/wireless/ipw2200.c	2006-03-05 01:28:04.000000000 
+0100
@@ -60,7 +60,7 @@ static const char ipw_modes[] = {
 	'a', 'b', 'g', '?'
 };
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 static int qos_enable = 0;
 static int qos_burst_enable = 0;
 static int qos_no_ack_mask = 0;
@@ -124,7 +124,7 @@ static int ipw_send_qos_params_command(s
 				       *qos_param);
 static int ipw_send_qos_info_command(struct ipw_priv *priv, struct 
ieee80211_qos_information_element
 				     *qos_param);
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 static struct iw_statistics *ipw_get_wireless_stats(struct net_device *dev);
 static void ipw_remove_current_network(struct ipw_priv *priv);
@@ -4208,7 +4208,7 @@ static void ipw_rx_notification(struct i
 					queue_work(priv->workqueue,
 						   &priv->system_config);
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 #define IPW_GET_PACKET_STYPE(x) WLAN_FC_GET_STYPE( \
 			 le16_to_cpu(((struct ieee80211_hdr *)(x))->frame_ctl))
 					if ((priv->status & STATUS_AUTH) &&
@@ -6549,7 +6549,7 @@ static int ipw_wx_set_mlme(struct net_de
 	return 0;
 }
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 
 /* QoS */
 /*
@@ -7031,7 +7031,7 @@ static int ipw_send_qos_info_command(str
 	return ipw_send_cmd(priv, &cmd);
 }
 
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 static int ipw_associate_network(struct ipw_priv *priv,
 				 struct ieee80211_network *network,
@@ -7193,7 +7193,7 @@ static int ipw_associate_network(struct 
 
 	priv->assoc_network = network;
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	ipw_qos_association(priv, network);
 #endif
 
@@ -8027,10 +8027,10 @@ static int ipw_sw_reset(struct ipw_priv 
 		IPW_DEBUG_INFO("Bind to static channel %d\n", channel);
 		/* TODO: Validate that provided channel is in range */
 	}
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	ipw_qos_init(priv, qos_enable, qos_burst_enable,
 		     burst_duration_CCK, burst_duration_OFDM);
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 	switch (mode) {
 	case 1:
@@ -9636,7 +9636,7 @@ static int ipw_tx_skb(struct ipw_priv *p
 	    txb->fragments[0]->data;
 	int i = 0;
 	struct tfd_frame *tfd;
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	int tx_id = ipw_get_tx_queue_number(priv, pri);
 	struct clx2_tx_queue *txq = &priv->txq[tx_id];
 #else
@@ -9749,9 +9749,9 @@ static int ipw_tx_skb(struct ipw_priv *p
 		/* No hardware encryption */
 		tfd->u.data.tx_flags |= DCT_FLAG_NO_WEP;
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	ipw_qos_set_tx_queue_command(priv, pri, &(tfd->u.data), unicast);
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 	/* payload */
 	tfd->u.data.num_chunks = cpu_to_le32(min((u8) (NUM_TFD_CHUNKS - 2),
@@ -9828,12 +9828,12 @@ static int ipw_tx_skb(struct ipw_priv *p
 static int ipw_net_is_queue_full(struct net_device *dev, int pri)
 {
 	struct ipw_priv *priv = ieee80211_priv(dev);
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	int tx_id = ipw_get_tx_queue_number(priv, pri);
 	struct clx2_tx_queue *txq = &priv->txq[tx_id];
 #else
 	struct clx2_tx_queue *txq = &priv->txq[0];
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 	if (ipw_queue_space(&txq->q) < txq->q.high_mark)
 		return 1;
@@ -10157,10 +10157,10 @@ static int ipw_setup_deferred_work(struc
 	INIT_WORK(&priv->merge_networks,
 		  (void (*)(void *))ipw_merge_adhoc_network, priv);
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	INIT_WORK(&priv->qos_activate, (void (*)(void *))ipw_bg_qos_activate,
 		  priv);
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 	tasklet_init(&priv->irq_tasklet, (void (*)(unsigned long))
 		     ipw_irq_tasklet, (unsigned long)priv);
@@ -10309,10 +10309,10 @@ static int ipw_config(struct ipw_priv *p
 		if (ipw_send_rts_threshold(priv, priv->rts_threshold))
 			goto error;
 	}
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	IPW_DEBUG_QOS("QoS: call ipw_qos_activate\n");
 	ipw_qos_activate(priv, NULL);
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 	if (ipw_set_random_seed(priv))
 		goto error;
@@ -11023,11 +11023,11 @@ static int ipw_pci_probe(struct pci_dev 
 	priv->ieee->set_security = shim__set_security;
 	priv->ieee->is_queue_full = ipw_net_is_queue_full;
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 	priv->ieee->handle_probe_response = ipw_handle_beacon;
 	priv->ieee->handle_beacon = ipw_handle_probe_response;
 	priv->ieee->handle_assoc_response = ipw_handle_assoc_response;
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 	priv->ieee->perfect_rssi = -20;
 	priv->ieee->worst_rssi = -85;
@@ -11256,7 +11256,7 @@ MODULE_PARM_DESC(debug, "debug output ma
 module_param(channel, int, 0444);
 MODULE_PARM_DESC(channel, "channel to limit associate to (default 0 [ANY])");
 
-#ifdef CONFIG_IPW_QOS
+#ifdef CONFIG_IPW2200_QOS
 module_param(qos_enable, int, 0444);
 MODULE_PARM_DESC(qos_enable, "enable all QoS functionalitis");
 
@@ -11271,7 +11271,7 @@ MODULE_PARM_DESC(burst_duration_CCK, "se
 
 module_param(burst_duration_OFDM, int, 0444);
 MODULE_PARM_DESC(burst_duration_OFDM, "set OFDM burst value");
-#endif				/* CONFIG_IPW_QOS */
+#endif				/* CONFIG_IPW2200_QOS */
 
 #ifdef CONFIG_IPW2200_MONITOR
 module_param(mode, int, 0444);
diff -uprN linux-2.6.15-base/drivers/net/wireless/Kconfig 
linux-2.6.15/drivers/net/wireless/Kconfig
--- linux-2.6.15-base/drivers/net/wireless/Kconfig	2006-03-05 
01:17:52.000000000 +0100
+++ linux-2.6.15/drivers/net/wireless/Kconfig	2006-03-05 01:25:38.000000000 
+0100
@@ -237,6 +237,20 @@ config IPW2200_DEBUG
 	  If you are not trying to debug or develop the IPW2200 driver, you 
 	  most likely want to say N here.
 
+config IPW2200_MONITOR
+	bool "Enable promiscuous mode"
+	depends on IPW2200 && BROKEN
+	---help---
+	Enables promiscuous/monitor mode support for the ipw2200 driver.
+	
+	With this feature compiled into the driver, you can switch to.
+	promiscuous mode via the Wireless Tool's Monitor mode.  While in this
+	mode, no packets can be sent.
+	
+config IPW2200_QOS
+	bool "Enable QoS support"
+	depends on IPW2200 && EXPERIMENTAL
+
 config AIRO
 	tristate "Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards"
 	depends on NET_RADIO && ISA_DMA_API && CRYPTO && (PCI || BROKEN)

  reply	other threads:[~2006-03-05  0:46 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-03 12:56 2.6.16-rc5-mm2 Andrew Morton
2006-03-03 15:26 ` 2.6.16-rc5-mm2: IPW_QOS: two remarks Adrian Bunk
2006-03-05  0:46   ` Andreas Happe [this message]
2006-03-07 17:06     ` Adrian Bunk
2006-03-17 19:14     ` John W. Linville
2006-03-18 17:47       ` [PATCH 2.6.16-rc6 1/1] ipw2200: Add Kconfig entries for QOS and Monitor mode Andreas Happe
2006-03-22  3:11         ` Zhu Yi
2006-03-03 16:08 ` 2.6.16-rc5-mm2 (mips compile fix) Jason Baron
2006-03-03 17:08 ` 2.6.16-rc5-mm2 Benoit Boissinot
2006-03-04  1:34 ` 2.6.16-rc5-mm2 Grant Coady
2006-03-05  6:26   ` 2.6.16-rc5-mm2 Andrew Morton
2006-03-05  7:24     ` 2.6.16-rc5-mm2 Mike Galbraith
2006-03-06 11:35     ` 2.6.16-rc5-mm2 Takashi Iwai
2006-03-05 12:34   ` 2.6.16-rc5-mm2 Antonino A. Daplas
2006-03-04 12:14 ` [-mm patch] drivers/acpi/bus.c: make struct acpi_sci_dir static Adrian Bunk
2006-03-04 12:14 ` [RFC: -mm patch] drivers/media/video/msp3400-kthreads.c: make 3 functions static Adrian Bunk
2006-03-04 12:14 ` [RFC: -mm patch] drivers/message/fusion/mptbase.c: make mpt_read_ioc_pg_3() static Adrian Bunk
2006-03-04 12:14 ` [-mm patch] kernel/futex.c: make futexfs_get_sb() static again Adrian Bunk
2006-03-06 14:44   ` David Howells
2006-03-04 12:14 ` [-mm patch] mm/bootmem.c: make bdata_list static Adrian Bunk
2006-03-04 12:14 ` [-mm patch] NFS: make 2 functions static Adrian Bunk
2006-03-04 12:14 ` [RFC: -mm patch] fs/locks.c: make posix_locks_deadlock() static Adrian Bunk
2006-03-04 17:29 ` 2.6.16-rc5-mm2 Mattia Dongili
2006-03-05  6:28   ` 2.6.16-rc5-mm2 Andrew Morton
2006-03-05  8:14 ` 2.6.16-rc5-mm2 Benoit Boissinot
2006-03-05  8:34   ` 2.6.16-rc5-mm2 Andrew Morton
2006-03-05 11:42     ` 2.6.16-rc5-mm2 Stefan Rompf
2006-03-06 15:22       ` 2.6.16-rc5-mm2 James Ketrenos
2006-03-05 22:54 ` 2.6.16-rc5-mm2 Dominik Karall
2006-03-07  5:43   ` 2.6.16-rc5-mm2 Andrew Morton
2006-03-07 10:43     ` 2.6.16-rc5-mm2 David Howells
2006-03-07 14:33     ` 2.6.16-rc5-mm2 Dominik Karall
2006-03-07 17:25       ` 2.6.16-rc5-mm2 john stultz
2006-03-08  1:13         ` 2.6.16-rc5-mm2 Andi Kleen
2006-03-06  8:45 ` 2.6.16-rc5-mm2 Cornelia Huck
2006-03-06  9:10 ` 2.6.16-rc5-mm2 compile error in urb.c Helge Hafting
2006-03-06  9:21   ` Andrew Morton
2006-03-06 12:17     ` Helge Hafting

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=200603050146.27529.andreashappe@snikt.net \
    --to=andreashappe@snikt.net \
    --cc=akpm@osdl.org \
    --cc=bunk@stusta.de \
    --cc=jgarzik@pobox.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=netdev@vger.kernel.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.