linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [BK PATCHES] 2.6.x net driver updates
@ 2003-09-27 11:55 Jeff Garzik
  0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2003-09-27 11:55 UTC (permalink / raw)
  To: torvalds; +Cc: netdev, linux-kernel

This should fix the build.  Only thing left not building is g_ncr5380...



Linus, please do a

	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.5

This will update the following files:

 drivers/usb/net/Makefile.mii      |    6 
 drivers/net/Kconfig               |   11 
 drivers/net/Makefile              |   28 --
 drivers/net/e100/e100.h           |    1 
 drivers/net/e100/e100_config.c    |    2 
 drivers/net/e100/e100_config.h    |    1 
 drivers/net/e100/e100_main.c      |   49 +---
 drivers/net/e1000/e1000.h         |    8 
 drivers/net/e1000/e1000_ethtool.c |   14 -
 drivers/net/e1000/e1000_hw.c      |   39 +--
 drivers/net/e1000/e1000_hw.h      |    2 
 drivers/net/e1000/e1000_main.c    |   90 ++++---
 drivers/net/e1000/e1000_osdep.h   |    2 
 drivers/net/hamradio/baycom_epp.c |    4 
 drivers/net/pcmcia/Kconfig        |    1 
 drivers/net/pcmcia/smc91c92_cs.c  |    8 
 drivers/net/sk98lin/skdim.c       |    5 
 drivers/net/sk98lin/skge.c        |  103 +++-----
 drivers/net/sk98lin/skproc.c      |  463 ++++++++++++++++----------------------
 drivers/net/tulip/Kconfig         |    1 
 drivers/net/wan/sealevel.c        |   36 +-
 drivers/net/wan/z85230.c          |   58 ++--
 drivers/net/wireless/orinoco.c    |    4 
 drivers/usb/net/Kconfig           |    2 
 24 files changed, 447 insertions(+), 491 deletions(-)

through these ChangeSets:

<bunk@fs.tum.de> (03/09/27 1.1371)
   [PATCH] select MII
   
   The patch below switches MII to be select'ed instead of including it in
   the Makefile.
   
   Note that this patch requires a recent Linus' tree with the select CRC32
   patch included.
   
   diffstat output:
   
    drivers/net/Kconfig          |   11 +++++++++++
    drivers/net/Makefile         |   28 +++++++++++-----------------
    drivers/net/pcmcia/Kconfig   |    1 +
    drivers/net/tulip/Kconfig    |    1 +
    drivers/usb/net/Kconfig      |    2 ++
    drivers/usb/net/Makefile.mii |    6 ------
    6 files changed, 26 insertions(+), 23 deletions(-)
   
   
   Tangential to the patch I observed a small problem (not fixed in the patch):
   MII depends on NET_ETHERNET, but USB_PEGASUS and USB_USBNET depend
   only on NET.
   
   cu
   Adrian

<shemminger@osdl.org> (03/09/27 1.1370)
   [PATCH] wan/z8530 deadlocks
   
   Existing code for drivers/net/wan/z8530 is riddled with self-deadlocks
   and irq flag confusion.  For example:
   	z8530_init -> do_z8530_init -> write_zsreg
   self deadlocks on the channel lock.
   
   Several places acquire both the channel and dma lock and then
   reuse the same irq flags variable - ouch.
   
   This code at least, correctly probes (for no device case) on SMP.
   Other paths verified by inspection.

<shemminger@osdl.org> (03/09/27 1.1369)
   [PATCH] sealevel -- syncppp startup fix
   
   The sealevel driver called sppp_attach before checking that board existed
   and never called detach in the error path.
   
   My change is to call sppp_attach from the netdev->init hook which happens
   later in the process, and call detach from the uninit hook.
   
   Also, changed the structure element 'netdev' to 'pppdev' to avoid confusion.
   
   Here is the fix against 2.6.0-test5 latest

<komujun@nifty.com> (03/09/27 1.1368)
   [netdrvr smc91c92_cs] select proper bank for MII registers

<komujun@nifty.com> (03/09/27 1.1367)
   [netdrvr] build fixes
   
   For e1000 and baycom_epp.
   
   Contributed by Jeff Garzik.

<rddunlap@osdl.org> (03/09/27 1.1366)
   [PATCH] janitor: e100: cleanup #includes
   
   Hi,
   Please apply to 2.6.0-test5-current.
   
   Thanks,
   --
   ~Randy
   
   
   From: Randy Hron <rwhron@earthlink.net>
   
   
   Remove unneeded include of version.h.
   Test compiled against 2.6.0-test5-bk9.
   
   
    linux-260-t5bk12-kj-rddunlap/drivers/net/e100/e100.h |    1 -
    1 files changed, 1 deletion(-)

<rddunlap@osdl.org> (03/09/27 1.1365)
   [PATCH] janitor: hermes: delete verify_area call
   
   Hi,
   Please apply to 2.6.0-test5-current.
   
   Thanks,
   --
   ~Randy
   
   
   From: Domen Puncer <domen@coderock.org>
   
   IMO, that verify_area wasn't needed.
   
   
   
    linux-260-t5bk12-kj-rddunlap/drivers/net/wireless/orinoco.c |    4 ----
    1 files changed, 4 deletions(-)

<scott.feldman@intel.com> (03/09/27 1.1364)
   [e100] trying to pci_alloc before pci_enable
   
   * Some archs don't like calling pci_alloc_consistent before calling
   pci_enable_device.  (Imagine that).  This corrects that.

<scott.feldman@intel.com> (03/09/27 1.1363)
   [e100] h/w can't do IPv6 checksum offloading
   
   * Driver was advertising HW_CSUM, but hardware is only capable of IP_CSUM.

<scott.feldman@intel.com> (03/09/27 1.1362)
   [e100] PRO/10+ not configured properly
   
   * PRO/10+ (10 Mbps-only card) was not configured properly so it didn't
   pass traffic.

<scott.feldman@intel.com> (03/09/27 1.1361)
   [e1000] misc
   
   * removed unused var, ASSERT macro
   * missed a free_netdev() in probe cleanup undo.

<scott.feldman@intel.com> (03/09/27 1.1360)
   [e1000] better propagation of error codes
   
   * Better propagation of error codes during probe/open paths.
     {Janice Girouard (janiceg@us.ibm.com)]

<scott.feldman@intel.com> (03/09/27 1.1359)
   [e1000] force 1000/full on SERDES connected to back-plane
   
   * Bug fix: SERDES devices might be connected to back-plan switch that
     doesn't support auto-neg, so add the capability to force 1000/full.

<scott.feldman@intel.com> (03/09/27 1.1358)
   [e1000] flow control updates
   
   * handle ethtool force flow control
   * correctly set flow control hi/low watermarks based on size of Rx FIFO
     area.  The size can change if doing Jumbo Frames or, in the case of
     82547, is smaller to start with.
   * was not properly forcing flow control settings to fc_none if using
     strict IEEE flow control override.

<shemminger@osdl.org> (03/09/27 1.1357)
   [netdrvr sk98lin] use seq_file for /proc
   
   Replace proc_read with seq_file interface which is much cleaner.
   
   Also, instead of searching the list of devices looking for the
   name which is slow and would break if interface name changes;
   store a pointer to device in the proc entry, and retrieve
   it from the information saved by single_open.
   
   Formatting and other behaviours are retained.

<shemminger@osdl.org> (03/09/27 1.1356)
   [netdrvr skge] handle proc_fs errors.
   
   Existing code does not
   	- check if proc_fs functions return error.
   	- use proc_mkdir to make the directory.
   
   Note pSkRootDir defined twice.

<shemminger@osdl.org> (03/09/27 1.1355)
   [netdrvr sk98lin] build on smp fix
   
   There is no exported variable called smp_num_cpus! so this driver
   won't build on SMP.  Since the local variable is never used anyway
   just get rid of it.
   
   This applies against 2.6.0-test5-bk13 which has the last vendor
   driver update.


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [BK PATCHES] 2.6.x net driver updates
@ 2005-03-05 18:44 Jeff Garzik
  0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2005-03-05 18:44 UTC (permalink / raw)
  To: Netdev; +Cc: Linux Kernel

[-- Attachment #1: Type: text/plain, Size: 91 bytes --]

Just sent this to Andrew/Linus.  The patch was too large (500K) to send 
to mailing lists.

[-- Attachment #2: changelog.txt --]
[-- Type: text/plain, Size: 3065 bytes --]

Please do a

	bk pull bk://gkernel.bkbits.net/net-drivers-2.6

This will update the following files:

 Documentation/networking/e100.txt |    3 
 arch/arm/mach-pxa/lubbock.c       |    2 
 arch/arm/mach-sa1100/neponset.c   |    2 
 drivers/net/Kconfig               |   17 
 drivers/net/e1000/e1000.h         |    3 
 drivers/net/e1000/e1000_ethtool.c |   11 
 drivers/net/e1000/e1000_hw.c      |   86 
 drivers/net/e1000/e1000_hw.h      |   11 
 drivers/net/e1000/e1000_main.c    |  249 +
 drivers/net/eepro100.c            |    9 
 drivers/net/ixgb/ixgb.h           |    3 
 drivers/net/ixgb/ixgb_ee.c        |   16 
 drivers/net/ixgb/ixgb_ee.h        |    3 
 drivers/net/ixgb/ixgb_ethtool.c   |    5 
 drivers/net/ixgb/ixgb_hw.c        |    2 
 drivers/net/ixgb/ixgb_hw.h        |    2 
 drivers/net/ixgb/ixgb_ids.h       |    2 
 drivers/net/ixgb/ixgb_main.c      |   73 
 drivers/net/ixgb/ixgb_osdep.h     |    2 
 drivers/net/ixgb/ixgb_param.c     |    2 
 drivers/net/smc91x.c              |  275 +
 drivers/net/smc91x.h              |   79 
 drivers/net/tulip/de2104x.c       |    2 
 drivers/net/typhoon-firmware.h    | 5568 +++++++++++++++++---------------------
 drivers/net/typhoon.c             |  244 +
 drivers/net/wan/sbni.c            |    2 
 26 files changed, 3304 insertions(+), 3369 deletions(-)

through these ChangeSets:

<mallikarjuna.chilakala:intel.com>:
  o e1000: Driver version white space,
  o e1000: Fixes related to Cable length
  o e1000: Report failure code when loopback
  o e1000: Checks for desc ring/rx data
  o e1000: Patch from Peter Kjellstroem --
  o e1000: Fix WOL settings in 82544 based
  o e1000: Delay clean-up of last Tx buffer
  o e1000: Avoid race between e1000_watchdog
  o e1000: use netif_poll_{enable|disable}
  o e1000: Robert Olsson's fix and refinement
  o ixgb: Driver version, white space, other stuff
  o ixgb: Invalidate software cache, when EEPROM write occurs
  o ixgb: Robert Olsson's fix and refinement to poll
  o ixgb: Avoid race e1000_watchdog and ixgb_clean_tx_irq
  o ixgb: use netif_poll_{enable|disable}

Alexander Viro:
  o smc91x iomem annotations

David Dillow:
  o Bump version and release date
  o Version 03.001.008 of the Typhoon firmware, courtesy of 3Com
  o Fixup the version reporting to match 3Com
  o Use module_param() and add descriptions
  o Teach typhoon to use port IO on machines that need it. It will attempt to use MMIO, but if that fails (or the user asks), it will fallback to port IO.
  o Enable bus mastering before saving our state, or we'll only be able to load the modules one time.

Ian Campbell:
  o smc91x: power down PHY on suspend
  o use datacs in smc91x driver

Nicolas Pitre:
  o smc91x: allow RX of VLAN packets

Randy Dunlap:
  o tulip/de2104x: don't mix __init & __devinit sections
  o net/wan/sbni: fix section usage

Scott Feldman:
  o eepro100: remove ID for 82556
  o e100: remove reference to NAPI config option

Tony Lindgren:
  o Add OMAP support to smc91x Ethernet driver

Xose Vazquez Perez:
  o 2.6 eepro100: replace and delete duplicate ids


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [BK PATCHES] 2.6.x net driver updates
@ 2004-10-30 13:32 Jeff Garzik
  0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2004-10-30 13:32 UTC (permalink / raw)
  To: Andrew Morton, Linus Torvalds; +Cc: netdev, linux-kernel


Please do a

	bk pull bk://gkernel.bkbits.net/net-drivers-2.6

This will update the following files:

 MAINTAINERS             |    4 
 drivers/net/8390.c      |    2 
 drivers/net/amd8111e.c  |  220 +++++++++++++++++++++++++++---------------------
 drivers/net/amd8111e.h  |    3 
 drivers/net/smc91x.h    |    4 
 drivers/net/via-rhine.c |    2 
 6 files changed, 132 insertions(+), 103 deletions(-)

through these ChangeSets:

<rddunlap@osdl.org> (04/10/30 1.2350)
   [PATCH] via-rhine: references __init code during resume
   
   Fix __init section usage:
   rhine_resume calls enable_mmio, so latter cannot be __devinit;
   Error: ./drivers/net/via-rhine.o .text refers to 0000000000000925 R_X86_64_PC32
   .init.text+0xfffffffffffffffc
   
   Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
   Signed-off-by: Jeff Garzik <jgarzik@pobox.com>

<benh@kernel.crashing.org> (04/10/30 1.2349)
   [PATCH] amd8111e: Add support for ppc64 eval board
   
   This patch adds a few memory barriers, cleans up a little bit the
   use of the "status" field in the rx & tx routines, and adds probing
   for the external PHY to the driver.
   
   Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   Signed-off-by: Jeff Garzik <jgarzik@pobox.com>

<benh@kernel.crashing.org> (04/10/30 1.2348)
   [PATCH] amd8111e: Fix identation of amd8111e_rx_poll()
   
   This patch does an indentation fix to amd8111e_rx_poll() which was
   incorrectly shifting left in the middle of a while() loop, thus
   rendering the function difficult to read. There is no actual code
   change.
   
   Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   Signed-off-by: Jeff Garzik <jgarzik@pobox.com>

<sfeldma@pobox.com> (04/10/30 1.2347)
   [PATCH] e100: update maintainer
   
   My intel.com address will bounce.
   
   Signed-off-by: Scott Feldman <sfeldma@pobox.com>
   Signed-off-by: Jeff Garzik <jgarzik@pobox.com>

<nico@cam.org> (04/10/30 1.2346)
   [PATCH] fix smc91x compilation error
   
   It looks like this bit got mismerged (pci.h removed but DMA arguments
   convertion missing).
   
   Signed-off-by: Nicolas Pitre <nico@cam.org>
   Signed-off-by: Jeff Garzik <jgarzik@pobox.com>

<rmk+lkml@arm.linux.org.uk> (04/10/30 1.2345)
   [PATCH] 8390.c: Use mdelay(10) rather than udelay(10*1000)
   
   ARM udelay can't cope with >2ms delays.
   
   Signed-off-by: Russell King <rmk@arm.linux.org.uk>
   Signed-off-by: Jeff Garzik <jgarzik@pobox.com>

diff -Nru a/MAINTAINERS b/MAINTAINERS
--- a/MAINTAINERS	2004-10-30 09:31:01 -04:00
+++ b/MAINTAINERS	2004-10-30 09:31:01 -04:00
@@ -1110,8 +1110,8 @@
 M:	john.ronciak@intel.com
 P:	Ganesh Venkatesan
 M:	ganesh.venkatesan@intel.com
-P:	Scott Feldman
-M:	scott.feldman@intel.com
+P:	Jesse Brandeburg
+M:	jesse.brandeburg@intel.com
 W:	http://sourceforge.net/projects/e1000/
 S:	Supported
 
diff -Nru a/drivers/net/8390.c b/drivers/net/8390.c
--- a/drivers/net/8390.c	2004-10-30 09:31:01 -04:00
+++ b/drivers/net/8390.c	2004-10-30 09:31:01 -04:00
@@ -813,7 +813,7 @@
 	 * We wait at least 10ms.
 	 */
 
-	udelay(10*1000);
+	mdelay(10);
 
 	/*
 	 * Reset RBCR[01] back to zero as per magic incantation.
diff -Nru a/drivers/net/amd8111e.c b/drivers/net/amd8111e.c
--- a/drivers/net/amd8111e.c	2004-10-30 09:31:01 -04:00
+++ b/drivers/net/amd8111e.c	2004-10-30 09:31:01 -04:00
@@ -211,7 +211,7 @@
 	u32 bmcr,advert,tmp;
 	
 	/* Determine mii register values to set the speed */
-	advert = amd8111e_mdio_read(dev, PHY_ID, MII_ADVERTISE);
+	advert = amd8111e_mdio_read(dev, lp->ext_phy_addr, MII_ADVERTISE);
 	tmp = advert & ~(ADVERTISE_ALL | ADVERTISE_100BASE4);
 	switch (lp->ext_phy_option){
 
@@ -235,11 +235,11 @@
 	}
 
 	if(advert != tmp)
-		amd8111e_mdio_write(dev, PHY_ID, MII_ADVERTISE, tmp);
+		amd8111e_mdio_write(dev, lp->ext_phy_addr, MII_ADVERTISE, tmp);
 	/* Restart auto negotiation */
-	bmcr = amd8111e_mdio_read(dev, PHY_ID, MII_BMCR);
+	bmcr = amd8111e_mdio_read(dev, lp->ext_phy_addr, MII_BMCR);
 	bmcr |= (BMCR_ANENABLE | BMCR_ANRESTART);
-	amd8111e_mdio_write(dev, PHY_ID, MII_BMCR, bmcr);
+	amd8111e_mdio_write(dev, lp->ext_phy_addr, MII_BMCR, bmcr);
 
 }
 
@@ -350,6 +350,7 @@
 
 		lp->rx_ring[i].buff_phy_addr = cpu_to_le32(lp->rx_dma_addr[i]);
 		lp->rx_ring[i].buff_count = cpu_to_le16(lp->rx_buff_len-2);
+		wmb();
 		lp->rx_ring[i].rx_flags = cpu_to_le16(OWN_BIT);
 	}
 
@@ -529,7 +530,7 @@
 	writel(RUN, mmio + CMD0);
 
 	/* AUTOPOLL0 Register *//*TBD default value is 8100 in FPS */
-	writew( 0x8101, mmio + AUTOPOLL0);
+	writew( 0x8100 | lp->ext_phy_addr, mmio + AUTOPOLL0);
 
 	/* Clear RCV_RING_BASE_ADDR */
 	writel(0, mmio + RCV_RING_BASE_ADDR0);
@@ -740,11 +741,11 @@
 	do{   
 		/* process receive packets until we use the quota*/
 		/* If we own the next entry, it's a new packet. Send it up. */
-		while(!(lp->rx_ring[rx_index].rx_flags & OWN_BIT)){
-	       
-			/* check if err summary bit is set */ 
-			if(le16_to_cpu(lp->rx_ring[rx_index].rx_flags) 
-								& ERR_BIT){
+		while(1) {
+			status = le16_to_cpu(lp->rx_ring[rx_index].rx_flags);
+			if (status & OWN_BIT)
+				break;
+
 			/* 
 			 * There is a tricky error noted by John Murphy,
 			 * <murf@perftech.com> to Russ Nelson: Even with
@@ -753,89 +754,88 @@
 			 * the last correctly noting the error.
 			 */
 
-			/* reseting flags */
-			lp->rx_ring[rx_index].rx_flags &=RESET_RX_FLAGS;
-			goto err_next_pkt;
-
+			if(status & ERR_BIT) {
+				/* reseting flags */
+				lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
+				goto err_next_pkt;
 			}
 			/* check for STP and ENP */
-		status = le16_to_cpu(lp->rx_ring[rx_index].rx_flags);
-		if(!((status & STP_BIT) && (status & ENP_BIT))){
-			/* reseting flags */
-			lp->rx_ring[rx_index].rx_flags &=RESET_RX_FLAGS;
-			goto err_next_pkt;
-		}
-		pkt_len = le16_to_cpu(lp->rx_ring[rx_index].msg_count) - 4;
+			if(!((status & STP_BIT) && (status & ENP_BIT))){
+				/* reseting flags */
+				lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
+				goto err_next_pkt;
+			}
+			pkt_len = le16_to_cpu(lp->rx_ring[rx_index].msg_count) - 4;
 
 #if AMD8111E_VLAN_TAG_USED		
-		vtag = le16_to_cpu(lp->rx_ring[rx_index].rx_flags) & TT_MASK;
-		/*MAC will strip vlan tag*/ 
-		if(lp->vlgrp != NULL && vtag !=0)
-			min_pkt_len =MIN_PKT_LEN - 4;
-		else
+			vtag = status & TT_MASK;
+			/*MAC will strip vlan tag*/ 
+			if(lp->vlgrp != NULL && vtag !=0)
+				min_pkt_len =MIN_PKT_LEN - 4;
+			else
 #endif
-			min_pkt_len =MIN_PKT_LEN;
+				min_pkt_len =MIN_PKT_LEN;
 
-		if (pkt_len < min_pkt_len) {
-			lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
-			lp->drv_rx_errors++;
-			goto err_next_pkt;
-		}
-		if(--rx_pkt_limit < 0)
-			goto rx_not_empty;
-		if(!(new_skb = dev_alloc_skb(lp->rx_buff_len))){
-			/* if allocation fail, 
-				ignore that pkt and go to next one */
-			lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
-			lp->drv_rx_errors++;
-			goto err_next_pkt;
-		}
+			if (pkt_len < min_pkt_len) {
+				lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
+				lp->drv_rx_errors++;
+				goto err_next_pkt;
+			}
+			if(--rx_pkt_limit < 0)
+				goto rx_not_empty;
+			if(!(new_skb = dev_alloc_skb(lp->rx_buff_len))){
+				/* if allocation fail, 
+				   ignore that pkt and go to next one */
+				lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
+				lp->drv_rx_errors++;
+				goto err_next_pkt;
+			}
 		
-		skb_reserve(new_skb, 2);
-		skb = lp->rx_skbuff[rx_index];
-		pci_unmap_single(lp->pci_dev,lp->rx_dma_addr[rx_index],
-			lp->rx_buff_len-2, PCI_DMA_FROMDEVICE);
-		skb_put(skb, pkt_len);
-		skb->dev = dev;
-		lp->rx_skbuff[rx_index] = new_skb;
-		new_skb->dev = dev;
-		lp->rx_dma_addr[rx_index] = pci_map_single(lp->pci_dev,
-			new_skb->data, lp->rx_buff_len-2,PCI_DMA_FROMDEVICE);
+			skb_reserve(new_skb, 2);
+			skb = lp->rx_skbuff[rx_index];
+			pci_unmap_single(lp->pci_dev,lp->rx_dma_addr[rx_index],
+					 lp->rx_buff_len-2, PCI_DMA_FROMDEVICE);
+			skb_put(skb, pkt_len);
+			skb->dev = dev;
+			lp->rx_skbuff[rx_index] = new_skb;
+			new_skb->dev = dev;
+			lp->rx_dma_addr[rx_index] = pci_map_single(lp->pci_dev,
+								   new_skb->data,
+								   lp->rx_buff_len-2,
+								   PCI_DMA_FROMDEVICE);
 	
-		skb->protocol = eth_type_trans(skb, dev);
+			skb->protocol = eth_type_trans(skb, dev);
 
 #if AMD8111E_VLAN_TAG_USED		
-		
-		vtag = lp->rx_ring[rx_index].rx_flags & TT_MASK;
-		if(lp->vlgrp != NULL && (vtag == TT_VLAN_TAGGED)){
-			amd8111e_vlan_rx(lp, skb,
-				    lp->rx_ring[rx_index].tag_ctrl_info);
-		} else
+			if(lp->vlgrp != NULL && (vtag == TT_VLAN_TAGGED)){
+				amd8111e_vlan_rx(lp, skb,
+					 le16_to_cpy(lp->rx_ring[rx_index].tag_ctrl_info));
+			} else
 #endif
-			
-			netif_receive_skb(skb);
-		/*COAL update rx coalescing parameters*/
-		lp->coal_conf.rx_packets++;
-		lp->coal_conf.rx_bytes += pkt_len;	
-		num_rx_pkt++;
-		dev->last_rx = jiffies;
+				netif_receive_skb(skb);
+			/*COAL update rx coalescing parameters*/
+			lp->coal_conf.rx_packets++;
+			lp->coal_conf.rx_bytes += pkt_len;	
+			num_rx_pkt++;
+			dev->last_rx = jiffies;
 	
-err_next_pkt:	
-		lp->rx_ring[rx_index].buff_phy_addr
-			 = cpu_to_le32(lp->rx_dma_addr[rx_index]);
-		lp->rx_ring[rx_index].buff_count = 
+		err_next_pkt:	
+			lp->rx_ring[rx_index].buff_phy_addr
+				= cpu_to_le32(lp->rx_dma_addr[rx_index]);
+			lp->rx_ring[rx_index].buff_count = 
 				cpu_to_le16(lp->rx_buff_len-2);
-		lp->rx_ring[rx_index].rx_flags |= cpu_to_le16(OWN_BIT);
-		rx_index = (++lp->rx_idx) & RX_RING_DR_MOD_MASK;
-	}
-	/* Check the interrupt status register for more packets in the 
-	mean time. Process them since we have not used up our quota.*/
+			wmb();
+			lp->rx_ring[rx_index].rx_flags |= cpu_to_le16(OWN_BIT);
+			rx_index = (++lp->rx_idx) & RX_RING_DR_MOD_MASK;
+		}
+		/* Check the interrupt status register for more packets in the 
+		   mean time. Process them since we have not used up our quota.*/
+
+		intr0 = readl(mmio + INT0);
+		/*Ack receive packets */
+		writel(intr0 & RINT0,mmio + INT0);
 
-	intr0 = readl(mmio + INT0);
-	/*Ack receive packets */
-	writel(intr0 & RINT0,mmio + INT0);
-
-	}while(intr0 & RINT0);
+	} while(intr0 & RINT0);
 
 	/* Receive descriptor is empty now */
 	dev->quota -= num_rx_pkt;
@@ -873,11 +873,12 @@
 	
 	/* If we own the next entry, it's a new packet. Send it up. */
 	while(++num_rx_pkt <= max_rx_pkt){
-		if(lp->rx_ring[rx_index].rx_flags & OWN_BIT)
+		status = le16_to_cpu(lp->rx_ring[rx_index].rx_flags);
+		if(status & OWN_BIT)
 			return 0;
 	       
 		/* check if err summary bit is set */ 
-		if(le16_to_cpu(lp->rx_ring[rx_index].rx_flags) & ERR_BIT){
+		if(status & ERR_BIT){
 			/* 
 			 * There is a tricky error noted by John Murphy,
 			 * <murf@perftech.com> to Russ Nelson: Even with full-sized
@@ -888,7 +889,6 @@
 			goto err_next_pkt;
 		}
 		/* check for STP and ENP */
-		status = le16_to_cpu(lp->rx_ring[rx_index].rx_flags);
 		if(!((status & STP_BIT) && (status & ENP_BIT))){
 			/* reseting flags */
 			lp->rx_ring[rx_index].rx_flags &= RESET_RX_FLAGS;
@@ -897,7 +897,7 @@
 		pkt_len = le16_to_cpu(lp->rx_ring[rx_index].msg_count) - 4;
 
 #if AMD8111E_VLAN_TAG_USED		
-		vtag = le16_to_cpu(lp->rx_ring[rx_index].rx_flags) & TT_MASK;
+		vtag = status & TT_MASK;
 		/*MAC will strip vlan tag*/ 
 		if(lp->vlgrp != NULL && vtag !=0)
 			min_pkt_len =MIN_PKT_LEN - 4;
@@ -931,12 +931,10 @@
 	
 		skb->protocol = eth_type_trans(skb, dev);
 
-#if AMD8111E_VLAN_TAG_USED		
-		
-		vtag = lp->rx_ring[rx_index].rx_flags & TT_MASK;
+#if AMD8111E_VLAN_TAG_USED				
 		if(lp->vlgrp != NULL && (vtag == TT_VLAN_TAGGED)){
 			amd8111e_vlan_rx(lp, skb,
-				    lp->rx_ring[rx_index].tag_ctrl_info);
+				 le16_to_cpu(lp->rx_ring[rx_index].tag_ctrl_info));
 		} else
 #endif
 			
@@ -952,6 +950,7 @@
 			 = cpu_to_le32(lp->rx_dma_addr[rx_index]);
 		lp->rx_ring[rx_index].buff_count = 
 				cpu_to_le16(lp->rx_buff_len-2);
+		wmb();
 		lp->rx_ring[rx_index].rx_flags |= cpu_to_le16(OWN_BIT);
 		rx_index = (++lp->rx_idx) & RX_RING_DR_MOD_MASK;
 	}
@@ -1432,7 +1431,7 @@
 #if AMD8111E_VLAN_TAG_USED
 	if((lp->vlgrp != NULL) && vlan_tx_tag_present(skb)){
 		lp->tx_ring[tx_index].tag_ctrl_cmd |= 
-				cpu_to_le32(TCC_VLAN_INSERT);	
+				cpu_to_le16(TCC_VLAN_INSERT);	
 		lp->tx_ring[tx_index].tag_ctrl_info = 
 				cpu_to_le16(vlan_tx_tag_get(skb));
 
@@ -1444,6 +1443,7 @@
 	    (u32) cpu_to_le32(lp->tx_dma_addr[tx_index]);
 
 	/*  Set FCS and LTINT bits */
+	wmb();
 	lp->tx_ring[tx_index].tx_flags |=
 	    cpu_to_le16(OWN_BIT | STP_BIT | ENP_BIT|ADD_FCS_BIT|LTINT_BIT);
 
@@ -1667,7 +1667,7 @@
 
 	switch(cmd) {
 	case SIOCGMIIPHY:
-		data->phy_id = PHY_ID;
+		data->phy_id = lp->ext_phy_addr;
 
 	/* fallthru */
 	case SIOCGMIIREG: 
@@ -1940,6 +1940,26 @@
 
 }
 
+static void __devinit amd8111e_probe_ext_phy(struct net_device* dev)
+{
+	struct amd8111e_priv *lp = netdev_priv(dev);
+	int i;
+
+	for (i = 0x1e; i >= 0; i--) {
+		u32 id1, id2;
+
+		if (amd8111e_read_phy(lp, i, MII_PHYSID1, &id1))
+			continue;
+		if (amd8111e_read_phy(lp, i, MII_PHYSID2, &id2))
+			continue;
+		lp->ext_phy_id = (id1 << 16) | id2;
+		lp->ext_phy_addr = i;
+		return;
+	}
+	lp->ext_phy_id = 0;
+	lp->ext_phy_addr = 1;
+}
+
 static int __devinit amd8111e_probe_one(struct pci_dev *pdev,
 				  const struct pci_device_id *ent)
 {
@@ -2010,12 +2030,6 @@
 	lp->amd8111e_net_dev = dev;
 	lp->pm_cap = pm_cap;
 
-	/* setting mii default values */
-	lp->mii_if.dev = dev;
-	lp->mii_if.mdio_read = amd8111e_mdio_read;
-	lp->mii_if.mdio_write = amd8111e_mdio_write;
-	lp->mii_if.phy_id = PHY_ID;
-
 	spin_lock_init(&lp->lock);
 
 	lp->mmio = ioremap(reg_addr, reg_len);
@@ -2063,7 +2077,15 @@
 	dev->vlan_rx_register =amd8111e_vlan_rx_register;
 	dev->vlan_rx_kill_vid = amd8111e_vlan_rx_kill_vid;
 #endif	
-	
+	/* Probe the external PHY */
+	amd8111e_probe_ext_phy(dev);
+
+	/* setting mii default values */
+	lp->mii_if.dev = dev;
+	lp->mii_if.mdio_read = amd8111e_mdio_read;
+	lp->mii_if.mdio_write = amd8111e_mdio_write;
+	lp->mii_if.phy_id = lp->ext_phy_addr;
+
 	/* Set receive buffer length and set jumbo option*/
 	amd8111e_set_rx_buff_len(dev);
 
@@ -2096,6 +2118,12 @@
     	for (i = 0; i < 6; i++)
 		printk("%2.2x%c",dev->dev_addr[i],i == 5 ? ' ' : ':');
     	printk( "\n");	
+	if (lp->ext_phy_id)
+		printk(KERN_INFO "%s: Found MII PHY ID 0x%08x at address 0x%02x\n",
+		       dev->name, lp->ext_phy_id, lp->ext_phy_addr);
+	else
+		printk(KERN_INFO "%s: Couldn't detect MII PHY, assuming address 0x01\n",
+		       dev->name);
     	return 0;
 err_iounmap:
 	iounmap(lp->mmio);
diff -Nru a/drivers/net/amd8111e.h b/drivers/net/amd8111e.h
--- a/drivers/net/amd8111e.h	2004-10-30 09:31:01 -04:00
+++ b/drivers/net/amd8111e.h	2004-10-30 09:31:01 -04:00
@@ -649,7 +649,6 @@
 #define TCC_MASK		0x0003
 
 /* driver ioctl parameters */
-#define PHY_ID 			0x01	/* currently it is fixed */
 #define AMD8111E_REG_DUMP_LEN	 13*sizeof(u32) 
 
 /* crc generator constants */
@@ -777,6 +776,8 @@
 	int options;		/* Options enabled/disabled for the device */
 
 	unsigned long ext_phy_option;
+	int ext_phy_addr;
+	u32 ext_phy_id;
 	
 	struct amd8111e_link_config link_config;
 	int pm_cap;
diff -Nru a/drivers/net/smc91x.h b/drivers/net/smc91x.h
--- a/drivers/net/smc91x.h	2004-10-30 09:31:01 -04:00
+++ b/drivers/net/smc91x.h	2004-10-30 09:31:01 -04:00
@@ -245,7 +245,7 @@
 	while (!(DCSR(dma) & DCSR_STOPSTATE))
 		cpu_relax();
 	DCSR(dma) = 0;
-	dma_unmap_single(NULL, dmabuf, len, PCI_DMA_FROMDEVICE);
+	dma_unmap_single(NULL, dmabuf, len, DMA_FROM_DEVICE);
 }
 #endif
 
@@ -273,7 +273,7 @@
 	}
 
 	len *= 2;
-	dmabuf = dma_map_single(NULL, buf, len, PCI_DMA_FROMDEVICE);
+	dmabuf = dma_map_single(NULL, buf, len, DMA_FROM_DEVICE);
 	DCSR(dma) = DCSR_NODESC;
 	DTADR(dma) = dmabuf;
 	DSADR(dma) = physaddr + reg;
diff -Nru a/drivers/net/via-rhine.c b/drivers/net/via-rhine.c
--- a/drivers/net/via-rhine.c	2004-10-30 09:31:01 -04:00
+++ b/drivers/net/via-rhine.c	2004-10-30 09:31:01 -04:00
@@ -627,7 +627,7 @@
 }
 
 #ifdef USE_MMIO
-static void __devinit enable_mmio(long pioaddr, u32 quirks)
+static void enable_mmio(long pioaddr, u32 quirks)
 {
 	int n;
 	if (quirks & rqRhineI) {

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [BK PATCHES] 2.6.x net driver updates
@ 2003-10-14 19:06 Jeff Garzik
  0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2003-10-14 19:06 UTC (permalink / raw)
  To: torvalds; +Cc: linux-kernel, netdev

I've tried to keep it to fixes, and created a separate queue
(net-drivers-2.[45]-exp) for non-fixes.

Linus, please do a

	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.5

This will update the following files:

 drivers/net/8139too.c           |    2 +
 drivers/net/Kconfig             |    4 +--
 drivers/net/b44.c               |   15 +++---------
 drivers/net/defxx.c             |    4 +--
 drivers/net/e1000/e1000_main.c  |   35 ++++++++++++++++++++++------
 drivers/net/hamradio/bpqether.c |    6 ----
 drivers/net/hamradio/scc.c      |    4 +--
 drivers/net/hp100.c             |   10 ++++----
 drivers/net/natsemi.c           |    2 -
 drivers/net/pcmcia/pcnet_cs.c   |   23 ++++++++++++------
 drivers/net/tulip/tulip_core.c  |    1 
 drivers/net/tulip/xircom_cb.c   |   35 ++++++++++++++--------------
 drivers/net/wireless/atmel.c    |    1 
 drivers/net/wireless/atmel_cs.c |   11 +++++---
 include/linux/ethtool.h         |   11 ++++----
 net/core/ethtool.c              |   49 ++++++++++++++++++++++++----------------
 16 files changed, 123 insertions(+), 90 deletions(-)

through these ChangeSets:

<pp@ee.oulu.fi> (03/10/14 1.1370)
   [PATCH] b44 enable interrupts after tx timeout (2.6-test version)
   
   Resending the patch I sent some time ago for b44.c that nukes the
   2.4 compatibility cruft as well.
   
   I'll do one for 2.4.23pre6 ASAP, hopefully being able sync the driver fully
   with the one in 2.6 (free_netdev() etc.).

<manfred@colorfullife.com> (03/10/14 1.1369)
   [netdrvr natsemi] fix ring clean
   
   Too much copy&paste in a call to pci_unmap_single.

<jgarzik@redhat.com> (03/10/14 1.1368)
   [netdrvr tulip] add pci id
   
   Contributed by Ken Zalewski.

<simon@thekelleys.org.uk> (03/10/14 1.1367)
   [PATCH] - atmel wireless driver
   
   1) Remove "#include <linux/version.h>" which was not needed and added
      bad extra compile dependencies.
   
   2) Fix typo in module description.
   
   3) Make card detection code cope with buggy SMC CIS entries.

<jgarzik@redhat.com> (03/10/14 1.1366)
   [netdrvr 8139too] another new PCI ID
   
   Contributed by Josh Litherland, Donald Becker, and others.

<jgarzik@redhat.com> (03/10/14 1.1365)
   [netdrvr 8139too] add pci id
   
   contributed by "JaReK" and Donald Becker.

<scott.feldman@intel.com> (03/10/14 1.1364)
   [PATCH] hang on ZEROCOPY/TSO when hitting no-Tx-resources
   
   * Critical bug fix: under heavy Tx stress using ZEROCOPY or TSO, if we
     ran out of Tx descriptors, we didn't calculate for the context
     descritor used as the first of the ZEROCOPY/TSO send, nor do we clean
     up the context desriptor bits in the case where the send isn't going
     to fit, where we need to undo the mappings.  This bug was introduced
     with the 5.2.16 patch set which included a workaround for a hang
     on 82544 over PCI-X.  This workaround cause the check for no-Tx-
     rosource logic to change, and this bug slipped in.

<ak@muc.de> (03/10/14 1.1363)
   [PATCH] Fix warnings in defxx.c
   
   Fix harmless 64bit warnings in defxx.c

<ak@muc.de> (03/10/14 1.1362)
   [PATCH] Fix warnings in hp100
   
   Fix some harmless integer/pointer size mismatch warnings in hp100.c
   on 64bit compiles

<ak@muc.de> (03/10/14 1.1361)
   [PATCH] Mark non 64bit clean network drivers
   
   This marks some net drivers which are clearly not 64bit (judging from
   the warnings) as !64BIT.
   
   -Andi

<pe1rxq@amsat.org> (03/10/14 1.1360)
   [hamradio bpqether] fix ancient debug line
   
   removes a verry old debug line from the bpqethernet driver that
   only fills logs.

<pe1rxq@amsat.org> (03/10/14 1.1359)
   [hamradio scc] fix probe function
   
   fix for the probe function of the scc driver which now uses
   an uninitialised scc struct for requesting an io region.

<scott.feldman@intel.com> (03/10/14 1.1358)
   [PATCH] ethtool_ops eeprom stuff
   
   Finally got around to adding ethtool_ops to e100-3.0.x.  I found a bug
   with get_eeprom() and it seems to work best if we add get_eeprom_len() to
   the ops list.  Also moved check for offest + len < size into ethtool.c.
   
   I was able to test [GS]EEPROM, PHYS_ID, GSTATS, GSTRINGS, and TEST, and
   everything looks good.
   
   Should I send same for 2.4?

<rmk+lkml@arm.linux.org.uk> (03/10/14 1.1357)
   [PATCH] Fix pcnet_cs network hotplug
   
   pcnet_cs registers the network device too early.  The effect of this
   is that the networking hotplug scripts are unable to bring the device
   up automatically.
   
   There are two issues:
   - we were registering the net device before we finished setting up
     the device (eg, reading the MAC address.)
   - we were using DEV_CONFIG_PENDING to block the net device "open"
     callback, and as we know the other methods may be called prior
     to open.
   
   My only concern with this patch is that we set info->node.dev_name
   after we register the net device, so use of cardctl during the
   hotplug scripts may give unexpected results.  However, I am not
   aware of anyone using cardctl to read the device name in network
   hotplug scripts.
   
   Please review and merge.  Thanks.

<shemminger@osdl.org> (03/10/14 1.1356)
   [netdrvr xircom_cb] fix race in statistics pointer setting
   by converting to use alloc_etherdev.



diff -Nru a/drivers/net/8139too.c b/drivers/net/8139too.c
--- a/drivers/net/8139too.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/8139too.c	Tue Oct 14 15:02:25 2003
@@ -248,6 +248,8 @@
 	{0x14ea, 0xab06, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
 	{0x14ea, 0xab07, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
 	{0x11db, 0x1234, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
+	{0x1432, 0x9130, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
+	{0x02ac, 0x1012, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
 
 #ifdef CONFIG_SH_SECUREEDGE5410
 	/* Bogus 8139 silicon reports 8129 without external PROM :-( */
diff -Nru a/drivers/net/Kconfig b/drivers/net/Kconfig
--- a/drivers/net/Kconfig	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/Kconfig	Tue Oct 14 15:02:25 2003
@@ -1616,7 +1616,7 @@
 
 config TLAN
 	tristate "TI ThunderLAN support"
-	depends on NET_PCI && (PCI || EISA)
+	depends on NET_PCI && (PCI || EISA) && !64BIT
 	---help---
 	  If you have a PCI Ethernet network card based on the ThunderLAN chip
 	  which is supported by this driver, say Y and read the
@@ -2412,7 +2412,7 @@
 
 config RCPCI
 	tristate "Red Creek Hardware VPN (EXPERIMENTAL)"
-	depends on NETDEVICES && EXPERIMENTAL && PCI
+	depends on NETDEVICES && EXPERIMENTAL && PCI && !64BIT
 	help
 	  This is a driver for hardware which provides a Virtual Private
 	  Network (VPN). Say Y if you have it.
diff -Nru a/drivers/net/b44.c b/drivers/net/b44.c
--- a/drivers/net/b44.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/b44.c	Tue Oct 14 15:02:25 2003
@@ -25,8 +25,8 @@
 
 #define DRV_MODULE_NAME		"b44"
 #define PFX DRV_MODULE_NAME	": "
-#define DRV_MODULE_VERSION	"0.9"
-#define DRV_MODULE_RELDATE	"Jul 14, 2003"
+#define DRV_MODULE_VERSION	"0.91"
+#define DRV_MODULE_RELDATE	"Oct 3, 2003"
 
 #define B44_DEF_MSG_ENABLE	  \
 	(NETIF_MSG_DRV		| \
@@ -80,15 +80,6 @@
 
 static int b44_debug = -1;	/* -1 == use B44_DEF_MSG_ENABLE as value */
 
-#ifndef PCI_DEVICE_ID_BCM4401
-#define PCI_DEVICE_ID_BCM4401      0x4401
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
-#define IRQ_RETVAL(x) 
-#define irqreturn_t void
-#endif
-
 static struct pci_device_id b44_pci_tbl[] = {
 	{ PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_BCM4401,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
@@ -869,6 +860,8 @@
 	b44_init_hw(bp);
 
 	spin_unlock_irq(&bp->lock);
+
+	b44_enable_ints(bp);
 
 	netif_wake_queue(dev);
 }
diff -Nru a/drivers/net/defxx.c b/drivers/net/defxx.c
--- a/drivers/net/defxx.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/defxx.c	Tue Oct 14 15:02:25 2003
@@ -2664,8 +2664,8 @@
  
 static void my_skb_align(struct sk_buff *skb, int n)
 {
-	u32 x=(u32)skb->data;	/* We only want the low bits .. */
-	u32 v;
+	unsigned long x=(unsigned long)skb->data;	
+	unsigned long v;
 	
 	v=(x+n-1)&~(n-1);	/* Where we want to be */
 	
diff -Nru a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
--- a/drivers/net/e1000/e1000_main.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/e1000/e1000_main.c	Tue Oct 14 15:02:25 2003
@@ -30,7 +30,7 @@
 
 /* Change Log
  *
- * 5.2.18	9/13/03
+ * 5.2.20	9/30/03
  *   o Bug fix: SERDES devices might be connected to a back-plane
  *     switch that doesn't support auto-neg, so add the capability
  *     to force 1000/Full.
@@ -39,6 +39,9 @@
  *     Jumbo Frames or with the reduced FIFO in 82547.
  *   o Better propagation of error codes. [Janice Girouard 
  *     (janiceg@us.ibm.com)].
+ *   o Bug fix: hang under heavy Tx stress when running out of Tx
+ *     descriptors; wasn't clearing context descriptor when backing
+ *     out of send because of no-resource condition.
  *
  * 5.2.16	8/8/03
  *   o Added support for new controllers: 82545GM, 82546GB, 82541/7_B1
@@ -61,7 +64,7 @@
 
 char e1000_driver_name[] = "e1000";
 char e1000_driver_string[] = "Intel(R) PRO/1000 Network Driver";
-char e1000_driver_version[] = "5.2.19-k1";
+char e1000_driver_version[] = "5.2.20-k1";
 char e1000_copyright[] = "Copyright (c) 1999-2003 Intel Corporation.";
 
 /* e1000_pci_tbl - PCI Device ID Table
@@ -1545,6 +1548,7 @@
 	unsigned int first)
 {
 	struct e1000_desc_ring *tx_ring = &adapter->tx_ring;
+	struct e1000_tx_desc *tx_desc;
 	struct e1000_buffer *buffer_info;
 	unsigned int len = skb->len, max_per_txd = E1000_MAX_DATA_PER_TXD;
 	unsigned int offset = 0, size, count = 0, i;
@@ -1640,17 +1644,29 @@
 		}
 	}
 
-	if(E1000_DESC_UNUSED(&adapter->tx_ring) < count) {
+	if(E1000_DESC_UNUSED(&adapter->tx_ring) < count + 2) {
 
 		/* There aren't enough descriptors available to queue up
-		 * this send, so undo the mapping and abort the send. 
-		 * We could have done the check before we mapped the skb,
-		 * but because of all the workarounds (above), it's too
-		 * difficult to predict how many we're going to need.*/
-		i = first;
+		 * this send (need: count + 1 context desc + 1 desc gap
+		 * to keep tail from touching head), so undo the mapping
+		 * and abort the send.  We could have done the check before
+		 * we mapped the skb, but because of all the workarounds
+		 * (above), it's too difficult to predict how many we're
+		 * going to need.*/
+		i = adapter->tx_ring.next_to_use;
+
+		if(i == first) {
+			/* Cleanup after e1000_tx_[csum|tso] scribbling
+			 * on descriptors. */
+			tx_desc = E1000_TX_DESC(*tx_ring, first);
+			tx_desc->buffer_addr = 0;
+			tx_desc->lower.data = 0;
+			tx_desc->upper.data = 0;
+		}
 
 		while(count--) {
 			buffer_info = &tx_ring->buffer_info[i];
+
 			if(buffer_info->dma) {
 				pci_unmap_page(adapter->pdev,
 					       buffer_info->dma,
@@ -1658,8 +1674,11 @@
 					       PCI_DMA_TODEVICE);
 				buffer_info->dma = 0;
 			}
+
 			if(++i == tx_ring->count) i = 0;
 		}
+
+		adapter->tx_ring.next_to_use = first;
 
 		return 0;
 	}
diff -Nru a/drivers/net/hamradio/bpqether.c b/drivers/net/hamradio/bpqether.c
--- a/drivers/net/hamradio/bpqether.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/hamradio/bpqether.c	Tue Oct 14 15:02:25 2003
@@ -196,12 +196,8 @@
 	eth = (struct ethhdr *)skb->mac.raw;
 
 	if (!(bpq->acpt_addr[0] & 0x01) &&
-	    memcmp(eth->h_source, bpq->acpt_addr, ETH_ALEN)) {
-		if (net_ratelimit())
-			printk(KERN_DEBUG "bpqether: wrong dest %s\n",
-			       bpq_print_ethaddr(eth->h_source));
+	    memcmp(eth->h_source, bpq->acpt_addr, ETH_ALEN))
 		goto drop_unlock;
-	}
 
 	if (skb_cow(skb, sizeof(struct ethhdr)))
 		goto drop_unlock;
diff -Nru a/drivers/net/hamradio/scc.c b/drivers/net/hamradio/scc.c
--- a/drivers/net/hamradio/scc.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/hamradio/scc.c	Tue Oct 14 15:02:25 2003
@@ -1762,7 +1762,7 @@
 
 #ifndef SCC_DONT_CHECK
 
-			if(request_region(scc->ctrl, 1, "scc-probe"))
+			if(request_region(hwcfg.ctrl_a, 1, "scc-probe"))
 			{
 				disable_irq(hwcfg.irq);
 				Outb(hwcfg.ctrl_a, 0);
@@ -1774,7 +1774,7 @@
 				if (InReg(hwcfg.ctrl_a,R13) != 0x55)
 					found = 0;
 				enable_irq(hwcfg.irq);
-				release_region(scc->ctrl, 1);
+				release_region(hwcfg.ctrl_a, 1);
 			}
 			else
 				found = 0;
diff -Nru a/drivers/net/hp100.c b/drivers/net/hp100.c
--- a/drivers/net/hp100.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/hp100.c	Tue Oct 14 15:02:25 2003
@@ -1265,9 +1265,9 @@
 {
 	/* pdlptr is starting address for this pdl */
 
-	if (0 != (((unsigned) pdlptr) & 0xf))
-		printk("hp100: %s: Init rxpdl: Unaligned pdlptr 0x%x.\n",
-		       dev->name, (unsigned) pdlptr);
+	if (0 != (((unsigned long) pdlptr) & 0xf))
+		printk("hp100: %s: Init rxpdl: Unaligned pdlptr 0x%lx.\n",
+		       dev->name, (unsigned long) pdlptr);
 
 	ringptr->pdl = pdlptr + 1;
 	ringptr->pdl_paddr = virt_to_whatever(dev, pdlptr + 1);
@@ -1292,8 +1292,8 @@
 			    register hp100_ring_t * ringptr,
 			    register u32 * pdlptr)
 {
-	if (0 != (((unsigned) pdlptr) & 0xf))
-		printk("hp100: %s: Init txpdl: Unaligned pdlptr 0x%x.\n", dev->name, (unsigned) pdlptr);
+	if (0 != (((unsigned long) pdlptr) & 0xf))
+		printk("hp100: %s: Init txpdl: Unaligned pdlptr 0x%lx.\n", dev->name, (unsigned long) pdlptr);
 
 	ringptr->pdl = pdlptr;	/* +1; */
 	ringptr->pdl_paddr = virt_to_whatever(dev, pdlptr);	/* +1 */
diff -Nru a/drivers/net/natsemi.c b/drivers/net/natsemi.c
--- a/drivers/net/natsemi.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/natsemi.c	Tue Oct 14 15:02:25 2003
@@ -1530,7 +1530,7 @@
 	for (i = 0; i < TX_RING_SIZE; i++) {
 		if (np->tx_skbuff[i]) {
 			pci_unmap_single(np->pci_dev,
-				np->rx_dma[i], np->rx_skbuff[i]->len,
+				np->tx_dma[i], np->tx_skbuff[i]->len,
 				PCI_DMA_TODEVICE);
 			dev_kfree_skb(np->tx_skbuff[i]);
 			np->stats.tx_dropped++;
diff -Nru a/drivers/net/pcmcia/pcnet_cs.c b/drivers/net/pcmcia/pcnet_cs.c
--- a/drivers/net/pcmcia/pcnet_cs.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/pcmcia/pcnet_cs.c	Tue Oct 14 15:02:25 2003
@@ -681,10 +681,6 @@
     } else {
 	dev->if_port = 0;
     }
-    if (register_netdev(dev) != 0) {
-	printk(KERN_NOTICE "pcnet_cs: register_netdev() failed\n");
-	goto failed;
-    }
 
     hw_info = get_hwinfo(link);
     if (hw_info == NULL)
@@ -699,7 +695,6 @@
     if (hw_info == NULL) {
 	printk(KERN_NOTICE "pcnet_cs: unable to read hardware net"
 	       " address for io base %#3lx\n", dev->base_addr);
-	unregister_netdev(dev);
 	goto failed;
     }
 
@@ -733,8 +728,6 @@
     ei_status.word16 = 1;
     ei_status.reset_8390 = &pcnet_reset_8390;
 
-    strcpy(info->node.dev_name, dev->name);
-    link->dev = &info->node;
     SET_ETHTOOL_OPS(dev, &netdev_ethtool_ops);
 
     if (info->flags & (IS_DL10019|IS_DL10022)) {
@@ -743,6 +736,21 @@
 	mii_phy_probe(dev);
 	if ((id == 0x30) && !info->pna_phy && (info->eth_phy == 4))
 	    info->eth_phy = 0;
+    }
+
+    link->dev = &info->node;
+    link->state &= ~DEV_CONFIG_PENDING;
+
+    if (register_netdev(dev) != 0) {
+	printk(KERN_NOTICE "pcnet_cs: register_netdev() failed\n");
+	link->dev = NULL;
+	goto failed;
+    }
+
+    strcpy(info->node.dev_name, dev->name);
+
+    if (info->flags & (IS_DL10019|IS_DL10022)) {
+	u_char id = inb(dev->base_addr + 0x1a);
 	printk(KERN_INFO "%s: NE2000 (DL100%d rev %02x): ",
 	       dev->name, ((info->flags & IS_DL10022) ? 22 : 19), id);
 	if (info->pna_phy)
@@ -758,7 +766,6 @@
     printk(" hw_addr ");
     for (i = 0; i < 6; i++)
 	printk("%02X%s", dev->dev_addr[i], ((i<5) ? ":" : "\n"));
-    link->state &= ~DEV_CONFIG_PENDING;
     return;
 
 cs_failed:
diff -Nru a/drivers/net/tulip/tulip_core.c b/drivers/net/tulip/tulip_core.c
--- a/drivers/net/tulip/tulip_core.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/tulip/tulip_core.c	Tue Oct 14 15:02:25 2003
@@ -224,6 +224,7 @@
 	{ 0x1186, 0x1561, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
 	{ 0x1626, 0x8410, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
 	{ 0x1737, 0xAB09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
+	{ 0x1737, 0xAB08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
 	{ 0x17B3, 0xAB08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
  	{ 0x10b9, 0x5261, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DM910X },	/* ALi 1563 integrated ethernet */
 	{ 0x10b7, 0x9300, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, /* 3Com 3CSOHO100B-TX */
diff -Nru a/drivers/net/tulip/xircom_cb.c b/drivers/net/tulip/xircom_cb.c
--- a/drivers/net/tulip/xircom_cb.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/tulip/xircom_cb.c	Tue Oct 14 15:02:25 2003
@@ -230,7 +230,8 @@
 	   This way, we can fail gracefully if not enough memory
 	   is available. 
 	 */
-	if ((dev = init_etherdev(NULL, sizeof(struct xircom_private))) == NULL) {
+	dev = alloc_etherdev(sizeof(struct xircom_private));
+	if (!dev) {
 		printk(KERN_ERR "xircom_probe: failed to allocate etherdev\n");
 		goto device_fail;
 	}
@@ -250,7 +251,7 @@
 
 	SET_MODULE_OWNER(dev);
 	SET_NETDEV_DEV(dev, &pdev->dev);
-	printk(KERN_INFO "%s: Xircom cardbus revision %i at irq %i \n", dev->name, chip_rev, pdev->irq);
+
 
 	private->dev = dev;
 	private->pdev = pdev;
@@ -259,7 +260,6 @@
 	dev->irq = pdev->irq;
 	dev->base_addr = private->io_port;
 	
-	
 	initialize_card(private);
 	read_mac_address(private);
 	setup_descriptors(private);
@@ -272,7 +272,12 @@
 	SET_ETHTOOL_OPS(dev, &netdev_ethtool_ops);
 	pci_set_drvdata(pdev, dev);
 
-	
+	if (register_netdev(dev)) {
+		printk(KERN_ERR "xircom_probe: netdevice registration failed.\n");
+		goto reg_fail;
+	}
+		
+	printk(KERN_INFO "%s: Xircom cardbus revision %i at irq %i \n", dev->name, chip_rev, pdev->irq);
 	/* start the transmitter to get a heartbeat */
 	/* TODO: send 2 dummy packets here */
 	transceiver_voodoo(private);
@@ -287,10 +292,12 @@
 	leave("xircom_probe");
 	return 0;
 
+reg_fail:
+	kfree(private->tx_buffer);
 tx_buf_fail:
 	kfree(private->rx_buffer);
 rx_buf_fail:
-	kfree(dev);
+	free_netdev(dev);
 device_fail:
 	return -ENODEV;
 }
@@ -305,22 +312,16 @@
 static void __devexit xircom_remove(struct pci_dev *pdev)
 {
 	struct net_device *dev = pci_get_drvdata(pdev);
-	struct xircom_private *card;
+	struct xircom_private *card = dev->priv;
+
 	enter("xircom_remove");
-	if (dev!=NULL) {
-		card=dev->priv;
-		if (card!=NULL) {	
-			if (card->rx_buffer!=NULL)
-				pci_free_consistent(pdev,8192,card->rx_buffer,card->rx_dma_handle);
-			card->rx_buffer = NULL;
-			if (card->tx_buffer!=NULL)
-				pci_free_consistent(pdev,8192,card->tx_buffer,card->tx_dma_handle);
-			card->tx_buffer = NULL;			
-		}
-	}
+	pci_free_consistent(pdev,8192,card->rx_buffer,card->rx_dma_handle);
+	pci_free_consistent(pdev,8192,card->tx_buffer,card->tx_dma_handle);
+
 	release_region(dev->base_addr, 128);
 	unregister_netdev(dev);
 	free_netdev(dev);
+	pci_set_drvdata(pdev, NULL);
 	leave("xircom_remove");
 } 
 
diff -Nru a/drivers/net/wireless/atmel.c b/drivers/net/wireless/atmel.c
--- a/drivers/net/wireless/atmel.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/wireless/atmel.c	Tue Oct 14 15:02:25 2003
@@ -37,7 +37,6 @@
 ******************************************************************************/
 
 #include <linux/config.h>
-#include <linux/version.h>
 #include <linux/init.h>
 
 #include <linux/kernel.h>
diff -Nru a/drivers/net/wireless/atmel_cs.c b/drivers/net/wireless/atmel_cs.c
--- a/drivers/net/wireless/atmel_cs.c	Tue Oct 14 15:02:25 2003
+++ b/drivers/net/wireless/atmel_cs.c	Tue Oct 14 15:02:25 2003
@@ -84,7 +84,7 @@
 static int irq_list[4] = { -1 };
 
 MODULE_AUTHOR("Simon Kelley");
-MODULE_DESCRIPTION("Support for Atmel at76c50x 802.11 wireless ethnet cards.");
+MODULE_DESCRIPTION("Support for Atmel at76c50x 802.11 wireless ethernet cards.");
 MODULE_LICENSE("GPL");
 MODULE_SUPPORTED_DEVICE("Atmel at76c50x PCMCIA cards");
 MODULE_PARM(irq_mask, "i");
@@ -404,9 +404,12 @@
 					goto mismatch;
 				for (k = 0; k < j; k++) {
 					while ((*p != '\0') && (*p != '/')) p++;
-					if (*p == '\0')
-						goto mismatch;
-					p++;
+					if (*p == '\0') {
+						if (*q != '\0')
+							goto mismatch;
+					} else {
+						p++;
+					}
 				}
 				while((*q != '\0') && (*p != '\0') && 
 				      (*p != '/') && (*p == *q)) p++, q++;
diff -Nru a/include/linux/ethtool.h b/include/linux/ethtool.h
--- a/include/linux/ethtool.h	Tue Oct 14 15:02:25 2003
+++ b/include/linux/ethtool.h	Tue Oct 14 15:02:25 2003
@@ -307,14 +307,14 @@
  *
  * get_eeprom:
  *	Should fill in the magic field.  Don't need to check len for zero
- *	or wraparound but must check offset + len < size.  Fill in the data
- *	argument with the eeprom values from offset to offset + len.  Update
- *	len to the amount read.  Returns an error or zero.
+ *	or wraparound.  Fill in the data argument with the eeprom values
+ *	from offset to offset + len.  Update len to the amount read.
+ *	Returns an error or zero.
  *
  * set_eeprom:
  *	Should validate the magic field.  Don't need to check len for zero
- *	or wraparound but must check offset + len < size.  Update len to
- *	the amount written.  Returns an error or zero.
+ *	or wraparound.  Update len to the amount written.  Returns an error
+ *	or zero.
  */
 struct ethtool_ops {
 	int	(*get_settings)(struct net_device *, struct ethtool_cmd *);
@@ -328,6 +328,7 @@
 	void	(*set_msglevel)(struct net_device *, u32);
 	int	(*nway_reset)(struct net_device *);
 	u32	(*get_link)(struct net_device *);
+	int	(*get_eeprom_len)(struct net_device *);
 	int	(*get_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
 	int	(*set_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
 	int	(*get_coalesce)(struct net_device *, struct ethtool_coalesce *);
diff -Nru a/net/core/ethtool.c b/net/core/ethtool.c
--- a/net/core/ethtool.c	Tue Oct 14 15:02:25 2003
+++ b/net/core/ethtool.c	Tue Oct 14 15:02:25 2003
@@ -122,7 +122,8 @@
 		info.n_stats = ops->get_stats_count(dev);
 	if (ops->get_regs_len)
 		info.regdump_len = ops->get_regs_len(dev);
-	/* XXX: eeprom? */
+	if (ops->get_eeprom_len)
+		info.eedump_len = ops->get_eeprom_len(dev);
 
 	if (copy_to_user(useraddr, &info, sizeof(info)))
 		return -EFAULT;
@@ -245,29 +246,34 @@
 static int ethtool_get_eeprom(struct net_device *dev, void *useraddr)
 {
 	struct ethtool_eeprom eeprom;
+	struct ethtool_ops *ops = dev->ethtool_ops;
 	u8 *data;
-	int len, ret;
+	int ret;
 
-	if (!dev->ethtool_ops->get_eeprom)
+	if (!ops->get_eeprom || !ops->get_eeprom_len)
 		return -EOPNOTSUPP;
 
 	if (copy_from_user(&eeprom, useraddr, sizeof(eeprom)))
 		return -EFAULT;
 
-	len = eeprom.len;
 	/* Check for wrap and zero */
-	if (eeprom.offset + len <= eeprom.offset)
+	if (eeprom.offset + eeprom.len <= eeprom.offset)
+		return -EINVAL;
+
+	/* Check for exceeding total eeprom len */
+	if (eeprom.offset + eeprom.len > ops->get_eeprom_len(dev))
 		return -EINVAL;
 
-	data = kmalloc(len, GFP_USER);
+	data = kmalloc(eeprom.len, GFP_USER);
 	if (!data)
 		return -ENOMEM;
 
-	if (copy_from_user(data, useraddr + sizeof(eeprom), len))
-		return -EFAULT;
+	ret = -EFAULT;
+	if (copy_from_user(data, useraddr + sizeof(eeprom), eeprom.len))
+		goto out;
 
-	ret = dev->ethtool_ops->get_eeprom(dev, &eeprom, data);
-	if (!ret)
+	ret = ops->get_eeprom(dev, &eeprom, data);
+	if (ret)
 		goto out;
 
 	ret = -EFAULT;
@@ -285,32 +291,37 @@
 static int ethtool_set_eeprom(struct net_device *dev, void *useraddr)
 {
 	struct ethtool_eeprom eeprom;
+	struct ethtool_ops *ops = dev->ethtool_ops;
 	u8 *data;
-	int len, ret;
+	int ret;
 
-	if (!dev->ethtool_ops->set_eeprom)
+	if (!ops->set_eeprom || !ops->get_eeprom_len)
 		return -EOPNOTSUPP;
 
 	if (copy_from_user(&eeprom, useraddr, sizeof(eeprom)))
 		return -EFAULT;
 
-	len = eeprom.len;
 	/* Check for wrap and zero */
-	if (eeprom.offset + len <= eeprom.offset)
+	if (eeprom.offset + eeprom.len <= eeprom.offset)
+		return -EINVAL;
+
+	/* Check for exceeding total eeprom len */
+	if (eeprom.offset + eeprom.len > ops->get_eeprom_len(dev))
 		return -EINVAL;
 
-	data = kmalloc(len, GFP_USER);
+	data = kmalloc(eeprom.len, GFP_USER);
 	if (!data)
 		return -ENOMEM;
 
-	if (copy_from_user(data, useraddr + sizeof(eeprom), len))
-		return -EFAULT;
+	ret = -EFAULT;
+	if (copy_from_user(data, useraddr + sizeof(eeprom), eeprom.len))
+		goto out;
 
-	ret = dev->ethtool_ops->set_eeprom(dev, &eeprom, data);
+	ret = ops->set_eeprom(dev, &eeprom, data);
 	if (ret)
 		goto out;
 
-	if (copy_to_user(useraddr + sizeof(eeprom), data, len))
+	if (copy_to_user(useraddr + sizeof(eeprom), data, eeprom.len))
 		ret = -EFAULT;
 
  out:

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bk patches] 2.6.x net driver updates
@ 2003-09-26  1:02 Jeff Garzik
  0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2003-09-26  1:02 UTC (permalink / raw)
  To: torvalds; +Cc: netdev, linux-kernel


Linus, please do a

	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.5

This will update the following files:

 drivers/net/wireless/arlan.c          | 2078 ------------------------------
 Documentation/networking/sk98lin.txt  |  140 --
 drivers/net/3c503.c                   |    9 
 drivers/net/3c509.c                   |    9 
 drivers/net/8390.c                    |   11 
 drivers/net/Kconfig                   |  170 --
 drivers/net/ac3200.c                  |   10 
 drivers/net/appletalk/Kconfig         |    6 
 drivers/net/arcnet/Kconfig            |   40 
 drivers/net/e2100.c                   |   10 
 drivers/net/hamradio/Kconfig          |   41 
 drivers/net/hamradio/baycom_epp.c     |   79 -
 drivers/net/hamradio/baycom_par.c     |   57 
 drivers/net/hamradio/baycom_ser_fdx.c |   60 
 drivers/net/hamradio/baycom_ser_hdx.c |   57 
 drivers/net/hamradio/hdlcdrv.c        |   90 -
 drivers/net/hp-plus.c                 |   11 
 drivers/net/hp.c                      |   11 
 drivers/net/ne.c                      |    9 
 drivers/net/ne2.c                     |    8 
 drivers/net/ne2k-pci.c                |   49 
 drivers/net/ne2k_cbus.c               |   55 
 drivers/net/pcmcia/Kconfig            |   69 -
 drivers/net/saa9730.c                 |  201 ++
 drivers/net/saa9730.h                 |    1 
 drivers/net/sk98lin/h/skdrv1st.h      |    7 
 drivers/net/sk98lin/h/skdrv2nd.h      |   24 
 drivers/net/sk98lin/h/skgeinit.h      |   19 
 drivers/net/sk98lin/h/sktypes.h       |    7 
 drivers/net/sk98lin/h/skversion.h     |   31 
 drivers/net/sk98lin/skdim.c           |   18 
 drivers/net/sk98lin/skge.c            |  350 +++--
 drivers/net/sk98lin/skproc.c          |  325 +---
 drivers/net/smc-ultra.c               |   13 
 drivers/net/tlan.c                    |    7 
 drivers/net/tokenring/Kconfig         |   66 
 drivers/net/tulip/Kconfig             |   48 
 drivers/net/wan/Kconfig               |  111 -
 drivers/net/wd.c                      |   10 
 drivers/net/wireless/Kconfig          |   32 
 drivers/net/wireless/Makefile         |    4 
 drivers/net/wireless/arlan-main.c     | 2329 +++++++++++++++++++++++++++++++---
 drivers/net/wireless/arlan-proc.c     |   25 
 drivers/net/wireless/arlan.h          |  106 -
 drivers/net/wireless/atmel.c          |    2 
 drivers/net/wireless/atmel_cs.c       |    4 
 include/linux/hdlcdrv.h               |    1 
 47 files changed, 3157 insertions(+), 3663 deletions(-)

through these ChangeSets:

<trivial@rustcorp.com.au> (03/09/25 1.1357)
   [PATCH] [PATCH 2.6.0-test1] remove check_region from drivers_net_3c509.c
   
   From:  Domen Puncer <root@coderock.org>

<buffer@antifork.org> (03/09/25 1.1356)
   [PATCH] saa9730 (minor revision)
   
   Don't know if the patch I released few days ago was still
   applied. This is a minor revision of that patch which converts
   saa9730 to spinlocks thus removing save_and_cli() and
   restore_flags() calls.
   
   Regards,
   Angelo Dell'Aera

<simon@thekelleys.org.uk> (03/09/25 1.1355)
   [PATCH] - atmel wireless driver
   
   This does two things:
   
   1) Fix alignment problem on PARISC64 (and maybe other 64bit archs.)
   2) Add another couple of cards to the table.
   
   Cheers,
   
   Simon.

<p_gortmaker@yahoo.com> (03/09/25 1.1354)
   [PATCH] Remove emacs cruft from 8390 drivers

<p_gortmaker@yahoo.com> (03/09/25 1.1353)
   [PATCH] ne2k_cbus tidy up

<p_gortmaker@yahoo.com> (03/09/25 1.1352)
   [PATCH] ne2k-pci full duplex with RealTek

<shemminger@osdl.org> (03/09/25 1.1351)
   [PATCH] (3/4) baycom/hdlcdrv unregister
   
   If baycom driver has never been opened, it will attempt to free
   an IRQ that it never registered when removed.  The problem is that hdlcdrv
   does not keep track of open/close state.

<shemminger@osdl.org> (03/09/25 1.1350)
   [PATCH] (2/4) baycom c99 initializers

<shemminger@osdl.org> (03/09/25 1.1349)
   [PATCH] (1/4) Update baycom drivers for 2.6
   
   Update baycom drivers for 2.6.0-test5
   	- get rid of MOD_INC/DEC
   	    (looked into hdlcdrv_ops and don't need to have owner field because
   	     baycom drivers unregister on  unload).
   	- use alloc_netdev instead of static device structures.
   	- hdlcdrv_register returns device instead of getting passed one.
   	- put private data in space allocated at dev->priv in alloc_netdev
   	- shorten name of hdlcdrv_register_hdlcdrv to hdlcdrv_register
   
   I don't have actual baycom hardware, but driver builds and loads/unloads.
   Real hardware initialization doesn't happen until open.
   
   The first one is the important patch, the other three are just code review
   type cleanups.

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.23)
   [PATCH] Remove modules.txt drivers_net_pcmcia_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.22)
   [PATCH] Remove modules.txt drivers_net_wan_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.21)
   [PATCH] Remove modules.txt drivers_net_tokenring_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.20)
   [PATCH] Remove modules.txt drivers_net_hamradio_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>
   
     Cheers, n.

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.19)
   [PATCH] Remove modules.txt drivers_net_arcnet_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.18)
   [PATCH] Remove modules.txt drivers_net_wireless_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.17)
   [PATCH] Remove modules.txt drivers_net_tulip_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<trivial@rustcorp.com.au> (03/09/25 1.1325.8.16)
   [PATCH] Remove modules.txt drivers_net_appletalk_Kconfig
   
   From:  Nicolas Kaiser <nikai@nikai.net>

<mlindner@syskonnect.de> (03/09/25 1.1325.8.15)
   [netdrvr sk98lin] fix leaks on error, and related cleanups

<mlindner@syskonnect.de> (03/09/25 1.1325.8.14)
   [netdrvr sk98lin] bump version number

<mlindner@syskonnect.de> (03/09/25 1.1325.8.13)
   [netdrvr sk98lin] small fixes
   
   Patch 3/5 (Update to version 6.17)
   * Add: Removed SkNumber and SkDoDiv
   * Add: Counter output as (unsigned long long)

<mlindner@syskonnect.de> (03/09/25 1.1325.8.12)
   [netdrvr sk98lin] update readme, remove old changelog

<mlindner@syskonnect.de> (03/09/25 1.1325.8.11)
   [netdrvr sk98lin] small updates
   
   
   Patch 1/5 (Update to version 6.17)
   * Add: Better parameter check
   * Add: UDP and TCP HW Csum changes
   * Add: Interrupt Moderation infos

<shemminger@osdl.org> (03/09/25 1.1325.8.10)
   [PATCH] (8/8) arlan -- proper jiffies usage
   
   Add proper management of jiffies and time values, rather than punting
   and doing long long arithmetic on usecs.

<shemminger@osdl.org> (03/09/25 1.1325.8.9)
   [PATCH] (7/8) arlan -- more dead wood removal
   
   Still more driver data which was updated but never used.

<shemminger@osdl.org> (03/09/25 1.1325.8.8)
   [PATCH] (6/8) arlan -- add spinlock
   
   Convert bogus test_and_set local wait, to a real spin_lock so it
   has a chance of working on an SMP.  This also does the right thing
   and locks out interrupts while giving commands on UP;  maybe the
   comment in Kconfig was because there was never a proper mutex...
   
   Don't have real hardware to try this, but it can't be worse than
   the previous code.

<shemminger@osdl.org> (03/09/25 1.1325.8.7)
   [PATCH] (5/8) arlan -- more set never used elements
   
   Still more places state is saved and never used.

<shemminger@osdl.org> (03/09/25 1.1325.8.6)
   [PATCH] (4/8) arlan -- trailing semicolons.
   
   Get rid of extra trailing semicolons

<shemminger@osdl.org> (03/09/25 1.1325.8.5)
   [PATCH] (3/8) arlan -- get rid of unnecessary casts.
   
   Get rid of unneeded casts to cleanup readability.

<shemminger@osdl.org> (03/09/25 1.1325.8.4)
   [PATCH] (2/8) arlan -- get rid of some dead wood
   
   This code is littered with unused structure elements and globals.
   Eliminate some of the fields set and never used.
   
   More in later patches.

<shemminger@osdl.org> (03/09/25 1.1325.8.3)
   [PATCH] (1/8) arlan -- merge arlan-proc with main code
   
   The arlan driver tries to build it's /proc interface into a separate module,
   which leads to circular dependencies and other ugliness.  This patch
   moves arlan.c to arlan-main.c and changes initialization builds one module arlan.o
   
   Patch is for 2.6.0-test5

<mpm@selenic.com> (03/09/24 1.1325.8.2)
   [netdrvr tlan] netif_carrier_* support

<mlindner@syskonnect.de> (03/09/24 1.1325.8.1)
   [netdrvr sk98lin] Remove useless configure options
   
   here is a new version of the sk98lin driver (v6.18) with some changes
   for kernel 2.6.0-test4. This is a diff between the latest patched kernel
   version with sk98lin driver v6.17.
   
   Patch 1/3
   * Remove bogus config stuff


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bk patches] 2.6.x net driver updates
@ 2003-09-20 19:27 Jeff Garzik
  0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2003-09-20 19:27 UTC (permalink / raw)
  To: torvalds; +Cc: netdev, linux-kernel

First queue push after return from Silly Valley.


Linus, please do a

	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.5

Patch is also available at:

ftp://ftp.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-test5-bk7-netdrvr1.patch.bz2

This will update the following files:

 drivers/net/irda/smc-ircc.c           | 1258 ----------------------------------
 drivers/net/irda/toshoboe.c           |  957 -------------------------
 Documentation/networking/bonding.txt  |    4 
 drivers/net/3c501.c                   |    6 
 drivers/net/3c505.c                   |   12 
 drivers/net/3c515.c                   |    1 
 drivers/net/Space.c                   |    4 
 drivers/net/acenic.c                  |    3 
 drivers/net/bonding/bond_alb.c        |  150 +++-
 drivers/net/bonding/bond_alb.h        |    8 
 drivers/net/bonding/bond_main.c       | 1202 ++++++++++++++++++++------------
 drivers/net/bonding/bonding.h         |    4 
 drivers/net/cs89x0.c                  |    1 
 drivers/net/depca.c                   |  944 ++++++++++++-------------
 drivers/net/e1000/e1000_main.c        |   13 
 drivers/net/eepro.c                   |    6 
 drivers/net/ewrk3.c                   |    5 
 drivers/net/hamradio/baycom_par.c     |    1 
 drivers/net/hamradio/baycom_ser_fdx.c |    1 
 drivers/net/hamradio/baycom_ser_hdx.c |    1 
 drivers/net/hamradio/hdlcdrv.c        |    1 
 drivers/net/hamradio/scc.c            |  208 +++--
 drivers/net/hamradio/yam.c            |    1 
 drivers/net/ibmlana.c                 |    1 
 drivers/net/irda/Kconfig              |   24 
 drivers/net/irda/Makefile             |    2 
 drivers/net/irda/ali-ircc.c           |   84 --
 drivers/net/irda/donauboe.c           |   50 -
 drivers/net/irda/irda-usb.c           |   44 -
 drivers/net/irda/nsc-ircc.c           |   78 --
 drivers/net/irda/sir_kthread.c        |    4 
 drivers/net/irda/via-ircc.c           |   92 --
 drivers/net/irda/w83977af_ir.c        |   54 -
 drivers/net/lance.c                   |   10 
 drivers/net/mace.c                    |    1 
 drivers/net/ne2.c                     |    1 
 drivers/net/ni5010.c                  |    5 
 drivers/net/ni52.c                    |    5 
 drivers/net/ni65.c                    |    1 
 drivers/net/ns83820.c                 |   10 
 drivers/net/pcmcia/com20020_cs.c      |   41 -
 drivers/net/rcpci45.c                 |    4 
 drivers/net/rrunner.c                 |   17 
 drivers/net/rrunner.h                 |    1 
 drivers/net/sb1000.c                  |    1 
 drivers/net/sis900.c                  |    1 
 drivers/net/sk98lin/h/skdrv1st.h      |    4 
 drivers/net/sk98lin/skge.c            |    1 
 drivers/net/sk_mca.h                  |    2 
 drivers/net/skfp/h/targetos.h         |    1 
 drivers/net/smc9194.c                 |    1 
 drivers/net/tokenring/lanstreamer.h   |    2 
 drivers/net/tokenring/proteon.c       |    2 
 drivers/net/tokenring/skisa.c         |    2 
 drivers/net/tokenring/smctr.c         |    1 
 drivers/net/tokenring/tms380tr.c      |    1 
 drivers/net/wan/comx-hw-comx.c        |    1 
 drivers/net/wan/comx-hw-locomx.c      |    1 
 drivers/net/wan/comx-hw-mixcom.c      |    1 
 drivers/net/wan/comx-hw-munich.c      |    1 
 drivers/net/wan/comx-proto-fr.c       |    1 
 drivers/net/wan/comx-proto-lapb.c     |    1 
 drivers/net/wan/comx-proto-ppp.c      |    1 
 drivers/net/wan/comx.c                |    1 
 drivers/net/wan/cycx_x25.c            |    1 
 drivers/net/wan/dlci.c                |    1 
 drivers/net/wan/dscc4.c               |    1 
 drivers/net/wan/lmc/lmc_ver.h         |    2 
 drivers/net/wan/pc300_drv.c           |    1 
 drivers/net/wan/pc300_tty.c           |    1 
 drivers/net/wan/sbni.c                |   20 
 drivers/net/wan/sdla_chdlc.c          |    1 
 drivers/net/wan/sdla_fr.c             |    1 
 drivers/net/wan/sdla_ft1.c            |    1 
 drivers/net/wan/sdla_ppp.c            |    1 
 drivers/net/wan/sdla_x25.c            |    1 
 drivers/net/wan/sdladrv.c             |    1 
 drivers/net/wan/sdlamain.c            |    1 
 drivers/net/wan/sealevel.c            |  157 ++--
 drivers/net/wan/wanpipe_multppp.c     |    1 
 drivers/net/wd.c                      |    5 
 drivers/net/wireless/airo.c           |   11 
 drivers/net/wireless/arlan-proc.c     |    3 
 drivers/net/wireless/arlan.c          |    1 
 drivers/net/wireless/arlan.h          |    1 
 drivers/net/wireless/strip.c          |    1 
 include/net/syncppp.h                 |    7 
 87 files changed, 1799 insertions(+), 3769 deletions(-)

through these ChangeSets:

<shemminger@osdl.org> (03/09/20 1.1386)
   [PATCH] Road Runner HIPPI driver (rrunner)
   
   Small clean up, to use current APIs.

<achirica@telefonica.net> (03/09/20 1.1385)
   [wireless airo] Fix MIC support with CryptoAPI

<achirica@telefonica.net> (03/09/20 1.1384)
   [wireless airo] fix PCI probe

<jochen@scram.de> (03/09/20 1.1383)
   [tokenring] fix breakage in proteon, skisa
   
   this one fixes both drivers. They have been broken since the
   reorganization in June. Unfortunately, my major build platform (alpha) had
   some issues with later 2.5.X kernels (cache problems causing all kind of
   funny behaviour), so i waited until these problems had been resolved by
   the alpha gurus :-/...
   
   In the mean time i also upgraded pine. I hope the patch corruption issue
   is resolved by now.
   

<shemminger@osdl.org> (03/09/20 1.1382)
   [PATCH] hamradio/scc -
   
   Update hamradio/scc for 2.6.0-test5
   	- use seq_file for /proc
   	- get rid of dev_get()
   	- use alloc_netdev
   
   Don't have hardware, but can load/unload the module fine.

<amir.noam@intel.com> (03/09/20 1.1381)
   [PATCH] [bonding] Convert /proc to seq_file
   
   This patch converts /proc/net/bondX/info into /proc/net/bonding/bondX
   using the seq_file interface.
   
   This is based on Stephen's recent patch, but slightly modified to work
   with the propagation patch set and with some locking changes to make it
   simpler.
   
   The patch applies both on 2.4 (after the sync set from earlier today)
   and on 2.6 (after the propagation set from 2003/11/9).
   
   Amir

<bunk@fs.tum.de> (03/09/20 1.1380)
   [PATCH] fix sbni.c compile with gcc 3.3
   
   sbni.c in 2.6.0-test5 fails to compile with gcc 3.3 with the following
   error:
   
   <--  snip  -->
   
   ...
     CC      drivers/net/wan/sbni.o
   ...
   drivers/net/wan/sbni.c: In function `calc_crc32':
   drivers/net/wan/sbni.c:1568: error: asm-specifier for variable `_crc'
   conflicts with asm clobber list
   make[3]: *** [drivers/net/wan/sbni.o] Error 1
   
   <--  snip  -->
   
   Below is the patch by Margit Schubert-White to fix this issue (it is
   already in 2.4).
   
   cu
   Adrian

<akpm@osdl.org> (03/09/20 1.1379)
   [PATCH] e1000 bug
   
   Rick Lindsley <ricklind@us.ibm.com> wrote:
   >
   > since it's been out for a while you probably already know, but the patch
   > for e1000_main.c has a bug in it.  Looks like it will fail at line 1550 if
   > compiled with NETIF_F_TSO defined.
   >
   
   So it will.  I blame the gcc developers.
   
    25-akpm/drivers/net/e1000/e1000_main.c |   13 +++++++++----
    1 files changed, 9 insertions(+), 4 deletions(-)

<amir.noam@intel.com> (03/09/20 1.1378)
   [PATCH] [bonding 2.6] Fix ipx_hdr compile error

<amir.noam@intel.com> (03/09/20 1.1377)
   [PATCH] [bonding 2.6] Add missing free_netdev()

<amir.noam@intel.com> (03/09/20 1.1376)
   [PATCH] [bonding 2.6] Enhance netdev notification handling

<amir.noam@intel.com> (03/09/20 1.1375)
   [PATCH] [bonding 2.6] Consolidate /proc code, add CHANGENAME handler

<amir.noam@intel.com> (03/09/20 1.1374)
   [PATCH] [bonding 2.6] Add support for changing HW address in ALB/TLB modes

<amir.noam@intel.com> (03/09/20 1.1373)
   [PATCH] [bonding 2.6] Add support for changing HW address and MTU

<amir.noam@intel.com> (03/09/20 1.1372)
   [PATCH] [bonding 2.6] Decouple promiscuous handling from multicast mode setting

<amir.noam@intel.com> (03/09/20 1.1371)
   [PATCH] [bonding 2.6] fix assign_current_slave

<amir.noam@intel.com> (03/09/20 1.1370)
   [PATCH] [bonding 2.6] consolidate change_active operations

<shemminger@osdl.org> (03/09/20 1.1369)
   [PATCH] update arcnet/pcmcia driver
   
   Redo of earlier patch to get rid of MOD_INC/DEC and use alloc_netdev.
   This is against 2.6.0-test5 bk latest.

<shemminger@osdl.org> (03/09/20 1.1368)
   [PATCH] sealevel wan driver
   
   Update sealevel driver to match current net_device interface:
   	- dynamically allocate netdevice and private data.
   	- get rid of MOD_INC/DEC
   	- if_ptr not used
   	- bugfix: not all of board structure was being zeroed.
   
   Note: this driver still doesn't probe() correctly since it just assumes that
   if loaded the hardware is there!
   
   Since I don't have one of these boards...
   tested it by #ifdef'ing out all the bits that touch actual hardware.

<shemminger@osdl.org> (03/09/20 1.1367)
   [IrDA] ali-ircc -- dev_alloc cleanout
   
   Convert ali-ircc driver to:
   	- use alloc_net_dev not dev_alloc
   	- allocate private data at same time
   	- cleanup error unwinds
   	- call free_netdev.
   
   Builds and loads, but don't have real hardware.

<shemminger@osdl.org> (03/09/20 1.1366)
   [IrDA] via-ircc -- dev_alloc cleanout
   
   Convert via-ircc 2.6.0-test5
   	- use alloc_net_dev not dev_alloc
   	- allocate private data at same time
   	- cleanup error unwinds
   	- call free_netdev.
   
   Builds and loads, but don't have real hardware.

<shemminger@osdl.org> (03/09/20 1.1365)
   [IrDA] nsc-ircc -- dev_alloc cleanout
   
   Cleanup nsc-ircc driver for 2.6.0-test5
   	- replace dev_alloc with alloc_netdev
   	- use private data allocated with alloc_netdev
   	- error unwind cleanup

<shemminger@osdl.org> (03/09/20 1.1364)
   [IrDA] donahoboe -- dev_alloc cleanout
   
   Fixes for donauboe for 2.6.0-test5
   	- replace dev_alloc with alloc_netdev
   	- error unwind cleanup

<shemminger@osdl.org> (03/09/20 1.1363)
   [IrDA] w83977af -- dev_alloc cleanout
   
   Yet another irda driver cleanup for 2.6.0-test5
   	- replace dev_alloc with alloc_netdev
   	- use private data allocated with alloc_netdev
   	- use free_netdev

<shemminger@osdl.org> (03/09/20 1.1362)
   [IrDA] irda-usb -- dev_alloc cleanout
   
   Update irda-usb for 2.6.0-test5
   	- use alloc_netdev (but can't use dev->priv area cause that is allocated elsewhere).

<rddunlap@osdl.org> (03/09/20 1.1361)
   [PATCH] janitor: ns83820 error handling
   
   Subject: Re: [Kernel-janitors] [PATCH] insert missing free_irq and fix 	cleanup path
   From: Leann Ogasawara <ogasawara@osdl.org>
   
   On Thu, 2003-09-04 at 13:17, Benjamin LaHaise wrote:
   > The if()s before free are redundant, turf them and it's good.

<rddunlap@osdl.org> (03/09/20 1.1360)
   [PATCH] janitor: insert a missing iounmap()
   
   From: Leann Ogasawara <ogasawara@osdl.org>
   Subject: [Kernel-janitors] [PATCH] insert missing iounmap()
   
   Patch inserts a missing iounmap().

<shemminger@osdl.org> (03/09/20 1.1359)
   [PATCH] get rid of old IRDA drivers.
   
   According to Jean the toshoboe and old smc ircc drivers are no longer needed.
   This patch removes them from 2.6.0-test5

<chrisw@osdl.org> (03/09/20 1.1358)
   [netdrvr] use cpu_relax() in busy loop, or mdelay instead of busy loop
   
   Replace busy loop nop with cpu_relax(), and just use mdelay where it's better.

<rddunlap@osdl.org> (03/09/20 1.1357)
   [PATCH] janitor: remove (or add) unneeded includes (drivers/net/)
   
   From: Randy Hron <rwhron@earthlink.net>

<rddunlap@osdl.org> (03/09/20 1.1356)
   [PATCH] janitor: remove unneeded includes (hamradio)
   
   From: Randy Hron <rwhron@earthlink.net>

<rddunlap@osdl.org> (03/09/20 1.1355)
   [PATCH] janitor: remove (or add) unneeded includes (wireless)
   
   From: Randy Hron <rwhron@earthlink.net>

<rddunlap@osdl.org> (03/09/20 1.1354)
   [PATCH] janitor: remove unneeded includes (skfp)
   
   From: Randy Hron <rwhron@earthlink.net>

<rddunlap@osdl.org> (03/09/20 1.1353)
   [PATCH] janitor: remove (or add) unneeded includes
   
   From: Randy Hron <rwhron@earthlink.net>

<rddunlap@osdl.org> (03/09/20 1.1352)
   [PATCH] janitor: remove unneeded includes (sk98lin)
   
   From: Randy Hron <rwhron@earthlink.net>

<rddunlap@osdl.org> (03/09/20 1.1351)
   [PATCH] janitor: remove unneeded includes (tokenring)
   
   From: Randy Hron <rwhron@earthlink.net>

<shemminger@osdl.org> (03/09/20 1.1350)
   [PATCH] replace sppp_of macro with inline
   
   Replace macro with inline and get some type checking.

<felipewd@terra.com.br> (03/09/20 1.1349)
   [PATCH] Unneeded memory barrier in net/irda code

<mzyngier@freesurf.fr> (03/09/20 1.1348)
   [PATCH] depca update
   
   I finally found some time to hack the depca driver, in basically the
   same way I did with the de4x5 driver. The patch is quite big (shuffles
   a lot of code around, removes lots of global variables), mainly in
   order to use the driver model on every bus supported by this driver.
   
   I also removed the probing from Space.c, so the usual warning about
   device renumbering applies.
   
   Tested on alpha (DE422, EISA) and i386 (two DE201, ISA), built-in and
   modular. The MCA part is completly untested, since I lack the hardware
   (no, I do not own every single piece of junk hardware out
   there... ;-).


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [bk patches] 2.6.x net driver updates
  2003-08-08  2:04     ` William Enck
@ 2003-08-08  3:01       ` William Enck
  0 siblings, 0 replies; 11+ messages in thread
From: William Enck @ 2003-08-08  3:01 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: linux-kernel, Christoph Hellwig

On Thu, Aug 07, 2003 at 10:04:16PM -0400, William Enck wrote:
> The first set i was from -test2-bk7 and the second was from your patch.
> Your patch didn't cause the problem. I replied to your email because you
> had updates to orinoco_cs.c and I thought there was a chance your patch
> was supposed to fix it. I guess a reply was not the best thing to do,
> shall I start a new thread?

This looks like it is a totaly separate problem. I tested -mm5 and it
didn't work in there either. I'm going to start a new thread for this.

Will

-- 
William Enck
wenck@wapu.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [bk patches] 2.6.x net driver updates
  2003-08-08  1:41   ` Jeff Garzik
@ 2003-08-08  2:04     ` William Enck
  2003-08-08  3:01       ` William Enck
  0 siblings, 1 reply; 11+ messages in thread
From: William Enck @ 2003-08-08  2:04 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: linux-kernel, Christoph Hellwig

On Thu, Aug 07, 2003 at 09:41:01PM -0400, Jeff Garzik wrote:
> William Enck wrote:
> >On Thu, Aug 07, 2003 at 08:05:08PM -0400, Jeff Garzik wrote:
> >
> >>Linus, please do a
> >>
> >>	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.6
> >>
> >>Others may download the patch from
> >>
> >>ftp://ftp.??.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-test2-bk7-netdrvr1.patch.bz2
> >>
> >>This will update the following files:
> >
> >..snip..
> >
> >>drivers/net/wireless/orinoco_cs.c   |   16 -
> >
> >
> >dmesg gave the folloing with 2.6.0-test2-bk7
> >
> >orinoco.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
> >orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
> >orinoco_cs: RequestIRQ: Unsupported mode
> >
> >I thought the above patch might fix it, so I patched and recompiled. I
> >still see the following in 2.6.0-test2-bk7-netdrvr1
> >
> >orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
> >orinoco_cs: RequestIRQ: Unsupported mode
> >
> >The module loaded and worked fine in -test2 and -test2-mm4. 
> 
> 
> Can you test -test2-bk7 (without my patch)?

The first set i was from -test2-bk7 and the second was from your patch.
Your patch didn't cause the problem. I replied to your email because you
had updates to orinoco_cs.c and I thought there was a chance your patch
was supposed to fix it. I guess a reply was not the best thing to do,
shall I start a new thread?

-- 
William Enck
wenck@wapu.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [bk patches] 2.6.x net driver updates
  2003-08-08  1:36 ` William Enck
@ 2003-08-08  1:41   ` Jeff Garzik
  2003-08-08  2:04     ` William Enck
  0 siblings, 1 reply; 11+ messages in thread
From: Jeff Garzik @ 2003-08-08  1:41 UTC (permalink / raw)
  To: William Enck; +Cc: linux-kernel, Christoph Hellwig

William Enck wrote:
> On Thu, Aug 07, 2003 at 08:05:08PM -0400, Jeff Garzik wrote:
> 
>>Linus, please do a
>>
>>	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.6
>>
>>Others may download the patch from
>>
>>ftp://ftp.??.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-test2-bk7-netdrvr1.patch.bz2
>>
>>This will update the following files:
> 
> ..snip..
> 
>> drivers/net/wireless/orinoco_cs.c   |   16 -
> 
> 
> dmesg gave the folloing with 2.6.0-test2-bk7
> 
> orinoco.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
> orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
> orinoco_cs: RequestIRQ: Unsupported mode
> 
> I thought the above patch might fix it, so I patched and recompiled. I
> still see the following in 2.6.0-test2-bk7-netdrvr1
> 
> orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
> orinoco_cs: RequestIRQ: Unsupported mode
> 
> The module loaded and worked fine in -test2 and -test2-mm4. 


Can you test -test2-bk7 (without my patch)?

	Jeff




^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [bk patches] 2.6.x net driver updates
  2003-08-08  0:05 Jeff Garzik
@ 2003-08-08  1:36 ` William Enck
  2003-08-08  1:41   ` Jeff Garzik
  0 siblings, 1 reply; 11+ messages in thread
From: William Enck @ 2003-08-08  1:36 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1032 bytes --]

On Thu, Aug 07, 2003 at 08:05:08PM -0400, Jeff Garzik wrote:
> 
> Linus, please do a
> 
> 	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.6
> 
> Others may download the patch from
> 
> ftp://ftp.??.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-test2-bk7-netdrvr1.patch.bz2
> 
> This will update the following files:
..snip..
>  drivers/net/wireless/orinoco_cs.c   |   16 -

dmesg gave the folloing with 2.6.0-test2-bk7

orinoco.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
orinoco_cs: RequestIRQ: Unsupported mode

I thought the above patch might fix it, so I patched and recompiled. I
still see the following in 2.6.0-test2-bk7-netdrvr1

orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)
orinoco_cs: RequestIRQ: Unsupported mode

The module loaded and worked fine in -test2 and -test2-mm4. 

Attached is the .config I used for -test2-bk7-netdrvr1

Will

-- 
William Enck
wenck@wapu.org

[-- Attachment #2: config-2.6.0-test2-bk7-netdrvr1 --]
[-- Type: text/plain, Size: 21322 bytes --]

#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y

#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_MODVERSIONS=y
CONFIG_KMOD=y

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
CONFIG_MPENTIUM4=y
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_SMP is not set
CONFIG_PREEMPT=y
# CONFIG_X86_UP_APIC is not set
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
# CONFIG_TOSHIBA is not set
CONFIG_I8K=y
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
# CONFIG_EDD is not set
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
CONFIG_HAVE_DEC_LOCK=y

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
CONFIG_SOFTWARE_SUSPEND=y

#
# ACPI Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_TOSHIBA is not set
CONFIG_ACPI_DEBUG=y
CONFIG_ACPI_BUS=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
# CONFIG_APM is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
# CONFIG_PCI_LEGACY_PROC is not set
CONFIG_PCI_NAMES=y
# CONFIG_ISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set
CONFIG_HOTPLUG=y

#
# PCMCIA/CardBus support
#
CONFIG_PCMCIA=y
CONFIG_YENTA=y
CONFIG_CARDBUS=y
# CONFIG_I82092 is not set
# CONFIG_TCIC is not set

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats
#
CONFIG_KCORE_ELF=y
# CONFIG_KCORE_AOUT is not set
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_MISC=y

#
# Generic Driver Options
#
# CONFIG_FW_LOADER is not set

#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set

#
# Parallel port support
#
CONFIG_PARPORT=m
# CONFIG_PARPORT_PC is not set
# CONFIG_PARPORT_OTHER is not set
# CONFIG_PARPORT_1284 is not set

#
# Plug and Play support
#
CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set

#
# Protocols
#
# CONFIG_ISAPNP is not set
CONFIG_PNPBIOS=y

#
# Block devices
#
CONFIG_BLK_DEV_FD=y
# CONFIG_PARIDE is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_BLK_DEV_INITRD is not set
# CONFIG_LBD is not set

#
# ATA/ATAPI/MFM/RLL support
#
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y

#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
# CONFIG_IDEDISK_STROKE is not set
# CONFIG_BLK_DEV_IDECS is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_IDE_TASK_IOCTL is not set
# CONFIG_IDE_TASKFILE_IO is not set

#
# IDE chipset support/bugfixes
#
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_IDEPNP is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_BLK_DEV_GENERIC=y
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDE_TCQ is not set
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
# CONFIG_IDEDMA_PCI_WIP is not set
CONFIG_BLK_DEV_ADMA=y
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD74XX is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_DMA_NONPCI is not set
# CONFIG_BLK_DEV_HD is not set

#
# SCSI device support
#
# CONFIG_SCSI is not set

#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set

#
# Fusion MPT device support
#

#
# IEEE 1394 (FireWire) support (EXPERIMENTAL)
#
# CONFIG_IEEE1394 is not set

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
CONFIG_NETLINK_DEV=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_ARPD is not set
# CONFIG_INET_ECN is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_IPV6 is not set
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_NETFILTER is not set
# CONFIG_XFRM_USER is not set

#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IPV6_SCTP__=y
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_LLC is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_FASTROUTE is not set
# CONFIG_NET_HW_FLOWCONTROL is not set

#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y

#
# ARCnet devices
#
# CONFIG_ARCNET is not set
CONFIG_DUMMY=m
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set
# CONFIG_NET_SB1000 is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
# CONFIG_MII is not set
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=y
# CONFIG_TYPHOON is not set

#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_HP100 is not set
# CONFIG_NET_PCI is not set

#
# Ethernet (1000 Mbit)
#
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
# CONFIG_PPP_FILTER is not set
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m
# CONFIG_SLIP is not set

#
# Wireless LAN (non-hamradio)
#
CONFIG_NET_RADIO=y

#
# Obsolete Wireless cards support (pre-802.11)
#
# CONFIG_STRIP is not set
# CONFIG_PCMCIA_WAVELAN is not set
# CONFIG_PCMCIA_NETWAVE is not set

#
# Wireless 802.11 Frequency Hopping cards support
#
# CONFIG_PCMCIA_RAYCS is not set

#
# Wireless 802.11b ISA/PCI cards support
#
# CONFIG_AIRO is not set
CONFIG_HERMES=m
# CONFIG_PLX_HERMES is not set
# CONFIG_TMD_HERMES is not set
# CONFIG_PCI_HERMES is not set

#
# Wireless 802.11b Pcmcia/Cardbus cards support
#
CONFIG_PCMCIA_HERMES=m
# CONFIG_AIRO_CS is not set
# CONFIG_PCMCIA_ATMEL is not set
# CONFIG_PCMCIA_WL3501 is not set
CONFIG_NET_WIRELESS=y

#
# Token Ring devices (depends on LLC=y)
#
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set

#
# PCMCIA network device support
#
CONFIG_NET_PCMCIA=y
# CONFIG_PCMCIA_3C589 is not set
# CONFIG_PCMCIA_3C574 is not set
# CONFIG_PCMCIA_FMVJ18X is not set
# CONFIG_PCMCIA_PCNET is not set
# CONFIG_PCMCIA_NMCLAN is not set
# CONFIG_PCMCIA_SMC91C92 is not set
# CONFIG_PCMCIA_XIRC2PS is not set
# CONFIG_PCMCIA_AXNET is not set

#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set

#
# IrDA (infrared) support
#
CONFIG_IRDA=m

#
# IrDA protocols
#
# CONFIG_IRLAN is not set
# CONFIG_IRNET is not set
CONFIG_IRCOMM=m
# CONFIG_IRDA_ULTRA is not set

#
# IrDA options
#
# CONFIG_IRDA_CACHE_LAST_LSAP is not set
# CONFIG_IRDA_FAST_RR is not set
# CONFIG_IRDA_DEBUG is not set

#
# Infrared-port device drivers
#

#
# SIR device drivers
#
CONFIG_IRTTY_SIR=m

#
# Dongle support
#
# CONFIG_DONGLE is not set

#
# Old SIR device drivers
#
# CONFIG_IRTTY_OLD is not set
# CONFIG_IRPORT_SIR is not set

#
# Old Serial dongle support
#

#
# FIR device drivers
#
# CONFIG_USB_IRDA is not set
# CONFIG_TOSHIBA_OLD is not set
# CONFIG_TOSHIBA_FIR is not set
# CONFIG_VLSI_FIR is not set

#
# ISDN subsystem
#
# CONFIG_ISDN_BOOL is not set

#
# Telephony Support
#
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_EVBUG is not set

#
# Input I/O drivers
#
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
# CONFIG_SERIO_PCIPS2 is not set

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_SERIAL_NONSTANDARD is not set

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
# CONFIG_SERIAL_8250_CONSOLE is not set
# CONFIG_SERIAL_8250_CS is not set
# CONFIG_SERIAL_8250_ACPI is not set
# CONFIG_SERIAL_8250_EXTENDED is not set

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set
# CONFIG_PPDEV is not set
# CONFIG_TIPAR is not set

#
# I2C support
#
# CONFIG_I2C is not set

#
# I2C Hardware Sensors Mainboard support
#

#
# I2C Hardware Sensors Chip support
#
# CONFIG_I2C_SENSOR is not set

#
# Mice
#
# CONFIG_BUSMOUSE is not set
# CONFIG_QIC02_TAPE is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=y
# CONFIG_NVRAM is not set
CONFIG_RTC=m
# CONFIG_GEN_RTC is not set
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
# CONFIG_SONYPI is not set

#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
CONFIG_AGP=y
# CONFIG_AGP_ALI is not set
# CONFIG_AGP_AMD is not set
# CONFIG_AGP_AMD_8151 is not set
CONFIG_AGP_INTEL=y
# CONFIG_AGP_NVIDIA is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_SWORKS is not set
# CONFIG_AGP_VIA is not set
CONFIG_DRM=y
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_GAMMA is not set
# CONFIG_DRM_R128 is not set
CONFIG_DRM_RADEON=m
# CONFIG_DRM_I810 is not set
# CONFIG_DRM_I830 is not set
# CONFIG_DRM_MGA is not set

#
# PCMCIA character devices
#
# CONFIG_SYNCLINK_CS is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HANGCHECK_TIMER is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set

#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set

#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
# CONFIG_EXT3_FS_SECURITY is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set
CONFIG_MINIX_FS=m
# CONFIG_ROMFS_FS is not set
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=y

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
# CONFIG_ZISOFS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=m
CONFIG_NTFS_FS=m
# CONFIG_NTFS_DEBUG is not set
# CONFIG_NTFS_RW is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
# CONFIG_DEVFS_FS is not set
CONFIG_DEVPTS_FS=y
# CONFIG_DEVPTS_FS_XATTR is not set
CONFIG_TMPFS=y
CONFIG_RAMFS=y

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

#
# Network File Systems
#
# CONFIG_NFS_FS is not set
# CONFIG_NFSD is not set
# CONFIG_EXPORTFS is not set
CONFIG_SMB_FS=y
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="cp437"
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_INTERMEZZO_FS is not set
# CONFIG_AFS_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_SMB_NLS=y
CONFIG_NLS=y

#
# Native Language Support
#
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=y
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
# CONFIG_NLS_CODEPAGE_850 is not set
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
CONFIG_NLS_ISO8859_1=y
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
# CONFIG_NLS_UTF8 is not set

#
# Graphics support
#
CONFIG_FB=y
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_VIRTUAL is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_PCI_CONSOLE=y
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y

#
# Logo configuration
#
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
# CONFIG_LOGO_LINUX_VGA16 is not set
# CONFIG_LOGO_LINUX_CLUT224 is not set

#
# Sound
#
CONFIG_SOUND=y

#
# Advanced Linux Sound Architecture
#
CONFIG_SND=m
CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SEQ_DUMMY is not set
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
# CONFIG_SND_SEQUENCER_OSS is not set
CONFIG_SND_RTCTIMER=m
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set

#
# Generic devices
#
# CONFIG_SND_DUMMY is not set
# CONFIG_SND_VIRMIDI is not set
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set

#
# PCI devices
#
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_AZT3328 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_EMU10K1 is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_HDSP is not set
# CONFIG_SND_TRIDENT is not set
# CONFIG_SND_YMFPCI is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_FM801 is not set
# CONFIG_SND_ICE1712 is not set
# CONFIG_SND_ICE1724 is not set
CONFIG_SND_INTEL8X0=m
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_VIA82XX is not set
# CONFIG_SND_VX222 is not set

#
# ALSA USB devices
#
# CONFIG_SND_USB_AUDIO is not set

#
# PCMCIA devices
#
# CONFIG_SND_VXPOCKET is not set
# CONFIG_SND_VXP440 is not set

#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not set

#
# USB support
#
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set

#
# Miscellaneous USB options
#
# CONFIG_USB_DEVICEFS is not set
# CONFIG_USB_BANDWIDTH is not set
# CONFIG_USB_DYNAMIC_MINORS is not set

#
# USB Host Controller Drivers
#
# CONFIG_USB_EHCI_HCD is not set
# CONFIG_USB_OHCI_HCD is not set
CONFIG_USB_UHCI_HCD=y

#
# USB Device Class drivers
#
# CONFIG_USB_AUDIO is not set
# CONFIG_USB_BLUETOOTH_TTY is not set
# CONFIG_USB_MIDI is not set
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set

#
# SCSI support is needed for USB Storage
#

#
# USB Human Interface Devices (HID)
#
CONFIG_USB_HID=y
CONFIG_USB_HIDINPUT=y
# CONFIG_HID_FF is not set
CONFIG_USB_HIDDEV=y
# CONFIG_USB_AIPTEK is not set
# CONFIG_USB_WACOM is not set
# CONFIG_USB_KBTAB is not set
# CONFIG_USB_POWERMATE is not set
# CONFIG_USB_XPAD is not set

#
# USB Imaging devices
#
# CONFIG_USB_MDC800 is not set
# CONFIG_USB_SCANNER is not set

#
# USB Multimedia devices
#
# CONFIG_USB_DABUSB is not set

#
# Video4Linux support is needed for USB Multimedia device support
#

#
# USB Network adaptors
#
# CONFIG_USB_AX8817X is not set
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET is not set

#
# USB port drivers
#
# CONFIG_USB_USS720 is not set

#
# USB Serial Converter support
#
# CONFIG_USB_SERIAL is not set

#
# USB Miscellaneous drivers
#
# CONFIG_USB_TIGL is not set
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_BRLVGER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_GADGET is not set

#
# Bluetooth support
#
# CONFIG_BT is not set

#
# Profiling support
#
# CONFIG_PROFILING is not set

#
# Kernel hacking
#
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_IOVIRT is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_FRAME_POINTER is not set

#
# Security options
#
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Library routines
#
# CONFIG_CRC32 is not set
CONFIG_ZLIB_INFLATE=m
CONFIG_ZLIB_DEFLATE=m
CONFIG_X86_BIOS_REBOOT=y

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bk patches] 2.6.x net driver updates
@ 2003-08-08  0:05 Jeff Garzik
  2003-08-08  1:36 ` William Enck
  0 siblings, 1 reply; 11+ messages in thread
From: Jeff Garzik @ 2003-08-08  0:05 UTC (permalink / raw)
  To: torvalds; +Cc: linux-kernel, netdev


Linus, please do a

	bk pull bk://kernel.bkbits.net/jgarzik/net-drivers-2.6

Others may download the patch from

ftp://ftp.??.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-test2-bk7-netdrvr1.patch.bz2

This will update the following files:

 CREDITS                             |   15 +
 MAINTAINERS                         |    8 
 drivers/net/arm/am79c961a.c         |    7 
 drivers/net/arm/ether00.c           |   81 ++++------
 drivers/net/arm/ether1.c            |    9 -
 drivers/net/arm/ether3.c            |    7 
 drivers/net/arm/etherh.c            |   16 +
 drivers/net/pcmcia/3c574_cs.c       |   18 --
 drivers/net/pcmcia/3c589_cs.c       |   18 --
 drivers/net/pcmcia/axnet_cs.c       |   19 --
 drivers/net/pcmcia/com20020_cs.c    |   14 -
 drivers/net/pcmcia/fmvj18x_cs.c     |   18 --
 drivers/net/pcmcia/ibmtr_cs.c       |   15 -
 drivers/net/pcmcia/nmclan_cs.c      |   17 --
 drivers/net/pcmcia/pcnet_cs.c       |   17 --
 drivers/net/pcmcia/smc91c92_cs.c    |   17 --
 drivers/net/pcmcia/xirc2ps_cs.c     |   18 --
 drivers/net/wireless/airo.c         |   33 ++--
 drivers/net/wireless/airo_cs.c      |   22 --
 drivers/net/wireless/netwave_cs.c   |   20 --
 drivers/net/wireless/orinoco_cs.c   |   16 -
 drivers/net/wireless/ray_cs.c       |   22 --
 drivers/net/wireless/wavelan_cs.c   |   15 -
 drivers/net/wireless/wavelan_cs.p.h |    2 
 drivers/net/wireless/wl3501.h       |  244 ++++++++++++++++++------------
 drivers/net/wireless/wl3501_cs.c    |  290 +++++++++++++++++++++++-------------
 26 files changed, 534 insertions(+), 444 deletions(-)

through these ChangeSets:

<jgarzik@redhat.com> (03/08/07 1.1130)
   [netdrvr airo] now that it builds, re-enable wireless_ext

<achirica@telefonica.net> (03/08/07 1.1129)
   [netdrvr airo] Fix adhoc config

<achirica@telefonica.net> (03/08/07 1.1128)
   [netdrvr airo] safer unload code

<achirica@telefonica.net> (03/08/07 1.1127)
   [netdrvr airo] MIC support with newer firmware

<achirica@telefonica.net> (03/08/07 1.1126)
   [netdrvr airo] add missing lines for Wireless Extensions 16

<achirica@telefonica.net> (03/08/07 1.1125)
   [netdrvr airo] MAC type changed to unsigned

<achirica@telefonica.net> (03/08/07 1.1124)
   [netdrvr airo] Missing defines (only for documentation)

<hch@lst.de> (03/08/07 1.1123)
   [netdrvr pcmcia] remove the release timer from all pcmcia net drivers
   
   Ack'd by Russell King as well.

<rmk@arm.linux.org.uk> (03/08/05 1.1106.1.11)
   [netdrvr ARM] alloc_etherdev updates

<acme@conectiva.com.br> (03/07/20 1.1046.409.66)
   o MAINTAINERS: add acme as wl3501 maintainer
   
   Also add Niemeyer to CREDITS for his work on early stages of
   wireless extensions support for the wl3501 card.

<acme@conectiva.com.br> (03/07/20 1.1046.409.65)
   o wl3501: add a first cut, lazy scan triggering for set_scan

<acme@conectiva.com.br> (03/07/20 1.1046.409.64)
   o wl3501: implement {get,set}_scan wireless extensions
   
   set_scan still needs to trigger a scan, but for now doing something
   that resets the card, like iwconfig eth0 mode ad-hoc triggers a
   scanning, and even without that we report the last scan results,
   good enough for now 8) But it will be implemented, don't worry! :-)

<acme@conectiva.com.br> (03/07/20 1.1046.409.63)
   o wl3501: introduce iw_mgmt_data_rset and rate labels enum

<acme@conectiva.com.br> (03/07/20 1.1046.409.62)
   o wl3501: introduce struct iw_mgmt_cf_pset
   
   Just for completeness, it is included in the mgmt frames, but
   not used in this driver, i.e. it may well be that this driver
   supports contention free service, but the original driver had
   no use for it at all.

<acme@conectiva.com.br> (03/07/20 1.1046.409.61)
   o wl3501: introduce iw_mgmt_ibss_pset

<acme@conectiva.com.br> (03/07/20 1.1046.409.60)
   o wl3501: fix bug in iw_mgmt_info_element id field and more
   
   . unfortunately we can't use enum iw_mgmt_info_element_ids for the
     id field in iw_mgmt_info_element, as it has to be u8 and sizeof(enum)
     is bigger than that, but we use the enum in the relevant functions to
     help catch invalid elements being used.
   . also we can't have iw_mgmt_info_element with a fixed size data field,
     as it is variable as per the 802.11 specs, so I do a poor man's OOP
     by subclassing iw_mgmt_info_element into the standard element types. Done
     up to now with iw_mgmt_essid_pset and iw_mgmt_ds_pset, others will follow.

<acme@conectiva.com.br> (03/07/19 1.1046.409.59)
   o wl3501: fix set_essid wireless extension, using the flags for any

<acme@conectiva.com.br> (03/07/19 1.1046.409.58)
   o wl3501: use iw_mgmt_info_element for phy_pset (now ds_parameter_set)
   
   Clarifying stuff is good: with this I have fixed a bug in join, where
   the element id and size were not being set... longstanding one, since
   original driver times...

<acme@conectiva.com.br> (03/07/19 1.1046.409.57)
   o wl3501: introduce iw_mgmt_info_element & associate functions and enums
   
   Also aimed at inclusion on the core wireless extensions, with this we are
   closer to 802.11 specs with regards to frame management elements stuff.
   Next patches will deal with other elements that are done in a raw way such
   as the phys parameter set (DS in this driver).


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2005-03-05 21:01 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-09-27 11:55 [BK PATCHES] 2.6.x net driver updates Jeff Garzik
  -- strict thread matches above, loose matches on Subject: below --
2005-03-05 18:44 Jeff Garzik
2004-10-30 13:32 Jeff Garzik
2003-10-14 19:06 Jeff Garzik
2003-09-26  1:02 [bk patches] " Jeff Garzik
2003-09-20 19:27 Jeff Garzik
2003-08-08  0:05 Jeff Garzik
2003-08-08  1:36 ` William Enck
2003-08-08  1:41   ` Jeff Garzik
2003-08-08  2:04     ` William Enck
2003-08-08  3:01       ` William Enck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).